首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

使用免-费工具仿真调试,cpu是jk8,发现运行10几分钟后,cpu的io口不动了

使用免-费工具仿真调试,cpu是jk8,发现运行10几分钟后,cpu的io口不动了

于是停下来看,发现程序竟然停在start08.c的第一句上了,于是查看PSR寄存器,发现是非法地址复位,这是何解?程序中可没有写非法的地址,难道是编译的问题?
能不用日货,尽量不用日货! 能不用日货,尽量不用日货! 能不用日货,尽量不用日货!
请看看你定义的全局变量是不是有问题?有没有嵌入的汇编中定义变量名后加了冒号?
走向MCU开发的乐趣!
冒号没有的,只有分号,全局变量倒是定义了很多,请问你这样问是有什么讲究吗?加冒号是表示什么意思呢
能不用日货,尽量不用日货! 能不用日货,尽量不用日货! 能不用日货,尽量不用日货!
我想你用的调试工具是M68UICS08吧,JK8有256个RAM,除去堆栈,在线调试用去的RAM,RAM并不是很多.没看过你的程序不敢定论,能运行10多分钟来看,或许你的堆栈深度不够或者由变量在存储空间分配上引起的问题.
我曾经也出现类似的问题,不过是汇编里.我在定义"Var: DS.B 1"时,一"CLR Var"就出现非法地址复位.改成"Var DS.B 1"就好了,我也不知为何?
走向MCU开发的乐趣!
呵呵!谢谢feigec,问题找到拉,不是堆栈的问题,我的程序里有lin通讯,有个通讯指针没有做保护(程序设计问题),溢出了,指向了60以下的地址,所以出现了非法地址复位
能不用日货,尽量不用日货! 能不用日货,尽量不用日货! 能不用日货,尽量不用日货!
返回列表