ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:247.86KB ,
资源ID:23143034      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23143034.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机课程设计实现单片机与PC串行双工通信.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机课程设计实现单片机与PC串行双工通信.docx

1、单片机课程设计实现单片机与PC串行双工通信课程设计任务书学生姓名: XXXXXX 专业班级: XXXXXXXX 指导教师: XXXX 工作单位: XXXXXXXX 题 目:实现单片机与PC串行双工通信初始条件: 具备数字电路的理论知识;具备微机原理的理论知识和实践能力;熟悉汇编语言编程技术;熟悉80X86的CPU结构和指令系统;熟悉相关常用接口电路的设计使用方法。要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1、分析设计原理,画出程序设计框图,编写程序代码,完成PC和单片机的串行双工通信,单片机的P1口接一共阴数码管,阴极接地。要求PC键盘每按“0-9”数字键

2、能发送到单片机,并显示在数码管上,单片机发送一串字符能显示在PC的屏幕上,采用查询方式。波特率为1200。在Proteus中画出电路图。2、完成程序的仿真测试,并演示系统的最终运行结果;3、独立完成课程设计说明书,课程设计说明书按学校统一规范来撰写。 时间安排:(1)、布置课程设计任务,查阅资料,完成系统需求分析 一天;(2)、用Proteus实现系统原理图的设计、仿真和结果显示 三天;(3)、完成课程设计报告书及答辩 一天;指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日摘要单片机可以通过电平转换后和PC机进行串行通信,只要串口设定一致,单片机和PC机就能交换数据。通过Pro

3、teus可以对其进行仿真,Proteus中有串口器件,有虚拟终端,可以对PC机单片机串口通信进行仿真。关键词:单片机,PC机,串口通信,Proteus1 芯片介绍1.1 89C51简介单片机的定义是在一块芯片中集成了CPU、RAM、ROM、定时、计数器和多功能I/O口等的基本功能部件的大规模集成电路,又称MCU。这些也是计算机所拥有的基本部件,所以单片机就是一台微型的计算机,可以实现计算机的很多功能。本次课设使用的89C51是MCS-51系列单片机的51子系列。89C51片内ROM是4KB的闪速E2PROM,其结构、引脚和封装和其它信号基本相同。89C51主要由以下几个部分组成:一个8位CPU

4、;一个片内振荡器及时钟电路;4KB ROM程序存储器;128B RAM数据存储器;可寻址64KB外部数据存储器和64KB外部程序存储空间的控制电路;32条可编程的I/O线;一个可编程全双工串行口;5个中断源、两个优先级嵌套中断结构。本次课设主要用到的引脚线是P3.0(RXD)和P3.1(TXD),两者分别是串行通信的接收线和发送线,通过它们可以和其它串行通信设备进行连接。PC机也可以通过串口将程序输入单片机。1.2 MAX232简介单片机和电脑用串口线相连接时要用到电平转换芯片MAX232。MAX232内部有电压倍增电路和转换电路,工作时需外接5个1uF的电容和+5V电源,实现TTL电平与RS

5、-232电平双向转换,。一个MAX232可以连接两对收/发线,把通信接口的TXD和RXD端TTL电平(05V)转换成RS-232电平(-10V+10V),送到传输线上,也可以把传输线上的RS-232电平转换成TTl电平送到通信接口TXD和RXD。单片机与PC机相连接时,单片机的RXD应连MAX232的R1OUT引脚,TXD应连T1IN,PC机串口的RXD应连T1OUT,TXD应连R1IN,这样MAX232就能在单片机和PC机之间完成电平转换,使单片机和PC机可以正常通信了。2 原理介绍2.1 串行通信介绍计算机之间有时需要交换信息,这种信息交换被称为通信。通信可分为并行通信和串行通信。将数据各

6、位同时传送的方法是并行通信,将数据逐位传送的方法是串行通信。本次课程设计采用的是串行通信。串行通信分为串行异步通信和串行同步通信两种类型,串行异步通信以若干位表示一个字符,通信时以收/发一个字符为一 独立的通信单位。异步传送的数据前面应加起始位,结束后应加停止位,形成一个完整的串行传送字符。串行同步通信串行同步通信就是去掉异步传送时每个字符的起始位和停止位,以一组字符组成一个数据块,在每个数据块前附加一个或两个同步字符或标识符,后面在附加校验字符。2.2 串行接口标准串行通信在电器连接上游串行接口标准,常用的标准有(1)RS-232-C接口标准;(2)RS-422A、RS-432A和RS-48

7、5接口标准;(3)20mA电流环接标准。本次课程设计采用的是RS-232-C串行总线接口标准。RS-232-C接口标准是美国电器工业协会(EIA)制定的,是一种在数据终端设备(Data Terminal Equipment,DTE)和数据通信设备(Data Communication Equipment,DCE)之间通信的链接标准。在有些短距离场合,计算机之间可以直接通过RS-232-C接口连接。目前常用的是9针D型连接器,如图2.1所示。图2.1 RS-232C 9针D型连接器常用的引脚有3根,是接收数据 RXD,发送数据 TXD和接地GND。2.3 单片机串口简介本次课设用的89C51的串

8、行口是一个可编程的全双工串行通信接口,它的功能很多,可以用软件编程来控制,它可以作为通用异步接收和发送器UART,也可以作为同步移位寄存器。其帧格式可有8位,10位,11位,并能设置各种波特率,只要编程就能进行设定,使用很方便。串行口的结构主要由两个数据缓冲寄存器SBUF和一个输入移位寄存器组成,另外其内部还有一个串行控制寄存器SCON和一个波特率发生器,波特率发生器是由T1及分频器组成,因此修改波特率时要修改T1的设定。在与PC机进行通信时,PC机发来的的串行数据是通过引脚RXD输入的。输入数据先逐位进入输入移位寄存器,再送入接收数据缓冲寄存器。在PC内接有PC16550串行接口、RS-23

9、2C连接器、EIA-TTL的电平转换器等设备,有两个串行口COM1和COM2留给用户,通过这两个串行口可以连接串行通讯设备如单片机等。3 程序设计3.1 单片机串口编程89C51串行通信的方式选择、接收和发送控制及串行口的标志均由专用寄存器SCON控制和指示,其格式如表3.1:表3.1 SM0SM1SM2RENTB8RB8TIRI方式选择多机控制串行接收允许/禁止欲发的第9位收到的第9位发送中断有/无接收中断有/无SM0,SM1是串行口工作方式控制位。00方式0,01方式1,10方式2,11方式3。方式0是移位寄存器方式,方式1是波特率可变10位异步通信方式,方式2是11位异步通信方式,方式3

10、引脚使用和数据格式同方式2,不同的是波特率可变。串行通信还要用到电源控制寄存器PCON中的SMOD位,SMOD=0时波特率不加倍,SMOD=1时波特率加1倍。本次课设使用的是方式1,每帧数据为10位:1个起始位“0”,8个数据位,1个停止位“1”。由T1提供移位时钟,波特率可变。波特率计算公式为:本次课设中设定单片机晶振频率为12MHz,波特率为1200,SMOD=0,则T1时间常数计算如下:X=230=E6H串行通信可采用两种方式:查询方式和中断方式,本程序采用查询方式。查询方式发送程序:发送一个数据发送一个数据查询TI发送下一个数据(先发后查)接收程序:查询RI读入一个数据查询RI读入下一

11、个数据(先查后收)PC机上串口设置应与单片机一致。3.2 程序流程图程序先向PC机发送一段字符,再接收PC机发来的字符。发送部分流程图如图3.1所示:图3.1 发送部分程序流程图接收部分程序流程图如图3.2所示:图3.2 程序接收部分流程图3.3 源程序单片机上实现与PC机串行通信源程序如下:ORG 0000H MOV P1,#0 ;P1口清0 MOV TMOD,#20H ;设定定时器T1工作于方式2 MOV TH1,#0E6H ;时间常数为230 MOV TL1,#0E6H SETB TR1 ;启动T1 MOV SCON,#40H ;串口工作于方式1 MOV DPTR,#TAB1 ;DPTR

12、存待发送数据首址 MOV R0,0 ;R0做发送数据计数器LOOP1: MOV A,R0 ;R0的值送入A MOVC A,A+DPTR ;查表得要发送的数据 MOV SBUF,A ;发送数据 JNB TI,$ ;未发完则继续查询 CLR TI ;发完后将TI清0 INC R0 ;R0加1 CJNE R0,#05H,LOOP1 ;若R0不等于5则继续发送 MOV SCON,#50H ;设定串口工作于方式1,允许接收 MOV DPTR,#TAB2 ;DPTR存共阴字码表首址LOOP2: JNB RI,$ ;数据未收完继续查询 CLR RI ;收完则将RI清0 MOV A,SBUF ;接收数据送入A

13、 SUBB A,#30H ;将ASCII码转为对应数字 MOVC A,A+DPTR ;查表得相应的字形码 MOV P1,A ;将A送入P1口显示数字 SJMP LOOP2 ;继续接收TAB1: DB 41H,42H,43H,44H,45H;TAB2: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH; END4 Proteus电路制作4.1 Proteus简介本次课程设计使用的软件是Proteus。Proteus是英国Labcenter公司开发的电路分析与仿真软件。它可以运行于Windows操作系统上,功能很强大,可以仿真、分析各种模拟器件和集成电路。Pro

14、teus具有强大的原理图绘制功能。放置元件和连线都很方便,可以制作各种电路图。Proteus支持主流单片机系统的仿真。它支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。本次课设采用了其中的89C51单片机。该软件实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能。有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。还有虚拟终端,可以仿真PC机与单片机的通信。

15、Proteus提供软件调试功能。在该软件的在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件,可以和Keil联调使用,功能强大。4.2 电路图绘制首先打开Proteus ISIS程序界面,开始绘制电路图。首先添加所要用到的元件。元件清单如表4.1所示元件清单如表4.1所示元 件 名 称所 属 类所 属 子 类数量AT89C51Microprocessor ICs8051 Family1CAPCapacitorsGeneric2CAP-POLCapacitorsGeneric

16、4CRYSTALMiscellaneous1RESResistorsGeneric17SEG-COM-CATHODEOptoelectronics7-Segment Displays1MAX232Microprocessor ICsPeripherals1COMPIMMiscellaneous1其中AT89C51是单片机,在设置中设置其频率为12MHz,在Program File中可以加载程序的HEX文件。CAP是电容,用在外部晶振电路中,电容大小设置为33pf。CAP-POL是极化电容器,用于MAX232电路,大小设置为1uf。CRYSTAL是晶振,频率设置为12MHz。RES是电阻,与串口

17、相连,大小设置为10k。7SEG-COM-CATHODE是7段共阴数码管。MAX232是电平转换芯片。COMPIM是串行口,设置波特率为1200,无奇偶校验,8位数据位,1位停止位,设置如图4.1。图4.1 串口设置此外还需要接地,在左侧工具栏中终端里的GND是接地。还要加虚拟终端来仿真PC机,虚拟终端是虚拟仪器中的VIRTUAL TERMINAL,虚拟终端设置波特率为1200,无奇偶校验,8位数据位,1位停止位,电平极性反转。其设置如图4.2。图4.2 虚拟终端设置放置好所有元件后在端点处点击鼠标就可以连线了,得到电路图如图4.3。图4.3 电路图5 Proteus仿真5.1 生成HEX文件

18、仿真时单片机需要载入HEX文件。这里使用WAVE软件生成,首先在WAVE中编写程序。在WAVE的仿真器设置,目标文件中把生成HEX文件的选项选上,如图5.1。图5.1 仿真器设置然后进行编译,就可以得到HEX文件。如果有错误就进行调试,直到程序无误。5.2 Proteus仿真结果给单片机加载HEX文件后,点击屏幕左下角的开始仿真按钮即可开始仿真,此时鼠标右击虚拟终端,选择最下面一个选项Virtual Terminal即可看见PC收到的数据,如图5.2所示图5.2 PC收到的数据此时按键盘上的数字键,就可以发送数据给单片机了,可以见到单片机数码管会显示出所按的数字,如图5.3、5.4所示。图5.

19、3 按2键数码管显示结果图5.4 按0键数码管显示结果5.3 结果分析通过仿真结果可以看出,单片机发送的字符“ABCDE”成功送到了PC机内,可以在虚拟终端上看见。当虚拟终端打开时,按下0-9的数字键,数码管会显示相应字符,说明PC机的信息也可以通过串口传送到单片机内,电路工作正常,达到了要求。6 课程设计心得体会通过进行本次单片机课程设计,我对Proteus有了初步的认识,我掌握了Proteus的基本操作,并学会了用Proteus解决一些课程中的问题,巩固了单片机相关知识。下面是我具体的一些体会。Proteus功能非常强大,几乎可以仿真目前单片机课程中遇到的各种问题,它有丰富的元件库,电路中

20、用到的各种元件都有,有的同一类元件都有好几种,比如7段共阴数码管,就有红绿蓝等几种颜色的,可以仿真各种电路。除了元件,Proteus还提供了大量的虚拟元件,比如虚拟示波器,虚拟终端等。本次课设用到的虚拟终端就可以模拟PC机,接收单片机发送的数据,并可以向单片机发送数据,功能强大。Proteus虽然功能非常强大,但其操作却非常简单,只要找到相应的元件,进行参数设置,点击鼠标即可连线。完成电路后加载HEX文件,点击仿真开始就可以仿真了,仿真结果会很直观的显示。不过Proteus的元件库内容十分丰富,要找到所需的元件也不是很容易。需要熟练掌握相关的英语,并在网上查阅相关资料,才能熟练掌握Proteu

21、s的应用。在课程设计中我也巩固了单片机的相关知识,更深入了解了单片机与PC机串行通信的原理,并编制了相关程序,掌握了其基本的应用。在这次课程设计中,我学到了很多关于Proteus的知识,但这还远远不够,我现在只掌握了一些基本的功能,而解决更高级问题我的知识还不够,我要在日后进一步学习,更好地掌握Proteus。参考文献1 李群芳,张士军,黄建单片微型计算机与接口技术北京:电子工业出版社,20072 王守中51单片机开发入门与典型实例北京:人民邮电出版社,20073 倪志莲单片机应用技术北京:北京理工大学出版社,20074 周润景Proteus入门实用教程北京:机械工业出版社,20075 张靖武,周灵彬单片机系统的Proteus设计与仿真北京:电子工业出版社,2007致谢本次课设的指导老师老师XX给了我很大帮助,帮助我修订了课程设计说明书,巩固了单片机的相关知识,使我的知识水平有了较大提高。XXX老师在数字图像处理课上认真细致的讲解也使我受益匪浅,在此对他表示诚挚的谢意。我同组的同学也给了我很多帮助,我们共同努力完成了本次课程设计,在此也对他们表示感谢。 本科生课程设计成绩评定表姓 名性 别专业 班级课程设计题目:实现单片机与PC串行双工通信课程设计答辩或质疑记录:成绩评定依据: 指导教师签字:_ 年 月 日

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1