串行通信接口设计说明_第1页
串行通信接口设计说明_第2页
串行通信接口设计说明_第3页
串行通信接口设计说明_第4页
串行通信接口设计说明_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、 . . . 自动化技术综合实训报告实训题目: 串行通讯接口设计 院 系: 信系工程与自动化学院自动化系 专 业: 自动化 班 级: 自动化 姓 名:学 号:指导教师:实训地点: 信自楼 开课时间: 2011年6月22日 学生:串行通信接口设计摘要:本文介绍了PC机与单片机采用RS-232C进行串行通信的接口方法。利用89C51,MAX232芯片等其他元件组成简单的PC机与单片机数据互发电路。给出了PC机实现串行通信的软件设计方法。关键字:串行通信、PC机、单片机、RS232CKeywords: serial communication, PC, microcontroller, RS232C

2、Abstract: This paper describes the use of PC and microcontroller RS-232C serial communication interface methods. Using 89C51, MAX232 chip and other components form a simple PC and send data to each chip circuit. Giving the PC serial communication software design methods. 个人摘要:这次的自动化技术综合实训中,我在本小组中主要负

3、责的是硬件方面。包括排板、焊接电路和硬件的调试以与帮助参考辅助别的方面的设计。由于经验不足出现排版不合理,只为一遍接线方便而未能合理排版而出现了一些不必要的跨线,总体来说焊接过程顺利。美观度一般,未出现短接虚焊等情况!一、实训目的和要求1实训目的(1).掌握单片机硬件与软件设计的基本方法(2).掌握串行通信接口设计的基本原理2、实训容设计电路并编写程序,将PC机键盘的输入发送给单片机,单片机收到PC机发来的数据后,回送同一数据给PC机,并在屏幕上显示出来。要求:l PC机与单片机通信正常,屏幕上显示的字符与所键入的字符一样。l 通信协议为:9600,N,8,1。l 复习掌握定时器的功能和编程使

4、用。l 熟悉MCS-51单片机串行口的各种功能。l 掌握串行通信的重要指标:字符帧和波特率的设定方法。l 会编写单片机串行通信的程序。二、实训课题设计功能描述1、功能描述课程实现单片机与计算机的相互串行通讯。计算机给单片机传送信息,单片机接受后自动返回给电脑所接受到的信息。串行通信是指数据一位一位地依次传输,每一位数据占据一个固定的时间长度。其只要少数几条线就可以在系统间交换信息,特别适用于计算机与计算机、计算机与外设之间的远距离通信,连接设备接口有SATA,USB等。三、实训课题基本原理分析与设计说明1、任务介绍 AT 89C51是一种低功耗、高性能的8位单片微型计算机,它采用了CMOS工艺

5、和ATMEL公司的高密度NVRAM(非易失性随机存储器)技术,片带有一个4KB的FLASH EPROM(可擦除、可编程只读存储器),作为INTEL8051的换代产品,其输出引脚和指令系统与MCS-51完全兼容。由于AT 89C51单片机具有集成度高、面向控制、系统结构简单、价格便宜等诸多优点,因而在智能化仪器仪表、数据采集、数据测量等方面有着广泛的应用。但是,实际应用中单片机在数据处理能力、人机交互等方面往往不能满足要求,因而通常用PC来弥补单片机的这些不足。例如,在工程应用中,常常由一台PC机和一台单片机构成主从式计算机测控系统。在这样的系统中,以单片机为核心的智能测控仪表(从机)作为现场测

6、控设备,完成数据的采集、处理和控制各种任务,同时将数据传给PC机(主机),PC机将这些数据加工处理后,进行显示、打印报表等,PC机也可以将各种控制命令传送给单片机,干预单片机系统的运行,从而发挥PC机的优势。要实现这样的功能,就涉与到PC机与单片机之问的通信问题。本文介绍一种PC机与单片机通信接口与其编程方法。也就是本任务重所要涉与到的计算机与单片机的串行通信的课题。2、使用电路说明本文中所使用到的都是常用的电路,在电路设计中,采用:上电电路其中采用的是USB供电电源晶振电路复位电路串口接线在查阅相关数据手册后,我们使用以下电路作为RS232C的参考电路:在这里我们提供RS232C的引脚的相关

7、定义,仅供参考。引脚 定义 符号1 载波检测 DCD2 接收数据 RXD3 发送数据 TXD4 数据终端准备好 DTR5 信号地 SG6 数据准备好 DSR7 请求发送 RTS8 清除发送 CTS9 振铃提示 RI在选定好电路之后,根据设计,我们接好电路图,编写相应的程序,最终实现了PC与单片机之间的相互通信。具体结果我们将在实物实现和仿真中详谈。3、硬件设计(1)、在硬件设计时,根据前面的参考电路,我们设计了以下的硬件电路,并在实物中得到验证正确。(2)、器件选型: 名称大小型号数量使用无极性电容22Pf 2个晶振电路中使用无极性电容10Uf5个 晶振 11.0592M1片AT89C511片

8、主芯片微动开关2个复位以与数据传输电路中使用电阻10K0.51k2个8个复位电路以与数码管显示电路中有极性电容10Uf1个复位电路中使用MAX232芯片1片Db09串口头 1个串行接口单个数码管1个数码管显示电路USB口1个USB供电电源中电源开关1个USB供电电源中LED灯1个USB供电电源中有极性电容47uf1个USB供电电源中0.51K电阻1个USB供电电源中1K电阻1个串行发送电路中其中由于Proteus默认为软件自动上电,所以可不用画出上电电路,但为了实物连接时方便参考还是将上述的参考电路画出了。4、程序流程图单片机就收主程序单片机接收中断服务程序单片机自动发送给电脑接收到的信息四、

9、软硬件调试、运行结果与分析1、系统调试工具keil c51 Keil C51 仿真器是一款利用KEIL C51 的IDE 集成开发环境作为仿真环境的廉价仿真器,是利用SST公司具有IAP功能的单片机SST89C58制作而成,主要是利用了SST89C58的IAP功能,所谓IAP功能是In application program 的英文缩写,是在应用编程的意思,通俗一点讲就是:它可以通过串口将用户的程序下载到单片机中,可以通过串口对单片机进行编程。它之所以具有这种功能,实际上它有两块程序flash区,其中一块flash中运行的程序可以更改另外的一块程序flash区中的程序,正是利用这一特性才用它作

10、成了仿真器,我们把仿真器的监控程序事先烧入SST89C58,监控程序通过SST89C58的串口和PC通讯,当使用KEIL C51的IDE环境仿真时,用户的程序通过串口被监控程序写入flash程序区中,当用户设置断点等操作仿真程序时,flash程序中的用户程序也在相应的更改,从而实现了仿真功能 。调试的主要方法 :(1). 启动Keil c51 (2). 新建一个工程。Project菜单New project ,选择好我们要保存的文件夹后,键入Frist 保存。接着弹出CPU类型选择框,我们选择最常用的AT89C51,按确定。(3). 在工程中加入文件。新建一个文件,文件菜单FileNew,我们

11、再选择:文件菜单FileSave As? (另存为)弹出 对话框后,我们文件名框中键入First.c(注意文件后缀名是 .c)保存。C文件建好啦。现在我们把文件加入到工程中去。 点击Target 1前面的+号,右键单击Source Group 1选择Add Files to Group ,Source Group 1,选择添加 Add。编译运行,检查程序是否有错误。2、 PROTEUS软件Proteus是一款EDA软件,该软件具有模拟电路仿真,数字电路仿真,单片机以与外围电路组成的系统的仿真,RS-232动态仿真,I2C调试器,SPI调试器,键盘和LCD系统的仿真,以与各种虚拟仪器,如示波器,

12、逻辑分析仪,信号发生器等。该软件目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列、ARM以与各种外围芯片。该软件还支持大量的存储器和外围芯片,所以,该软件是一款集单片机和SPICE分析于一身的仿真软件。调试方法:首先用Keil软件将C编译成HEX文件,打开Keil软件,新建一个文档,输入C程序,保存成C格式文件,然后新建工程,连接单片机为AT89C51,选择Options for target,选择OUTPUT子菜单,在Create HEX Fi前打钩,DeBug子菜单中,Settings选择Proteu

13、sVSM Simulator,USE前打钩,再次运行文件,成功后在目录下会生成HEX文件,打开Proteus软件,或直接点击DSN文件,双击单片机模板,点击文件夹式样的图标选择对应的HEX驱动文件,然后点击开始,进行调试3、源程序#include #define uchar unsigned char#define uint unsigned intuint num; /数码管编码表uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;int key;vo

14、id delay(uint z)/延时函数uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void main()TMOD=0x20;/设置定时器1为工作方式2TH1=0xfd;/设置通信波特率TL1=0xfd;TR1=1;REN=1;SM0=0;/设置串行口为工作方式1SM1=1;EA=1;/打开中终断ES=1;P2=0;while(1)int i=800;while(i-);if(key=1)SBUF=num;/将数据传回到计算机while(!TI);/等待数据发送完毕TI=0;/发送中断标志位置0key=0;void ser() interrupt 4/串行

15、通信中断函数P2=0;RI=0;/接受中断标志位置0key=1;num=SBUF;/将计算机发送的数据存到num变量中4、程序调试仿真实现由于在程序设计的时候,未给程序赋初值,因此当上电时候,数码管不显示任何数字。在这里,我通过串行助手,使得计算机和单片机实现数据相互发送,如当使用串行接口助手发送数据4时,当发送数据8时,如此仿真,可得到0-F的仿真实现。5、实物实现硬件调试(1)、实物实现在焊接电路之前由于缺乏排版经验,所以在排版时出现了估计不足顾与了一端的接线而忽视了另一端,因而导致了电路板在焊接时有一些不必要的跳线,这是我们做到很不到位的地方。经过烧写程序,不断调试之后,我们也一次得到了

16、实物实现。在实物实现中,当使用串行助手通过RS232接口给单片机发送数据时,单片机接收数据并在数码管显示相应的数字,并且单片机将数据自动反馈回去给计算机,在窗口助手中显示放回信息。实现了计算机与单片机的数据互发.如下为电路焊接好后的最终实现图: (2)、硬件调试 起初,由于未给程序赋初值,所以实物实现中也没有相应的数码管数字显示。当计算机发送数据4和数据8时,得到以下结果当发送8时五、总结与体会初次看到本次的课程设计的题目时,感觉设计的难度不大,但是由于是第一次运用单片机设计,在设计过程中又遇到了种种困难,又感觉到要完成此次设计还需要花费很大的时间和精力。但是经过本组同学的共同努力,运用科学的

17、分析方法,最终顺利完成了本次单片机课程设计。经过两个星期的实习,过程曲折可谓一语难尽。在此期间我也失落过,也曾一度热情高涨。从开始时满富盛激情到最后汗水背后的复杂心情,点点滴滴无不令我回味无长。在焊接电路之前由于缺乏排版经验,所以在排版时出现了估计不足顾与了一端的接线而忽视了另一端,因而导致了电路板在焊接时有一些不必要的跳线,这是我们做到很不到位的地方。经过烧写程序,不断调试之后,我们也一次得到了实物实现。在实物实现中,当使用串行助手通过RS232接口给单片机发送数据时,单片机接收数据并在数码管显示相应的数字,并且单片机将数据自动反馈回去给计算机,在窗口助手中显示放回信息。实现了计算机与单片机

18、的数据互发.在这次单片机课程设计中,我觉得最大的收获就是提高了自己的动手与思考解决问题的能力,平常以为很明白的程序,在仿真过程中却发现并不是想象的那么简单,设计的过程中失败了很多次,通过自己的不懈努力最终获得设计的成功!生活也是这样,汗水预示着结果也见证着收获。劳动是人类生存生活永恒不变的话题。通过实习,我才真正领略到“艰苦奋斗”这一词的真正含义,我才意识到老一辈设计员为我们的社会付出。我想说,设计确实有些辛苦,但苦中也有乐,在如今物欲很流的世界,很少有机会能与大自然亲密接触,但我们可以,而且设计也是一个团队的任务,一起的工作可以让我们有说有笑,相互帮助,配合默契,多少人间欢乐在这里洒下,大学里一年的相处还赶不上这十来天的实习,我感觉我和同学们之间的距离更加近了;我想说,设计确实很累,但当我们的设计出现成果时,心中也不免产生兴奋,正所谓“三百六十行,行行出状元”我认为无论干什么,只要人生活的有意义就可以。同时我认为我们的工作是一个团队的工作,团队需要个人,个人也离不开团队,必须发扬团结协作的精神。某个人的离群都可能导

温馨提示

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

评论

0/150

提交评论