基于单片机的串口通信方案设计书大学本科方案设计书

上传人:B**** 文档编号:51480992 上传时间:2022-01-26 格式:DOCX 页数:27 大小:165.02KB
返回 下载 相关 举报
基于单片机的串口通信方案设计书大学本科方案设计书_第1页
第1页 / 共27页
基于单片机的串口通信方案设计书大学本科方案设计书_第2页
第2页 / 共27页
基于单片机的串口通信方案设计书大学本科方案设计书_第3页
第3页 / 共27页
点击查看更多>>
资源描述
毕业设计(论文)题目:基于单片机的串口通信设计院(系 ):*专业:*姓名:*学号:*指导教师:*二* 年*月*日学生姓名专业院(系)毕业设计(论文)题目任务与要求毕业设计(论文)任务书学号基于单片机的串口通信设计任务:通过硬件和软件的按键输入电路、单片机控制电路和数码管显示电路进行串口通信的设计。要求:熟悉单片机相关方面的知识,学习并掌握串口通信的基本原理。学会使用语言和汇编语言进行单片机的编程。学习使用 protel 软件,会在软件上绘制电路原理图,能够进行电路图的电气规则检查。熟练掌握keil 软件的使用。年月日至年月日共周完成时间段指导教师单位职称院(系)审核意见毕业设计 (论文 )进度计划表日 期工作内容执行情况指导教师签字查找资料,选题完成论文的初稿完成论文二稿的写作完成论文的终稿及格式修改定稿,打印论文, 做好答辩的准备论文答辩教师对进度计划实施情况总评签名年月日本表作评定学生平时成绩的依据之一学生填写检查教师填写毕业设计 (论文 )中期检查记录表毕业设计 (论文 )题目 : 基于单片机的串口通信设计学生姓名 :学号:专业:指导教师姓名 :王飞职称 :毕业设计 (论文 )题目工作量饱满一般不够毕业设计 (论文 )题目难度大适中不够比较丰毕业设计 (论文 )题目涉及知识点丰富富较少毕业设计 (论文 )题目价值很有价值一般价值不大学生是否按计划进度独立完成工作任务学生毕业设计 (论文 )工作进度填写情况指导次数学生工作态度认真一般较差其他检查内容:存在问题及采取措施 :检查教师签字 :年月日院(系)意见(加盖公章 ):年月日摘 要随着电子技术的不断发展,单片机的应用范围越来越广泛,在工业控制、家电控制、数据采集等多个领域都有着十分重要的作用,由于单片机的使用,越来越多的系统开始向智能化方向发展。而单片机自带的串口功能可以实现其与其他外设MCU 或 PC 机之间的通信,这样就使得控制系统更加的方便实用,利用单片机的串口通信可以实现数据的远程传输、数据分析与系统综合控制功能,尤其是在数据量比较大的场合下,利用一个主机向各个从机发送控制指令是一个很好的解决方案,在这个过程中,串口通信是实现单片机与单片机之间通信的关键。本文介绍了基于单片机的串口通信设计,通过按键输入数据,单片机通过串口将数据发送给另一个单片机,同时发送的数据均可在 2 个单片机控制的数码管上显示,以检测串口通信的准确性。本文介绍的方法简单易懂,可广泛应用于各种串口数据通信系统中。关键词:单片机数据串口通信设计AbstractSummary with the continuous development of electronic technology, wide scope of application ofthe single chip, industrial controls, appliance control, data acquisition, and so has a very important rolein many areas, due to the use of single-chip computer, more and more systems are beginning tointelligent direction. And single tablets machine since with of serial features can achieved its and otherperipherals MCU or PC machine Zhijian of communications, such on makes control system more ofconvenient practical, uses single tablets machine of serial communications can achieved data of remotetransmission, and data analysis and system integrated control features, especially in data volume thanlarger of occasions Xia, uses a hosts to all from machine sent control instruction is a is good of addressprogramme, in this process in the, serial communications is achieved single tablets machine and singletablets machine Zhijian communications of key.This article introduced the design of serial communication based on single-chipcomputer bypressing the input data, single-chipserial data to another microcontroller,whilesending data areavailable at the 2 on a single-chip computer controlled digital tube display, accuracy to detect serialcommunication.Described in this method is simple and easy to understand, can be widely applied tovarious serial data communication systems.KEY WORD:serial communicationdatathe design of single-chip microcomputer目录第一章 绪言1第二章 串口通信基础2第一节串行通信的分类2第二节串口通信的参数2第三章 设计方案4第四章 系统硬件设计5第一节 Protel软件的使用5第二节按键输入电路5第三节单片机控制电路6第四节显示电路7第五章 系统软件设计9第一节 Keil C51软件的使用9第二节设计流程图10第三节按键程序设计10第四节串口通信程序设计12第五节显示程序设计13结 论16致谢17参考文献18第一章绪言数据通信是通信技术和计算机技术相结合而产生的一种新的通信方式。要在两地之间传输信息必须由传输信道,根据传输媒体的不同,有有线数据通信与无线数据通信之分,但它们都是通过传输信道将数据终端与计算机连接起来,而使不同地点的数据终端实现软、硬件和信息资源的共享。数据通信的发展主要分为五个阶段。第一阶段:以语言为主,通过人力、马力、烽火等原始手段传递信息;第二阶段:文字、邮政;第三阶段:印刷;第四阶段:电报、电话、广播;第五阶段:信息时代,除语言信息外,还有数据、图像、文本等。串口通信是按位发送和接收字节,尽管比按字节的并行通信慢,但是串口可以在使用一根线发送数据的同时利用另一根线接收数据,很简单且能实现远距离通信,长度可以达到1200 米。串行通信是指计算机主机与外设之间以及主机系统与主机系统之间数据的串行传送。使用串口通信时,发送和接收到的每一个字符实际上都是一次一位的传送的,每一位为1 或者为 0。串行通信只使用一条数据线,将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。其只需要少数几条线就可以在系统间交换信息。最被人们熟悉的串行通信技术标准是EIA-232 、EIA-422 和 EIA-485 ,目前 EIA-232 是 PC 机与通信工业中应用最广泛的一种串行接口。EIA-422 标准全称是 “平衡电压数字接口电路的电气特性 ”,它定义了一种平衡通信接口,将传输速率提高到了10Mbps ,传输距离延长到了1219 米,并允许在一条平衡总线上最多连接10 个接收器。1983 年 EIA 在 EIA-422 的基础上制定了EIA-485标准,增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,同时增加了发送器的驱动能力和冲突保护特性,扩展了总线共模范围,后命名为TIA/EIA-485-A标准。1第二章串口通信基础第一节串行通信的分类串行通信可以分为同步通信和异步通信两类。同步通信是一种连续串行传送数据的通信方式,一次通信只传送一帧信息。这里的信息帧与异步通信中的字符帧不同,通常含有若干个数据字符。它们均由同步字符、数据字符和校验字符组成。其中同步字符位于帧开头,用于确认数据字符的开始。数据字符在同步字符之后,个数没有限制,由所需传输的数据块长度来决定;校验字符有1 到 2 个,用于接收端对接收到的字符序列进行正确性的校验。同步通信的缺点是要求发送时钟和接收时钟保持严格的同步。异步通信中,在异步通行中有两个比较重要的指标:字符帧格式和波特率。数据通常以字符或者字节为单位组成字符帧传送。字符帧由发送端逐帧发送,通过传输线被接收设备逐帧接收。发送端和接收端可以由各自的时钟来控制数据的发送和接收,这两个时钟源彼此独立,互不同步。接收端检测到传输线上发送过来的低电平逻辑0(即字符帧起始位)时,确定发送端已开始发送数据,每当接收端收到字符帧中的停止位时,就知道一帧字符已经发送完毕。第二节串口通信的参数串口通信最重要的参数是波特率、起始位、数据位、停止位和奇偶校验。波特率:是一个衡量通信速度的参数,表示每秒钟传送的bit 的个数。起始位:当通信线上没有数据被传送时处于逻辑“1状”态,当发送设备要发送一个数据时,先发送一个逻辑 “0信”号,这个低电平就是起始位,起始位通过通信线传向接收设备,接收端检测到这个低电平后, 就确认开始接收数据了。 起始位的作用是使通信双方在传送数据前协调同步。数据位:是衡量通信中实际数据位的参数,当计算机发送一个信息包,实际的数据不会是8位的,标准的值是 5、 7 或 8 位,如何设置取决于要传送的信息。每个包是指一个字节,包括开始 /停止位、数据位和奇偶校验位,由于实际数据位取决于通信协议的选取,术语“包 ”指任何通信的情况。2停止位:用于表示单个包的最后一位。典型的值为1、1.5 和 2 位,它是一个数据的结束标志,接收端接收到停止位后,通信线路上会回复逻辑“1的”状态,知道下一个起始位的到来。奇偶校验位:在串行通信中一种简单的检错方式,有四种方式:偶、奇、高和低。对于偶和检验的情况,串口会设置检验位,用一个值确保传输的数据有偶个或者奇个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验,这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步。3第三章设计方案在 2 个相同单片机之间利用串口进行通信,通过按键输入要发送的数据,该数据为数字,并可在数码管上显示出来,设置完后通过串口通信发送给另一个单片机,另一个单片机接收到后在数码管上显示出来,2 个单片机可以互相发送数据,通过2 个单片机系统的数码管显示的数字可以判断串口通信发送的数据的正确性。系统设计框图如图3.1 所示。本设计主要由按键输入电路、单片机控制电路和数码管显示电路组成,2 个单片机的电路图完全相同,实现的功能也相同,所以本文只介绍其中一块单片机电路的设计方法和串口通信的原理。图 3.1 系统设计框图4第四章系统硬件设计第一节Protel软件的使用一、利用Protel 软件进行原理图设计步骤:1、建立数据库。打开 Protel 软件后,在 “文件 ”标题栏里选择 “新建 ”选项,在弹出的对话框里选择 Document Folder ,然后点击 OK 即可。2、打开 Documents,选择 “文件 ”标题栏里选择“新建 ”选项,在弹出的对话框里选择“ SchematicDocument ”选项,建立原理图文件,并给原理图文件命名。3、设计电路原理图。利用Protel 里的元器件库完成电路原理图的绘制。4、检查原理图电性能可靠性。选择工具下面的电气规则检查,在 “ Rule Matrix 中选”择要进行电气检查的项目,设置好各项后,在“Setup Electrical Rlues Check 对话”框上选择 “OK”即可运行电气规则检查,检查结果将被显示到界面上。第二节按键输入电路常用的按键有独立键盘和矩阵键盘,矩阵式键盘分行和列,通过行和列来确定某一个按键的位置,适用于多键盘操作,可以节省单片机的I/O 口。独立式键盘是直接将按键连接至单片机I/O口,单片机通过检测I/O 的电平来判断按下的按键,编程简单,但是占用I/O 资源比较多。本设计中只需要用到4 个按键来实现数据的输入,所以使用独立式键盘即可。按键输入电路如图4.1所示。单片机的P1.0-P1.3 引脚用来控制4 路按键, 4 个按键分别代表4 组数据 “1、12、123、1234”,不同长度的数据可以更充分的检测串口数据传输的准确性。5图 4.1 按键输入电路第三节单片机控制电路一、单片机控制电路设计该部分电路设计如图4.2 所示。单片机的时钟的频率直接影响着单片机的速度和系统的稳定性。 AT89S51 片内由一个反相放大器构成振荡器,可以通过它俩产生时钟。常用的单片机产生时钟的方法有两种:内部时钟方式和外部时钟方式。本设计选用外部时钟方式,单片机内部XTAL1引脚为高增益反向放大器的输入端,XTAL2 为输出端, 在这 2 个引脚之间接石英晶振和电容,就可以构成一个稳定的自激振荡器。外接晶振振荡频率不大于单片机的最大工作频率即可。如果有串行通信,需要选择振荡频率除以串行通信频率可以整除的晶振。本设计选用的11.0592MHz 晶振。复位是单片机的初始化操作,复位信号是高电平有效,复位操作有上电自动复位、按键电平复位、外部脉冲复位和自动复位四种方式。在本设计中复位电路采用按键电平方式,使 RST 引脚经过 10u 电解电容与VCC 电源接通,同时经过电阻与地连接而实现,按下按键时,RST 引脚置高,实现复位功能。单片机的P1.0-P1.3 引脚控制4 个按键用于输入数字,P2 口控制数码管显示电路,单片机之间的通信通过串行口RXD 和 TXD 。6图 4.2 单片机控制电路第四节显示电路本设计中选用数码管作为显示器件。LED 数码管由八只发光二极管组成,编号是 a、b、c、d、e、 f 、 g、 h,分别和同名管脚相连,当发光二极管导通时发光。每个二极管就是一个笔划,若干个二极管发光时,就构成一个显示字符。若将单片机的I/O 口与数码管的a-g 和 h 相连,高电平(对应共阴极数码管)或低电平(对应共阳极数码管)的位对应的发光二极管就会亮,这样,I/O口输出不同的代码就可以控制数码管显示不同的字符。为减少电路板中的焊接线,本设计选用4位一体数码管, 采用串行输入并行输出的8 位移位寄存器74LS164 进行驱动输出, 单片机的P2.6和 P2.7 引脚分别作为74LS164 的数据线和CLK 信号。 74LS164 将输入的串行数据锁存在并行输出端,通过这些并行口线驱动数码管的各字段。数码管选用共阳型,当74LS164 的某个输出端口为低电位时,数码管对应的字段将被点亮。软件设计中数码管采用循环送显的方式,单片机通过控制 9012 来选择要送显的数码管,当需要某一位数码管显示时,该数码管相对应的9012 三极管基极所连接的单片机引脚输出高电平,三极管导通, 进而选通该位数码管。74LS164 的输出 Q0-Q77分别对应接到数码管的a-h 端口。 单片机将数据写入到74LS164 内部锁存, 再由 74LS164 将显示译码送入该位数码管个码段显示,从而实现了单片机控制数码管显示的功能。显示电路如图4.3所示。图 4.3 显示电路8第五章系统软件设计第一节Keil C51 软件的使用一、编辑器和调试器:1、源代码编辑器:uVision2编辑器包含了所有用户熟悉的特性。彩色语法显像和文件辩识都对 C 源代码进行和优化。可以在编辑器内调试程序,它能提供一种自然的调试环境,使你更快速地检查和修改程序。2、断点: uVision2 允许用户在编辑时设置程序断点(甚至在源代码未经编译和汇编之前)。用户启动V2 调试器之后,断点即被激活。断点可设置为条件表达式,变量或存储器访问,断点被触发后,调试器命令或调试功能即可执行。在属性框中可以快速浏览断点设置情况和源程序行的位置。代码覆盖率信息可以让你区分程序中已执行和未执行的部分。3、调试函数语言:uVision2 中,可以编写或使用类似C 的数语言进行调试。、内部函数:如printf, memset, rand 及其它功能的函数。、信号函数:模拟产生CPU 的模拟信号和脉冲信号。、用户函数:扩展指令范围,合并重复动作。4、变量和存储器:用户可以在编辑器中选中变呈来观察其取值。双层窗口显示,可进行以下调整:当前函数的局部变量;用户在两个不同watch 窗口页面上的自定义变量;堆栈调用(callstack)页面上的调用记录;不同格式的四个存储区。C51 允许用户使用C 语言编写中断服务程序,快速进、 出代码和寄存器区的转换功能使C 语言中断功能更加高效。可再入功能是用关键字来定义的。多任务,中断或非中断的代码要求必须具备可再入功能。C51 提供了灵活高效的指针。通用指针用3 个字节来存储存储器类型及目标地址,可以在8051 的任意存储区内存取任何变量。特殊指针在声明的同时已指定了存储器类型,指向某一特定的存储区域。由于地址的存储只需12 字节,因此,指针存取非常迅速。9Keil C51 兼容单片机C 语言软件开发系统,与汇编相比, C 语言在功能上、 结构上、 可读性、可维护性上有明显的优势,因而易学易用。第二节设计流程图本系统软件设计分为发送机和接收机,发送机程序设计流程图如图5.1 所示,接收机程序设计流程图如图5.2 所示。开始开始初始化初始化扫描按键N触发串口中断?读取数据Y送数码管显示读取数据数据发送至串口N 数据接收完成?N数据发送完成?YY结束送数码管显示结束图 5.1 发送机程序设计流程图图 5.2 接收机程序设计流程第三节按键程序设计单片机读取按键值的方法有两种:查询方式和中断方式。查询方式是利用键盘程序不断查询是否有按键按下,有按下则进入相应按键的子程序进行数据处理,没有则一直循环查询;中断方式是将按键动作与单片机的中断系统联系起来,有按键按下时,就引起单片机中断,使系统进入10中断处理程序。本设计中有4 个按键,且主要程序就是按键的处理,所以采用查询方式来处理读取按键值程序。读取按键子程序如下:if(key_1=0)delay(20);if(key_1=0)while(key_1=0);flag_t=1;unm_t=1;if(key_2=0)delay(20);if(key_2=0)while(key_2=0);flag_t=2;unm_t=2;if(key_3=0)delay(20);if(key_3=0)11while(key_3=0);flag_t=3;unm_t=3;if(key_4=0)delay(20);if(key_4=0)while(key_4=0);flag_t=4;unm_t=4;第四节串口通信程序设计本系统采用晶振的频率为11.0592MHz ,T1 工作在模式2 下,波特率为9600b/s,将上述公式变形并带入数据得T1 的初值为0xFD。单片机主程序中串口中断的使用代码如下:voidmain(void)EA=0;/关中断IP=0x00;SCON=0X50;/ 中断初始化TMOD=0x21;PCON &= 0x00;TH1 = 0xFD;/ 定时器 0 赋初始值12TL1 = 0xFD;TR1=1;ET0=1;TR0=1;EA=1;/ 开中断第五节显示程序设计根据数码管的驱动方式不同,数码管送显方式有两种:静态送显和动态送显。静态显示驱动:静态驱动也称直流驱动,在静态显示驱动方式下,数码管的共阴极或共阳极共同接地或接电源,每个数码管的段选线与8 位的单片机并口连接。静态显示驱动方式占用的单片机 I/O 端口比较多,一般在实用中不采用。动态显示驱动:数码管动态显示方式是将所有的段选线并联在一起,由一个8 位 I/O 口来控制,再利用单片机的其他I/O 口来作为数码管的位选线。当单片机输出显示数字的译码时,哪个数码管显示由单片机对位选通电路的控制来选择,所以将欲显示的数码管的位选通端选通,该数码管就会显示,其它数码管均不会亮。通过轮流控制各个数码管的选通端使数码管轮流显示。在显示过程中,每个数码管的显示时间为1-2ms,由于人们的视觉暂留现象及发光二极管的余晖效应,只要扫描的速度够快,给人的印象就是同时点亮的,而且不会有闪烁感。本设计中选用动态显示驱动方式,数据通过74LS164 的数据端送至数码管显示。先按照74LS164 的时钟时序写入8 段码,写完后送入数码管,子程序如下:voidwrite_164(uchar lx)/ 向 164 写入段码uchar i,j;j=lx;for(i=0;i1;delay(2);voiddisp_all(void)/送数码管显示uchari,j;for(i=0;i20;i+)for(j=0;j4;j+)P2=0X0F;write_164(DISP_SA VEj);delay(50);P2=0X0F;14write_164(0xff);15结 论通过这次的毕业设计,使我对单片机有了更深的认识,从理论和实践上都得到了很大的提高,所以这次任务的完成使我学到了很多东西。首先,丰富了自己的知识面,学到了以前没学懂的东西,具体了解到怎样去完成一个电路的设计,巩固了汇编语言和C 语言的使用能力,并且提高了自己分析问题的能力和创新能力,使自己在硬件和软件设计方面树立了信心,为以后从事这方面的工作打好了基础,这也是这次毕业设计的最大收获。本文介绍了一种单片机之间串口通信的设计方法,论文首先介绍了串口通信的基础知识主要是串口通信的分类和重要的参数,接着提出了可行的设计方案,并从硬件电路设计和软件程序设计两个方面详细介绍了整个设计的原理及设计过程,同时验证了方案的可行性。当然,本设计可能还存在许多不足之处,敬请各位老师批评指正,本人将非常感激!16致谢毕业设计可以说是三年学习的总结和体现,本文是在指导老师王飞老师的指导和帮助下完成的。他的热心帮助和循循善诱的指导让我很感动。这篇设计和三年中所有教育过我的老师也是分不开的,没有他们的传授的知识我也不可能完成这个课题。我无论是在课程学习阶段,还是在论文的选题、资料查询和撰写的每一个环节,无不得到指导老师的帮助。在这里我对我的指导老师致以衷心的感谢!还要对三年来教导和帮助过我的其他老师和同学表示衷心的感激和谢意!17参考文献1 谭浩强 : C 程序设计(第二版) ,清华大学出版社, 2001 年。2 胡汉才:单片机原理及接口技术 ,清华大学出版社, 1996 年。3谢沅清、解月珍: 电子技术基础 ,人民邮电出版社, 1999 年。4孙江宏 : Protel 99 电路设计与应用 ,机械工业出版社, 2001 年。5何立民 : 单片机应用技术选编 ,北京航空航天大学出版社,2006 年。6张毅刚、彭喜源 : MCS-51 单片机应用设计 ,哈尔滨工业大学出版社,1997 年。7 黄亮 : “基于 AT89C51 单片机的串口通信程序的设计 ”,电子制作 , 2006 年 07 期。8 于燕、顾桓: “ MCS-51 单片机和 PC 机间的串口通信 ”,科学技术与工程 , 2007 年08期。9 刘锡东、黄丽民: “用 C 语言实现串口通信技术 ”,山东商业职业技术学院学报 ,2007 年 02 期。10栗小宽、韩东起、李霞:“ 51系列单片机中模拟串行口的C 语言实现 ”,科技咨询导报, 2007 年 17 期。18
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 演讲稿件


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!