虚拟通信串口驱动软件与51单片机相互通信原理图

电子说

1.2w人已加入

描述

一、借助虚拟串口驱动软件模拟PC端串口调试助手软件与Proteus中51单片机相互通信原理

虚拟终端(比如:Proteus中51单片机)的TXD(发送数据)和RXD(接收数据)分别与虚拟串口驱动软件所模拟出其中一个虚拟串口的TXD(发送数据)和RXD(接收数据)一一对应接通后,再与虚拟串口驱动软件所模拟出另外一个虚拟串口的TXD(发送数据)和RXD(接收数据)交叉对应接通来相互发送和接收数据,从而实现相互通信。

二、借助虚拟串口驱动软件模拟PC端串口调试助手软件与Proteus中51单片机相互通信原理图

虚拟通信

三、虚拟通信串口驱动软件操作

(1)、虚拟通信串口驱动软件所模拟出虚拟串口间通信原理。

虚拟串口驱动软件所模拟出虚拟串口的TXD(发送数据)和RXD(接收数据)交叉对应接通来相互发送和接收数据,从而实现相互通信。

(2)、虚拟通信串口驱动软件所模拟出虚拟串口间通信原理图。

虚拟通信

(3)、下载虚拟通信串口驱动软件,安装完成后的图标,如下所示。

(4)、双击打开虚拟通信串口驱动软件图标,弹出以下界面。

虚拟通信

(5)、在虚拟通信串口驱动软件界面点击“添加端口”,左边Virtual Serial Port Driver栏下Virtual port处出现添加两个虚拟通信串口:COM2与COM3。

虚拟通信

(6)、右键点击电脑上的计算机,在弹出列表中选中属性,会弹出一个关于电脑控制面板的信息界面,点击左上边设备管理器,弹出设备管理器界面,找到端口项点开,出现新增两个虚拟通信串口:COM2->COM3与COM3->COM2。

虚拟通信

四、PC端串口调试助手软件与Proteus中51单片机相互通信的单片机C语言程序与Proteus仿真电路图

(1)、烧写PC端串口调试助手软件与Proteus中51单片机相互通信的单片机C语言程序

#include 
  void main()
{
   TMOD=0x20;//定时器工作方式为方式2,8位自动重装。
   TH1=0xfd;//初始化计数器高8位:1111 1101,对应波特率为9600。
   TL1=0xfd;//初始化计数器低8位
   TR1=1;//启动定时器1
   SM0=0;//设定串口工作方式1(10位异步通信)
   SM1=1;//设定串口工作方式1
   REN=1;//打开串口中断接收允许
   PCON = 0;//波特率不加倍
   P1 = SBUF;//表示PC端串口调试助手给单片机接收数据缓存寄存器发送某数据,然后单片机接收数据缓存寄存器接收PC端串口调试助手发来的某数据,并赋给P1端口。
   while(!RI);//判断串口接收中断标志位是否为1,若为1则单片机发送数据缓存寄存器给PC端串口调试助手发送数据结束。
   RI = 0;//表示单片机接收数据缓存寄存器可重新接收PC端串口调试助手发送数据。
   SBUF = P1;//表示单片机接收数据缓存寄存器把从PC端串口调试助手获取的某数据(用P1端口表示)赋给单片机发送数据缓存寄存器。
   while(!TI);//判断串口发送中断标志位是否为1,若为1则单片机发送数据缓存寄存器给PC端串口调试助手发送数据结束。
   TI = 0;//TI(即串口发送中断标志位)=0,表示单片机发送数据缓存寄存器可重新给PC端串口调试助手发送数据。
 }

(2)、PC端串口调试助手软件与Proteus中51单片机相互通信的Proteus仿真电路图

虚拟通信

(3)、右键点击Proteus仿真电路图中的COMPIM元件,在弹出列表中选中编辑属性,会弹出一个编辑元件的信息界面,在Physical port处将通信串口COM1改为通信串口COM3,在Physical Baud Rate将4800改为9600,在Virtual Baud Rate处将4800改为9600,其它不变,之后点击确定。

虚拟通信

五、PC端串口调试助手软件操作

(1)、下载PC端串口调试助手软件,安装完成后的图标,如下所示。

虚拟通信

(2)、双击打开PC端串口调试助手软件图标,弹出以下界面。

虚拟通信

(3)、在PC端串口调试助手软件界面串口处将通信串口COM1改为通信串口COM2,在波特率处将4800改为9600,选上十六进制显示及十六进制发送,点击“打开串口”。

虚拟通信

(4)、在PC端串口调试助手软件界面点击“打开串口”弹出的界面

虚拟通信

(5)、回到虚拟串口驱动软件界面,Virtual Serial Port Driver栏下Virtual port处的通信串口COM2出现[9600-N-8-1],表示PC端串口调试助手的通信串口COM2已激活。

虚拟通信

(6)、回到PC端串口调试助手软件与Proteus中51单片机相互通信的Proteus仿真电路图界面,启动Proteus仿真电路。

虚拟通信

(7)、再次回到虚拟串口驱动软件界面,Virtual Serial Port Driver栏下Virtual port处的通信串口COM3出现[9600-N-8-1],表示Proteus仿真电路图中51单片机借助COMPIM元件(RS-232串口(即9针端口)与MAX232芯片结合体)激活通信串口COM3。

虚拟通信

六、PC端串口调试助手软件与Proteus中51单片机相互通信(注意:先启动PC端串口调试助手软件中的串口,再运行Proteus仿真电路,否则PC端串口调试助手软件与Proteus中51单片机无法相互通信。

(1)、在PC端串口调试助手软件界面的“发送的字符/数据”右边长条输入框输入发送给Proteus仿真电路图中51单片机的数据。

虚拟通信

(2)、Proteus中51单片机未接到PC端串口调试助手软件发送数据的初始状态。

虚拟通信

(3)、在PC端串口调试助手软件界面的“发送的字符/数据”右边长条输入框输入发送给Proteus仿真电路图中51单片机的数据后,点击PC端串口调试助手软件界面中的“手动发送”,让PC端串口调试助手软件给Proteus中51单片机发送数据。

虚拟通信

(4)、Proteus中51单片机接收到PC端串口调试助手软件发送的数据。

虚拟通信

(5)、在Proteus中51单片机接收到PC端串口调试助手软件发送数据的同时,PC端串口调试助手软件也接收了Proteus中51单片机发送的初始状态数据。

虚拟通信

(6)、再次在PC端串口调试助手软件界面的“发送的字符/数据”右边长条输入框输入发送给Proteus中51单片机的数据。

虚拟通信

(7)、Proteus中51单片机未接到PC端串口调试助手软件再次发送数据的初始状态。

虚拟通信

(8)、再次在PC端串口调试助手软件界面的“发送的字符/数据”右边长条输入框输入发送给Proteus仿真电路图中51单片机的数据后,点击PC端串口调试助手软件界面中的“手动发送”,再次让PC端串口调试助手软件给Proteus中51单片机发送数据。

虚拟通信

(9)、Proteus中51单片机再次接收到PC端串口调试助手软件发送的数据。

虚拟通信

(10)、在Proteus中51单片机接收到PC端串口调试助手软件再次发送数据的同时,PC端串口调试助手软件也再次接收了Proteus中51单片机发送的初始状态数据。

虚拟通信

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分