单片机应用系统设计课程设计-串行定时发送接收系统.doc_第1页
单片机应用系统设计课程设计-串行定时发送接收系统.doc_第2页
免费预览已结束,剩余21页可下载查看

下载本文档

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

文档简介

武汉理工大学单片机应用系统设计课程设计说明书课程设计任务书学生姓名: 专业班级: 机械1301 指导教师: 工作单位: 机电工程学院 题 目: 串行定时发送接收系统设计 初始条件:1采用mcs51作为主控芯片; 2设计以rs232为标准的串行通讯系统; 3设计实现定时发送数据,同时可接收不同命令改变发送数据。要求完成的主要任务: 1、 查阅参考资料,自学相关可编程接口芯片的内部结构、工作方式和初始化编程过程;2、 根据设计系统的具体功能和性能参数,明确设计目标;3、 单片机系统及其扩展接口电路设计,绘制系统硬件原理图;4、 编制系统控制源程序,绘制源程序流程图,包括初始化和监控程序;5、 撰写设计说明书(包括参考资料目录,字数不少于5000字)时间安排:(两周)序号内 容所用时间(天)1查阅资料,学习相关芯片知识22系统及扩展电路硬件设计33初始化程序和应用程序设计34相关硬件电路和程序调试35课程设计答辩1合计12指导教师签名: 2015年 12 月 27 日系主任(或责任教师)签名: 年 月 日目录1.功能需求分析3 2.总体方案说明43.系统硬件部分设计5 3.1硬件总体原理图设计5 3.2主控芯片选型6 3.3其它构成部分说明63.3.1 rs232c中的db-963.3.2rs232c中的mac232芯片73.3.3时钟电路84.系统软件部分设计10 4.1软件总体设计10 4.2主程序说明10 4.3子程序模块说明11 4.3.1初始化模块11 4.3.2串行口中断模块11 4.3.3数据处理模块125.proteus仿真测试13 5.1proteus仿真测试图13 5.2proteus仿真效果介绍156.总结与体会187.参考文献19附录201.功能需求分析串行通信就是数据在单条一位宽的传输线上,一比特接一比特地按顺序传送。与并行通信一个字节(8位)数据在8条并行传输线上同时由源传到目的地不同,串行通信方式中,数据是在单条1位宽的传输线上一位接一位地顺序传送。这样一个字节的数据要分8次由低位到高位按顺序一位位地传送。由此可见,串行通信节省传输线,尤其是在远程通信时,此特点尤为重要,这也是串行通信的主要优点。但是串行通信的数据传送效率低。与并行通信比,这也这是显而易见的。这也是串行通信的主要缺点。串行通信是数据按顺序依次传送的通信方式,它的优点是只需要一对传输线就可以在系统间交换信息,特别适合于计算机与计算机之间,计算机与外部设备之间的远距离通信。而且串行通信可以利用电话线,大大降低了传输成本,但是传输速率较低。本次课程设计要求设计串行定时发送接收系统,主要利用at89c51芯片,以rs232为串行通讯标准实现定时发送数据,同时可接收不同命令改变发送数据。利用at89c51芯片,以rs232为串行通讯标准设计定时中断等程序,达到串行定时发送接收的功能。发送3组数据,达到定时发送接收功能。本次设计为串行定时发送接收功能的系统。2.总体方案说明在本串行定时发送接收控制系统中,使用at89c51芯片实现串行口的接收与定时发送数据,设计工作原理如下:储存器中有等待发送的三组数据,分别为第一组0到9循环,第二组a到z24个大写字母,第三组a到z24个小写字母,开机后,系统自动循环数字0到9,t0采用方式2定时中断,t1采用方式1定时中断后发送已在缓冲区准备好的数据。接受数据后产生中断信号取走该组数据,然后储存在储存器上。在等待产生定时中断时会不断的循环比较命令区中的数据是否有不同,如果不同就会转向数据处理程序,将新命令指定的数据从储存器中取出然后处理成要求的数据存放在缓冲区中等待发送。当输入0时定时发送第一组,输入1时定时发送第二组数据,输入3时发送第三组数据。开机后,系统自动发送0到9循环,当输入0时,系统发送第一组0-9循环,当手动输入为1时,发送第二组数据a-z24个字母循环,手动输入3时发送第三组数据,发送第三组a-z24个小写字母循环。输入为其他时,没有反应。且不断循环。3.系统硬件部分设计3.1硬件总体原理图设计 图3-1串行定时发送接收系统硬件原理图如图3-1所示,串行定时发送接收系统由at89c51单片机,max232电平转换芯片,db9接口,时钟电路,复位电路组成。其中,max232芯片的t1in引脚与at89c51的p3.1(txd)引脚相连,r1out引脚与p3.0(rxd)引脚相连;tiout引脚与db9接口2(txd)引脚相连,r1in引脚与rxd相连。晶振电路两引脚与单片机的xtal1,xtal2引脚相连。复位电路接at89c51单片机reset引脚。 单片机供应5v电压电源。3.2主控芯片选型本次设计选用单片机主控芯片为at89c51单片机,利用定时中断,实现定时发送接收功能 at89c51是一种带4k字节flash存储器的低电压、高性能cmos 8位微处理器。如图3-2,其中,主要使用引脚如下:wr:写信号输出;rd:读选通信号;xtal1:反向振荡放大器的输入及内部时钟工作电路的输入;xtal2:来自反向振荡器的输出;reset:复位输入。当振荡器复位器件时,要保持rst脚两个机器周期的高电平时间;/ea/vpp:当/ea保持低电平时,在此期间外部程序存储器(0000h-ffffh)。当/ea端保持高电平时,此期间优先使用内部程序存储器。 图3-2at89c51单片机引脚排列p3.1(txd)引脚与max232芯片的t1in引脚相连p3.0(rxd)引脚与r1out引脚相连。晶振电路两引脚与单片机的xtal1,xtal2引脚相连。3.3其他构成部分说明3.3.1 rs232c中的db-9 单片机系统与pc设备之间的通信主要采用异步串行通信方式,通过rs-232c标准接口实现。rs232c接口标准使用一个一个25针连接器,绝大多数设备只使用其中9个信号,所以我们用9针连接器,称为db-9,如下图所示txd:发送数据。串行数据发送端rxd:接收数据。串行数据接收端rts:请求发送。用于通知数据通信设备准备接收数据cts:清除发送(允许发送)。dtr:数据终端准备好。dsr:数据装置准备好。gnd:信号地 图3-3 db9接口由于rs-232c通信方式规定了自己的电气标准,不能直接满足ttl电平的传送要求。为了通过这些标准接口通信,必须在单片机应用系统中加入电平转换芯片,以实现ttl电平向标准接口电平的转换,通常采用单5v工作电源的max232芯片实现。3.3.2 rs232c中的mac232芯片 图3-4 max232芯片与db9连接如图3-4,第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给rs-232串口电平的需要。第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。ttl/cmos数据从11引脚(t1in)、10引脚(t2in)输入转换成rs-232数据从14脚(t1out)、7脚(t2out)送到电脑db9插头;db9插头的rs-232数据从13引脚(r1in)、8引脚(r2in)输入转换成ttl/cmos数据后从12引脚(r1out)、9引脚(r2out)输出。第三部分是供电。15脚gnd、16脚vcc(+5v)。使用max3232芯片的目的是转换电平。使用串口进行通信时,我们最主要关心的是以下这三个引脚: gnd ,rxd ,txd 3.3.3时钟电路 图3-5时钟电路主要利用单片机芯片内部振荡电路实现,一般用晶体振荡器和电容组成并联谐振回路。c7,c8一般取30pf左右,主要作用是帮助振荡器起振。用来配合外部晶体实现振荡电路。4.系统软件部分设计数据模块数据发送模块初始化模块主程序模块串行口中断模块 4.1系统软件总体设计 图4-1软件总体设计图如图4-1所示,软件由主程序模块,数据处理模块,串行口中断模块,数据发送模块,初始化模块共五个模块构成。4.2主程序模块主程序模块的功能是,调用初始化程序,设置中断,设置波特率,然后开始循环检查判断是否有新命令并等待中断信号。如果没有中断信号,程序将不断的检查判断标志,标志改变时就转去按新命令处理数据并存储在数据缓冲区。输出0到9循环,如果有中断输入,程序将转入相应的中断服务程序。输出相应的数据,总之主程序模块是初始化和设置中断。流程图开始 调用初始化模块开总中断开串行口中断启动to,t1计数允许t0,t1中断循环标志结束图4-2主程序流程图4.3子程序模块说明4.3.1初始化模块初始化模块包含两个,一个定时器初始化,一个波特率初始化。功能:1完成定时器初始化 2设定串行口波特率被主程序调用。4.3.2串行口中断模块 串行口中断是判断接收信息,得到pc的指令。若接收信息满足中断则进入中断模块,若中断开启,则执行中断程序,发送另一组数据。开始 开启中断清ri,启动t0中断返回结束 4.3.3数据处理模块功能:接收pc发送的指令,完成定时发送功能,通过t0定时50ms,循环发送0-9,通过接收指令,若接收指令为1,定时发送字母a-z,若接收指令为2,定时发送小写字母a-z。其中发送0到9月a到z循环程序类似,若接收到pc发送指令,定时发送各组数据。 开始 开t0中断接收pc指令设置接收状态发送数据不为0,1,2中断返回图4-3数据处理模块流程图5系统测试5.1 proteus仿真测试图图5-1仿真图如图5-1为本系统仿真图,其中由于仿真过程中compim自带仿真模块,可不用接max232芯片,实际中要接入max232芯片,具体如前面介绍。在完成仿真的过程中,需要加入一对虚拟端口,利用虚拟端口软件vspd,可增加虚拟 图5-2 vspd软件增加虚拟端口图端口,如图5-2点击增加一对虚拟端口。然后再proteus中设置compim属性 图5-3 compim属性设置选择com1,波特率设置9600,数据位8位,无效验位,停止位1位,如图5-3。打开串行调试小助手选择com2,波特率9600,数据位8位,无效验位,停止位1位。5.2 proteus仿真效果介绍 图5-4串口调试助手仿真数据(开机组)图5-5输入1时串口调试助手仿真数据 图5-6输入2是串口调试助手仿真数据启动仿真,如图5-4,开机时定时发送0到9循环,图5-5,输入1时,定时发送a到z循环,图5-6,输入2时定时发送a到z循环。6.总结与体会单片机应用系统设计课程设计,我分到了串行定时发送接收系统,在为期两周的课程设计中,我认真查阅关于单片机串行通信的资料,认真学习设计电路图,独立思考如何才能让程序达到要求并且可行。本次单片机课设,我确实费了很大周折,分到题目时,我很迷茫,不是很理解题目的意思,因为题目好像有点空,但我认真查阅资料,学到了很多以前书本上没有的知识,通过这次课程设计使我懂得了理论与实际结合是很重要的。在刚开始设计芯片时,我不懂max232芯片如何接,再查阅了资料后掌握了,但是有许多细节的处理方法上还是存在很大问题。串行通信虽然在课堂上没有成为考试的内容,但其重要性不容忽视,更少的数据线和更远的传输距离是它的突出优点。这次单片机课程设计,关于定时中断等内容,我又重新温习了一下课本,编写了程序,受益匪浅。从拿到这个题目,虽然感到很棘手,但是我还是坚持做完了这个设计,并没有像其他同学那样萌生换题目的想法。总之,这次课程设计,我收获很多,不枉费两周的努力和思考,同时也感谢老师的耐心指导,希望能更多的掌握单片机的知识。7.参考文献1李广第.单片机基础m.北京:北京航空航天大学,20072 林立,张俊亮,曹旭东,等. 单片机原理及应用-基于proteus和keil cm. 北京:电子工业出版社,2009.3 楼然苗,李光飞. 单片机课程设计指导m. 北京:北京航空航天大学出版社,2007.4 王贤勇,赵传申. 单片机原理与接口技术m. 北京:清华大学出版社,2010.4 徐汉斌,熊才高. 单片机原理及应用m. 武汉:华中科技大学出版社,20125 常敏,王涵,范江波,等. 51单片机应用程序开发与实践m. 北京:电子工业出版社,2009.6 张齐. 单片机原理与应用系统设计m. 北京:电子工业出版社,2010.7 王贤勇,赵传申. 单片机原理与接口技术m. 北京:清华大学出版社,2010.附录org 0000hdjmp mainorg 000bhdjmp tim0org 0023hdjmp usart0main: mov tmod,#21; 设置to为工作方式2,t1为工作方式1 mov th1,#0fdh; 设置波特率为9600 mov tl1,#0fdh mov th0,#(65536-50000)/256 mov tl0,#(65536-50000)mod 256; 设置定时时间50ms mov scon,#50h; 设置串口方式1 mov ie,#92h; 中断允许寄存器开启eto,et1 mov ip,#10h; 中断优先控制pt1,px0 setb tr1; 开启t1计数器 setb tr0; 开启t2计数器 mov r1,#30h mov r3,#30h mov r2,#10 djmp $ tim0: 定时器0中断 mov th0,#(65536-50000)/256 mov tl0,#(65536-50000)mod 256 djnz r2,exti ; 判断计数为0时中断 mov r2,#10; 计数r2为10 mov a,r3; cjne a,#30h,s3;判断为0,若a为0,跳转s3 mov a,r1 cjne a,#3ah,s1 mov a,#30h mov r1,as1: mov sbuf,a jnb ti,$ clr ti mov sbuf,#20h jnb ti,$ clr ti inc r1 reti s3: cjne a,#31h,s5;若a为1,跳转s5 mov a,r1 cjne a,#5bh,s4; 到z到后一位,执行s4,否则顺序执行 mov a,#41h; 从a发送 mov r1,as4: mov sbuf,a j

温馨提示

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

评论

0/150

提交评论