基于51单片机的双机串行通信课程设计.doc

基于51单片机的双机串行通信课程设计.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于51单片机的双机串行通信课程设计 总体设计 1设计目的 1.通过设计相关模块充分熟悉51单片机的最小系统的组成和原理; 2.通过软件仿真熟悉keil和proteus的配合使用; 3.通过软件编程熟悉51的C51编程规范; 4.通过实际的硬件电路搭设提高实际动手能力。 2.设计要求: 两片单片机之间进行串行通信,A机将0x06发送给B机,在B机的数码管上静态显示1,B机将0~f动态循环发送到A机,并在其数码管上显示。 3.设计方案: 软件部分,通过通信协议进行发送接收,A机先送0x06(B机数码管显示1)给B机(B机静态显示),当从机接收到后,向B机发送代表0-f的数码管编码数组。B收到0x06后就把数码表TAB[16]中的数据送给从机。 二、硬件设计 1.51单片机串行通信功能 图1.AT89C51(52) 计算机与外界的信息交换称为通信,常用的通信方式有两种:并行通信和串行通信。51单片机用4个接口与外界进行数据输入与数据输出就是并行通信,并行通信的特点是传输信号的速度快,但所用的信号线较多,成本高,传输的距离较近。串行通信的特点是只用两条信号线(一条信号线,再加一条地线作为信号回路)即可完成通信,成本低,传输的距离较远。 51单片机的串行接口是一个全双工的接口,它可以作为UART(通用异步接受和发送器)用,也可以作为同步移位寄存器用。51单片机串行接口的结构如下: (1)数据缓冲器(SBUF) 接受或发送的数据都要先送到SBUF缓存。有两个,一个缓存,另一个接受,用同一直接地址99H,发送时用指令将数据送到SBUF即可启动发送;接收时用指令将SBUF中接收到的数据取出。 (2)串行控制寄存器(PCON) SCON用于串行通信方式的选择,收发控制及状态指示,各位含义如下: SM0 SM1 SM2 REN TB8 RB8 TI RI SM0,SM1:串行接口工作方式选择位,这两位组合成00,01,10,11对应于工作方式0、1、2、3。串行接口工作方式特点见下表 SM0 SM1 工作方式 功能 波特率 0 0 0 8位同步移位寄存器(用于I/O扩展) fORC/12 0 1 1 10位异步串行通信(UART) 可变(T1溢出率*2SMOD/32) 1 0 2 11位异步串行通信(UART) fORC/64或fORC/32 1 1 3 11位异步串行通信(UART) 可变(T1溢出率*2SMOD/32) SM2:多机通信控制位。 REN:接收允许控制位。软件置1允许接收;软件置0禁止接收。 TB8:方式2或3时,TB8为要发送的第9位数据,根据需要由软件置1或清0。 RB9:在方式2或3时,RB8位接收到的第9位数据,实际为主机发送的第9位数据TB8,使从机根据这一位来判断主机发送的时呼叫地址还是要传送的数据。 TI:发送中断标志。发送完一帧数据后由硬件自动置位,并申请中断。必须要软件清零后才能继续发送。 RI:接收中断标志。接收完一帧数据后由硬件自动置位,并申请中断。必须要软件清零后才能继续接收。 (3)输入移位寄存器 接收的数据先串行进入输入移位寄存器,8位数据全移入后,再并行送入接收SBUF中。 (4)波特率发生器 波特率发生器用来控制串行通信的数据传输速率的,51系列单片机用定时器T1作为波特率发生器,T1设置在定时方式。波特率时用来表示串行通信数据传输快慢程度的物理量,定义为每秒钟传送的数据位数。 (5)电源控制寄存器PCON 其最高位为SMOD。 (6)波特率计算 当定时器T1工作在定时方式的时候,定时器T1溢出率=(T1计数率)/(产生溢出所需机器周期)。由于是定时方式,T1计数率= fORC/12。产生溢出所需机器周期数=模M-计数初值X。 3.整体电路设计 最终设计电路如下图3所示,发送方的数据由串行口TXD段输出,经过传输线将信号传送到接收端。信号到达接收方串行口的接收端。接受方接收后,通过P1口在数码管上显示接收的信息。 图3.串行通信电路 三、软件设计 (1)串行口工作于方式用定时器1产生bit/s的波特率。 功能:将本机中个数发送到从机,并保存在从机内部中 (3)通信协议:主机首先发送连络信号从机接收到之后返回一个连络信号表示从机已准备好接收。 图4.仿真图 注: 1.仿真的过程中并没有体现出单片机的最小系统的组成元素:时钟电路和复位电路,但是实际的硬件电路中这两部分是必不可少的,此外,在实际测试中,程序是事先烧进单片机里的,所以这里并没有涉及到电平转换的问题(max232芯片和串口的连接)。 在数码管的共阴极与地之间接三极管是为了放大数码管的驱动电流,让数码管更加清楚的显示数据。 附:主要器件:两个STC89C52RC 晶振模块:两个11.0592M

文档评论(0)

文档分享 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档