1、效果图

2、虚拟串口
经过VSPD虚拟串口东西虚拟出两个串口用于通讯
VSPD虚拟串口东西下载:http://download.csdn.net/detail/leytton/7565589
3、串口调试
翻开两份串口调试东西,第一个翻开com1,第二个翻开com2,这时在任一串口调试东西发送信息,另一个串口调试东西中能接纳到信息
串口调试东西下载:http://download.csdn.net/detail/leytton/7565561
4、Proteus电路设计图
P1串口:特点原件值COMPIM,Physical port为com2,Physical Baud rate为9600
虚拟终端(Virtual Terminal):接RXD接口的虚拟终端显现单片机经过com2接纳到的信息,接TXD接口的虚拟终端显现单片机传出的信息。

5、51单片机程序代码
#includevoid init();void main(){unsigned char temp=0xff;init();while(1){if(RI){ //RI=1,判定为串口接纳到了数据,RI要清零,RI=0; temp=SBUF; }else{P1=temp; }}}void init(){TMOD=0x20; //设置T1工作方法为方法2TH1=0xfd; //给定时器高位装初值TL1=0xfd; //给定时器低位装初值TR1=1; //开定时器//以上是设置波特率SM0=0; //设置串口通讯方法为方法1SM1=1; REN=1; //串口是否接纳数据的开关}
6、运转
串口调试东西接com1口发送的数据,可在接RXD的虚拟终端显现;
可是单片机根本没反应,由于我写的代码是经过信息来操控灯亮灭,而信息格局不合法。
改善:在串口调试东西勾选“按十六进制发送”,虚拟终端勾选“Hex Display Mode”,发送“0”则灯全亮,发送“fe”则灯P1.0亮。
参阅文章
1.Win7下虚拟串口http://blog.sina.com.cn/s/blog_6163bdeb0102e8iy.html
2.使用Proteus,Serialnull,VB模仿串口通讯的简略比如http://hi.baidu.com/puda2007/item/2b2a53f33eb38e2f753c4c60
3.Proteus经过虚拟串口程序仿真51单片机串口的完成http://blog.sina.com.cn/s/blog_574d08530100hk8s.html