- UID
- 1029342
- 性别
- 男
|
RVMDK 中使用虚拟串口VSPD和串口调试工具调试串口通信
最近在帮人做一个单片机编程的东西,用的单片机是STM32系列的,既要做上位机,又要做下位机,上位机和下位机要进行通信,得通过串口通信,才行,上位机用VC的MFC编写的,上位机做好了,开始搞下位机,奈何本人是搞纯软件的,并不熟悉硬件编程,参考书上做了个单片机串口的实验,可是手边又没有真的单片机给我用来调试,想通过软件仿真来进行串口通信,可是书上的软件仿真部分,直接略过了,网上直接搜单片机的串口通信软件仿真,根本找不到例子。搜寻了很久,才找到用RVMDK进行串口通信软件仿真的方法。在这里趁机写篇博客,以防自己以后忘记了,再用到可以看一下,也给如果刚好找解决方法的人,看到我博客后,提供一下方法。
先说参考文章:
http://bbs.ednchina.com/BLOG_ARTICLE_310610.HTM
http://www.cnblogs.com/hnrainll/archive/2011/01/15/1936274.html
上面的是人家的文章,都是前辈和大神啊……学习了……
如下是方法:
首先下载VSPD和串口调试助手吧,如果有了就免了。这两个工具网上直接搜一下就用的,有很多资源点可以下载的。
VSPD是虚拟串行驱动程序,虚拟串行驱动程序(VSPD)是一个可在计算机(Windows)下操作的程序,此驱动程序会创造数个“虚拟”的串行埠。 由一般程序看来,这些虚拟的串行端口跟实体的串行端口相同,唯一不同于传统传输的地方是在于程序所送出的信息是透过TCP/IP局域网络送至虚拟串行端口,之后由EM100再将所收到的信息传达至串行设备。 当串行设备要回传信息时,要先将信息传至EM100,而后再藉由局域网络将信息传回至位于计算机端的虚拟串行驱动程序,当虚拟串行驱动程序收到信息后,又会将其传回给程序,就如同传统串行线的传输一般。 所以不论串行设备或计算机程序都无法辨别真实串行与虚拟串行传输的不同。
反正VSPD就是可以用来模拟真实的串口就行了。
如上面所示,通过点击添加端口就可以添加一对串口的端口,一个接收数据,一个发送数据,当然反过来也是可以的。比如我使用的是COM1和COM2,COM1可以用来发送数据,也可以用来接收。
串口调试助手,其实就是个电脑上的接收从单片机发来的消息的工具,其实就是上位机了,因为我自己写了上位机的部分,我可以直接用自己的上位机就进行仿真调试了。但是这里还是截图使用常用的串口调试工具好了。 |
|