51单片机与pc机串口通信接口设计_第1页
51单片机与pc机串口通信接口设计_第2页
51单片机与pc机串口通信接口设计_第3页
51单片机与pc机串口通信接口设计_第4页
51单片机与pc机串口通信接口设计_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

51单片机与pc机串口通信接口设计精品好文档,推举学习沟通精品好文档,推举学习沟通仅供学习与沟通,如有侵权请联系网站删除感谢仅供学习与沟通,如有侵权请联系网站删除感谢10一. 绪论PC机串行通信现状及进展前景优越的性价比和丰富的软件资源,已成为计算机应用的主流机种。而单片机在工业掌握系统中也越来越得到广泛的应用,它以价格低、功能全、体积小、抗干扰力量强、开发应用便利等特点已渗透到各个开发领域。特别是利用其能直接进展全双工通信的特点,在数据采集、智能仪表仪器、家用电器和过程掌握中作为智能前沿机。但由于单片机计算力量有限,难以进展简单的数据处理,因此应用高性能的计算机对系统的全部智能前沿机进展治理和掌握,已成为一种进展PC机为主机,单片机为从机,由单片机完成数据的采集及对装置的掌握,而由主机完成各种简单的数据处理和对单片机的掌握。所以计算机与单片机之间的数据通信更加显得重要。PC机串行通信的方式有并行通信和串行通信。降低通信本钱。串行通信是指依据逐位挨次传递数据的通信方式,由于仅需三根传输线传送信息且通信距离相对较远,所以在掌握领域的现场监测、分布PC机具有强大的监控和治理功能,单片机则具有快速以及简洁掌握的特点,在数据量不大、传输要求不高的RS-232COM1、COM2等相PC机之间的数据交换。随着技术的进展和数据流量的不断增长,传统的并行接口面临的I/O接口的数据率进一步提高的瓶颈。在这种状况下,过去主要用于光纤通信的串行通信技术正在取代传统并行总线而成为高速接口技术的主流,由于硬件的实现比较简洁,而且用户使用上也很简便。串行通信作为一种敏捷便利的通信方式,一种有效的通信手段,被广泛应用于工业掌握中。是否满足设计目标要求是必需设计的一个关键问题。单片机和微机技术的不断进展,特别是网络技术在测控领域的广方向。它结合了单片机在实时数据采集和微机对图形处理、显示的优点。windows环境下后台微机在数据库治理上具有明显的优势。二者结形成了向以网络为核心的分布式多点系统进展的趋势。单片机与PC机串行通信争论目的和意义现代信息网络技术的一个突出特点,就是使工业掌握系统中的全部设备连接成网,从而在一个核心软件治理下工作〔这个软件可能是分布式的操作系统,也可能是嵌入式操作系统〕,形成一个有机的整体。这种整体网络方式的现代工业掌握系统具有传统独立掌握系统所无法比较的先进性,不仅能极大地提高工业设备的生产效率,还可以大大提高系统的安全性和牢靠性[4]。单片机自诞生以来以其性能稳定、价格低廉、功能强大,在智能仪器、工业装备以及日用电子消费品中得到了越来越广泛的应用。在单片机的输入输出掌握中,除直接接上小键盘和LCD显示屏等方法外,一般都通过串口和上位机PC进展通信。由于随着微机和网络技术的普及应用,掌握过程中如虚拟设备面板、曲线记录显示、打印输出等一系列更高的要求也相应被提出,这些要求往往是面对底层掌握的单片机分立掌握系统所无法企及的[5]。而很多基于微机视窗操作平台的可视化软件开发工具如VisualBasic、Delphi〔我要用哪个软件,那个软件要介绍吗?〕等能简洁地解决此类问题很好地充当这些要求的实现载体,于是产生了由微机与多台单片机构建的小型测控系统。后来又产生构造更简单、运行更安全、稳定的集散掌握系统〔DCS〕,但由于价格昂贵,用于小型系统的掌握往往过于铺张。而后一种方法由于能实现远程掌握,并且能够利用PC机强大的数据处理功能以及友好的掌握界面,显得尤为重要。在一般的利用PC机对单片机进展掌握的场合,都是承受Windows作为上位机的平台,其优点是界面友好,编程和操作都比较简洁。因此争论PC机与单片机串行通信具有十足的现实及工业意义。虽说Windows操作平台界面友好,操作简洁,但是缺点是稳定性太差,这对于需要连续数天或数月运行的装置来说,尤其不适宜。在要求比较苛刻的场合,一般都承受UNIX工作站作为主控平台,如合肥同步辐射的主控平台承受的是SUN的Solaris工作站系统,然而UNIX〔这些我要不要介绍?这些可以用到吗?〕工作站昂贵的价格又大大限制了其使用的范围[6]。近年来,随着Linux的迅猛进展,使其渐渐从少数人的玩具变成了主流的操作系统。Linux是遵循GPL协议的免费源代码开放软件,任何人都可以自由的从Internet上取得其源程序,也可在GPL的协议下修改其源代码以适应特定的应用,其运行在一般的PC上,性能稳定,特别适于做工业掌握,因此实现Linux和单片机的串行通信格外UNIX工作站的一种可选的替代方法。论文内容及构造安排论文的第一章对单片机与PC机串行通信的现状、觉察趋势和争论此题目的目的和意义进展了论述。其次章从最根本的方面介绍了此次设计所必需的根本学问。其次章分为两部分,第一局部包括了单片机的简介以及本次设计中所用单片机的选择。其次局部介绍了串行通信的根本概念、串行通信接口标准RS-232的概念和远程串行通信RS-485的概念,以及两者的比较。第三章首先争论了单片机几个特别存放器的格式,以便在后面的软件设计中对单片机进展正确的初始化。其次争论了单片机与PC机点对点串行通信的软硬件实现与PC机与多单片机通信的软硬件实现。点对点通信中,硬件设计主要是解决PC机的RS-232电平到单片机的TTL电平的转换,给出了具体的电路图。软件设计中,单片机作为下位机不主动向PC机发出恳求,所以设计了一种比较简洁的PC机向单片机读写数据的协议,基于这种协议给出了单片机和PC机的程序。多机通信是基于点对点通信的。多机通信主要需要解决的就是单片机的寻址问题。一旦确定选择的是哪个单片机时,剩下的问题就是点对点通信了。本文中所争论的多机通信是基于RS-485总线的,为下面一章应用做铺垫。用RS-485的问题在于它的电平与PC机和单片机又不同,所以又要进展电平转换。所以文中给出了怎样进展电平转换的具体争论以及具体电路设计。多机通信的软件方面只给出了单片机寻址局部,因其余局部与点对点通信一样。第四章为串行通信的应用举例〔要改的〕二. 单片机AT89S51概述〔要不要介绍mcs-51单片机串行接口?〕单片机的选型在测控系统和工程应用中,常遇到多项任务需同时执行的状况,因而主从式多机分布式系统成为现代工业广泛应用的模式。它们大多由PC机和MCS-51单片机组成。MCS-51系列单片机在国际市场中占有率居世界之首,主要是由于它有如下优点:性能价格比大大超过Z80等单板微型机;开发用的仿真机争论较早并日趋完善;生产厂家较多;支持芯片种类多;适合不同应用场合的机种不断涌现。PC机作为主机,单片机作为从机完成各自的功能需要不断的进展信息沟通,因此通信成为分布式测控系统重要而根本的功能。AT89C51是最常用的51芯片。AT89C51是ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪耀存储器组合在单个芯片中,ATMEL公司的AT89C51是一种高效微掌握器,为很多嵌入式掌握系统供给了一种敏捷性高且价廉的方案。它的片内Flash存储器允许在系统内改编程序或用常规的非易失性的存储器编程器来编程,同时已经具有三级存储器保密的性能。在众多的51系列单片机中,要算ATMEL公司的AT89C51单片机最有用。片内4K程序存储器是承受Flash工艺的,这种工艺下的存储器用户可以用电方式瞬间擦除、改写。所以说这种单片机对开发设备要求很低,开发时间也大大缩短。写入单片机的程序还可以加密,这又很好的保护了全部劳动者的成果[9]。所以本文中所用的单片机将承受AT89C51。AT89C51供给以下标准功能:4k字节FLASH闪速存储器,128字节内部RAM,32个I/O口线,2个16位定时/计数器,一个5向量两级中断构造,一个全双工串行通信口,片内振荡器准时钟电路。同时,AT89C51降至0Hz的静态规律操作,并支持两种可选的节电工作模式。空闲方式制止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统连续工作。AT89C51单片机内部有一个功能较强的全双工串行异步通信接口,它可以作UART〔通用异步接收和发送器〕用,构成双机或多机通信系统,也可以外接移位存放器后扩展为并行I/O口。AT89C51单片机通过引脚RXD〔P3.0〕和引脚TXD〔P3.1〕与外界进展通信。AT89C51的串行口是可编程接口,通过对两个特别功能存放器SCON和PCON进行编程可掌握串行口的工作方式和波特率。SCON用于掌握串行口的工作方式,同时还包含要发送或接收到的第9位数据位以及串行口中断标志位。该存放器的字节地址为98H,可进展位寻址。PCON中只有最高位SMOD与串行口工作有关,该位用于掌握串行口工作于方式1、2、3时的波特率。PCON的字节地址为87H,没有位寻址功能。单片机复位时,SMOD=0。MCS-51串行口有方式0、方式1、方式2和方式3四种工作方式,每种工作方式下的波特率设置方法也不一样,用户应依据实际需要正确选用[10]。方式0主要用于扩展并行输入输出口,方式1、方式2和方式3主要用于串行通3可用于多机通信。AT89S51单片机具有的特点AT89S51是一个低功耗,高性能CMOS8位单片机,片内含4kBytesISP(In-systemprogrammable) 的可反复擦写1000次的Flash只读程序存储器,器件承受ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚构造,芯片内集成了通用 8位中心处理器和ISPFlash存储单元,功能强大的微型计算机的 AT89S51可为很多嵌入式掌握应用系统供给高性价比的解决方案。AT89S51具有如下特点:40个引脚,4kBytesFlash 片内程序存储器,128bytes的随机存取数据存储器〔RAM〕,32个外部双向输入/输出〔I/O〕5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗〔WDT〕电路,片内时钟振荡器。此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可连续工作,掉电模式冻结振荡器而保存 RAM的数据,停顿芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有 PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。AT89S51单片机的管脚图〔太少了,就一个图,不知还添加什么内容?〕AT89S51单片机各引脚功能简要介绍主要特性:8031CPU与MCS-51兼容4K字节可编程FLASH存储器(1000写/擦循环)全静态工作:0Hz-24KHz三级程序存储器保密锁定128*8位内部RAM32条可编程I/O线两个16位定时器/计数器6个中断源可编程串行通道低功耗的闲置和掉电模式2.管脚说明:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸取8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASHP0口作为原码输入口,当FIASH进展校验时,P0输出原码,此时P0外部必需被拉高。P1口:P1口是一个内部供给上拉电阻的 8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电寻常,将输出电流,这是由于内部上拉的原因。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的原因。P2口当用于外部程序存储器或16位地址外部数据存储器进展存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进展读写时, P2口输出其特别功能存放器的内容。P2口在FLASH编程和校验时接收高八位地址信号和掌握信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流〔ILL〕这是由于上拉的原因。P3.0RXD〔串行输入口〕P3.1TXD〔串行输出口〕P3.2/INT0〔外部中断0〕P3.3/INT1〔外部中断1〕P3.4T0〔记时器0外部输入〕P3.5T1〔记时器1外部输入〕P3.6/WR〔外部数据存储器写选通〕P3.7/RD〔外部数据存储器读选通〕P3口同时为闪耀编程和编程校验接收一些掌握信号。I/O口作为输入口时有两种工作方式即所谓的读端口与读引脚读端口时实际上并不从外部读入数据而是把端口锁存器的内容读入到内部总线经过某种运算或变换后再写回到端口锁存器只有读端口时才真正地把外部的数据读入到内部总线上面图中的两个三角形表示的就是输入缓冲器 CPU将依据不同的指令分别发出读端口或读引脚信号以完成不同的操作这是由硬件自动完成的不需要我们操劳1然后再实行读引脚操作否则就可能读入出错为什么看上面的图假设不对端口置1端口锁存器原来的状态有可能为 0Q端为0Q^为1加到场效应管栅极的信号为1该场效应管就导通对地呈现低阻抗,此时即使引脚上输入的信号为1也会因端口的低阻抗而使信号变低使得外加的 1信号读入后不肯定是1假设先执行置1操作则可以使场效应管截止引脚信号直接加到三态缓冲器中实现正确的读入由于在输入操作时还必需附加一个预备动作所以这类I/O口被称为准双向口89C51的P0/P1/P2/P3 时都是准双向口接下来让我们再看另一个问题从图中可以看出这四个端口还有一个差异除了P1口外P0P2P3口都还有其他的功能RST:复位输入。当振荡器复位器件时,要保持 RST脚两个机器周期的高电寻常间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在寻常,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要留意的是:每当用作外部数据存储器时,将跳过一个 ALE脉冲。如想制止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。假设微处理器在外部执行状态ALE制止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不消灭。/EA/VPP:当/EA保持低电寻常,则在此期间外部程序存储器〔0000H-FFFFH〕,不管是否有内部程序存储器。留意加密方式 1时,/EA将内部锁定为RESET;当/EA端保持高电寻常,此间内部程序存储器。在 FLASH编程期间,此引脚也用于施加12V编程电源〔VPP〕。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。AT89S51与AT89C51的比较MCS-51单片机是美国INTE公司于1980年推出的产品,典型产品有8031〔内部没有程序存储器,实际使用方面已经被市场淘汰〕、8051〔芯片承受HMOS,功耗是630mW,是89C51的5倍,实际使用方面已经被市场淘汰〕和8751等通用产品,始终到现在,MCS-51内核系列兼容的单片机仍是应用的主流产品〔比方目前流行的89S51、已经停产的89C51等〕,各高校及专业学校MCS-51单片机作为代表进展理论根底学习。有些文献甚至也将8051泛指MCS-51系列单片机,8051是早期的最典型的代表作,由于MCS-51单片机影响极深远,很多公司都推出了兼容系列单片MCS-518位单片机的标准。其他的公司的51单片机产品都是和MCS-51内核兼容的产品而以。同样的一ATMEL的89C51〔已经停产〕、89S51,PHILIPS〔菲利浦〕,和WINBOND〔华邦〕等,我们常说的已经停产的89C51指的是ATMEL公司的AT89C51单片机,同时是在原根底上增加了很多特性,如时钟,更优秀的是由Flash〔程序存储器的1000次〕ROM〔一次性写入〕,AT89C51的性能相对于8051已经算是格外优越的了。不过在市场化方面,89C51PIC单片机阵营的挑

温馨提示

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

评论

0/150

提交评论