鸣涧 发表于 2022-6-17 21:05:57

关于CA-MCU锦锐单片机仿真-I2C方式 指南

关于CA-MCU锦锐单片机仿真-I2C方式 指南
一、如何仿真1.1 准备工作1.1.1 在KeilC51编译环境下添加仿真功能插件,步骤如下:1.1.1.1 在KEIL安装目录下,找到 TOOLS.INI 文件,打开如下图,修改该文件,在类目下添加锦锐插件选项。
[*]
[*]PATH="C:\Keil\C51\" VERSION=V9.51a
[*].....
[*]TDRV9= BIN\CA8051.dll("CACHIP Monitor Driver")   #TDRVn n按序号增加

复制代码

1.1.1.2 复制CA51xx_SDK目录下的CA8051.dll到KEIL安装目录下的C51\BIN目录下,如下图所示:1.1.1.3 至此,插件已添加完毕。打开 KEIL 开发环境,在 Debug 选项里可见列表中已出现添加的选项,如下图所示:1.2 硬件连接1.2.1 仿真下载器(红色版本) 如下图所示:
仿真器(红色版本) 与目标芯片之间的连接如下:
备注:仿真下载器(红色版本)为两线通信,通过 I2C 端口进行下载或者在线仿真, 需要连接 4 根线(CA51F003为例):VDD、2C_SCL(P13)、I2C_SDA(P14)、 GND。
1.2.2 仿真下载器(蓝色版本) 如下图所示:
仿真器(蓝色版本) 与目标芯片之间的连接如下:
备注:仿真下载器(蓝色版本)为单线通信, 通过 SWIM 端口进行下载或在线仿真。此方式目前只适用于CA51F003系列MCU
1、 通过 SWIM 端口进行 ISP 下载,需要连接 3 根线:VDD、 SWIM(P02)、 GND
2、 通过 SWIM 端口进行在线仿真,需要连接 3 根线:RESET、 SWIM(P02)、 GND
1.3 仿真步骤1.3.1 用SDK里面的下载工具将程序下载到MCU;1.3.2 在Target选项卡中做相关配置;1.3.2.1 先 KEIL 中打开项目工程软件,点击“Target options”(魔术棒)图标:1.3.2.2 然后在“Target options”界面下选择“Debug”选项:1.3.2.3然后在下拉列表里选择“CACHIP Monitor Diver”,点击“Settings”,选择串口端口。如下图所示;(注意:每次打开工程只需要选择一次端口)1.3.3 退出“Target options”界面,在主界面下点击“Debug" 图标,进入仿真模式,在仿真模式即可进行单步、设断点等操作。如下图:
1.4 注意事项1.4.1 仿真器(红色版本) 仿真功能注意事项:1.4.1.1 CA51F003 (P14,P13)F2,F3系列默认是用P30,P31这一组IO口仿真,如果要用到其他I2C脚位仿真,需要将其配置为I2C口,以CA51F003为例,如果要用P14,P13仿真,需进行如下初始化:
[*]#define SIMULATION//开启仿真功能,不用时关闭(注释掉)


1.4.1.2 仿真需要占用升级口,所以仿真的时候程序里面暂时不能使用用升级口功能,不能连接外围电路;1.4.1.3 下载器上面的拨动开关拨到ON这边,如果电路板上有大功率器件,要外部供电;1.4.1.4 MCU 应用程序在进入 IDLE,STOP 等省电模式时,仿真器无法与 MCU 通信,建议在进行仿真时先把 IDLE,STOP 等省电模式关闭。1.4.1.5 MCU 切换至低频时钟运行时,仿真器有可能无法与 MCU 通信,建议在高频时钟运行时进行仿真。1.4.1.6 当红绿 LED 交替闪烁时,短按仿真器上的功能按键可退出仿真模式。
1.4.1.7 如果应用软件设置复位引脚为 GPIO 功能,在仿真过程中,应保证复位引脚不被拉低,否则可能会出现异常,导致不能对芯片进行仿真。
1.4.1.8 在仿真模式下,仿真器不对目标 MCU 供电, MCU 必须外接供电。
1.5.1 仿真器(蓝色版本) 仿真功能注意事项:1.5.1.1 在仿真模式下,芯片的 RESET 引脚保持为复位功能,不能设置为 GPIO。
1.5.1.2 在仿真模式下, 一般情况只连接三根线:RESET、 GND、 SWIM。如果需要仿真器给芯片供电,也可以连接 VDD。
1.5.1.3 如果能保证应用程序内 SWIM 引脚保持为 SWIM 通信功能,也可以只连接两根线(SWIM,GND)进行在线仿真。
1.5.1.4 进入 STOP 模式指令后 5 条指令内不可以设置断点,否则 CPU 在此断点内停止可能会导致程序出错。
二、进不去仿真怎么办2.1 再阅读一次“如何仿真”这一小节的内容,确保这部分工作做到位;2.2定位软件,在main函数入口做一个死循环,如下:void main(void)
{
while(1)
{
...
}
}


再尝试进仿真;2.3注意:第一次进仿真要先下载程序,然后再升级;2.3.1 定位硬件:看看仿真口有没有外接电路,如果有,先断开外接电路再尝试仿真;2.3.2 定位软件:1.4.1 内容有没有做,#define SIMULATION//开启仿真功能,不用时关闭(注释掉)
页: [1]
查看完整版本: 关于CA-MCU锦锐单片机仿真-I2C方式 指南