电子DIY小家 发表于 2022-12-13 14:24:46

STC32, 用STC-USB Link1D来【SWD仿真+USB转串口2通信】

一、序言
话说上回,我们已经实现了LINK1D的仿真配置,详情见本坛的这篇帖子《STC32的SWD仿真,使用STC-USB Link1D 仿真器》,(网址如下:http://www.stcaimcu.com/forum.php?mod=viewthread&tid=210&extra=),那么这次我们就再来接着往下测试一下仿真的断点功能,变量监控和串口通信,毕竟link1D可是又有SWD接口,又有串口的,必须得给他用起来!!


话不多说,我们先来看试验过程和结果,首先烧录附件程序,然后下图这样接线:(S-TXD 连接P47,S-RXD连接P46,另外直接用送的下载线连接下载口!:lol)


试验结果如下图:可以看到KEIL 软件里进入了DEBUG模式,在图中箭头的位置打了个断点,程序500ms执行一次到这里暂停,在变量监控区添加了一个变量的监控,能显示当前的变量值。在ISP软件的串口那里也能显示一次串口2打印出去的信息。





二、使用步骤
1.参考上次的帖子,首先我们需要将STC32G的芯片设置为仿真芯片,见上次的帖子的第六步,但是这里需要注意的是,我们的IRC时钟一定要和我们的程序一直,这里我们程序里写的是22.1184Mhz,所以制作仿真芯片的时候,切记这个IRC时钟要选22.1184再设置仿真芯片。


2.打开我们的附件的程序,这里我提供的程序是个最贱的LED闪烁+串口2通信的程序,程序如下。当然也可以改成你们自己的程序(切记切记如果仿真芯片设置的端口为P30/P31,那你的程序不能操作P30/P31接口)

3.这时候我们可以去ISP软件上打开我们的串口调试助手,选择我们的CDC2,当然找不到的话也可以先去设备管理器里看一下串口号。CDC1也是SWD口,我们这里要选择CDC2作为我们的串口去连接检测参数。
当然你要是觉得这个界面太复杂,你也可以打开单独的串口软件,打开方法见下图,点一下这你就能发现新大陆了哈哈!

4.编译成功没有问题之后,直接进入DEBUG模式,开始调试    4.1变量添加与监控:可以选择我们程序里的任意一个全局变量/寄存器,然后添加到变量监控区域,方便我们观察,具体的方法如下图:



4.2断点添加:在没有开始Run的时候,可以在可执行区域添加断点。


4.3变量在线修改:如下图一步一步的操作即可。




4.4更多功能等你动手来挖掘咯~


三、总结
这里就总结几个比较常用的功能,因为这个DEBUG模式非常强大,如果真要完整的赘述,可能写一万字论文都不在话下,所以这里就只展开几个常见好用的功能了哈,更多的你可以自行百度一下,网上详细的该模式的使用教程非常多。
可能很多人习惯了早期的51单片机,没有调试功能,所以喜欢用串口打印参数调试,虽然这样也有好处,下载完就能直接串口看结果,但是动态的去修改参数非常麻烦,且每个打印参数的地方都需要添加一行打印函数,非常麻烦。但是仿真可以很好的解决这个问题,哪里需要暂停哪里打个断点,甚至FLASH区域等都能字节在线监控,像调试FLASH模拟EEPROM的时候,如果写入和读取的步骤到底是哪个错了,你就可以直接监控FLASH的地址,看看写入结束之后,这个地址的数据是不是你的写入值,这不马上就知道问题在哪里了!
所以有条件的话,仿真真的要用起来,当然也说过串口下载完就能直接看结果,我一般喜欢下载完先串口去看几个关键步骤的结果,没问题就不进仿真模式了,有问题我再进仿真模式去查看数据是哪里出了问题!祝屏幕前的看客们能通过本帖有所守护,再给我点个赞哈~或者有什么功能不会的,欢迎在下面留言~:lol


8051启蒙者 发表于 2022-12-13 14:57:37

点个赞!仿真一定要用起来!

神农鼎 发表于 2022-12-13 15:07:51

冲哥一出手,直接一箭双雕:
1,不但利用STC-USB Link1D的串口1的I/O, 实现了SWD来仿真STC32位8051; 也可以串口1仿真STC8/IAP15W4K
2,还利用 STC-USB Link1D 多出来的第二组串口/串口2跟STC32位8051的任意1组串口1/2/3/4通信,也可以是STC8/STC15

【新提醒】STC32+STC-USB Link1D 仿真流程介绍 - 编译器/仿真器/ISP下载/做自己的ISP - 国芯论坛 - Powered by Discuz! (stcaimcu.com)
冲哥的这篇大作,是32位8051世界必读大作,必将流芳50年



STC-USB Link1D工具SWD仿真STC32G12K128,同时第二组串口跟被仿真的MCU的串口1/2/3/4通信
http://www.stcaimcu.com/data/attachment/forum/202212/13/131248b65pb8a53um4jlb0.png

WIN7要按装 USB-CDC驱动的看下文

https://www.stcaimcu.com/forum.p ... =280&extra=page%3D1

STC USB-CDC/虚拟串口 和 USB转双串口驱动安装说明,支持 STC-USB Link1D 和 USB 转双串口 STC标准工具
STC-USB Link1D工具和一箭双雕之USB转双串口工具中的CDC串口都是通用USB转串口(后面均简称STC-CDC串口)

USB-CDC/虚拟串口/就是串口驱动是否要安装,还是免安装:
Win10以前的操作系统用户要看下===========必须安装
Win10及Win10以后的操作系统用户不用管这个===免安装,Windows10及以后的系统已自带 USB-CDC驱动

STC-CDC串口的驱动程序包含
SYS文件:二进制驱动程序文件。
目前使用的是Windows系统自带的USB转串口驱动(usbser.sys)
对于部分Ghost版本的精简Windows系统,系统中会没有这个驱动,
则需要手动将此文件复制到对应的系统目录中(后面会详细介绍如何手动复制)
INF文件:驱动安装信息文件。
此文件由STC提供的,文件名为“stcser.inf”




l164908060 发表于 2022-12-14 09:30:12

很不错的调试工具,希望STC也出一个和STM32类似的STC CUBE代码生成器,作为搞硬件的我,软件流程 思路 什么都会,唯独C语言玩的不溜,要是能有这么一个工具,硬件工程师写代码也不是难事,因为需要用到单片机的场景很多很多,这样可以让一些跨行业的人也可以很快的入手:lol   (最后问问版主,是不是只要回复此贴,就可以免费包邮送一个调试工具,期待此调试工具:victory:)

HES_S 发表于 2022-12-14 09:38:26

求样品测试,以前都是盲调,希望stc的芯片越来越小,例程越来越完善

stcmcu 发表于 2022-12-14 09:41:44

点赞,
申请一个仿真器

pgdw 发表于 2022-12-14 09:44:59

一直没用上仿真,都是直接打板上项目,在此申请一个样品试试。:lol:handshake

suh520 发表于 2022-12-14 09:48:51

等了好久终于等到你:loveliness:

励志悍匪 发表于 2022-12-14 09:55:42

求样品测试,下午stc越做越强,下午希望官方录一些教学视频

励志悍匪 发表于 2022-12-14 09:57:08

求一个样品测试,希望stc越做越强再创辉煌,希望官方出一些教学视频和案例
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: STC32, 用STC-USB Link1D来【SWD仿真+USB转串口2通信】