实验六——双机通信及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需要不断等待单片机发送和接收完数据后才能进行下一步的操作。
采用中断法时,CPU可以依照主函数进行操作,当出现中断请求标志时,CPU保存程序断点后开始执行中断函数。
由于本次2#机源程序中的主函数采用的是空运行并没能直观地反映出采用中断法与查询法的区别。
但从理论上看,采用中断法能够更加高效地利用CPU的空间。
4、PCB设计图
(1)PCB原理图
图6 PCB封装原理图
(2)PCB_LED封装
(3)电路图封装
(4)光绘文件分层图形
5、实验小结
通过本次试验,我顺利完成了单片机的异步通信功能,实现了1#机循环发图7 PCB_LED 封装尺寸图
图8 PCB_LED 封装图 图9 PCB 布线图10 3D 效果图
底部铜箔层 顶部丝印层
顶部铜箔层
送0-F数据,2#机实时接收数据,两机数据通过各自的BCD数码管显示出来。
对2#机采用中断法进行编程,生成“.hex”文件加载在单片机上后,成功实现了仿真运行。
通过与同学讨论,我们简单分析出了查询法与中断法的区别,即中断法能够更加高效地利用CPU的内存空间。
除此之外,本次试验过程中,我们初步学习和操作了proteus软件中ARES 模块的功能,熟悉了单片机从开发到制成成品的过程。
实验六计算机之间通信应用的操作
实验六:计算机之间通信应用的操作一、实验目的
学习计算机之间通信的应用
二、实验内容
1.设计硬件通信电路,电路如下:
说明:RxD0和TxD0接和,RxD1和TxD1不接。
我在PROTEL99中找不到相应的硬件,仅完成部分布线。
2.设计通信控制程序,要求如下:
程序1:建立实验板和普通计算机的连接,实验板通过串口不断发送“Hello”字符串,在普通计算机串口处接收该字符串。
是
程序2:交通灯人工控制,用普通计算机串口连接实验板串口,当发送键“1”ASCII 码时,实现东绿灯,其他红灯、当发送键“2”ASCII码时实现南绿灯,其他红灯、当发送键“3”ASCII码时实现西绿灯,其他红灯、当发送键“4”ASCII码时实现北绿灯,其他红灯。
中断程序框图:
3.使用Flash Magic软件将应用程序写入实验板,验证程序。
三、选作
1.设计两个实验板之间的通信程序,通过RS232接口连接两个实验板,当A实验板按1号键时,B实验板亮一个红灯,当A实验板按2号键时,B实验板亮两个红灯,当A实验板按3号键时,B实验板亮三个红灯,当A实验板按4号键时,B实验板亮四个红灯,反之,B实验板按1号键时A实验板亮一个红灯…。
中断程序框图:
2.使用Flash Magic软件将应用程序写入实验板,验证程序。
3.使用C51语言实现本次实验的所有程序。
单片机串行口应用实验双机通信
单片机串行口应用实验_双机通信一.设计要求利用两个8031单片机实现甲乙两机间的信息串行通信。
二.设计作用和目的1、注重培养综合运用所学知识、独立分析和解决实际问题的能力,培养创新意识和创新能力,并获得科学研究的基础训练。
2、了解8031各脚的功能,工作方式,计数/定时,I/O口的相关原理,掌握双机通信的原理和方法,并巩固学习单片机的相关内容知识。
3、通过软硬件设计实现两片8031单片机间的信息串行通信,以及74LS373、62256和2764等芯片的应用。
4、掌握串行口工作方式的程序设计,掌握单片机通信程序编制方法。
5、掌握双机通信的原理和方法,了解实现串行通信的硬环境,数据格式的协议,数据交换的协议。
三.具体内容1、先在发送端1号机上显示班级号,然后送到接受端2号机上显示。
2、接下来在发送端1号机上输入学号显示,然后送到接受端2号机上显示。
如:某学生的班级号为050901,学号为0502030;则:3、先在发送端1号机上显示050901,然后送到接收端2号机上显示050901。
4、接下来在发送端1号机上输入学号0502030显示,然后送到接受端2号机上显示0502030。
四.硬件设计五.实验说明1、实验时需将1号机8031串行接收信号线(RXD)连到2号机8031串行发送信号线(TXD),1号机的(TXD)连到2号机的(RXD)。
2、两台实验机必须共地。
实验接线图P3.1 GND P3.0P3.0 GND P3.18031一号机8031二号机六、画出发送与接收程序流程图七、实验步骤1、用8芯排线将8279区JB51(a-h)连接到数码管显示区的CODE,JB53(BIT0-BIT7)连接到数码管显示区的BIT。
用4芯排线将8279区的JB52(RL0-RL3)连到键盘区的KH上;JB54(KBIT0-KBIT3)连到键盘区的KL上。
8279区8279CS2连到系统译码的Y6上,8279CLK连接到固定脉冲的1MHz。
单片机双机通信课程设计报告
目录1.题目设计要求 (4)2.系统的组成及工作原理 (4)2.1系统组成 (4)2.1工作原理 (4)2.3双机通讯的方案选择 (5)3.器件的功能及作用 (6)3.1硬件设计 (6)3.2电气设置 (8)3.3DB-9连接器 (8)4.系统硬件设计 (10)5.软件设计 (11)6.系统仿真调试 (18)7.设计体会和收获 (18)8.參考资料 (19)1.题目设计要求:甲乙两机串口双向通信设计要求:利用51单片机,RS232芯片,LED灯,数码管进行双机通信设计。
甲机可按键控制乙机的LED显示;乙机可按键控制甲机的数码管显示。
完成以下设计环节:1)使用Altium Desinger开发工具,设计电路原理图。
2)使用Uvision2开发平台,采用C语言或汇编语言设计软件程序。
3)使用PROTEUS仿真软件,设计仿真原理图并运行软件程序,完成系统仿真。
2.系统的组成及工作原理2.1系统组成图2.1 总体框图2.2工作原理双机通信系统通过甲乙单片机的串行口来实现数据的收发。
甲单片机通过开关电路来启动发送程序,甲机当开关按下时向乙机发送一个数据,乙机上蜂咛器发出声音提示有数据发送过来,乙机通过接收中断来接收和开关判断是否接收甲机发送过来的数据,并通过编写好的数据代码在8个发光二极管上显示主机发送过来的数据。
乙单片机通过开关电路来启动发送程序,乙机给甲机发送一数据,甲机上蜂咛器发出声音提示有数据发送过来,甲机通过接收中断来接收和开关判断是否接收乙机发送过来的数据,并通过编写好的数据代码在8个发光二极管上显示乙机发送过来的数据。
2.3 双机通讯的方案选择设计方案:该系统采用主从共两片AT89C52单片机来实现上位机对下位机的控制,由于是近距离的双机通信,我们采用单片机直接交叉连接的方式,上位机发送的数据由串行口TXD端输出,直接由下位机的串行口数据接收端RXD接收。
需要注意的是一定要保证主从机相同的数据传输速率,即要求设置相同的波特率。
双机通信 课程设计报告
目录第一章系统的功能 (2)第二章系统的设计方案 (3)2.1硬件设计 (3)2.1.1涉及的芯片 (3)2.1.2 8251A芯片 (3)2.1.3 8279芯片 (5)2.2软件设计 (13)2.2.1设计简单介绍 (13)2.2.2 模块设计详细分析 (14)第三章操作说明 (17)第四章总结 (18)参考文献 (19)附: (20)1、硬件原理图 (20)2、程序流程图 (21)3、源程序清单及注释 (23)第一章系统的功能随着计算机的不断普及,在我们的周围可能会同时出现多台微型计算机,而且这些计算机的牌号,后型号不同,而且有的格式不兼容。
于是利用单片机串行口实现不同计算机之间的相互通信,以达到信息或程序的共享是非常有用的。
另一方面,在某计算机的软磁盘驱动器万一出现故障的情况下,也可以通过它将计算机硬盘的数据或程序拷贝出来。
文件传输程序可以用来在两个计算机之间传输任何类型的文件(包括二进制文件),对于那些有不同类型的计算机特别有用。
网络的发展,局域网的建立,使得一个文件服务器以及允许其他计算机从服务器中装入文件或将它们存入文件服务器也可以通过串口来实现。
第二章系统的设计方案2.1硬件设计2.1.1涉及的芯片1. 8251A接口芯片用于实现微机间的通信,发送数据;2. 8279芯片用于微机间接受数据和显示数据;2.1.2 8251A芯片8251A是一种可编程的同步/异步串行通信接口芯片,具有独立的接收器和发送器,能实现单工、半双工、双工通信。
由于近距离传输,所以可以不用MODEM,而直接互连。
同时采用查询方式,故接收/发送程序中只需检查发送/接收的准备好状态是否置位,在准备好时就发送或接收一个字节。
(1)在实验过程中,数据通信的基本方式可分为并行通信与串行通行,而我们的实验正是采用了串行通行方式,这种方式通信线路简单,利用线路就可实现通信,这样实验易于实现并且降低了成本,而且适合远距离通信。
基于单片机的双机通信实训报告
一.设计方案根据题目分析可知硬件电分为主机模块和从机模块。
主机模块中包含单片机子模块、lcd1602显示子模块和矩阵键盘模块,从机模块则包括单片机子模块、LED显示模块。
在主模块中由AT89C51单片机担任主机,LCD1602担任显示设备和由4位独立按键做矩阵键盘。
在整个系统中有一个从机模块,有一片AT89C51单片机担任从机模块的控制模块,串口采用单工及异步通信方式。
整个硬件结构原下图所示。
主机从机二.硬件分析(1)控制模块控制模块采用AT89C51作为主控芯片,11.0592MHZ的晶振频率作为时钟震荡电路。
基本电路图如下所示。
仿真图由于在protues里面,单片机内部默认自带晶振,所以不需要再连接振荡电路。
控制模块原理图(2)显示模块采用LCD1602作为显示模块,LCD1602用来显示当前从机LED的状态。
仿真图如下所示:仿真图在画原理图时,由于没有LCD1602的封装。
所以,本人直接用16跟引脚的排针代替。
然后在给相应的引脚表上网络位口。
但是再画PCB,必须控制好原件之间的距离,以免导致制版时,元件位置冲突。
原理图如下所示:原理图(3)矩阵键盘模块矩阵键盘用来给单片机输入一个电平值,然后再通过主机CPU发送给从机,最后从机CPU接收,并通过LED显示出结果。
当按键按下,相当于给主机CPU 送入一个低电平,主机再把这个电平值发送给从机。
因为LED是采用共阳连接的方式,所以可以点亮LED。
矩阵键盘仿真图,以及原理图如下所示:仿真图原理图(4)LED显示模块LED显示模块,主要用来显示主机送给从机的电平值是高电平还是低电平,同时也可以用来检测,整个通信系统是否能够正常工作。
为了整个电路简化,以及效果更明显,所以决定采用共阳连接的方式。
LED显示模块的仿真图,以及原理图如下所示:仿真图原理图三.软件分析根据题目分析可知硬件电分为主机模块和从机模块。
AT89C51单片机担任主机模块和从机模块的控制模块,串口采用单工及异步通信方式。
单片机双机串行实验报告
单片机双机串行实验报告实验目的:通过单片机实现双机串行通信功能,掌握串行通信的原理、方法和程序设计技巧。
实验原理:双机串行通信是指通过串行口将两台单片机连接起来,实现数据的传输和互动。
常用的串行通信方式有同步串行通信和异步串行通信。
异步串行通信是指通过发送和接收数据时的起始位、停止位和校验位进行数据的传输。
而同步串行通信是指通过外部时钟信号进行数据的同步传输。
实验器材:1.两台单片机开发板(MCU7516)2.两个串口线3.两台计算机实验步骤:1.将两台单片机开发板连接起来,通过串口线连接它们的串行口。
2.在两台计算机上分别打开串口调试助手软件,将波特率设置为相同的数值(例如9600)。
3.在编程软件中,编写两个程序分别用于发送数据和接收数据。
4.在发送数据的程序中,首先要设置串口的波特率、数据位、停止位和校验位,并将数据存储在缓冲区中。
然后利用串口发送数据的指令将数据发送出去。
5.在接收数据的程序中,同样要设置串口的参数。
然后使用串口接收数据的指令将接收到的数据存储在缓冲区中,并将其打印出来。
实验结果与分析:经过实验,我们成功地实现了单片机之间的双机串行通信。
发送数据的单片机将数据发送出去后,接收数据的单片机能够正确地接收到数据,并将其打印出来。
实验中需要注意的是,串口的波特率、数据位、停止位和校验位必须设置为相同的数值。
否则,发送数据的单片机和接收数据的单片机无法正常进行通信。
同时,在实验之前,需要了解单片机开发板支持的串口通信相关的指令和函数。
实验总结:通过本次实验,我们深入了解了单片机之间的双机串行通信原理和方法。
掌握了串口的设置和使用方法,以及相关的指令和函数。
在实验中,我们学会了如何通过串行口实现数据的传输和互动,为今后的单片机应用和开发打下了基础。
同时,我们还发现,双机串行通信在实际应用中有着广泛的用途。
例如,可以通过串行通信实现两台计算机之间的数据传输,或者实现单片机与计算机之间的数据收发。
0522单片机实训教程电子教案第6章
6.3.5 实训步骤(1)按硬件电路原理图连接电路。(2)理解程序,给每条指令加注释,并画出程序流程图。(3)分别将实训程序机器码送入单片机开发系统中,并检查程序是否正确。(4)预先为片内RAM 30H单元送入一个数据,如(30H)=AAH。连续执行程序,观察发光二极管的亮灭变化,是否与传送的数据相符。6.3.6 实训程序 串口方式0扩展输出口实训程序见表6-3、表6-4、表6-5所示。
11
SETB C
产生停止位
2013
9290
12
MOV P1.0,C
20
2017
7C04
14
DELY: MOV R4,#4
2019
7EFA
15
LL3: MOV R6,#250
201B
7D64
16
LL2: MOV R5,#100
6.2 实训22 串行数据传送6.2.1 实训目的 通过本节实训,主要学习下面内容: 串行数据传送的工作原理。 通过实例理解串行通信的含义。 理解波特率的概念。
6.2.2 实训要求 将片内RAM20H中的并行数据转换成串行数据,送到接在P1.0脚上的发光二极管显示,其波特率为1位/秒。 6.2.3 实训器材 MCS-51单片机开发系统、发光二极管6.2.4硬件电路原理图 并行数据转换成串行数据实训电路如图6-8所示。
6.1 实 训 概 要 MCS-51单片机内部除了4个并行I/O口外,还设置一个全双工串行口。在串行接口电路中,二进制数据一位一位一次传送,串行通信只需要2根传输线即可完成,传送成本低,适合于远距离传输。例如,在单片机之间、单片机与IBM PC机之间以及单片机与外部设备之间的数据传送,就依靠串行通信实现。其缺点是速度较慢。
双机通信系统的设计
目录一、课程设计的目的与要求 (2)二、课程设计课题的分析 (2)三、课程设计的结果 (6)四、课程设计的心得与体会 (9)五、参考文献 (10)双机通信系统的设计一、课程设计的目的与要求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”信号。
实验 双机互联参考资料实验报告
实验双机互联参考资料实验报告一、实验目的本次实验的主要目的是实现两台计算机之间的互联,深入了解双机互联的原理、方法和应用场景,通过实际操作掌握相关技术和配置过程,为后续的网络通信和资源共享打下基础。
二、实验设备1、两台计算机(以下分别称为计算机 A 和计算机 B),配置要求:具备以太网接口,安装有操作系统(如 Windows 10 或 Linux 操作系统)。
2、以太网线(交叉线或直通线,根据计算机网卡类型选择)。
三、实验原理双机互联是指将两台计算机通过某种方式连接在一起,实现数据交换和资源共享。
常见的双机互联方式有有线连接和无线连接。
在本次实验中,我们采用有线连接中的以太网连接方式。
以太网是一种广泛应用的局域网技术,通过以太网线将计算机的网卡连接起来,形成物理链路。
在网络层,需要为计算机配置 IP 地址、子网掩码、网关等参数,使其能够在网络中进行通信。
四、实验步骤1、硬件连接首先,关闭计算机 A 和计算机 B 的电源。
根据计算机网卡类型,选择合适的以太网线(如果计算机网卡支持自适应,则可以使用直通线;否则,使用交叉线)。
将以太网线的一端插入计算机 A 的以太网接口,另一端插入计算机 B 的以太网接口。
2、配置计算机 A 的网络参数打开计算机 A,进入操作系统。
点击“开始”菜单,选择“设置”,在设置窗口中点击“网络和Internet”。
在网络和 Internet 页面中,选择“更改适配器选项”。
找到以太网适配器,右键点击并选择“属性”。
在以太网属性窗口中,双击“Internet 协议版本 4(TCP/IPv4)”。
在弹出的“Internet 协议版本 4(TCP/IPv4)属性”窗口中,选择“使用下面的 IP 地址”。
输入以下参数:IP 地址:19216801子网掩码:2552552550网关:可不填点击“确定”保存设置。
3、配置计算机 B 的网络参数按照与计算机 A 相同的步骤打开网络设置。
在“Internet 协议版本 4(TCP/IPv4)属性”窗口中,输入以下参数: IP 地址:19216802子网掩码:2552552550网关:可不填点击“确定”保存设置。
双机通信系统单片机课程设计
双机通信系统单片机课程设计设计概况 (3)1 总体设计 (4)1.1 设计要求 (4)1.2 设计方案 (4)2 双机通信硬件设计 (5)2.1 AT89C51简介 (5)2.2 AT89C51串行口的工作方式 (6)2.3 晶振电路设计 (9)2.4 复位电路设计 (10)2.5 接口电路的设计 (10)2.6 输入输出电路设计 (12)3 双机通信软件设计 (15)3.1 串行通信软件实现 (15)3.2 串行通信程序流程 (15)3.3 程序清单 (18)4 软件仿真 (22)5 硬件连接 (23)6 设计总结 (25)参考文献 (26)设计概况要构成一个较大规模的控制系统,常常需要采用多机控制实现,而AT89C51单片机有一个异步通信方式的全双工串行接口,可以方便地构成双机、多机系统。
而串行通信也成为单片机与单片机、单片机与上位机之间进行数据传输的主要方式,是一种适用于远距离通信的数据传输方式。
串行通信是单片机的一个重要应用。
本次课程设计就是要利用单片机来完成一个系统,实现双片单片机串行通信。
通信的结果实用数码管进行显示,数码管采用查表方式显示。
两个单片机之间采用RS232进行双机通信。
在通信过程中,使用通信协议进行通信。
关键词:单片机;串行通信;接口1 总体设计1.1 设计要求设计一个单片机双机通信系统,单片机A接1个8位按键开关,单片机B 接8个发光二极管,通过串行通信实现由A机拨码开关控制B机发光二极管的亮灭。
1.2 设计方案本次设计,对于两片AT89C51,采用RS-232进行双机通信。
如图1所示,发送方的数据由串行口TXD段输出,经过电平转换芯片MAX232将TTL电平转换为RS-232电平输出,经过传输线将信号传送到接收端。
接收方也使用MAX232芯片进行电平转换后,信号到达接收方串行口的接收端。
接收方接收后,在LED二极管上显示接收的对应信息。
图1 双机通信系统原理框图软件部分,通过通信协议进行发送接收,发送机先送联络信号给接收机,当接收机接收到联络信号后,向发送机回答一个应答信号,表示同意接收。
