双机通信系统_第1页
双机通信系统_第2页
双机通信系统_第3页
双机通信系统_第4页
双机通信系统_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、*学校课程设计说明书2012/2013学年第 1 学期学 院:电子与计算机科学技术学院专 业:电子科学与技术学 生 姓 名:*学 号:*课程设计题目:双机通信系统起 迄 日 期:2013年*月 *日2013年*月*日课程设计地点:电子科学与技术专业实验室指 导 教 师:*系主任:*完成日期: 2013年 *月 *日 课 程 设 计 任 务 书1设计目的: 掌握电子电路的一般设计方法和设计流程; 学习使用PROTEL软件绘制电路原理图及印刷板图; 掌握应用EWB对所设计的电路进行仿真,通过仿真结果验证设计的正确性。2设计内容和要求(包括原始数据、技术参数、条件、设计要求等):设计一个双机通信系统

2、,具体要求如下:1. 甲机采集数字信号通过422接口传输到乙机。2乙机接收甲机传来的数字信号,并用LED显示。3设计工作任务及工作量的要求包括课程设计计算说明书(论文)、图纸、实物样品等: 课程设计说明书; 电路原理图和印刷板图; 仿真图形和仿真结果。 课 程 设 计 任 务 书4主要参考文献: 童诗白模拟电子技术基础北京:高等教育出版社,2002 张建华数字电子技术北京:机械工业出版社,2004 陈汝全电子技术常用器件应用手册北京:机械工业出版社,2005 毕满清电子技术实验与课程设计北京:机械工业出版社,2005 潘永雄电子线路CAD实用教程西安:西安电子科技大学出版社,2002 张亚华电

3、子电路计算机辅助分析和辅助设计北京:航空工业出版社,20045设计成果形式及要求:提交内容:课程设计说明书、电路原理图和印刷板图、仿真图形和仿真结果。基本要求:绘制出电路原理图和印刷板图,通过仿真验证设计正确性。6工作计划及进度:2013年1月2日2013年1月7日:学习PROTEL、EWB软件的使用;2013年1月8日:设计中期检查;2013年1月8日2012年1月14日:按任务书要求进行设计和仿真;2013年1月15日:设计答辩,提交设计报告和考核。系主任审查意见: 签字: 年 月 日 目录引言.21 系统整体设计.31.1系统设计思路.31.2系统设计原理.31.2.1串行通信.31.2

4、.2基本设计原理述.51.3系统设计结构图.52.硬件电路设计及实现.62.1硬件电路设计方案.62.2硬件电路的实现.62.2.1以89C51为核心的单片机最小系统.62.2.2数码管显示模块.72.2.3主机校验指示模块.73. 软件系统实现.73.1 软件实现方案分析.7 3.1.1串行通信分为查询方式和中断方式.73.2 主程序.74 总结.114.1心得体会.115 附录.12 5.1 PROTEL软件绘制电路原理图及印刷板图.135.2 Proteus仿真图.14引言【摘要】串行通信是单片机的一个重要应用。本设计就是利用单片机来完成一个系统,实现双片单片机串行通信。随着计算机技术的

5、快速发展和广泛应用,从智能家用电器到工业上的控制系统都采用了上位机与下位机基于串行通信的主从工作方式,这样就充分利用了微机分析处理能力强、速度快的特点及下位机(单片机)面向控制、使用灵活方便的优势。由于87C51系列单片机具有性能稳定、工作可靠、价格低廉等可特点,因此其应用相当广泛。87C51单片机中有异步通信串行接口,能方便的构成双机,多机通信接口。随着测量向自动化,智能化,网络化方向的发展。利用多机通信构成的分布式系统逐渐普及。本实验就点对点的双机通信进行训练。学习串口的工作方式,初始化编程,和单片机与单片机点对点通信的编程方法以及硬件电路的设计方法。在此基础上可以进一步提高,实现多机通信

6、以及单片机与PC机的通信。【关键字】 双机通信 从机应答 单片机 1.系统整体设计1.1系统设计思路该系统采用主从共两片87C51单片机来实现上位机对下位机的控制,由于是近距离的双机通信,我们采用单片机直接交叉连接的方式,上位机发送的数据由串行口TXD端输出,直接由下位机的串行口数据接收端RXD接收。需要注意的是一定要保证主从机相同的数据传输速率,即要求设置相同的波特率。电路分为数码管显示模块,主机校验指示模块、以及单片机工作的基本复位、晶振模块。1.2.系统设计原理1.2.1串行通信串行数据通信要解决两个关键问题,一个是数据传送,另一个是数据转换。所谓数据传送就是指数据以什么形式进行传送。所

7、谓数据转换就是指单片机在接收数据时,如何把接收到的串行数据转化为并行数据,单片机在发送数据时,如何把并行数据转换为串行数据进行发送。单片机的串行通信使用的是异步串行通信,所谓异步就是指发送端和接收端使用的不是同一个时钟。异步串行通信通常以字符(或者字节)为单位组成字符帧传送。字符帧由发送端一帧一帧地传送,接收端通过传输线一帧一帧地接收。而对于两个单片机之间的串行通信,由于具有相同的数据格式及电平且是短距离通信则不必要使用一些电平转化芯片(如max232等)便可直接实现串行通讯,需要注意的是两单片机硬件要共地,软件中需要设置相同波特率。51单片机有一个全双工的异步串行通信口(UART),串行结构

8、如下:(1)数据缓冲器(SBUF)接受或发送的数据都要先送到SBUF缓存。有两个,一个缓存,另一个接受,用同一直接地址99H,发送时用指令将数据送到SBUF即可启动发送;接收时用指令将SBUF中接收到的数据取出。(2)串行控制寄存器(SCON)SCON用于串行通信方式的选择,收发控制及状态指示,各位含义如下:SM0SM1SM2RENTB8RB8TIRISM0,SM1:串行接口工作方式选择位,这两位组合成00,01,10,11对应于工作方式0、1、2、3。串行接口工作方式特点见下表串行口工作方式表SM0SM1工作方式功能波特率 0008位同步移位寄存器(用于I/O扩展)fORC/1201110位

9、异步串行通信(UART)可变(T1溢出率*2SMOD/32)10211位异步串行通信(UART)fORC/64或fORC/3211311位异步串行通信(UART)可变(T1溢出率*2SMOD/32)SM2:多机通信控制位。REN:接收允许控制位。软件置1允许接收;软件置0禁止接收。TB8:方式2或3时,TB8为要发送的第9位数据,根据需要由软件置1或清0。RB9:在方式2或3时,RB8位接收到的第9位数据,实际为主机发送的第9位数据TB8,使从机根据这一位来判断主机发送的时呼叫地址还是要传送的数据。TI:发送中断标志。发送完一帧数据后由硬件自动置位,并申请中断。必须要软件清零后才能继续发送。R

10、I:接收中断标志。接收完一帧数据后由硬件自动置位,并申请中断。必须要软件清零后才能继续接收。(3)输入移位寄存器接收的数据先串行进入输入移位寄存器,8位数据全移入后,再并行送入接收SBUF中。(4)波特率发生器波特率发生器用来控制串行通信的数据传输速率的,51系列单片机用定时器T1作为波特率发生器,T1设置在定时方式。波特率时用来表示串行通信数据传输快慢程度的物理量,定义为每秒钟传送的数据位数。(5)电源控制寄存器PCON其最高位为SMOD。(6)波特率计算当定时器T1工作在定时方式的时候,定时器T1溢出率=(T1计数率)/(产生溢出所需机器周期)。由于是定时方式,T1计数率= fORC/12

11、。产生溢出所需机器周期数=模M-计数初值X。1.2.2基本设计原理概述双机通信系统通过主从单片机的串行口来实现数据的收发。主单片机通过开关电路来启动发送程序,当开关按下时向从机发送一个数据,从机通过接收中断来接收主机发送过来的数据,并通过编写好的数据代码在LED数码管上显示主机发送过来的数据。同时从机给主机发送一个应答信号来表示已经接收到了主机发送过来的数据,在主机接收应答并校验正确,以二极管显示,这样就完成了一个数据的通信过程,等待按键按下,然后继续下一次数据的发送直到结束。1.3系统设计结构图开始等待按键初始化从机查询接收输出完成?N从机回送应答Y主机发送主机中断接收应答Y结束LED闪烁图

12、1.3-1双机通信系统结构图2.硬件电路设计及实现2.1硬件电路设计方案从硬件电路设计的目标出发,我们尽量考虑到可靠、高效、简洁的原则,在整个系统设计过程中严格按照规范进行,做好各部分模块设计最优。简洁是指在满足了可靠、高效的要求后,为了尽量在器件允许的范围内使电路设计导线无交叉,应使电路设计尽量简洁,尽量减少元器件使用数量,缩小电路板面积,使电路部分重量轻。在焊接电路板时由于从机的数码管管脚排布无规律,使得导线不能直接的焊接,我们尽量合理设计元件排列和电路走线,使本系统达到设计要求。2.2硬件电路的实现整个双机通信系统以87C51单片机为主控制器,由数码管为核心的数据显示模块、主机校验指示模

13、块、以及单片机最小系统构成。2.2.1以87C51为核心的单片机最小系统87C51单片机的最小系统采用内部时钟方式:以XTAL1和XTAL2引脚外接晶振,构成了自激振荡器并在单片机内部产生时钟脉冲信号,然后给晶振的每个脚分别外接一个30PF的电容,以此使晶振快速起振并且达到约12MHZ的稳定频率。而在单片机的RST脚接上按键开关以及适当的电阻、电容便构成按键与断电两用的复位电路。具体电路如图2.2.1-1所示:图2.2.1-1单片机最小系统2.2.2数码管显示模块设计中,我们使用的是共阴的两位一体数码管并使用P0口控制数码管段选信号,P2口选取两位为位选信号控制端。拿到数码观后,我们借助万用表

14、进行测试,最终确定为共阴型数码管,进一步测试便得出了该数码管对应的管脚分布图。2.2.3主机校验指示模块 主机接收从机应答信号进行校验,成功后点亮P1口的指示灯并保持一段时间,然后进入等待状态,当按键按下便开始下一次数据传送。这种握手模式是单片机在串行编程中使用的提高数据传输准确性的有效方法。3软件系统实现3.1软件实现方案分析3.1.1串行通信分为查询方式和中断方式编程中,对于从机我们拟定采用中断接收和查询发送方式,原因在于程序开销无异。中断方式使得从机时刻处于准备接收状态,接收后判断范围,显示,再回送。而对于主机,工作流程分析如下:得到按键允许,开始查询发送,查询中等待应答即中断接收,中断

15、后得到应答,使得LED指示灯闪烁,如此往复。串行通信程序设计包括:1)初始化程序:对特殊功能寄存器SCON和PEON的设置,来选择串行口的工作方式,设置通信波特率。由于设计采用了中断方式,则还要对中断系统进行设置;2)发送数据的程序:51单片机串口发送数据的条件是串行口已准备好,此时标志位TI状态为“1”,则需将待发数据传送到发送数据缓冲期SBUF,即启动一次发送;3)接收数据的程序:51单片机串行口接收数据的条件是SCON中的RI置“1”,表明串行口已收到一个字节数据,此时即可置位取数标志;4)通信控制程序:用来控制发送和接收的进行。3.2 主程序/从机#include #define ui

16、nt unsigned int#define uchar unsigned charuchar read_flag=0,x=0;sbit P20=P20;sbit P21=P21;uchar code CODE= 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/*函数功能:延时ms*/void mDelay(uint DelayTime) uchar i; for(;DelayTime0;DelayTime-) for(i=0;i=0&x=9) Display(x); else P0 = 0x00; /共阴/主机#include #defi

17、ne uint unsigned int#define uchar unsigned charsbit Key = P17;sbit Led = P16;uchar code CODE= 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;uchar code table=0,1,2,3,4,5,6,7,8,9 ;/*函数功能:延时ms*/void mDelay(uint DelayTime) uchar i; for(;DelayTime0;DelayTime-) for(i=0;i120;i+);/*函数功能:发送一个字节数据*/void S

18、endData(uchar Data) SBUF = Data; while(TI = 0);TI = 0;/*函数*/void main() uchar Data = 0,i=0; Led = 0; P0 = 0x00; SCON = 0x50;/REN=1,允许串行接收 TMOD = 0x20; PCON = 0x00; TH1 = 0xfd; TL1 = 0xfd; IE = 0x90; TI = 0; RI = 0; TR1 = 1; while(1) if(Key=0) mDelay(500); while(Key=1);if(i=16) Data=tablei; i+; SendData(Data); /*函数功能:中断接收数据,指示灯闪烁*/void S_INT() interrupt 4if(RI) RI = 0; Led=1;mDelay(150);Led=0;4.总结本次实训增强了我查阅资料的方法技巧,更是大大的提高了我们自学的能力,同时也增强了我们的动手能力。我很清楚这个实验的目的,表面上我们最终仅仅只是实现了设计要求的基本功能,但我觉得,这次课程设计更加深刻的意义是从这样一个

温馨提示

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

评论

0/150

提交评论