一、如何仿真
1、准备工作
在KeilC51编译环境下添加仿真功能插件,步骤如下:
(1)在KEIL安装目录下,找到 TOOLS.INI 文件,打开如下图,修改该文件,添加本公司插件选项。
(2)把 CA8051.dll文件拷贝到 Keil\C51\BIN 目录下,如下图所示:
(3)至此,插件已添加完毕。打开 KEIL 开发环境,在 Debug 选项里可见列表中已出现添加的选项,如下图所示:
2、仿真步骤
(1)用SDK里面的下载工具将程序下载到MCU;
(2)在Target选项卡中做相关配置;
先 KEIL 中打开项目工程软件,点击“Target options”图标:
然后在“Target options”界面下选择“Debug”选项:
然后在下拉列表里选择“CACHIP Monitor Diver”,点击“Settings”,选择串口端口。如下图所示;(注意:每次打开工程只需要选择一次端口)
(3)退出“Target options”界面,在主界面下点击 图标,进入仿真模式,在仿真模式即可进行单步、设断点等操作。如下图:
3、注意事项
(1)仿真用到I2C通信,默认是用P30,P31这一组IO口,如果要用到其他I2C脚位仿真,需要将其配置为I2C口,以F3为例,如果要用P11,P12仿真,需进行如下初始化:
I2CIOS = 1;
GPIO_Init(P11F,P11_I2C_SDA_SETTING);
GPIO_Init(P12F,P12_I2C_SCL_SETTING);
(2)仿真需要占用升级口,程序里面不能复用升级口功能;
(3)下载器上面的拨动开关拨到ON这边,如果电路板上有大功率器件,要外部供电;
(4)MCU 应用程序在进入 IDLE,STOP 等省电模式时,仿真器无法与 MCU 通信,建议在进行仿真时先把 IDLE,STOP 等省电模式关闭。
(5)MCU 切换至低频时钟运行时,仿真器有可能无法与 MCU 通信,建议在高频时钟运行时进行仿真。
二、进不去仿真怎么办
1、再阅读一次“如何仿真”这一小节的内容,确保这部分工作做到位;
2、定位软件,在main函数入口做一个死循环,如下:
main()
{
while(1);
//......
}
再尝试进仿真;
注意:第1次进仿真要先下载程序,然后再升级;
3、定位硬件,看看仿真口有没有外接电路,如果有,先断开外接电路再尝试仿真;