大连海事大学毕业设计(一)_第1页
大连海事大学毕业设计(一)_第2页
大连海事大学毕业设计(一)_第3页
大连海事大学毕业设计(一)_第4页
大连海事大学毕业设计(一)_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

1、大连海事大学毕业设计(一)1引言1.1 设计的目及意义一般的PC与单片机之间的串行通信,需要单片机采集数据,然后用异步串行通讯方式传给PC机。相对而言比较的烦琐,而本文着重用VB具有面向对象的设计方法,友好的用户来探讨在VB环境下来实现PC机与51单片机之间串行通讯的方法。实现起来要简捷方便。 随着机系统的应用和微机的,各种控制设备之间的通信功能越来越显得重要。尤其是伴随着单片微型机技术的发展,人们已越来越多地采用单片机来对一些控制系统中如温度、流量和压力等参数进行检测和控制。在本系统中,下位机采用一片AT89S51单片机,用于对发送的数据实施控制,为了实现对输入数据的接收,上位机采用便携式P

2、C机,上、下位机之间通过MAX232芯片实现串行数据通信。PC 机具有强大的监控和管理功能,而单片机则具有快速及灵活的控制特点,通过PC 机的RS-232 串行接口与外部设备进行通信,是许多测控系统中常用的一种通信解决方案。本文将论述在VB 环境下PC 机与单片机之间实现串行通讯的软硬件方案。实现单片机与 PC 机的相互通信。单片机部分由汇编语言实现,PC 机的通讯程序使用Visual Basic 编写,VB 是Microsoft 公司推出的Windows 应用程序开发工具,因其具有界面友好,编程简便等优点而受到广泛的使用,而且Visual Basic 6.0 版本带有专门实现串行通讯的MSC

3、OMM 控件。因此如何实现PC 机与单片机之间的通讯具有非常重要的现实意义。利用VB6.0 的事件驱动方式可以很方便地开发数据采集与监控系统,用单台PC 机可以测量和监控多路控制信号,整控制系统设计方便,对小型测控系统的设计具有很大的实用性。1.2 设计实现的功能实现单片机与 PC 机的相互通信。具体要求有以下两点:单片机发固定编好的代码,在用 VB 编好的界面上接收;在 VB 编好的界面上发送数字,在单片机板上的数码管上显示出来。2 硬件设计方案为了实现PC机与单片机之间的串行通信,我们首先要清楚了解整个系统所采用的原理图。原理图就象一根红线贯穿于整个系统设计,通过此图我们就能很清楚的看到系

4、统所涉及的内容,然后鉴于此,我们将在以后的章节中依次对所牵涉的内容作详细的论述。下面对原理图作一点说明:从MAX232芯片中的两路发送接收中任选一路作为接口,要注意其发送与接收引脚对应,否则可能对器件或计算机串口造成永久性损坏。如选他T1IN接单片机的发送端TXD,则PC机、的RS232的接收端RD一定要对应接T1OUT引脚。同时,R1OUT接单片机的接受端RXD引脚,则PC机的RS232的发送端TD一定要对应接R1IN引脚。上图为采用MAX232芯片接口的PC机与51单片机串行通信接口原理图2.1 AT89S51单片机2.1.1 AT89S51单片机简介AT89S51 为 ATMEL 所生产

5、的可电气烧录清洗的 8051 相容单芯片,是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器, 128 bytes的随机存取数据存储器(RAM),3

6、2个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。2.1.2 AT89S51单片机的功能AT89S51主要功能列举如下:1)为一般控制应用的8位单芯片2)晶片内部具有时钟振荡器3)内部程式存储器(ROM)为 4KB4)内部数据存储器(RAM)为 128B5)外部程序存储器可扩充至 64KB6)外部数据存储器可扩充至 64KB7)32 条双向输入输出线,且每条均可以单独做 I/O 的控制8)5个中断向量源9)2组独立的 16 位定时器10)1个全多工串行端口11)8751 及 8752 单芯

7、片具有数据保密的功能12)单芯片提供位运算指令2.1.3 AT89S51各引脚功能介绍:VCC:AT89S51 电源正端输入,接+5V。VSS:电源地端。XTAL1:单芯片系统时钟的反相放大器输入端。XTAL2:系统时钟的反相放大器输出端。RESET:AT89S51的重置引脚,高电平动作。EA/Vpp:存取外部程序代码,低电平动作。ALE/PROG:地址锁存器启用信号。PSEN:程序储存启用,通常这支脚是接到EPROM的OE脚。PORT0(P0.0P0.7):端口0是一个8位宽的开路汲极(Open Drain)双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。其他三个I

8、/O端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路,P0在当作I/O用时可以推动8个LS的TTL负载。如果当EA引脚为低电平时(即取用外部程序代码或数据存储器),P0就以多工方式提供地址总线(A0A7)及数据总线(D0D7)。PORT2(P2.0P2.7):端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。P2除了当作一般I/O端口使用外,若是在AT89S51扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8A15,这个时候P2便不能当作I/O来使用了。PORT1(P1.0P

9、1.7):端口1也是具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个LS TTL负载,同样地若将端口1的输出设为高电平,便是由此端口来输入数据。PORT3(P3.0P3.7):端口3也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。其引脚分配如下:P3.0:RXD,串行通信输入。P3.1:TXD,串行通信输出。P3.2:INT0,外部中断0输入。P3.3:INT1,外部中断1输入。P3.4:T0,计时计数器0输入。P3.5:T1,计时计数器1输入

10、。P3.6:WR:外部数据存储器的写入信号。P3.7:RD,外部数据存储器的读取信号。本系统所采用的AT89S51芯片如下图所示:2.1.4 AT89S51 ISPISP为在线编程接口。ISP在线编程接口为89S51单片机提供了方便的在线编程方法,使用时将ISP下载线一端与PC并口相连接,一端与ISP接口相连,使用ISP下载软件即可实现MCU在线编程。下载线插接说明:两排十针下载口,板图上都有一个小方框,为1号引角;下载线的凸口为正方向,凸口的右侧边的第一个插孔为1号引角,这一点一定要切记,不然的话程序下载不进去。本系统中所用AT89S51 ISP原理图如下示: AT89S51 ISP2.2串

11、行通讯2.2.1串行通讯的概念串行通讯:一条信息的各位数据被逐位按顺序传送的通讯方式称为串行通讯。串行通讯的特点是:数据位传送,传送按位顺序进行,最少只需一根传输线即可完成,成本低但传送速度慢。串行通讯的距离可以从几米到几千米。分类:根据信息的传送方向,串行通讯可以进一步分为单工、半双工和全双工三种。1 2.2.2RS-232C串口通讯原理 RS-232C是目前最常用的串行接口标准,用来实现机与计算机之间,计算机与外设之间的数据通信。RS-232C串行接口总线适用于设备之间的通信距离不大于15米,传输速率最高为19.2kb/s的场合。RS-232C标准规定的数据传输速率为50、75、100、1

12、50、300、600、1200、2400、4800、9600、和19200b/s。RS-232C属单端信号传送,存在共地噪声和不能抑制的共模干扰等问题,因此一般用于短距离通信。1)RS-232C接口信号一个完整的RS-232C接口有22根线,采用标准的25芯连接器。2)RS-232C 典型应用用RS-232C总线连接系统时,有近程通信方式和远程通信方式之分。近程通信是指传输距离小于15米的通信,这时可以用RS-232C电缆直接连接。15米以上的长距离通信,需要采用调制解调器。下图a)是计算机与终端之间利用RS-232C直接通信的最常用的交叉连线图。图中“发送数据”与“接收数据”是交叉相连的,使

13、得两台设备都能正确地发送和接收。“数据终端变绪”与“数据装置就绪”两根线也是交叉相连的,使得两设备都能检测出对方是否已经准备好。在最简单的全双工系统中,公用发送数据、接收数据和信号地三根即可。对MCS-51单片机来说,利用RXD(串行数据接收端)线、TXD(串行数据发送端)线以及一根地线,就可以构成符合RS-232C接口标准的全双工串行通信口。(见图b)(a)直接连接(b)最简单的RS-232C数据通信连接3)RS-232C接口电平转换RS-232C是早期为促进公用电话进行数据通信而制定的标准,其逻辑电平对地是对称的,完全与TTL、CMOS逻辑电平不同。RS-232C采用负逻辑,即:逻辑:-5

14、V-15V。 逻辑:+5V+15V。由于MCS-51采用TTL电平,若用RS-232C标准接口通信必须进行电平转换。目前RS-232C与TTL电平转换最常用的集成电路芯片是传输线驱动器MC1488传输线接收器MC1489。其内部结构和引脚如下图(c)所示。MC1488可完成TTL电平到RS-232C的电平转换,输入为TTL电平,输出为RS-232C电平。其内部有个与非门和个反相器。采用12V或15V电源供电。MC1489可完成由RS-232C到TTL电平转换,输入为RS-232C电平,输出为TTL电平。其内部有4个反相器,采用+5V电源供电。MC1489中每个反相器都有一个控制端,高电平有效,

15、可作为RS-232C操作的控制端。图(d)给出了RS-232C接口电路原理图。(c)RS-232C电平转换芯片MC1488和MC1489(d) RS-232C接口电路MAX232芯片MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的接口电路,使用+5v单电源供电。它的内部结构基本可分三个部分;第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DP9插头;DP9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出

温馨提示

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

评论

0/150

提交评论