在Proteus中使用虚拟串口的详细资料汇总_第1页
在Proteus中使用虚拟串口的详细资料汇总_第2页
在Proteus中使用虚拟串口的详细资料汇总_第3页
在Proteus中使用虚拟串口的详细资料汇总_第4页
在Proteus中使用虚拟串口的详细资料汇总_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、【转】虚拟串口以及在Proteus屮的使用一,虚拟串口虚拟串口是计算机通过软件模拟的串口,当其它设计软件使用到串口的时候,可以通过调用虚拟串口仿真模拟,以查看所设计的正确性。首先要安装虚拟串口设置的软件,网上有很多设置虚拟串口的软件,我用的是VSPD,可试用1个月,试用期过后,该软件将不能使用,但不用担心,所设置的虚拟串口不会消失,可以继续使用。设置界面:我设置的是COM3和COM4,软件只能成对设置,主要是因为通信时,一方可以监视另一方,如果仅设置1个虚拟串口的话,如你用COM3发送接收数据,但发送了什么接收到什么,你无法验证其正确与來源。这是人家编写软件的高明之处。软件设置时将所设置的两个

2、虚拟串口对接,这样就可实现发送与接收的监视。从设备管理器中可以看到两个虚拟串口对接方式:这样可以用串口调试助手调试串口通信了,从下图可以看到COM3发送的数据到达了COM4的接收区域,COM4发送的数据到达了COM3的接收区域,从而实现了COM3与COM4之间的互联互通。:串口调试助手SCoAssistantV2.2:串口调试助手SCoaAssistantV2.2ForfIH9X/MT/2000串口波特率校验位数据位停止位|C0M3jJ9600T二:NONEcom4串口波特率校验位数据位停止位COM4|9600(NONEjJcom3关闭串口港空接收区按收反港空接收区接收巨停止显示停止显示啟自动

3、渚空r十六进制显示0自动洁空r十六进制显示Fvcomdata|保存显示数据还没有选择文件RX:4自动发送周期:阿一亳秒清空重埴发送的字符7数据十六进制发送手动发送r自动发送凋期改玮董选)清空重埴|厂十六进制发送手动发送|r自动发送阔期改变后重选)rI自动发送周期:阿厂亳秒區靈1坯iq发送的字符/数据com3iCACOMDATASTATUS:C丽3OPENED,96阿丽了RXSTATUS:COM4OPENED,96叫N,8,到这虚拟串口已经设置好,对其它设计软件而言,虚拟串口和普通串口没有区别,如串口调试助手对虚拟串口的使用和普通串口的使用方法一样。二,虚拟串口在Proteus中的使用下一步介绍

4、一下虚拟串口在Proteus中的使用,更准确的应该说是“串口在Proteus中的使用”,只不过我们用软件实现仿真,虚拟串口在这使用的比较频繁。先在Proteus中将环境建立起來,很简单,先需要两个元器件就可以建立连接VIRTUALTERMINAL和C0MPIM,如图VIRTUALTERMINAL的TXD与C0MPIM的TXD相连,RXD与RXD相连,后面有图分析为什么这样相连:D凸B型令尊1囤臣+QQ気Q龜衣曲/麗曲族越宙BLtlHOSOLLOSCOPELOGICANALYSERCOUNTERTIMERVIRTUALTERMINALSPIDEBUGGERI2CDEBUG6ERSIGNALGEN

5、ERATORPATTERNGENERATODCVOLTMETERDCAMMETERACVOLTMETERACAMMETER*p*lwHHrlis40839四/_RXDTXDRTSCTSVIRTUALTERMINAL丄6273849DCDDSRRXDRTSTXDCTSDTRRlERRORCOMPIMVIRTUALTERMINAL是串口监视仪器,可以通过它将数据线上的符合RS232协议的波形捕捉到,并显示出來,也可以往数据线上发送RS232协议的波形;COMPIM为串口元件,可设置占用计算机上哪一个串口,可以是“实际串口”,也可以是“虚拟串口”,对Proteus而言,是分不清虚拟串口还是实际串口的

6、。下一步就要设置通信速率以及通信格式了,在属性框中实现设置相同的就行了。这样就可实现数据的通信了。图为本人的VIRTUALTERMINAL和COMPIM的设置:EditCoMpoxient2区ComponentReference:pIRTUALTERMINALHidden:ComponentValue:rHidden:BaudRate:9600|HideAllDataBits:Is|HideAlldParity:|none|HideAllSlopBits:b|HidAllSendXON/XOFF:|No|HideAllAdvancedProperties:|RXZTXPolarity二J|No

7、rmal|HideAllOtherPropcitic;PACKMANLILLExcludefromSimulationAttachhierarchymoduleExcludefromPCBLayoutEditallpropertiesa$text下一步就是实现Proteus与串口调试助手之间的通信了。在VIRTUALTERMINAL中可直接键盘输入想要发送的数据,但界面中无任何显示,可以通过串口调试助手看到相应的输入数据。甌口WtCttlTSCoaAsittanlV2IXX4I3:/|总i血0囚COM二9600二无师勺fists:8二停止位10停止JL示|CCOIDATA冠制发送字动发港|&目

8、动滴空r十六示厂目动雄邑堆)目动*U顽:|1000_碗这样的的话即实现数据从Proteus中传送到串口调试助手中了,其相应现在大家知道为什么在Proteus中VIRTUALTERMINAL的TXD与COMPDI的TXD相连接,而RXD与RXD相连接的原因了吧。三,在Proteus中实现单片机的串口调试功能这个做起來就比较简单了,我编写了一个工作在9600bps的8051的串口程序,程序的功能就是将串口接收到的数据发送出來,Proteus中的连线为:Tz:TXTAL1XTAL2RSTP0.0/AD0PO.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5PO.6/AD6P

9、0.7/AD7PSENP2.0/A8P2.1/A9P2.2/A10P2.3/A11ALEP2.4/A12EAP2.5/A13P1.0P2.6/A14P2.7/A15DOCZDVfrJ.U/KAL)P1.1rJ.1/1入P1.2P3.2/INT0P1.3P3.3/INT1P1.4P3.4ZTOP1.5P3.5/T1P1.6P3.6/WRP1.7P3.7/RD48929_30574012卫15_!LAT89C51eVIRTUALTERMINAL._L_DRDsRCSXTTIDDRRTCDRERRORCOMPM数据传输的图示为:RSTKU.b/ALDP0.7/AD7PSENP2.0/A8P2.1/A

10、9P2.2/A10P2.3/A11ALEP2.4/A12EAP2/5ZA133222629竺31I串口港空接收区擾砸停止显示VirtuaJ.Terainal-VIRTUJ;串口调试助手COM4|关闭串口s1OV自动酒空厂十六进制显示原衬显宗数据更逊:COMDATA:毫秒|选择发送文闸|还没有选择文件|发送文件渚空重埴|炭送餡李将7敎据阿瓜厂十六讲制发送手动发送I厂自动发送阔期改娈启重选)自动发送周期:这样就模拟实现了单片机与串口之间的通信,可以实现两者之间的仿真设计。同样实现该通信的数据流为:8051TXD0M3XRXDa*RXD四,总结以上为虚拟串口的设置以及在Proteus中的使用过程,将

11、过程写下來与大家相互学习,同时利用网络的服务器永久保留下來,方便自己查阅,呵呵。五,单片机实验这里讲解一个简单的串口例子。在自己电脑上用串丨1小助手发送一个字符X给单片机,单片机接收到之后,回复shoudaole%先看电路图U1d吹TALIXT.AL2一RST2d21PSENALEEAP1.0fT2P1.1XT2EXP1.2P1.3P1.4P1.5P1.6P1.7PO.O/ADOPO.1/AD1P0.2/AD2P0.3XAD3P0.4/AD4P0.5/AD5P0.6/AD8P0.7/AD7P2.0/ASP2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A1

12、4P2.7/A15P3.0JRXDP3.1/TXDP3.2J1NT0P3.3flNTrP3.4/T0P3.5/T1P36殛P3.7/RD_L1_L_L_LLAT89C52RXDRTSCTSTXDJ3JDCDDSRRXDRTSTXDCTSDTRRlERROR口COMPIM需要用到的元件很简单,就三个。单片机、串II可以直接输入元件名称AT89C52,COMPIM找到。虚拟终端如下图可以找到。:LOL:Ir吕臨回eINSTRUMENTSOSCILLOSCOPELOGICANALYSERCOUNTERTIMERVIRTUALTERMINALSRIDEBUGGERI2CDEBUGGERSIGNALGE

13、NERATORPATTERNGENERATOIDCVOLTMETERDCAMMETERACVOLTMETERACAMMETER然后是程序。#mcludeSCON=0X50;串II的工作在方式1,允许串丨I接收数据TMOD=0 x20;设置T1工作方式为方式2THl=0 xfd;定时器1置复位数据TLl=0 xfd;TR1=1;TI=0;RI=0;定时器1位装初值开定时器1/接收标志位清0接收标志位清0voidniainQnutQ;SBUF=sen;将单片机要发送的字符3送到串11的发送缓冲器SBUF中while(!TI);当发送结束后,SCON寄存器中的TI位会被置1,跳出while执行语句TI=0;while(!RI);将TI软件复位置0利用RI是否为1,判断是否接受数据成功RI=0;wlule(l);接收成功之后,RI复位运行结杲结果分析:我们可以看到,当pioteus运行的时候,串II调试小助手的接收区会显示一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论