8051单片机开发的一个问题

[复制链接]
查看11 | 回复8 | 2021-1-27 07:17:18 | 显示全部楼层 |阅读模式
请教大家。
现做一个嵌入式课题,CPU用8051F502单片机,用C语言编程。程序经过修改后再次上电,系统不能运行。
然后在线调试程序,在主程序(main)的第一句设断点,run以后发现程序不能运行到这一句。
开发环境是SiliconLab。
谢谢!
分 -->
回复

使用道具 举报

千问 | 2021-1-27 07:17:18 | 显示全部楼层
你修改了什么?
如果连main都到不了,应该是startup那的问题
回复

使用道具 举报

千问 | 2021-1-27 07:17:18 | 显示全部楼层
引用1楼的回复:你修改了什么?
如果连main都到不了,应该是startup那的问题

我就是按照程序要达到的功能增加了一些变量定义,函数声明,然后编了一些函数,大部分修改都是对中断服务程序的修改。我试过把我增加的所有变量定义、函数还有相关于语句都注释掉程序就又好了。
想问一个比较初级的问题,程序在进入main之前会先在哪里跑呢?出什么问题会让它跑不到main呢?
回复

使用道具 举报

千问 | 2021-1-27 07:17:18 | 显示全部楼层
改为keilC51看看,
回复

使用道具 举报

千问 | 2021-1-27 07:17:18 | 显示全部楼层
第一句是声明吧,换到非声明的第一句
回复

使用道具 举报

千问 | 2021-1-27 07:17:18 | 显示全部楼层
第一句是声明吧,换到非声明的第一句
回复

使用道具 举报

千问 | 2021-1-27 07:17:18 | 显示全部楼层
引用1楼的回复:你修改了什么?
如果连main都到不了,应该是startup那的问题

我做的修改就是新编了一些变量、函数,中断程序改的比较多,程序总的结构也有一些调整。
程序跑进主程序之前会先在哪里跑呢?startup是指的变量定义那一块吗?
回复

使用道具 举报

千问 | 2021-1-27 07:17:18 | 显示全部楼层
没跑到main,分两种情况
1.如果你没有动startup,那么其他硬件相关的配置呢,如code及ram起始地址等
2.硬件没有clk或reset连接有问题
回复

使用道具 举报

千问 | 2021-1-27 07:17:18 | 显示全部楼层
startup是一个预先设定好的初始化汇编文件,没有的话不能启动。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行