[原创] 使用ISD51进行在线仿真

REMY   2017-10-16 09:21 楼主
    原帖发布于沁恒公司论坛上,点击此处跳转进入。本文主要介绍使用ISD51CH55x单片机的仿真方法,并给出简单操作例程。



此内容由EEWORLD论坛网友REMY原创,如需转载或用于商业用途需征得作者同意并注明出处
优点
         无需硬件电路需求;
         可以存在于最终产品中,ISD51免费使用;
         串口可继续用于通信,或printf()打印调试。
缺点
         使用软件断点程序运行速度相对较慢;
         若其他和ISD51系统中断优先级一样或更高,系统就不能再设置断点或单步执行,默认状态ISD51中断函数优先级为0;
         仅能ISD51中断和全局中断全部打开时ISD51才能生效,如此,也可以使ISD51在程序运行时停止工作。
支持功能
    基本硬件调试功能都能支持,如:变量监视,设置断点等。
使用方法
         1.将ISD51.A51和ISD51.H加入项目工程;
         2.初始化串口,配置合适的波特率,最后必须使能全局中断;
         3.选择合适的ISD51初始化函数;
                   ISDinit():初始化并运行用户程序,如果KEIL与单片机通信成功,程序就会立即终止运行
                   ISDwait():初始化ISD51并一直等待KEIL连接上
                   ISDcheck():周期性检查ISD51连接
         4.编译用户程序烧录到单片机内;
         5.在KEIL -> option for target -> DEBUG 设置选择ISD51 In-system Debugger,在setup里设置与ISD51串口初始化相对应的串口波特率。
    6.点击DEBUG按钮进入硬件调试模式。
         ISD51接口函数可在KEIL帮助文档中查到。
         
         
            
图1 ISD51配置设置
波特率与COM口根据需要自己设置,因为IDS51为动态配置连接,所以ISD51 Identification 信息可以忽略。
错误排查:
       1: KEIL 串口的设置于MCU串口设置不匹配,如串口号,波特率等信息。
       2:单片机只能使用串口0进行在线仿真,不可以使用其他串口。
仿真时可以先测试串口是否正常,先用串口调试工具下发0XA5,单片机正常跑DEBUG程序的时候会相应0xF7,0xFF,0x00,0x00,0x09,0x19,0xAC,如果收到如上所示代码,说明ISD设置正常。
    3.必须先烧录带有ISD51的hex文件给单片机,之后才能进行硬件仿真

    GPIO_TEST_BY_ISD51.rar (2017-10-16 09:20 上传)

    159.06 KB, 下载次数: 34

    使用KEIL自带的ISD51硬件仿真51单片机

回复评论 (1)

单价1元含税的USB和Touchkey单片机CH551G已大批量出货,试样QQ:1258305301
点赞  2017-10-23 11:44
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复