![at89c51双机串口通信课程设计.doc_第1页](http://file1.renrendoc.com/fileroot_temp2/2020-3/10/d1b478b2-0773-4923-a02f-5014944dfa80/d1b478b2-0773-4923-a02f-5014944dfa801.gif)
![at89c51双机串口通信课程设计.doc_第2页](http://file1.renrendoc.com/fileroot_temp2/2020-3/10/d1b478b2-0773-4923-a02f-5014944dfa80/d1b478b2-0773-4923-a02f-5014944dfa802.gif)
![at89c51双机串口通信课程设计.doc_第3页](http://file1.renrendoc.com/fileroot_temp2/2020-3/10/d1b478b2-0773-4923-a02f-5014944dfa80/d1b478b2-0773-4923-a02f-5014944dfa803.gif)
![at89c51双机串口通信课程设计.doc_第4页](http://file1.renrendoc.com/fileroot_temp2/2020-3/10/d1b478b2-0773-4923-a02f-5014944dfa80/d1b478b2-0773-4923-a02f-5014944dfa804.gif)
![at89c51双机串口通信课程设计.doc_第5页](http://file1.renrendoc.com/fileroot_temp2/2020-3/10/d1b478b2-0773-4923-a02f-5014944dfa80/d1b478b2-0773-4923-a02f-5014944dfa805.gif)
已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计报告书设计名称: 计算机控制技术 题 目: AT89C51的串口通信 学生姓名: XXX 专 业: 计算机科学与技术 班 别: 计科本XXX班 学 号: XXXXXXXX 指导老师: XXX 日 期: 2012 年 7 月 12 日一、主要内容:本课程设计利用两片AT89C51实现双机串口通信;主机发送并显示 10 以下的随机数,从机显示该数的阶乘值,通过开关改变主机输出的数值。设计电路并编写一个串行口方式1收发程序,实现两片AT89C51之间的通信,甲机将数据发送到乙机并显示出来,同样,乙机也可将数据发送到甲机显示出来。二、硬件电路设计及描述1、方案选择及设计思想 单片机(从机)单片机(主机)显示阶乘值显示发的数 2、工作原理在串行通信中,数据是在两个站之间传送的。按照数据传送方向,串行通信可分为三种制式。1). 单工制式(Simplex)单工制式是指甲乙双方通信只能单向传送数据。单工制式如图1所示。2). 半双工制式(Half duplex) 半双工制式是指通信双方都具有发送器和接收器,双方既可发送也可接收,但接收和发送不能同时进行,即发送时就不能接收,接收时就不能发送。半双工制式如图2所示。3). 全双工制式(Full duplex) 全双工制式是指通信双方均设有发送器和接收器,并且将信道划分为发送信道和接收信道,两端数据允许同时收发,因此通信效率比前两种高。全双工制式如图3所示。AT89C51内部有一个可编程全双工串行通信接口。该部件不仅能同时进行数据的发送和接收,也可作为一个同步移位寄存器使用。下面将对其内部结构、工作方式以及波特率进行介绍。图4 AT89C51串行口结构框图 串口通信方式11)方式1发送 方式1输出时,数据由TXD输出,一帧信息为10位,1位起始位0,8位数据位(先低位)和1位停止位1。当执行一条数据写发送缓冲器SBUF的指令,就启动发送。图中TX时钟的频率就是发送的波特率。发送开始时,内部发送控制信号变为有效。将起始位向TXD输出,此后,每经过一个TX时钟周期,便产生一个移位脉冲,并由TXD输出一个数据位。8位数据位全部发送完毕后,置“1” TI。2)方式1接收 数据从RXD(P3.0)脚输入。当检测到起始位的负跳变时,开始接收数据。定时控制信号有两种):接收移位时钟(RX时钟,频率和波特率相同)和位检测器采样脉冲(频率是RX时钟的16倍,1位数据期间,有16个采样脉冲),当采样到RXD端从1到0的跳变时就启动检测器,接收的值是3次连续采样(第7、8、9个脉冲时采样)进行表决以确认是否是真正的起始位(负跳变)的开始。当一帧数据接收完,须同时满足两个条件,接收才真正有效。 RI=0,即上一帧数据接收完成时,RI=1发出的中断请求已被响应,SBUF中的数据已被取走,说明“接收SBUF”已空。 SM2=0或收到的停止位=1(方式1时,停止位已进入RB8),则收到的数据装入SBUF和RB8(RB8装入停止位),且置“1”中断标志RI。若这两个条件不同时满足,收到的数据将丢失。波特率波特率(band rate)是异步通信中每秒钟传送的二进制数码的位数(比特数),单位是位/秒。 作用:1、反映串行通信的速率; 2、反映对传输通道的要求:波特率越高,要求的传输通道的频带宽度就越宽异步通信:波特率为每秒传送的字符数和每个字符位数的乘积。方式 1、3: 波特率=2SMOD(T1溢出率)/32对波特率需要说明的是,当串行口工作在方式1或方式3,且要求波特率按规范取1200、2400、4800、9600时,若采用晶振12MHz和6MHz,按上述公式算出的T1定时初值将不是一个整数,因此会产生波特率误差而影响串行通信的同步性能。解决的方法只有调整单片机的晶振频率fosc,为此有一种频率为11.0592MHz的晶振,这样可使计算出的T1初值为整数。表9-2列出了串行方式1或方式3在不同晶振时的常用波特率和误差。 用两块AT89C51模拟主机和从机,在主机的P2口低4位处设4个按键,并连上高电平,通过按键来给P2口输入09的随机数,在主机的程序里编写的程序主要实现检测P2口的数值,并通过LED显示出来,然后把这个数发出到从机去。在从机里,先通过中断程序取出接收到的数据,然后处理,通过P1来控制片选,P2口来扫描输出高低电平,让LED显示接收到的数的阶乘值。2、原理电路图,各元器件之间的实际连接关系图5 原理电路图3、元器件清单列表:单片机(AT89C51)两片 U1 U2按键开关6个 K1 K2 K3 K4 K5 K6电容6个 C1(20pf) C2(20pf) C3(22uf) C4(20pf) C5(22pf) C6(20pf)电阻两个(1K) R1 R21位的共阴LED数码管1个 2位的共阳LED数码管1个4位的共阳LED数码管1个12Mhz的晶振两个 X1 X2三、软件设计源程序代码发送程序:#include void csh()P2=0;SM0=0;SM1=1;/通信方式设为方式1REN=1;TI=0;RI=0;PCON=0;TH1=0xFd;TL1=0XFd;TMOD=0X20;EA=1;ET1=0;ES=1;TR1=1;/初始化设置void main()int i,j;char c=0;csh();while(1)ES=0;TI=0;c=P2;/检测P2口输入的数据if(P2=0) P1=0x3f; if(P2=1) P1=6; if(P2=2) P1=0x5b; if(P2=3) P1=0x4f;if(P2=4) P1=0x66;if(P2=5) P1=0x6d;if(P2=6) P1=0x7d;if(P2=7) P1=7;if(P2=8) P1=0x7f;if(P2=9) P1=0x6f;/通过P1口输出并显示输入的数据SBUF=c;/把检测到的数据放到发送缓存区发送while(!TI);TI=0;ES=1;for(j=0;j30;j+)for(i=0;i5000;i+)/可以设置延时的长短来改变发送数据的快慢;接收程序#include int c=0;void csh()P2=0xFF;SM0=0;SM1=1;/通信方式设为方式1 REN=1;TI=0;/ 清串口发送中断标志 RI=0; PCON=0; /波特率不倍增TH1=0xFd; /*设定初值,波特率9600 TL1=0XFd;TMOD=0X20; /设置定时器1为工作方式2, 8-bit 自动装载方式 ET1=0; /禁止T1中断EA=1;ES=1; /开串口中断TR1=1; /启动定时器T1/初始化设置void delay1ms(int count) int i; int j; for(i=0;icount;i+) for(j=0;j120;j+); /定义一个延时函数 void intrr() interrupt 4 char temp;temp=SBUF; c=temp;/进入中断取出接收到的数据 RI=0; ES=1;void main() csh();while(1) if(c=1) P1=1; P2=0xF9; delay1ms(2); P1=2; P2=0x40; delay1ms(2); P1=4; P2=0x40; delay1ms(2); P1=8; P2=0x40; delay1ms(2); P1=0x10; P2=0x40; delay1ms(2); P1=0x20; P2=0x40; delay1ms(2); ;/显示000001 if(c=2) P1=1; P2=0x24; delay1ms(2); P1=2; P2=0x40; delay1ms(2); P1=4; P2=0x40; delay1ms(2); P1=8; P2=0x40; delay1ms(2); P1=0x10; P2=0x40; delay1ms(2); P1=0x20; P2=0x40; delay1ms(2); ;/显示000002 if(c=3) P1=1; P2=2; delay1ms(2); P1=2; P2=0x40; delay1ms(2); P1=4; P2=0x40; delay1ms(2); P1=8; P2=0x40; delay1ms(2); P1=0x10; P2=0x40; delay1ms(2); P1=0x20; P2=0x40; delay1ms(2); ;/显示000006 if(c=4) P1=1; P2=0x19; delay1ms(2); P1=2; P2=0x24; delay1ms(2); P1=4; P2=0x40; delay1ms(2); P1=8; P2=0x40; delay1ms(2); P1=0x10; P2=0x40; delay1ms(2); P1=0x20; P2=0x40; delay1ms(2); ;/显示000024 if(c=5) P1=1; P2=0x40; delay1ms(2); P1=2; P2=0x24; delay1ms(2); P1=4; P2=0xF9; delay1ms(2); P1=8; P2=0x40; delay1ms(2); P1=0x10; P2=0x40; delay1ms(2); P1=0x20; P2=0x40; delay1ms(1); ;/显示000120 if(c=6) P1=1; P2=0x40; delay1ms(2); P1=2; P2=0x24; delay1ms(2); P1=4; P2=0x78; delay1ms(2); P1=8; P2=0x40; delay1ms(2); P1=0x10; P2=0x40; delay1ms(2); P1=0x20; P2=0x40; delay1ms(2); ;/显示000720 if(c=7) P1=1; P2=0x40; delay1ms(2); P1=2; P2=0x19; delay1ms(2); P1=4; P2=0x40; delay1ms(2); P1=8; P2=0x12; delay1ms(2); P1=0x10; P2=0x40; delay1ms(2); P1=0x20; P2=0x40; delay1ms(2); ;/显示005040 if(c=8) P1=1; P2=0x40; delay1ms(2); P1=2; P2=0x24; delay1ms(2); P1=4; P2=0x30; delay1ms(2); P1=8; P2=0x40; delay1ms(2); P1=0x10; P2=0x19; delay1ms(2); P1=0x20; P2=0x40; delay1ms(2); ;/显示40320 if(c=9) P1=1; P2=0x40; delay1ms(3); P1=2; P2=0; delay1ms(3); P1=4; P2=0; delay1ms(3); P1=8; P2=0x24; delay1ms(3); P1=0x10; P2=2; delay1ms(3); P1=0x20; P2=0x30; delay1ms(2); ;/显示362880 ;/对接收到的数据处理,通过P1、P2口控制输出显示该数的阶乘四实验体会:在此次计算机控制技术课程设计,从编辑程序到调试仿真到在试验箱中做实验,从理论到实践,我学到了很多很多的的东西,不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国主备自动切换C波段收发信机市场调查研究报告
- 2025年豆芽项目可行性研究报告
- 2025年肥料定氮仪项目可行性研究报告
- 2025年硅胶真空袋材料项目可行性研究报告
- 2025年毛混纺产品项目可行性研究报告
- 2025年无水碘化钠项目可行性研究报告
- 2025至2031年中国多功能压力校验仪行业投资前景及策略咨询研究报告
- 2025年圆头六角重型链条锁项目可行性研究报告
- 2025年半不锈钢母婴一体床项目可行性研究报告
- 2025至2031年中国ARA油行业投资前景及策略咨询研究报告
- 农产品质量安全控制课件
- 尿失禁健康讲座(SUI)
- lovo操作手册中文翻译版-professorgong
- 南网5S管理、四步法、八步骤
- 管道工程污水管网监理规划(共44)
- 危货运输车辆日常维护检查及记录表
- excel表格水池侧壁及底板配筋计算程序(自动版)
- 公司生产报废单
- 乘法口诀表(到25乘25)
- 建设工程施工合同纠纷案件要点分析课件
- TPM“2”STEP培训方法和技巧(发生源困难源对策=两源改善)
评论
0/150
提交评论