基于proteus的89c52双机通信仿真

上传人:gg****m 文档编号:217462395 上传时间:2021-12-02 格式:DOC 页数:15 大小:738KB
返回 下载 相关 举报
基于proteus的89c52双机通信仿真_第1页
第1页 / 共15页
基于proteus的89c52双机通信仿真_第2页
第2页 / 共15页
基于proteus的89c52双机通信仿真_第3页
第3页 / 共15页
基于proteus的89c52双机通信仿真_第4页
第4页 / 共15页
基于proteus的89c52双机通信仿真_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《基于proteus的89c52双机通信仿真》由会员分享,可在线阅读,更多相关《基于proteus的89c52双机通信仿真(15页珍藏版)》请在金锄头文库上搜索。

1、基于Proteus的AT89C52双机通目仿真在一个Proteus工程中,添加两个AT89C52单片机,一个做主机,另一作从机。 现在要实现主机与从机之间的简单通信。具体功能是:主机不停扫描矩阵键盘, 如果有键被按下,则把相应按键的数字发送给从机,从机通过数码管显示它接 受到的数据。主机与从机之间的通信通过串行口实现。构建Proteus仿真图时,如果感觉图纸不够大,放置元器件比较拥挤, 可以通过System选项Set Sheet Side.选择A3图纸就合适/。Proteus中的RS-232C标准接头COMPIM不耑要连接MAX232,可以直接 和单片机的RXD, TXD连接,因为COMPIM

2、已经把MAX232集成在内部。这里的串行通讯选择方式1,因为方式1的波特率与定时器T1的溢出率 有关,所以可以通过设置定时器T1的初值来确定串行通信的波特率。这里选 择了波特率为9600, T1选择具有自动重装功能的方式2,那么TH1和TL1 的初值通过计算得到Oxfd。具体的电路连接如下:士.4-rC1fX1B士.ss?ss_2inhb麝肩J,r&lrrr*r9HS戀aMJ S 剩RsrmttutP2I0S3S主机电路:从机电路:C430pFU2C3叫 X219XTAL130p18CRYSTALXTAL29RST1C6VT;t“uv1Si 2231 PSENALEEAP00/AD0 PO 1

3、/AO1 P0 2/AD2 P0 3ZAD3 P0 4/AD4 P0 6/AD5 P0 6/AD6 P0 7/AD7P2 0/A8 P2.1/A9 P2 2/A10 P2 3/A11 P2 4/A12 P2 5ZA13 P2 6/A14 P2 7/A15Ci3?111 p p P! 1 19PPP0/121/T2EX23456 7P3 1/TXD P3 2NTD P3 3nTT P3.4ZT0 P3S/T1 P3 6/涵 P3 7/RDATOC52)2DCDDSRRXDRTSTXDCTSDTRRlERROROMPIM12L281 i-5JLIQ211,7-2113iiiin上ALL要顺利实现双

4、机通信重要的是要保持两机的波特率一致。所以,下面的一些参 数设置很重要。利用虚拟串口软件Virtual Serial Port Driver,建立一对相连的虚拟串口。如果 没有安装这个软件可以网上下载安装。这是实现仿真必须的。这里的虚拟串口 为COM1和COM4,下图可以看到两个端口是相连的。Port pairs Options fjelpSerial ports explorerVirtual Serial Port Driver白塾 Physical portsO COM33 儀 Virtual ports rS C0M1 9600-N-8-1 d) COM4 9600-N-8-1Othe

5、r virtual portsManage ports Port access list Custom pinoutVSPDby Qbma can create virtual senal ports wth any names you like, so you are not Wed to COMx rmes only However, please, make sure that programs wortang wth these ports support custom port names.first port: Second port:COM2COM5 Add parFirst p

6、ort: Second port:C0M1COM4Delete parEnable stnet baudrate emulation Break bne/Rcstorc connectionAl vituai send pars wil be removed from your system. Ptease. make sure al ports are dosed.Delete alFor help press FI设賈主机 RS-232 接头 Pl 的参数。Physical port 选择端口 C0M11, Physical Baud Rate选择9600, Virtual Baud Ra

7、te也选择9600。其他参数默认,设置如下:Component Reference: Component Value:VSM Model:Physical port:Physical Baud Rate: Physical Data Bb: Physical Parky:Virtual Baud Rate:Virtual Data BiU:Virtual Parity: Advanced Properties:ICOMPIMICOMPIM.DLL|C0M119800|8I NONE19600I NONEHidden:Hidden:Hide AOHide AHHide AOHide AOVHid

8、e ABHkJeAOHide AHHide AllQKHelpCancelI Physical Stop Bits | I Hide AllOther Properdes:Exclude hom Sirnulalion Exclude from PCB Edit 11 properties as textAttach hierarchy moduleHide jorwnon pin$设置从机 RS-232 接头 P2 的参数。Physical port 选择端口 COM4, Physical Baud Rate选择9600, Virtual Baud Rate也选择9600。其他参数默认,设置

9、如下:晶振频率设置力11.0592MHz,它与上面设置波特率为9600是对应的。两个晶 振没置相同,如下图。Component Reference: |X1Hidden:Hidden:QKComponent Value:|CRYSTALCancelFrequency:|l 1.0592MHz| Hide All二j|XTAL18Z! 03 I Hide AllVPCB Package:Other Properhes:Exclude from Simulation Exclude from PCB L卻outEdi( all properties a$ textAWach hierarchy m

10、odule Hide common pin$单片机的时钟频率也要设賈为11.0592MHz。两单片机参数设賈一致,如下图:Edit ComponentComponent Reference:|U1Hidden:Component Value:|AT89C52Hidden:PCB Package:|DIL40jdllllHideAM _JProgram File:pwomcucom.hex|3lHideAIClock Frequency:|11.0592MHz|HideAfl!Advanced Properties:Enable trace logging| |No I | Hide AllOt

11、her Properties:fiKHelpQataHidden PinsCancelExclude from Simulation Exclude from PCB Layout Edit 11 properties as textAUach hierarchy moduleHide corrtfoon pins参数设置完成之后,Proteus的任务就完成了。接着就是编写从机与主机之间 的控制程序。程序编写完成后,分别把主机程序调入U1,从机程序调入U2。 主机与从机程序如下:主机程序#include#define uchar unsigned char #define uint unsigned intvoid delay(uint x)/延时uint ij; for(i=0;ix;i+)for(j=0;j125;j+);void sent_data(uchar date) /发送数据 SBUF=date;while(ITI);TI=0;void matrixkeyscan()/键盘扫描uchar temp,key;Pl=Oxfe;temp=Pl;temp=temp&OxfO;if(temp!=OxfO)delay(lO);temp=Pl;temp=temp&OxfO;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号