Keil5使用仿真器仿真时
debug某些工程不闪退
debug特定工程时 keil5闪退 并且工程文件损坏
猜想是该工程文件的问题
存储空间?

如图所示程序占用的FLASH大小code=868Byte
所用的SRAM大小为87Byte(data为数据存储器内部RAM占用大小,xdata为数据存储器外部RAM占用大小)
code字段占用较大的原因是 孤勇者的音高和时值在code字段给出

单片机RAM存储器大小为128Byte 意味着无法去除code字段 否则无法存下Music数组
我所用的仿真器为普中51仿真器

其支持的程序空间为63KB 远大于 868B(<1KB)
没有任何问题
仿真器debug时闪退
修改工程名为英文?
debug时同样闪退

且工程文件损坏
尝试加入断点?
同样闪退…
对hex文件使用软件仿真
得到孤勇者音乐
以上可判断文件的编译没有出现问题
应该是debug的设置存在问题
对其他工程使用相同option

仿真成功
即option的配置无误 仿真器也没有损坏
综上
该蜂鸣器音乐仿真并没有找到闪退原因
文章描述了在使用Keil5和普中51仿真器进行工程仿真时遇到的debug闪退问题,特别是当涉及到音高和时值的数据存储时。尽管程序占用空间远小于仿真器支持范围,且尝试修改工程名和设置断点未果,问题依然存在。通过其他工程的正常仿真排除了选项配置和仿真器损坏的可能性,暗示问题可能出在特定工程的debug设置上。


被折叠的 条评论
为什么被折叠?



