单片机数据采集系统摘 要本文提出了一种基于多个MCU通信的实时数据采集系统方案,该系统由监控计算机单元,数据处理单元,总线隔离器单元,接收单片机,数据采集单元组成数据处理单元与多个现场采集器为点对点的串行通信方式,在数据处理单元内部,各个通道的数据以双CPU并行通行方式进行处理,处理的结果以串行方式送入监控主机;同时在采集单元与处理单元,处理单元与计算机之间采用RS-485总线进行数据的传送;对于采样的数据,通过可编程键盘/显示接口8279芯片对数据进行显示,筛选,转存实际运用证明,该方案具有良好的实时性[关键词] 数据采集处理系统;单片机(MCU);串行通信;并行通信 AbstractThe text brings forward a sort of real-time data collecting system scheme,which is based on multi-MCU corresponding. The system consists of supervising computer cell, data processing cell, overall-insulating cell, incepting SCM and data collection cell. The data processing cell and the multi-field collectors are serial communication which are one point opposite one point. Within the data processing cell, every passage data are processed in double CPU merge-capable transmission fashion. Then, the processing results enter the supervising host computer in strand-capable fashion. At the same time,we transmit data with adopting RS-485 bus between the collection cell and the processing cell, and also between the processing cell and the computer. As to the sampling data, we display the data by programming keyboard /displaying 8279 CMOS chip, as well as filtrating and depositing the data with transferring fashion. Practicality mobilization proves this project has favorable real-time character. .Key words: data acquisition and processing system ; Microcontroller unit ;serial data communication ; parallel data communication 目 录摘 要 IAbstract II目 录 IIICATALOG IV第一章 引 言 11.1 数据采集系统的组成 11.2 数据采集系统的应用领域及发展前景 1第二章 概 述 32.1 单片机的组成 32.2 单片机的分类 32.3 单片机的特点 52.4 单片机的应用 62.5 单片机的发展 6第三章 数据采集系统的硬件组成 103.1 集散式数据采集系统的结构 103.2 数据处理器 133.3 3-8译码器 173.4 74LS244 隔离器 193.5 RS-485总线 193.6 键盘/显示控制器8279 213.7 键盘,显示器工作原理 23第四章 数据采集系统的软件实现 264.1 数据接收器接收,发送数据 264.2 数据处理器接收数据 294.3 主处理器执行中断 294.4 键盘显示电路 32结 束 语 39参 考 文 献: 40致 谢 41附 图 42 CATALOGAbstract IIChapter 1 Foreword 11.1 The consitute of data collecting system 11.2 The applied realm and development foregrounds of data collecting system 1Chapter 2 Summarize 32.1 Consitute of singlechip 32.2 Sorts of singlechip 32.3 Specialty of singlechip 52.4 Application of singlechip 62.5 Development of singlechip 6Chapter 3 Hardware constitute of data collecting system 103.1 Structure of gather to spread data collecting system 103.2 Data processor 133.3 3-8 encoder 173.4 74LS244 snsulation machine 193.5 RS-485 BUS 193.6 Keyboard/Display controller 8279 213.7 Work principle of Keyboard and display 23Chapter 4 Software realization of data collecting system 264.1 Receive and send data by data receiver 26 4.2 Receive data by data processor ................................. 294.3 Perform halt by main processor..................................... 294.4 Keyboard and display circuit 32Tag 39Reference literature 40Thankfulness 41Refence map.....................................................................4 2 41 第一章 引 言随着科学技术和生产的发展,需要对各种参数进行测量,温度是工业对象中主要的被控参数之一。
在冶金工业,化工工业,电力工程,机械制造和食品加工等许多领域中,人们都需要对相应的温度进行实时监测控制1.1 数据采集系统的组成数据采集系统的主要内容通常包含硬件(连同单片微机在内的全部电子线路),软件(包括监控管理程序及各功能模块应用软件)及结构工艺等三部分组成一般的数据采集系统由:数据采集单元,A/D转换单元,D/A转换单元,数据传输单元,数据处理单元,键盘/显示电路等几部分组成1.2 数据采集系统的应用领域及发展前景数据采集系统的应用范围非常广泛随着科学技术的发展,对有用信号进行数据的采集,分析,计算,提取等有较好的运用一般的数据采集主要应用于:(1) 生物医学信号处理(2) 多媒体技术与人机交互(3) 导航与现代通信技术(4) 遥感,遥测的应用(5) 人工智能与模式识别,计算机视觉与可视化(6) 雷达,声纳信号处理(7) 微弱信号处理技术随着数据采集系统被广泛的利用,在特定的行业要获得较精确的采样数据,都需要对该系统进行特殊的要求如:由于工业现场环境恶劣,很多设备(比如变频器)都是对数据采集产生很大干扰的干扰源;而且一般的采集器都有多路信号输入,它们地线相连会导致干扰通过地线进入正在采集的信号,使得数据采集不准确,因此数据采集器的抗干扰设计十分重要。
所以,在数据采集系统的发展过程中,为满足特定的要求,数据采集系统的发展方向主要由:1) 系统抗干扰性 保证获得的数据较精确如:可设计一个数据采集器,它除了正常的低 通滤波,RC滤波外,还可用PHOTOMOS光继电器对每路信号进行隔离,每路信号的地线都独立开来2) 实时通信 保证数据处理单元能较快的得到要处理的数据,提高了主机的运行效率,如:采集现场与处理单元距离短可用RS-232总线,距离长可用RS-485总线 3)高速数据采集 一般数字信号的获得需要对模拟信号进行采集,这就需要高 速,高性能的A/D转换相适应4)低功耗性 适合与电池供电和空间受限的工作环境以及便携式场合第二章 概 述2.1 单片机的组成所谓单片机就是单片微型计算机(Single-chip Microcomputer),单片微型计算机的核心是微处理器MPU,与一般微型计算机所不同的是它将微处理器,内存,I/O接口,中断逻辑,定时器/计数器等集成到一个集成电路芯片上,有的单片机还集成了A/D,D/A转换器等电路,如图2—1所示这种结构特别使用于测控领域,因此,也称其为微控制器(Microcontroller),简写为MCU,但国内大多数人习惯上都叫单片机。
图2—1单片机的组成框图2.2 单片机的分类常用的单片机分类方法有两种,一是按字长分类,二是按用途分类2.2.1 按字长分类 根据单片机对各种基本操作处理的数据来看,单片机有4位单片机,8位单片机,32位单片机和64位单片机等1. 4位单片机4位单片机的主要生产国是日本,如Sharp公司的SM系列,东芝公司的TCLS系列,NEC公司的uCOM75**系列等此外,还有美国TI公司的TMS1000和NS公司的COP400系列国内也早已能够生产COP400系列的4位单片机4位单片机的主要特点是价格便宜,但功能并不弱,只是CPU为4位其片内存储器有2KB ROM,128B*4的RAM等NEC公司的uPD75**的片内ROM可达8KB,RAM为512B*4,还带有6位A/D转换目前,4位单片机主要用于控制诸如洗衣机,微波炉等家用电器及高档电子玩具2. 8位单片机8位单片机是目前单片机中的主流机型在8位单片机中,一般把无串行I/O接口和只提供小范围的寻址空间(小于8KB)的单片机称为低档的8位单片机,如Intel公司MCS-48系列和Faichild公司的F8就属于此类;把带有串行I/O接口或A/D转换以及进行64KB以上寻址的单片机,称为高档的8位单片机,如Intel公司的MCS-51系列,Motorala公司的MC6810,Zilog公司的Z8等。
近年来,在高档8位单片机的基础上又出现了超8位单片机,如Intel公司的UPI-452,83C152,Zilog公司的Super8,Motorola公司的MC68HC11等它们不但进一步扩大了片内ROM和RAM的容量,而且还增加了高级通信,DMA传送和高速I/O功能另外,由于8位单片机的功能强,价格低廉,品种齐全,因而被广泛应用于各个领域特别是高档单片机的主要机型3. 16位单片机16位单片机主要有Thomoson公司的68200系列,Intel公司的MCS-96系列,NS公司HPC16040和NEC公司的783**等而得到实际应用的16位单片机主要是Intel公司的MCS-96系列单片机4. 32位单片机32位单片机首推英国Inmos公司的IMS414DPJI,它是目前并行处理位数最高的单片机之一5. 64位单片机64位单片机的处理能力是任何32位单片机都无法达到的目前,SperH,MIPS Technologies东芝等厂商还是准备将64位单片机微处理器内核推向嵌入式系统市场2.2.2 按用途分类按用途分类,可将单片机分为通用型单片机和专用型单片机两种1. 通用型单片机将资源全部提供给用户使用,如片内寄存器,存储器,中断系统,定时器/计数器,I/O接口等。
其适应性强,扩展容易,构建各种应用系统十分灵活,应用广泛如MCS-51系列单片机2. 专用型单片机针对各种特殊应用场合而专门设计的单片机如生产过程控制,数据采集与信号处理等它们通常是微控制系统的集成化产品TMS320系列就是专门用于数字信号处理的单片机(也称DSP芯片),他的指令周期短,运算速度和精度高2.3 单片机的特点由于单片机是在一块大规模或超大规模集成电路芯片上集成了微型计算机的主要功能单元,本身就是具有一定规模的计算机,因此,其紧凑的结构,小巧的形体在许多应用场合是其他类型的计算机所不能比拟的,其特点归纳如下:1.形小体轻功耗低 如前所述,单片机就是一个计算机芯片,在这个芯片上集成了计算机的基本功能部件,甚至是构成技术应用系统的各功能部件因此,其集成度相当高,而这个芯片的尺寸与普通的集成块是一样的,那么形小体轻自然不用说了而且,由于单片机大量用于便携式产品和家用电器,设计时专门考虑了低电压,低功耗环境如许多单片机可在2.2V甚至1.2V或0.9V电压下工作,其功耗可降低至uA级,一颗纽扣电池供电可以使用很长时间另外,由于集成度高,抗干扰能力强,其本身的可靠性也相当高。
2.能强,运算速度快,性价比高单片机在构成测控系统,电器控制装置,智能仪器等方面与其他微型计机相比有特别明显的优势,在设计软件,硬件资源时充分考虑了这方面的功能,如指令系统中具有丰富的程序分支转移,布尔处理和逻辑控制命令,有定时器,中断系统,I/O接口,各种控制寄存器等丰富的硬件资源单片机特有的结构形式,提高了运算速度有的单片机还采用了RISC和DSP技术,进一步改善了运行效率随着各种新技术的不断发展,各厂商在提高单片机性能的同时进一步降低价格,性能价格比成为竞争焦点之一,因此,从总体上讲单片机优于普通的微处理器而单片机价格可降低至0.5美元3.应用系统研制周期短,软,硬件开发灵活方便由于单片机有丰富的内存和I/O接口等功能单元,可直接与外围电路或芯片连接,编写简单程序就可以构成应用系统而且利用简单的开发工具就可以在应用环境下进行软件,硬件调试,修改也十分方便调试成功后即可成为实际的应用系统因此,研制应用系统的时间可减到最短,其开放性的灵活扩展功能使软,硬件开发变得简单,也易于掌握另外,为防止因突然掉电造成信息丢失或损坏,单片机基本上都设计了备用电源引脚,可以很方便地接入备用电源,以利保护信息。
2.4 单片机的应用 由于单片机的超小型结构和优越的性价比,使其应用领域十分广泛,这里列出一些主要的应用领域1) 工业控制:各种测试系统,机器人等2) 仪器仪表:智能仪器仪表,医疗仪器等3) 家电,玩具:各种游戏机,全自动家用电器,摄像机,激光盘驱动器,电子玩具等4)计算机外设和通讯设备:各种计算机外设控制(磁盘驱动器控制,打印机控制,键盘控制),调制调解器,智能线路运行控制等5)数据处理:图形处理,数字信号处理(DSP),数据采集与处理,复印机控制等6)汽车控制: 点火系统控制,变速器控制,防滑刹车控制,排气控制等7)国防应用:鱼雷制导控制,导弹控制,智能武器控制,其他航空航天系统随着单片机技术的发展,新的产品不断涌现,应用领域还将继续扩大 2.5 单片机的发展2.5.1单片机技术的发展特点自单片机出现至今,单片机技术已走过了近20年的发展路程纵观20年来单片机发展历程可以看出,单片机技术的发展以微处理器(MPU)技术及超大规模集成电路技术的发展为先导,以广泛的应用领域拉动,表现出较微处理器更具个性的发展趋势单片机长寿命 这里所说的长寿命,一方面指用单片机开发的产品可以稳定可靠地工作十年、二十年,另一方面是指与微处理器相比的长寿命。
随着半导体技术的飞速发展,MPU更新换代的速度越来越快,以386、486、586为代表的MPU,很短的时间内就被淘汰出局,而传统的单片机如68HC05、8051等年龄已有15岁,产量仍是上升的这一方面是由于其对相应应用领域的适应性,另一方面是由于以该类CPU为核心,集成以更多I/O功能模块的新单片机系列层出不穷可以预见,一些成功上市的相对年轻的CPU核心,也会随着I/O功能模块的不断丰富,有着相当长的生存周期新的CPU类型的加盟,使单片机队伍不断壮大,给用户带来了更多的选择余地8位、16位、32位单片机共同发展 这是当前单片机技术发展的另一动向长期以来,单片机技术的发展是以8位机为主的随着移动通讯、网络技术、多媒体技术等高科技产品进入家庭,32位单片机应用得到了长足发展以Motorola68K为CPU的32位单片机97年的销售量达8千万枚过去认为由于8位单片机功能越来越强,32位机越来越便宜,使16位单片机生存空间有限,而16位单片机的发展无论从品种和产量方面,近年来都有较大幅度的增长单片机速度越来越快 MPU发展中表现出来的速度越来越快是以时钟频率越来越高为标志的。
而单片机则有所不同,为提高单片机抗干扰能力,降低噪声,降低时钟频率而不牺牲运算速度是单片机技术发展之追求一些8051单片机兼容厂商改善了单片机的内部时序,在不提高时钟频率的条件下,使运算速度提高了很多,Motorola单片机则使用了琐相环技术或内部倍频技术使内部总线速度大大高于时钟产生器的频率68HC08单片机使用4.9M外部振荡器而内部时钟达32M,而M68K系列32位单片机使用32K的外部振荡器频率内部时钟可达16MHz以上低电压与低功耗 自80年代中期以来,NMOS工艺单片机逐渐被CMOS工艺代替,功耗得以大幅度下降,随着超大规模集成电路技术由3μm工艺发展到1.5、1.2、0.8、0.5、0.35近而实现0.2μm工艺,全静态设计使时钟频率从直流到数十兆任选,都使功耗不断下降Motorla最近推出任选的M.CORE可在1.8V电压下以50M/48MIPS全速工作,功率约为20mW几乎所有的单片机都有Wait,Stop等省电运行方式允许使用的电源电压范围也越来越宽一般单片机都能在3到6V范围内工作,对电池供电的单片机不再需要对电源采取稳压措施低电压供电的单片机电源下限已由2.7V降至2.2V、1.8V。
0.9V供电的单片机已经问世低噪声与高可靠性技术 为提高单片机系统的抗电磁干扰能力,使产品能适应恶劣的工作环境,满足电磁兼容性方面更高标准的要求,各单片机商家在单片机内部电路中采取了一些新的技术措施如美国国家半导体NS的COP8单片机内部增加了抗EMI电路,增强了“看门狗”的性能Motorola也推出了低噪声的LN系列单片机OTP与掩膜 OTP是一次性写入的单片机过去认为一个单片机产品的成熟是以投产掩膜型单片机为标志的由于掩膜需要一定的生产周期,而OTP型单片机价格不断下降,使得近年来直接使用OTP完成最终产品制造更为流行它较之掩膜具有生产周期短、风险小的特点近年来,OTP型单片机需量大幅度上扬,为适应这种需求许多单片机都采用了在片编程技术(In System Programming)未编程的OTP芯片可采用裸片Bonding技术或表面贴技术,先焊在印刷板上,然后通过单片机上引出的编程线、串行数据、时钟线等对单片机编程解决了批量写OTP芯片时容易出现的芯片与写入器接触不好的问题使OTP的裸片得以广泛使用,降低了产品的成本编程线与I/O线共用,不增加单片机的额外引脚而一些生产厂商推出的单片机不再有掩膜型,全部为有ISP功能的OTP。
MTP向OTP挑战 MTP是可多次编程的意思一些单片机厂商以MTP的性能,OTP的价位推出他们的单片机,如ATMEL AVR单片机,片内采用FLASH,可多次编程华邦公司生产的与8051兼容的单片机也采用了MTP性能,OTP的价位这些单片机都使用了ISP技术,等安装到印刷线路板上以后再下载程序2.5.2单片机的发展趋势随着半导体工艺技术的发展及系统设计水平的提高,单片机正在不断产生新的变化和进步,人们发现:单片机与微机系统之间的距离越来越小,甚至难以辨认单片机在目前的发展形势下,表现出以下几大趋势:(1) 可靠性及应用水平越来越高 和互联网的连接已是一种明显的走向现在的新型单片机已经集成IP技术与蓝牙技术,对网络的连接支持功能越来越强2) 所集成的部件越来越多 单片机在内部已集成了越来越多的部件,这些部件包括一般常用的电路,例如:定时器,比较器,A/D转换器,D/A转换器,串行通信接口,Watchdog电路,LCD控制器等有的单片机为了构成控制网络或形成局部网,内部含有局部网络控制模块CANNS(美国国家半导体)公司的单片机已把语音、图象部件也集成到单片机中,如果从功能上讲它可以是万用机,原因是其内部已集成上各种应用电路。
3) 功耗越来越低 现在新的单片机的功耗越来越小,特别是很多单片机都设置了多种工作方式,这些工作方式包括等待,暂停,睡眠,空闲,节电等工作方式零功耗系统正是当前设计的追求目标4) 和模拟电路结合越来越多 单片机正被广泛的嵌入到各种应用系统中单片机的另外一个名称就是嵌入式微控制器,原因在于它可以嵌入到任何微型或小型仪器或设备中5) 可靠性越来越高在单片机应用中,可靠性是首要的因素,单片机自身的可靠性技术正在不断发展第三章 数据采集系统的硬件组成3.1 集散式数据采集系统的结构图3-1为89C51单片机构成的主从式数据采集处理系统该系统应用于印染系统的水分及特定点的温度等的测量过程 图3-1 以89C51单片机构成的主从式数据采集处理系统在实际应用中,采用波特率为9600bps,数据桢为:1位起始位+8位数据位+1位停止位数据交换时,主机呼叫从机地址,从机向主机发送本机数据主机呼叫时,发出长度为1个字节数据(即从机地址),从机应答时向上传送3个双字节数据,数据格式为如图(3-2): AA+数据, 图3-2 数据格式即7个字节。
假定在理想情况下,主机呼叫,从机立即回应,则主机完成与一个从机的数据交换最少需 :(7+1)*10*1/9600=8.333ms (忽略数据桢之间的间隔和从机的地址判断即通信转移时间)假设采集系统中有4个采集单元,那么主机遍历一次所有采集单元至少需要33.332ms当传送数据长度增加或数据采集单元增加时,遍历时间延长实际上,在程序运行过程中数据交换所花费的时间远远大于理论计算植,这样就使主机的实时性降低当主机接收数据采用中断方式实现的,会造成程序运行效率低,甚至造成“假死机现象”:运行-----长时间停滞-----再运行,致使采集处理系统无法正常运转3.1.1 主从式结构为了克服上述方案中的缺陷,此方法提出了图3-3方案:分散采样,集中处理 该方案较好地解决了系统的实时性问题 即主从式结构 从机:工作在现场状态的数据采集单元仍然是以CPU为核心的智能单元,实现对现场模拟量(水分,温度等) 或现场状态的检测和采集,经过相应的预处理,如滤波,编码之后,以串行方式发给数据处理单元;主机:主机的任务是系统管理,初值设定,通过串行通讯接口向从机发送各种命令和初值,接收从机发送来来的数据,对数据进行运算处理,输出最终结果。
数据处理单元与每个采集单元之间以点对点的方式收发数据,每一路数据有一个独立的收发单片机(89c51),以并行传送方式与数据处理单元主处理器(89C52)进行信息交换由于各路数据收发独立,且并行传送时间短(一般为几十个us),由前端数据采集单元的数据到数据处理单元的传送时间主要取决于串行通信所用的时间,以9600bps传送7个字节数据的时间 7*10*1/9600=7.292ms,各路传送并行工作,主处理器几乎可以同时获取数据,当数据采集器采样间隔不低于20ms时,该方案的数据处理具有较好的实时性数据处理单元与监控计算机(PC机)之间采用串行通信方式传输信息的形式有两种:实时和随机数据处理单元接收到采样数据后,进行相应的处理,如工程量转换,显示,报警,定时将工程量测量值上传给监控计算机,当出现异常情况如测量值超过报警值或采样系统出现故障等情况时,即刻上传故障信息在监控计算机上对数据进行记录,存储,分类及实时监控在系统中,为了适应生产车间测量点分散,距离长的特点,采集单元与处理单元,处理单元与计算机之间采用RS—485总线,在9600bps速率下,使通信距离不小于500m3. 1. 2 硬件组成如图3-3所示,集散式数据采集处理系统由:监控计算机单元,数据处理单元,总线隔离器单元,接收单片机,数据采集单元组成。
1. 监控计算机单元:一般指工业PC,即配制有满足通信传输的接口,如RS-485接口监控计算机通过并行口(COM1/COM2)接收主处理器定时发送的测量值,并对数据进行记录,曲线显示,数据存储等采用软件VB6.0开发接收数据时,采用VB的Mscomm控件,他具有完善的 收发功能,在程序中通过事件驱动方式接收数据,数据帧格式与图2-2相同监控软件在执行过程中,也实现实时曲线显示,并自动创建数据库,根据需要可生成报表输出2. 数据采集单元: 现场的数据采样和滤波处理由AT89C51和14位AD679组成的数据采集单元完成经过预处理的数据,按照图2-2所示的数据格式,由串行口发送端TXD发出,在硬件上要用MAX488将弹片机输出的TTL信号转换成RS-485总线信号规则进行远程传送3. 接收单片机:数据接收器采用AT89C2051单片机,与现场数据采集单元以串行通信方式1模式工作4. 数据处理单元:数据处理单元采用AT89C52单片机,它具有8K的FLASH ROM ,可以满足键盘管理,测量计算值显示,工程量转换以及通信管理等程序容量的要求主处理器与数据接受器的信息交换书通过中断方式进行的5. 数据隔离器:数据隔离器采用芯片74LS244 , 74LS244是一种三态输出的八缓冲器和线驱动器,主要用于三态输出的存储地址驱动器、时钟驱动器和总线定向接收器和定向发送器等6. RS-485总线: MCS-51系列单片机带有的一个全双工串行通行口提高了单片机与外部计算机,以及带串行口的外设的数据交换能力。
单片机串行口输出电平TTL电平兼容且单线传输(对地而言)导致传输距离短(小于5m)和通信速率慢(不超过20kb/s),等缺点为克服这些缺点,所以在单片机串行通信系统中采用RS-485通信方式7. 键盘显示单元:用可编程键盘/显示接口8279芯片与键盘,七段数码管显示器的连接实现对采集的数据进行显示,对符合标准的采集的数据进行存储3.2 数据处理器在本数据采集系统中,采用了MCS-51系列:AT89C51和89C2051两片数据处理器芯片MCS-51单片机芯片的引线有两种:40条引线的8031(8032),8051/52,8751/52,89C51/52和20条引线的89C2051,89C10513.2.1 AT89C52处理器数据处理器采用AT89C52单片机如图3-4所示: 图3-4 AT89C52单片机引脚图兼容标准MCS-51指令系统的AT89C52单片机是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的只读程序存储器(PEROM)和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可以提供许多高性低比的系统控制应用领域。
AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以编程其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本AT89C52有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求1 . I/O引脚和I/O端口 P0.7~p0.0 : P0口是一个漏极开路型准双向I/O口在访问外部存储器时,它是数据总线和地址总线低8位分时复用的接口;在EPROM编程是,他接收指令字节;在验证程序时,输出指令字节,并要求外接上拉电阻 P1.7~P1.0: P1口是带有内部上拉电阻的双向I/O口,它是通过I/O端口在EPROM编程和程序验证时,它接收底8位地址 P2.7~P2.0: P2口是带有内部上拉电阻的8位双向I/O口在访问外部存储器时,它输出高8位地址;在对EPROM编程和程序验证时,他接收高8位地址 P3.7~P3.0: P3口是带内部上拉电阻的8位双向I/O口,它是双功能I/O端口。
除基本输入/输出功能外,每个引脚还有专用功能其专用引脚功能见表3-1所示 I/O口线 专 用 功 能 P3.0RxD(串行数据接收) P3.1 TxD(串行数据发送) P3.2 (外部中断0请求输入) P3.3 (外部中断1请求输入) P3.4T0(定时器0外部计数脉冲输入) P3.5TI (定时器1外部计数脉冲输入)P3.6(外部数据存储器写信号)P3.7(外部数据存储器读信号)表3-1 P3口引 脚 专用功能 2 . 复位引脚复位操作是计算机系统经常进行的操作,即使其软,硬件回到初始状态,准备工作复位引脚RESET复位功能RST:单片机的复位是靠外部电路实现的在震荡信号正常运行情况下,只要RST引脚保持两个机器周期以上的高电平,系统就能复位理论上按主频2MHZ~12MHZ计算,复位高电品持续时间≧t t= ~ =2µs~12µs复位状态 复位状态就是单片机复位后内部寄存器及引脚的初始数据或初始电平MCS-51系列弹片机复位后内部各寄存器的状态如表3-2所列 表3-2 MCS-51系列单片机复位后内部寄存器的内容寄存器 内容寄存器 内容PC 0000H TMOD 00HA 00HTCON 00HB 00HTH0 00HPSW 00HTL0 00HSP 07HTH1 00HDPTR 0000HTL1 00HP0~P3 FFHSCON 00HIP xxx00000HSBUF 不定IE 0xx00000HPCON 00H 另外,复位时,ALE和 配置为输入状态,即ALE=1,=1。
内部RAM不受复位的影响3.控制引脚MCS-51系列单片机的控制引脚有一部分占用P3口线,前面已经介绍,另一部分是单独的引脚,介绍如下1.ALE/:地址锁存/编程脉冲引脚,输入/输出(1) ALE功能:地址锁存信号,输出给应用系统中的地址锁存器提供锁存控制信号,实现地址/数据分时复用时序图中已表明,在每一个机器周期(MOVX指令除外)出现两个ALE正脉冲,当ALE为高电平时,地址锁存器的输出随输入变化(这时P0口输出的是低八位地址信息);当ALE由高电平变成低电平时,锁存器将地址锁定,即输出不再随输入变化(P0口可传送数据信息) 另外,ALE信号还可作为应用系统中频率要求较低的其他部件的时钟信号,计数信号等(但要注意:若程序中执行了MOVX指令,ALE会出现不均匀的情况)2) 功能:片内程序存储器编程脉冲,输入对于EPROM型单片机,在对片内程序 存储器编程时,该引脚输入编程脉冲信号2. :外部程序存储器读信号,输出,低电平有效由于MCS-51系列单片机外部程序存储空间和外部数据存储空间是独立的,但地址是重叠的,因此除了在指令上加以区分外,控制信号也有所不同。
前面介绍的RD,WR是用于读/写数据存储器的,而PSEN是用于读程序代码的,它在应用系统中接程序存储器的读控制端在访问外部程序存储器时,在每个机器周期,PSEN两次有效3. /Vpp:内部程序存储器选择/编程电压引脚,输入这是一个双功能引脚(1) 功能:内,外程序存储器选择信号当访问该地址范围的存储单元时,由于MCS-51系列单片机的片内程序存储器与片外程序存储器低端地址是重叠的,所以用引脚电平来区分是访问内部程序存储器,还是访问外部程序存储器当 =“1”时选择访问单片机内部的程序存储器;当 =“0”时选择访问外部的程序存储器但应注意,8031,8032,80C31等几个型号的单片机无片内程序存储器,使用它们时应接地2) Vpp功能:片内程序存储器编程电压对于EPROM型单片机,在对片内EPROM编程 时Vpp引脚输入21V的编程电源电压4.主电源引脚1. Vcc:+5V工作电压正常工作时Vcc引脚接+5V电源电压2. Vss:接地端正常工作时Vss引脚接地5.时钟引脚XTAL1和XTAL2 :是MCS-51系列单片机的时钟引脚,两引脚连接于单片机内部的一个高增益反向放大器,用于与外部震荡源一起构成震荡电路,其中XTAL1为该放大器的输入引脚,XTAL2为该放大器的输出引脚。
表 3.3 主要功能特性· 兼容MCS51指令系统· 8k可反复擦写(>1000次)Flash ROM· 32个双向I/O口· 256x8bit内部RAM· 3个16位可编程定时/计数器中断· 时钟频率0-24MHz · 2个串行中断· 可编程UART串行通道· 2个外部中断源· 共6个中断源 · 2个读写中断口线· 3级加密位 · 低功耗空闲和掉电模式· 软件设置睡眠和唤醒功能3.2.2 89C2051处理器89C2051,AT89C52与MCS-51系列单片机指令系统完全兼容,引脚功能相同如图所示, 20条引脚的MCS-51系列的2051和1051没有P0口和P2口,不能进行外部扩展它们的内部有一个模拟比较器,相比较的模拟信号由P1.0(AIN0)和P1.1(AIN1)输入,模拟比较器的输出(在内部与P3.6相连)由P3.6输入 图 3-5 89C2051的引脚图3.3 3-8译码器74LS138为3—8译码器,如图3-5所示为74LS138的引脚图 图3-5 74LS138引脚74LS138在编码时,每一种使用了的二进制码状态,都赋予了特定的含义,即表示了一个确定的信号或者对象。
把代码的特定含义即表示了一个确定的信号或者对象把代码的特定含义“翻译”出来的过程叫做译码,实现译码操作的电路称为译码器或者说,译码器可以将输入代码的状态翻译或相应的输出信号,以表示其原意,译码器是多输入,多输出的组合逻辑电路译码器输入为3位2进制数,C,B,A,输出为8个2进制数,分别对应输入的8种状态组合,另外设有使能控制端,E3,E2,E1,当E3=1,E2=0,E1=0时,译码器正常译码否则,译码器不实现译码,即不管译码输入C,B,A为何值8个译码输出~均为高电平 在实际的应用中,有时使能控制端也可以用作复位端,实现3-8译码器的“清零”,在该数据采集系统中,后面将用到这方面的知识 由真值表,表2-4可知: 对应每个输入状态,仅有一个输出为0,其余皆为1,输出为低电平有效例如: CBA=000时,仅Y0=0,即Y0是输入代码000的译码器输出8个输出对应8个最小项的非表3-4 74LS138真值表输 入输 出使 能选 择C B A1 0 01 0 01 0 01 0 00 0 00 0 10 1 00 1 1011110111101111011111111111111111 0 01 0 01 0 01 0 01 0 01 0 11 1 01 1 1111111111111111101111011110111100 X XX 1 XX X 1X X XX X XX X X1111111111111111111111113.4 74LS244 隔离器74LS244是8位3态总线驱动器,如图 3-6 。
外设输入的数据和状态信号,可以通过数据输入 3态缓冲器或3态总线驱动器经数据总线传送给微处理器8个数据输出端1Y1~1Y4,2Y1~2Y4与微型计算机的数据总线相连,8个数据输入端1A1~1A4,2A1~2A4与外设相连加到输出允许1G和2G的负脉冲将数据输入端的数据送至数据输出端执行MOVX(IN)指令时,微处理器发出读寄存器信号,该信号通常是端口地址和读信号RD产生的将读寄存器信号接至74LS244的输出允许端,MOVX指令就把3态缓冲器74LS244数据输入端的数据,经数据总线输入到累加器A中 图3-6 74LS244三态总线驱动器 1A 2A数据输入1Y 2Y数据输出 1A→1Y 输出允许 2A→2Y 输出允许 表3-5 引脚功能 3.5 RS-485总线 单片微机应用系统中,相互通道接口主要采用串行通信方式,在设计应用系统通信接口时,主要考虑的是串行标准通信接口,传输介质,电平转换等。
目前,许多厂家生产了各种集成芯片,能满足单片微机的TTL或CMOS电平与RS-232,RS-485,20mA电流环各自规定的电气标准之间的匹配及转换3.5.1 RS-485总线在许多工业环境中,为了使设备简单和维护方便,总希望用最少的信号线来完成远程数据的采集与控制在RS-485发送端,驱动器将TTL电平信号转换成差分信号输出,在接收端将差分信号还原成TTL信号,所以RS-485有很强和很高的抗共模干扰能力和接收灵敏度在传送数据数据达100kb/s,RS-485的通信距离可1200m,在传输距离过长的情况下,可用中继器来增加传输距离3.5.2 MAX485 这是用于RS-485和RS-422通信的底功耗收发器MAX485的驱动器转换率没有限制,因此允许它以2.5Mbit/s的速率进行传输可吸收120~500uA之间的电流,另外,MAX485有一种低电流关机模式,该模式下仅消耗0.1uA电流所有这些器件均由一个5V电源供电驱动器设有短路电流限制,当过热时,关机电路可将驱动器输出置成一种高阻状态;接收器输入有一种防故障功能,这种功能保证输入在开路状态下为逻辑高电平输出3.5.3 MAX485管脚功能介绍:(1)R0 接收器输出端 若A比B大200mA;若A比B小200mA,R0为低。
2)RE 接收器输出使能端 RE为低时,R0有效;RE为高时,R0为高阻状态(3)DE 驱动器输出使能端 若DE为高,驱动器输出A(Y)和B(Z)有效;若DE为低,它们为高阻状态若驱动器输出有效,器件作为线驱动器用;若为高阻状态时,RE为低,器件作为线接收器用(4)DI 驱动器输入端 DI为低,将使输出A为低,输出B为高;若DI为高,将使输出A为高,B为低(5)GND 接地6)Y 不倒相驱动器输出7)Z 倒相驱动器输出 (8)A 同相接收器输入和同相驱动器输出9)B 反相接收器输入和反相驱动器输出10)Vcc 电源正极,一般接+5V11)NC 无内部连接 图3-7 80C51串行口与RS-485的接口3.6 键盘/显示控制器8279键盘和7段显示器可以直接使用单片机89C51的并行口或者用74LS273和74LS244,并行接口芯片8255或多功能接口芯片8155与微型计算机接口用上述接口方法,对键盘和显示器的扫描是由软件实现的,不但程序比较复杂,更不利的是占用CPU很多时间若采用专用的可编程键盘/显示控制器8279与微型计算机接口,则由8279对键盘和显示器进行自动扫描,可充分提高CPU的工作效率。
3.6.1 8279的主要功能 Intel8279可以显示8位或16位LED显示器,可以和具有64个按键或传感器的阵列相连,通过编程可以实现多种工作方式8279的主要功能如下:(1) 键盘与显示器能同时工作;(2) 扫描式键盘工作方式;(3) 扫描式传感器工作方式;(4) 用选通方式送入输入信号;(5) 带有8字符的键盘先入先出存储器(FIFO)(6) 触点回弹时两键封锁或N键巡回;(7) 双排8字或16字节显示器;(8) 可右入或左出的16字节显示RAM;(9) 工作方式可由CPU编程;(10) 可编程扫描定时,键盘送入时有中断输出3.6.2 Intel8279的管脚图3-8 8279引脚8279采用40引脚封装,其管脚与逻辑符号如图 3-8 起引脚功能分述如下:DB0~DB7:双向缓冲器总线,与CPU总线连接,用于在 CPU和8279之间传送命令,数据和状态信息CLK: 时钟输入线,为8279提供内部定时时钟RESET: 复位线,当输入高电平时,8279复位其复 位 状态为16个字符左入显示:编码扫描键盘双 键封锁;时钟为31分频。
CS: 片选信号,当输入低电平时,允许对8279进 行读写操作,否则禁止A0: 数据缓冲器地址输入线A0=1时,选择命令 或状态寄存器,A0=0时,选择数据寄存器RD,WD: 读写控制线,低电平有效 IRQ: 中断请求线,高电平有效在键盘工作方式下,当FIFO/传感器RAM有数据是(有键闭合),IRQ变为高电平向CPU请求中断当CPU读出FIFO中的数据时,IRQ变低,若RAM中还有数据,IRQ在读出后又返回高电平,直至FIFO中数据被读完, 该线复位在传感器工作中,每当检测到传感器状态变化时,IRQ就出现高电平Vcc,Vss:电源线(+5V),地线SL0~SL3:行扫描输出线,用来扫描键盘和显示器扫描分为译码方式和编码方式的输出波形图RL0~RL7:回送线,内部有有源提升电路,以保持高电平,有键闭和为低电平在选通工作方式中,也可以作为一般的数据输入端SHIFT: 字型变换输入线,在键盘方式时,用于扩充键的功能,可以用作键盘的上下档功能键在传感器方式。