双机通信
双机通信
双机通信系统的设计一、课程设计的目的与要求1、课程设计目的:(1)进一步理解和消化书本知识,运用所学知识和技能进行简单的设计。
(2)通过课程设计提高应用能力,分析问题和解决问题的能力。
(3)培养查阅资料的习惯,训练和提高自学,独立思考的能力。
2、课程设计要求双机通信系统的设计1)掌握串行口工作方式的程序设计。
2)掌握单片机通讯程序的编制。
3)了解实现串行通讯的硬件环境,数据格式、数据交换的协议。
4)掌握在8031系统中扩展8279键盘显示接口的方法。
5)了解键盘电路工作原理及编程方法。
从课程设计的目的出发,通过设计工作的各个环节,达到以下要求:(1)能够正确理解课程设计的题目和意义,全面思考问题。
(2)运用科学合理的方法,认真按时完成。
二、课程设计课题的分析MCS—51单片机内穿行口的SBUF有两个:接收SBUF和发送SBUF,二者在物理结构上是独立的,单片机用它们来接收和发送数据。
专用寄存器SCON 和PCON控制串行口的工作方式和波特率。
定时器1作为波特率发生器。
编程时注意两点:一时初始化,设置波特率和数据格式。
二是确定数据传送方式。
数据传送方式有两种:查询方式和中断方式。
为确保通讯成功,甲机和乙机必须有一个一致的通讯协议,例程的通讯协议如下:通讯双方均采用2400波特的速率传送,甲机发送数据,乙机接收数据。
双机开始通讯时,甲机发送一个呼叫信号“06”,询问乙机是否可以接收数据;乙机受到呼叫信号后,若同意接收数据则发回“00”作为应答,否则发“F0”表示暂不能接收数据;甲机只有受到乙机的应答信号“00”后才可把要发送的数据发送给乙机,否则继续向乙机呼叫,直到乙机同意接受。
其发送数据格式为:字节数n:甲机将向乙机发送的数据个数数据1~数据n:甲机将向乙机发送的n个数据乙机接收到数据后,向甲机回发“0F”信号。
甲机只有接到信号“0F”才算完成发送任务,否则继续呼叫,重发数据。
电路及程序的设计8031串行口显示电路原理图,硬件电路图,较详细的程序流程图。
单片机单片机课程设计-双机串行通信
单片机单片机课程设计-双机串行通信单片机课程设计双机串行通信在当今的电子信息领域,单片机的应用无处不在。
而双机串行通信作为单片机系统中的一个重要环节,为实现设备之间的数据交换和协同工作提供了关键的技术支持。
一、双机串行通信的基本原理双机串行通信是指两个单片机之间通过串行接口进行数据传输的过程。
串行通信相较于并行通信,具有线路简单、成本低、抗干扰能力强等优点。
在串行通信中,数据是一位一位地按顺序传输的。
常见的串行通信协议有 UART(通用异步收发器)、SPI(串行外设接口)和 I2C(内部集成电路)等。
在本次课程设计中,我们主要采用 UART 协议来实现双机串行通信。
UART 协议包括起始位、数据位、奇偶校验位和停止位。
起始位用于标识数据传输的开始,通常为逻辑 0;数据位可以是 5 位、6 位、7 位或 8 位,具体取决于通信双方的约定;奇偶校验位用于检验数据传输的正确性,可选择奇校验、偶校验或无校验;停止位用于标识数据传输的结束,通常为逻辑 1。
二、硬件设计为了实现双机串行通信,我们需要搭建相应的硬件电路。
首先,每个单片机都需要有一个串行通信接口,通常可以使用单片机自带的UART 模块。
在硬件连接方面,我们将两个单片机的发送端(TXD)和接收端(RXD)交叉连接。
即单片机 A 的 TXD 连接到单片机 B 的 RXD,单片机 B 的 TXD 连接到单片机 A 的 RXD。
同时,还需要共地以保证信号的参考电平一致。
此外,为了提高通信的稳定性和可靠性,我们可以在通信线路上添加一些滤波电容和上拉电阻。
三、软件设计软件设计是实现双机串行通信的核心部分。
在本次课程设计中,我们使用 C 语言来编写单片机的程序。
对于发送方单片机,首先需要对 UART 模块进行初始化,设置波特率、数据位、奇偶校验位和停止位等参数。
然后,将要发送的数据放入发送缓冲区,并通过 UART 发送函数将数据一位一位地发送出去。
对于接收方单片机,同样需要对 UART 模块进行初始化。
实验六 双机通信
系别
计算机系
班级
B110507
学号
姓名
课程名称
பைடு நூலகம்单片机原理及其应用
实验日期
2013-10-28
实验名称
双机通信
成绩
实验目的:
掌握串行口通信工作原理。
实验原理:
实验电路原理图如图1所示,图中1#机的发送线与2#机的接收线相连,1#机的接收线与2#机的发送线相连,共阴极BCD数码管BCD_LED1和BCD_LED2分别接各机的P2口,两机共地(默认),晶振为11.0592MHz,波特率为2400bps,串口方式1。(实验电路所用元件见表1)
(3)在uVision3中进行C51串行通信程序的编写、编译及调试;
(4)启动ISIS的仿真运行,并进行联机调试。
仿真结果:
图3仿真结果
1#机发送程序:(查询法)
#include <reg51.h>
#define uchar unsigned char
void delay(unsigned int time) //定义延时函数
if(RI==1)
{
RI=0; //若接收完成,清RI标志位
receiv=SBUF; //取得接收值
SBUF=receiv; //结果返回1#机
P2=receiv; //显示接收值
}
}
实验小结:
经过这次的上机实验,我掌握了串行口通信的工作原理,熟悉C51单片机的编程与调试方法,掌握Proteus ISIS模块的原理图绘图方法及及单片机系统仿真运行方法。同时在实现串行通信功能时提高了程序的编写及调试能力,在1#机中用了查询RI和TI标志位的软件查询结果完成发送程序功能,在2#机中根据RI和TI的中断请求,在中断函数中完成接收程序功能,两种方法结合实现实验要求程序功能,灵活的应用课堂上学到的理论知识。
单片机用proteus仿真双机串口通信总结体会
单片机用 Proteus 仿真双机串口通信总结体会本文介绍了使用 Proteus 仿真软件进行单片机双机串口通信的实验过程及总结体会。
下面是本店铺为大家精心编写的5篇《单片机用 Proteus 仿真双机串口通信总结体会》,供大家借鉴与参考,希望对大家有所帮助。
《单片机用 Proteus 仿真双机串口通信总结体会》篇1引言在单片机应用中,串口通信是一种重要的通信方式,它具有传输速率快、传输距离远、抗干扰能力强等优点。
Proteus 仿真软件是一种功能强大的电子电路仿真工具,可以用来模拟单片机串口通信的整个过程,为学习和实践提供方便。
本文将详细介绍使用Proteus 仿真软件进行单片机双机串口通信的实验过程及总结体会。
实验过程1. 硬件电路设计首先,我们需要设计一个简单的单片机硬件电路,包括电源电路、串口通信电路和 LED 显示电路。
电源电路可以使用电池或者稳压器来提供稳定的电压,串口通信电路可以使用 Proteus 提供的串口助手软件进行设计和调试,LED 显示电路可以使用 Proteus 提供的 LED 助手软件进行设计和调试。
2. 软件程序设计在软件程序设计中,我们需要编写两个程序:主程序和串口通信程序。
主程序主要负责初始化串口通信电路和 LED 显示电路,并将控制权转移到串口通信程序。
串口通信程序主要负责接收和发送数据,通过串口助手软件可以方便地进行调试和测试。
3. 仿真测试在仿真测试中,我们可以使用 Proteus 提供的仿真工具进行测试。
首先,我们需要将硬件电路和软件程序导入 Proteus 仿真软件中,并进行电路连接和程序编译。
然后,我们可以通过串口助手软件进行数据发送和接收,并通过 LED 显示电路进行数据展示。
总结体会通过使用 Proteus 仿真软件进行单片机双机串口通信实验,我们可以得出以下总结体会:1. Proteus 仿真软件是一种非常强大的电子电路仿真工具,可以用来模拟各种电路和通信方式。
双机通信
双机通信系统的设计一、课程设计的目的与要求1、课程设计目的:(1)进一步理解与消化书本知识,运用所学知识与技能进行简单的设计。
(2)通过课程设计提高应用能力,分析问题与解决问题的能力。
(3)培养查阅资料的习惯,训练与提高自学,独立思考的能力。
2、课程设计要求双机通信系统的设计1)掌握串行口工作方式的程序设计。
2)掌握单片机通讯程序的编制。
3)了解实现串行通讯的硬件环境,数据格式、数据交换的协议。
4)掌握在8031系统中扩展8279键盘显示接口的方法。
5)了解键盘电路工作原理及编程方法。
从课程设计的目的出发,通过设计工作的各个环节,达到以下要求:(1)能够正确理解课程设计的题目与意义,全面思考问题。
(2)运用科学合理的方法,认真按时完成。
二、课程设计课题的分析MCS—51单片机内穿行口的SBUF有两个:接收SBUF与发送SBUF,二者在物理结构上就是独立的,单片机用它们来接收与发送数据。
专用寄存器SCON 与PCON控制串行口的工作方式与波特率。
定时器1作为波特率发生器。
编程时注意两点:一时初始化,设置波特率与数据格式。
二就是确定数据传送方式。
数据传送方式有两种:查询方式与中断方式。
为确保通讯成功,甲机与乙机必须有一个一致的通讯协议,例程的通讯协议如下:通讯双方均采用2400波特的速率传送,甲机发送数据,乙机接收数据。
双机开始通讯时,甲机发送一个呼叫信号“06”,询问乙机就是否可以接收数据;乙机受到呼叫信号后,若同意接收数据则发回“00”作为应答,否则发“F0”表示暂不能接收数据;甲机只有受到乙机的应答信号“00”后才可把要发送的数据发送给乙机,否则继续向乙机呼叫,直到乙机同意接受。
其发送数据格式为:字节数n:甲机将向乙机发送的数据个数数据1~数据n:甲机将向乙机发送的n个数据乙机接收到数据后,向甲机回发“0F”信号。
甲机只有接到信号“0F”才算完成发送任务,否则继续呼叫,重发数据。
电路及程序的设计8031串行口显示电路原理图,硬件电路图,较详细的程序流程图。
PLC双机并联通信
PLC双机并联通信提示:双机并行连接是指使用RS -485通信适配器或功能扩展板连接两台FX系列PLC (1:1方式)以实现两PLC之间的信息自动交换(见图7-27),其中一台PLC作为主站,另一台PLC作为从站。
双机并行连接方式下,用户不需编写通信程序,只需设置与通信有关的参数,两台计算机之间就可以自动地传送数据。
最多可以链接100点辅助继电器和10点数双机并行连接是指使用RS -485通信适配器或功能扩展板连接两台FX系列PLC (1:1方式)以实现两PLC之间的信息自动交换(见图7-27),其中一台PLC作为主站,另一台PLC 作为从站。
双机并行连接方式下,用户不需编写通信程序,只需设置与通信有关的参数,两台计算机之间就可以自动地传送数据。
最多可以链接100点辅助继电器和10点数据寄存器的数据。
1:1并行连接有一般模式和高速模式两种,由特殊辅助继电器M8162识别模式:M8162=OFF时,并行连接为一般模式;M8162= ON时,并行连接为高速模式。
主从站分别由M8070和M8071继电器设定:M8070=ON时,该PLC被设定为主站;M8071=ON时,该PLC被设定为从站。
一般模式( M8162=OFF)的通信示意图如图7-28所示。
高速模式(M8162=ON)的通信示意图如图7-29所示。
图7-27 双机并行连接图7-28 一般模式的通信示意图图7-29 高速模式的通信示意图例3:2台FX2N系列PLC通过1:1并行连接通信网络交换数据,设计其一般模式的通信程序。
通信操作要求为:1)主站X000-X007的ON/OFF状态通过M800 - M807输出到从站的Y000 - Y007。
2)当主站计算结果( D0 +D2)≤100时,从站的Y010变为ON。
3)从站中的M0-M7的ON/OFF状态通过M000-M007输出到主站的Y000 - Y007。
4)从站D10的值,用于设定主站的计时器(T0)值。
双机互联--怎样实现两台电脑的通信
采用直接电缆通过计算机的串口或并口进行连接也是实现双机直联的一种常用解决方案。相对于使用网卡连接而言,这种方案对于联网质量要求不是很高的用户比较实用,其优点主要是连接方便和费用低廉。但是它也有不足之处:连接距离相对较短,并口电缆线长度最好不要超过3米;采用串口电缆相连时,传输数据的速度可能较慢。
二、利用红外线实现双机文件传输功能
用红外线口也可以将两台电脑连接起来。红外线联机其实仍属于电缆连接的范畴,只不过省去了用于直接电缆连接的串行或并行电缆线。一般笔记本电脑都有红外口,台式电脑也可以用于红外线通信,但是需要另配一个红外线适配器。有了红外适配器,台式电脑可拥有与笔记本电脑一样的红外线通信功能。
双机互联方法很多,你可以使用两块以太网卡,通过非屏蔽双纹线(UTP)连接;也可以通过串口或并口直接连接,或使用USB接口连接,还可以利用计算机的红外线接口无线连接以及通过两台MODEM通过拨号实现远程共享等等。
一 、使用USB线双机互联
使用USB线双机互联是最新的双机互联方法,它借助于专用的USB线通过两台计算机的USB口连接后再实现数据交换,不仅传输速率大大超越传统的串口/并口(最高可达6Mb/s,一般情况下也可超过4Mb/s),而且实现真正的即插即用。
首先必须正确安装台式电脑和笔记本电脑的红外线驱动程序。在Windows 98系统里红外线设备是即插即用设备,一般在BIOS里开启红外线功能后系面是双机互联的最后一步同样也是最难的一步:网络设置。这里我同样以WIN98下的网络设置为例。 首先我们要检查系统的网络组件是否已安装完全:在桌面上选定“网上邻居”,点右键打开其属性,在配置列表中是否有如下几项:REALTEK8139 NETWORK ADAPTER (网卡),MICROSOFT网络客户(服务),TCP/IP协议(协议),MICROSOFT网络上的文件与打印机共享服务(服务)。要连接一个局域网并共享资源,以上组件是必不可少的,如果没有可在此处直接添加。 然后是设置IP地址,选择“TCP/IP-à REALTEK8139 NETWORK ADAPTER”(即网卡的TCP/IP协议设置),打开其属性,在IP地址栏中输入“192,168,0,1”,子网掩码为“255,255,255,0”,然后点击“确定”,回到“网络”主画面(另外一台电脑的IP地址为“192,168,0,2”,子网掩码一样),在标识项中,你应该为两台计算机输入各自不同的名称,但其工作组应相同,在访问控制项中选取共享级,点击“确定”,再根据提示重新启动计算机。 待重新启动电脑时要注意进行网络登录。电脑完成启动进入Win98界面,在“我的电脑”中用鼠标右键选中需要共享的驱动器或文件夹,单击快捷菜单中的“共享”,在对话框中输入共享名,按需要设置共享类型和访问口令。这时,驱动器或文件夹会出现一个手掌,表示已经共享。现在我们就可以通过网上邻居象使用本机资源一样访问另外一台计算机了。
双机通信实验报告.doc
双机通信实验报告。
单片机实验报告(自动化15级)实验名称:串行通信实验1.实验1的目的。
掌握单片机串口的工作模式;2.掌握双机通信的接口电路设计和程序设计。
2.实验设备1。
个人电脑;2.单片机最小系统教学实验模块:3.数码管显示模块三、实验内容1。
两套单片机测试装置(两个实验组)共同完成了实验。
我们U1是机器A,U2是机器B。
机器A将学生的学号后的8位数字发送到机器B。
机器B接收到这8位数字,并将其显示在8位数字的电子管上。
该电路如图1所示。
串行通信模式要求为模式1,波特率为2400位/秒,不是双倍,单片机外部晶振频率为11.0592米。
图1双机通信原理附加要求示意图:机器b收到后,该机器(机器b)的学生编号的最后8位数字被送回机器a,并显示在数码管上。
2.单片机与PC机之间的通信单片机向PC机发送数据。
单片机将本机的学生号(学生本人)反复发送到PC机,发送波特率为1200,采用模式1,单片机外部晶振频率为11.0592米四、实验原理4.1串行通信模式在串行通信中,有两种基本通信模式:异步通信。
异步串行通信规定了字符数据的传输格式,即每个数据以相同的帧格式传输。
每个帧信息由起始位、数据位、奇偶校验位和停止位组成。
本实验主要研究异步通信的实现方法。
在异步通信中,每个字符使用一个起始位和一个停止位作为字符开始和结束的符号,因此占用时间。
因此,为了提高传输数据块时的通信速度,这些标记通常被去除,并采用同步通信。
同步通信不像异步通信那样依赖起始位在每个字符数据的开头发送和接收同步。
相反,同步字符用于在每个数据块传输开始时同步发送方和接收方。
根据通信方式,数据传输线可分为三种类型:单工模式、半双工模式、全双工模式。
(1)单工模式在单工模式中,通信线路的一端连接到发射机,另一端连接到接收机,这形成单向连接,并且仅允许数据在固定方向上传输。
(2)半双工模式在半双工模式下,系统中的每个通信设备由一个发射机和一个接收机组成,它们通过收发器开关连接到通信线路,如图33所示-1.实验1的目的。
双机通信代码(接收方和发送方)
{
TH1=0xe8;//设置波特率为1200bps
TL1=0xe8;
}
void init_S_2400()
{
TH1=0xf4;//设置波特率为2400bps
TL1=0xf4;
}
void S_4800(ucharnumx)
{
TH1=0xfa;//设置波特率为4800bps
/*按下矩阵键盘第一行时以1200bps发送0,1,2,3;按下第二行时以2400bps发送4,5,6,7;
按下第三行时以4800bps发送8,9,10,11;按下第四行时以9600pbs发送12,13,14,15.
*/
/*接收方在接收到第一行的任意键值时,8个发光二极管形成流水灯;
在接收到第二行的任意键值时,显示在数码管上;
}
voidinit_S()
{
TMOD=0x20;//设置定时器1为方式2
TR1=1;
EA=1;
ES=1;
/*SMOD=0*/
/*设置SCON寄存器*/
SM0=0;//采用串口方式1进行双机通信
SM1=1;
REN=0;
}
void S_1200()
{
TH1=0xe8;//设置波特率为1200bps
TL1=0xe8;
temp=temp&0xf0;
}
init_S_2400();
send(num);
}
P3=0xfb;
/*按键过程*/
temp=P3;
temp=temp&0xf0;
while(temp!=0xf0)//表明键被按下
{
temp=P3;
switch(temp)
基于RS232modbus协议的双机串行通信
目录一、Modbus 协议分析 (1)1.1两种传输方式 (2)1.2 Modbus消息帧 (3)1.3错误检测方法 (5)二、程序设计思想 (6)2.1总体设计 (6)2.2 硬件设计 (7)2.2.1单片机串行通信功能 (7)2.2.2 MAX232芯片 (8)2.2.3 整体电路设计 (9)2.3 软件设计 (10)2.3.1主机系统软件设计 (10)2.3.2 从机系统软件设计 (12)三、程序代码 (15)基于51单片机的双机串行通信设计一、Modbus 协议分析Modbus 协议是应用于电子控制器上的一种通用语言。
通过此协议,控制器相互之间、控制器经由网络和其它设备之间可以通信。
它已经成为一通用工业标准。
有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。
此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。
它描述了一控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误并记录。
它制定了消息域格局和内容的公共格式。
当在一Modbus网络上通信时,此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。
如果需要回应,控制器将生成反馈信息并用Modbus协议发出。
在其它网络上,包含了Modbus协议的消息转换为在此网络上使用的帧或包结构。
这种转换也扩展了根据具体的网络解决节地址、路由路径及错误检测的方法。
1) 在Modbus网络上转输标准的Modbus口是使用一RS-232C兼容串行接口,它定义了连接口的针脚、电缆、信号位、传输波特率、奇偶校验。
控制器能直接或经由Modem组网。
控制器通信使用主—从技术,即仅一设备(主设备)能初始化传输(查询)。
其它设备(从设备)根据主设备查询提供的数据作出相应反应。
典型的主设备:主机和可编程仪表。
典型的从设备:可编程控制器。
主设备可单独和从设备通信,也能以广播方式和所有从设备通信。
双机串行通信的设计与实现
双机串行通信的设计与实现一、设计要求1.单机自发自收串行通信。
接收键入字符,从8251A的发送端发送,与同一个8251A的接收端接收,然后在屏幕上显示出来。
2.双机串行通信,在一台PC机键入字符,从8251A的发送端发送给另一台PC机,另一台PC机的8251A的接收端接收,然后在屏幕上显示出来。
二、所用设备IBM-PC机两台(串行通信接口8251A两片,串行发送器MC1488和串行接收器MC1489各两片,定时器/计数器8253,终端控制器8259等),串口线一根串行直连电缆用于两台台电脑通过串行口直接相连,电缆两端的插头都是9 针的母插头:三、硬件方案1.设计思想计算机传输数据有并行和串行两种模式。
在并行数据传输方式中,使用8条或更多的导线来传送数据,虽然并行传送方式的速度很快,但由于信号的衰减或失真等原因,并行传输的距离不能太长,在串行通信方式中,通信接口每次由CPU得到8位的数据,然后串行的通过一条线路,每次发送一位将该数据放送出去。
串行通信采用两种方式:同步方式和异步方式。
同步传输数据时,一次传送一个字节,而异步传输数据是一次传送一个数据块。
串口是计算机上一种非常通用设备串行通信的协议。
大多数计算机包含两个基于RS232的串口。
串口按位(bit)发送和接收字节。
尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。
典型地,串口用于ASCII码字符的传输。
通信使用3根线完成:(1)地线,(2)发送,(3)接收。
由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。
其他线用于握手,但是不是必须的。
串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。
对于两个进行通行的端口,这些参数必须匹配:RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。
可用于许多用途,比如连接鼠标、打印机或者Modem,同时也可以接工业仪器仪表。
实验六——双机通信及PCB设计
中国石油大学(北京)实验报告实验课程:单片机原理及应用实验名称:实验六——双机通信与PCB设计一、实验目的掌握串口通信工作原理及程序开发方法,熟悉ARES软件PCB设计过程。
二、实验内容1、按照P241图A.72绘制电路原理图1,将第6章实例2中2#机的查询法收发程序改为中断法(1#机发送过程不变)并实现原有功能;2、按照图A7.3和表A7.3绘制电路原理图2,并定义电源端口;3、采用ARES软件完成电路原理图2的PCB设计,形成光绘(Gerber)输出文件,其中BCD数码管需按照图A.74所示尺寸进行PCB自定义封装;4、完成实验报告。
三、实验要求提交的实验报告中应包括:电路原理图1,2#机的C51源程序,双机通信仿真效果及讨论*,PCB设计图(电路原理图2、排版图、3D效果图、光绘文件分层图3-4幅)以及实验小结。
提交实验报告的电子邮件主题及存盘文件名格式如,2005041220马晓明实验六。
*讨论:中断法与查询法的程序结构差异及优缺点。
1、电路原理图1图1 电路原理图2、2#机的C51源程序图2 2#机源程序3、双机通信仿真效果及讨论图3 仿真运行一说明:利用KEIL编写1#机和2#机的源程序并生成“.HEX”文件,分别加载在两个单片机上。
1#机循环发送0-F数据,2#机实时接收数据,两机数据通过各自的BCD数码管显示出来。
图4仿真运行二说明:1#机循环发送“0—F”数据,如图1#机发送数据“F”,2#机接收数据后在数码管上输出,1#机接收2#机返回的数据对比无误后在数码管上同时输出“F”。
图5 仿真运行三说明:输出“0—F”后,1#机循环发送“0—F”的数据,2#机实时接收数据,两机数据通过各自的BCD数码管显示出来。
讨论:从单片机仿真的结果上看,2#机采用中断法编程并生成HEX文件后加载到单片机上后进行仿真运行的效果与采用查询法编程的效果一致。
从源程序上看,采用查询法时,CPU需要不断等待单片机发送和接收完数据后才能进行下一步的操作。
双机通信课程设计
双机通信系统设计一、设计要求:编程实现两片AT89C52芯片近距离通信,一台为发送方,另一台为接收方。
采用单片机直接交叉连接的方式,一方发送由串行口TXD输出,直接由另一方的串行口数据接收端RXD接收。
二、设计方案分析1、方案设计:(1)设计思路:串行数据通信要解决两个关键问题,一个是数据转换,另一个是数据传送。
所谓数据以什么形式传送。
所谓数据转换就是指单片机在接收数据时,如何把接收到串行数据进行发送。
为此编制了两个汇编语言程序:其一,为数据发送程序;其二,为数据接收程序。
为了确保每个字符发送出去,并且被接收,发送接收双方的波特率设置一致,并且均采取查询方式进行下一步操作。
接收数据只需执行一次,即驻留在内存中,此后,只要二号单片机有数据要发送,则一号机随时接收并显示在数码管上;反之一号机发送,二号机接收并显示。
(2)原因:由于是近距离的双机通信,我们采用单片机直接交叉连接的方式,上位机发送的数据由串行口TXD端输出,直接由下位机的串行口数据接收端RXD接收。
需要注意的是一定要保证主从机相同的数据传输速率,即要求设置相同的波特率。
单片机串行通信口,串行结构如下:a)数据缓冲器(SBUF)接受或发送的数据都要先送到SBUF缓存。
有两个,一个缓存,另一个接受,用同一直接地址99H,发送时用指令将数据送到SBUF即可启动发送;接收时用指令将SBUF中接收到的数据取出。
b)串行控制寄存器(PCON):SCON用于串行通信方式的选择,收发控制及状态指示,各位含义如下:SM0,SM1:串行接口工作方式选择位,这两位组合成00,01,10,11对应于工作方式0、1、2、3。
串行接口工作方式特点见下表表1.2.1 串行口工作方式表SM2:多机通信控制位。
REN:接收允许控制位。
软件置1允许接收;软件置0禁止接收。
TB8:方式2或3时,TB8为要发送的第9位数据,根据需要由软件置1或清0。
RB9:在方式2或3时,RB8位接收到的第9位数据,实际为主机发送的第9位数据TB8,使从机根据这一位来判断主机发送的时呼叫地址还是要传送的数据。
双机互联--怎样实现两台电脑的通信
双机互联--怎样实现两台电脑的通信————————————————————————————————作者:————————————————————————————————日期:双机互联随着时代的发展,电脑在现在的家庭中的普及程度越来越高,而且已经有很多的家庭拥有了两台甚至两台以上的电脑。
对于这些用户来说,如何把两台电脑连接在一起,组成一个最小规模的局域网,用来共享文件,联机玩游戏,共享打印机等外设,甚至共享MODEM上网就成为应用中的一个焦点,这就是我们这里所说的“双机互联”。
双机互联方法很多,你可以使用两块以太网卡,通过非屏蔽双纹线(UTP)连接;也可以通过串口或并口直接连接,或使用USB接口连接,还可以利用计算机的红外线接口无线连接以及通过两台MODEM通过拨号实现远程共享等等。
一、使用USB线双机互联使用USB线双机互联是最新的双机互联方法,它借助于专用的USB线通过两台计算机的USB口连接后再实现数据交换,不仅传输速率大大超越传统的串口/并口(最高可达6Mb/s,一般情况下也可超过4Mb/s),而且实现真正的即插即用。
它具有以下的特点:(1)可提供高达6Mbps的传输速率。
USB文件传输连接电缆可提供的传输速率比并口快500%,比串口快700%。
(2)能够检测到远程的PC,可以分别在两个窗口方便地剪切、拷贝、粘贴或拖拉文件。
也可以把远程的文件在本地电脑的打印机进行打印。
(3)具有热插拔功能和远程唤醒功能,传输的长度为2~4.5米。
(4)系统要求低。
Pentium 100MHz或更高,一个USB端口,支持Windows 95、OSR2.1、Windows 98、Windows 2000或Windows XP操作系统。
方法:只需要购买一根专用的USB联机线即可,由于USB可以热插拔,因此使用非常简单方便。
在插上线以后,需要安装相应的应用程序才能实现功能,安装完成以后可以进行共享光驱、打印文件、运行程序等操作,和一般的双机互联不同的是,每一台机器都拥有对另一台机器的完全操作权利,而不管是否设置了共享。
485双机通信案例原理与测试说明
“485双机通信”功能实现说明1程序设计目标及程序运行效果说明程序设计目标:通过本例程理解RS485通信方式,实现双机通信。
程序运行效果:将两块带有485模块的51单片机通过485外接引脚A、B连接起来,单片机上电烧写程序后485模块的D/R引脚所对应的二极管均点亮,然后通过按键KEY3、KEY2控制数码管上的数值进行加减处理,两块单片机起始都默认为接收状态,最后按下KEY1发送键,将数据传送给另一块单片机,而此时接收方数码管上的数值发生相应的改变,与发送方数码管上的数值一致。
2程序相关电路及工作原理说明2.1 RS485通信原理RS232接口是1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。
针对RS232的不足,于是不断出现了新的接口标准,RS485就是其中的一种。
RS485接口的最大传输距离标准值为4000英尺,实际上可达 3000米,另外RS232接口在总线上只允许连接1个收发器,即单站能力。
而RS485接口在总线上是允许连接多达128个收发器。
即具有多站能力,这样用户可以利用单一的RS485接口方便地建立起设备网络。
RS485属于半双工通信,数据可以在一个信号载体的两个方向上传输,但是不能同时进行传输。
电平转换采用差分电路方式,A、B两线的电压差大于0.2认为是逻辑“1”,小于-0.2认为是逻辑“0”,方便与TTL电路连接。
使用RS485进行通信与RS232通信的逻辑是一致的,但RS485抗干扰性更强,传输距离更远。
RS485广泛运用在工业自动化控制、视频监控、门禁对讲以及楼宇报警等各个领域。
图1 485模块电路原理图MAX485芯片的功能是将TTL电平转换为RS485电平,引脚功能如下:(1)485 D/R输出、接收信号控制引脚:当该引脚为低电平时,485为接收态,MAX485通过485_RXD把来自总线的信号输出给单片机;当该引脚为高电平时,485为发送态,来自485_TXD的输出信号通过A、B引脚加载到总线上。
双机互连通信
实验11 双机互连通信【实验目的】1、通过实现两台计算机互连通信,掌握双机互连的硬件要求及网络配置的基本要领。
2、熟练掌握两台计算机互连通信的方法。
【实验内容】1、两台计算机物理互连;2、设置共享文件夹;3、网络配置;4、数据互访。
【实验器材】按实验组提供(2人一组):计算机两台(配置网卡)、交叉网线1根。
【预备知识】一、双机互连的主要作用双机互连是两台计算机之间连接的最简单方式,双机互连的目的是实现两台计算机之间的相互通信,它能够做到文件级别的共享。
双机互连最大的优点是成本低、连接简单,最大的缺点是连接速度受计算机本身连接端口传输速度的限制。
二、双机互连的连线方法从连线方法上可以分这样几种:1、用串口LL3/LL4线连接。
用一根接口头都是阳性的串口线连接,要求两台电脑都具有空闲串口。
电脑上的串行口有两种,其一为9芯,当前流行的主板上通常只保留1个(早期的主板都提供2个);另外一种则是25芯的插座,它跟打印机用的并口很相像,当前流行的主板上已没有了这种接口,只有比较老的电脑上才有。
这种连接方法最慢,即使使用16550UART串口芯片,最高也就能达到115200bps,约合14KB/s(使用8250 UART串口芯片的旧电脑速度更慢)。
但该方法几乎可以连接任何旧电脑,使用DOS下的通讯软件都可以,不需要依赖Win 9x(当然也可以在Win 9x下使用该方法),非常方便。
2、使用并口LL3/LL4线连接。
用一根接口头都是阳性的并口线连接,要求两台电脑都具有空闲并口。
因为每台电脑一般只有一个并口,可能已经被打印机占用,但可以临时让LL3/LL4并口线使用。
这种方法比串口速度更快,尤其是Win 9x还支持增强的并口模式(EPP/ECP),理论传输值可达300KB/s(实际传输值在100KB/s)。
注意,连接并口打印机的并口线,其两端分别是阳性(连接电脑并口)和打印机的特殊接口(连接打印机)。
3、无线(红外)连接。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
串口通信实验
一实验目的:
掌握串口工作方式,掌握双机通信原理和程序的编写方法
二实验内容
1 元件清单
元件名称说明
AT89C51或80C51 51单片机
CAP 电容
CAP-ELEC 电容
CRYSTAL 晶振
RES 电阻
LOGICSTATE 数字量开关
LED-BARGRAPH-GRN
2 电路原理图
单片机工作在方式1,欲发送的数据由P1口输入,接收数据从P2口输出。
单片机的RXD 引脚接另一个单片机的TXD引脚;TXD引脚接另一个单片机的RXD引脚。
3、流程图
4 程序
ORG 0000H
LJMP MAIN
ORG 0023H
LJMP INS
ORG 0030H MAIN: MOV SP, #06H
MOV SCON, #50H MOV PCON, #00H
#20H MOV TMOD,
#0E6H
MOV TL1,
MOV TH1, #0E6H SETB EA
SETB ES
SETB TR1
#0FFH
MOV P1,
LP0: M OV A, P1
MOV SBUF, A LP: JNB TI, LP
CLR TI
LJMP LP0
INS: CLR EA
LP1
TI,
JNB
CLR TI
LJMP EXIT
LP1: C LR RI
MOV A, SBUF
A
MOV P2,
EXIT: SETB EA
RETI
END
5 根据流程图、原理图分析程序,给每条语句加上注释,并根据程序分析出波特率是多少?四实验结果
自己写。