《汽车电脑维修手册单片机的结构与32作原理.doc》由会员分享,可在线阅读,更多相关《汽车电脑维修手册单片机的结构与32作原理.doc(53页珍藏版)》请在三一办公上搜索。
1、第二章 单片机的结构与32作原理 微型计算机是大规模集成电路技术的产物,微型计算机向着两个主要的方向发展,一个是高速度、高性能的高档微型机,另一个是小而廉价稳定可靠的单片微机,简称单片机。 单片机也称微控制器MCU(Micro Controller Unit),它实际上是把中央处理器CPU (Central Processing Unit),随机存储器RAM(Random Access Memory),只读存储器ROM (Read Only Memory),定时器卅数器以及IO接口电路等主要计算机部件集成在一块集成 电路芯片上的微型计算机。单片机按内部数据通道的宽度分为4位单片机、8位单片机、
2、16位单片机和32位单片机。 目前,大多数的汽车用单片机属于特定的“用户产品”,其输入/输出功能、指令集及结构体系等是以标准单片微机为基础,根据实际应用需要,对某方面进行增强,如增加ROMRAM,IO口或AD转换器等,以便其更适应在汽车这样一个复杂的环境中使用,所以从这点来说,了解标准的单片机的构成及特性就显的尤为重要。第一节 MCS51系列单片机 MCS5l系列单片机是Intel公司于1980年推出的高性能8位单片机,这一系列单片机依据制造工艺来分,可分成HMOS和CHMOS两大类。从其内部结构可分成三档,即805187518031,80528032和804487448344。采用CHMOS
3、工艺制造的产品属于低功耗产品,编号为80C51、80C31等。 8051系列的所有产品都是40脚封装,其引脚功能与指令系统完全兼容。应用比较广泛的产品为805187518031这一档的产品,其中又属8031应用最多。因此,这里首先要介绍的是8031芯片。 一、MCS5l单片机的基本特性 有一8位处理器(CPU) 有片内振荡和定时电路 128256字节片内数据存储器(RAM) 4K8K字节片内程序存储器(ROMEPROM) 2126个特殊功能寄存器 32根(4个并行口)IO线 23个16位可编程定时/计数器 一个全双工的,可运行于同步/异步方式的串行口 可进行片外64K程序存储器空间寻址 可进行
4、片外64K数据存储器空间寻址 具有位寻址功能 使用单一+5V电源,主时钟频率从612MHz之间选用 二、MCS5l单片机的组成 图3-1是MCS5l系列单片机的组成框图。下面将对其各部分进行具体介绍。 1中央处理器(CPU) 中央处理器是单片机的核心,用于实现运算和控制功能。因此其中的运算器和控制器成了CPU的两个主要部分。 (1)运算器。运算器主要包括算术逻辑运算部件(ALU)、位处理器、累加器A、寄存器B、缓存器TMPl和TMP2、程序状态字寄存器PSW以及十进制调整电路(为简化起见,这些内容没有在图中画出)。运算器的主要功能是实现数据的算术运算、逻辑运算、位操作以及数据传送等。 (2)控
5、制器。控制器主要是由时钟和时序电路以及一些控制寄存器组成。控制器的主要功能是调整整个单片机的工作,产生时序脉冲,提供控制信号等。 2数据存储器 MCS5l单片机芯片内的数据存储器共有128个存储单元,用于存放可读写的数据。为了与外部扩展的数据存储器相区别,通常把芯片内部的数据存储器称之为内部数据存储器,简称内部RAM。主要是用来存储计算操作时的可变数据,如用来存储计算机输入、输出数据和计算过程中产生的中间数据等。根据需要,可随时调出或被新的数据代替(改写)。RAM在计算机中起暂时存储信息的作用。当电源切断时所有存人RAM的数据将完全消失。 3程序存储器 标准的8051芯片内有4KB掩膜ROM,
6、用于存放程序和原始数据。通常称之为内部程序存储器或简称内部ROM。ROM用来存储固定数据,即存放各种永久性的程序和永久性、半永久性的数据。如电子控制燃油喷射发动机系统中的一系列控制程序软件、喷油脉谱图、点火脉谱图以及其它特性数据等。这些信息资料一般都是制造厂家一次性存人运用且无法改变其中的内容,即计算机工作时,新的数据不能存人,只有需要时读出存人的原始数据资料。当电源切断时,存在ROM中的信息不会丢失,通电后又可以立即使用。8031片内无ROM。 4定时器计数器 MCS51共有两个16位的定时器计数器,以实现定时和计数功能。 5并行IO口 MCS-51共有四个8位的IO口(即凹、P1、P2和P
7、3),用以完成数据的并行输入/输出。 6串行IO口 MCS-51单片机有一个全双工的串行口,以实现单片机和其它计算机或设备之间的串行数据传送。7中断控制系统 以上各个部分集成在一块芯片上,可见一个单片机芯片“麻雀随小,五脏俱全”,不但作为计算机应该具有的基本部件单片机都已包括,而且还具有一些系统的概念,因此,我们应当从微型计算机系统的角度来学习和理解单片机。 三、AT89C51单片机介绍 1AT89C51概述 AT89C51是国内比较流行的MCS51系列单片机,与标准的MCS51系列单片机在引脚和指令上完全兼容,但同时又具有自身的特点。图32是AT89C51LV51的引脚结构图,有双列直插封装
8、(DIP)方式和方形封装方式。与标准MCS51明显的区别在于: 4KB可改编程序Flash存储器(可经受1000次的写入/擦除) 全静态工作:0Hz24MHz 三级程序存储器加密 由于AT89C51是采用全静态逻辑来设计的,其工作频率可以下降到0Hz,并提供两种可用软件来选择的省电方式空闲方式(IdLe,Mode)和掉电方式(PowerDownMode)。在空闲方式中,CPU停止工作,而RAM、定时器/计数器、串行口和中断系统都继续工作;在掉电方式中,片内振荡器停止工作,由于时钟被“冻结”,使一切功能都暂停,故只保留片内RAM中的内容,直到下一次硬件复位为止。 2AT89C51引脚说明 (1)
9、P0端口(P0.7一P0.0):PO口是一个8位漏极断路型双向IO端口,作为输出口用时,每位能以灌电流的方式驱动8个TTL输入,对端口写1时,又可作高阻抗输入端用。 在访问外部程序和数据存储器时,它是分时多路转换的地址(低8位)/数据总线,在访问期间激活了内部的上拉电阻。 在Flash编程期间,P0端口接收指令字节;而在校验程序时,则输入指令字节。验证时,要求外接上拉电阻。 (2)P1端口(P1.7P1.0):P1口是一个带有内部上拉电阻的8位双向IO口端口。P1的输出缓冲器可以驱动(灌电流或拉电流方式)4个TTL输入。对端口写1时,通过内部上拉电阻把端口拉到高电位,这时可用作输人口。P1作输
10、人口使用时,因为有内部的上拉电阻,那些被外电路拉低的引脚会输出一个电流(IIL)。 在对Flash编程和程序校验时,P1接收低8位地址。 (3)P2端口(P2.7P2.0):作为标准IO口,基本功能同N口。在访问外部程序存储器和16位地址的外部数据存储器(如执行MOVXDPTR指令)时,P2口送出高8位地址。 在访问8位地址的外部数据存储器(如执行MOVXR工指令)时,P2口引脚上的内容(就是专用寄存器(SFR)区中P2寄存器的内容),在整个访问期间不会改变。 在对Flash编程和程序校验期间,P2口也接收高位地址和一些控制信号。 (4)P3端口(P3.7P3.0):P3是一个带内部上拉电阻的
11、8位双向I/O口端口。作为标准I/O口,基本功能同P1、P2口,此外,在AT89C51中,P3端口还有一些复用功能。见表21。P3各端口引脚复用功能表 表21端口引脚复用功能P3.0RXD(串行输人口)P3.1TXD(串行输出口)P3.2INT0(外部中断0) P3.3INTl(外部中断1)P3.4TO(定时器0的外部输入)P3.5T1(定时器1的外部输入)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通) (5)ALE(输出)地址锁存在控制信号;系统扩展时,在ALE信号的情况下把P0口输出的低8位地址送锁存器锁存起来以实现低位地址和数据的分离。此外在不使用MOVX指令的
12、情况下,以晶振六分之一固定频率输出的ALE信号,还可以作为外部的定时脉冲使用。 (6)PSEN(输出)外部程序存储器选通信号:在读外部扩展ROM时PSEN信号应该有效,以实现外部程序存储器单元的读操作。 (7)EA()(输入)访问程序存储器控制信号:当EA信号为低电平时,对程序存储器的读写操作限定在外部ROM;而当EA信号接高电平时,对程序存储器的读操作则包括内部和外部的全部ROM空间。 (8)RST(输入)复位信号:当振荡器运行时,在该引脚上出现2个机器周期以上高电平将使单片机复位。 (9)XTALl和XTAL2(输入/输出)外接晶振引线端: XTALl:在单片机内部,它是构成片内振荡器的反
13、向放大器的输入端。当使用芯片内部振荡器时,此引线端用于外接石英晶体和微调电容;当使用外部振荡器时,该引脚接收振荡器的信号,即把此信号直接接到内部时钟发生器的输入端。 XTAL2:接外部晶体的另外一个引脚。在单片机内部,它是上述振荡器的反向放大器的输出端。采用外部振荡器时,此引脚应悬空不连接。 (10)GND搭铁线。 (11)VCC+5V电源。 四、单片机存储器及IO接口扩展 虽然芯片内部具有CPU、ROM、RAM、定时器卅数器和IO口等,相当于一台计算机。 但单片机芯片内的资源毕竟有限。在实际应用中,许多情况下,需要对单片机进行资源扩展,其中包括存储器扩展和IO扩展,从而构成一个功能更强的单片
14、机系统。单片机扩展 结构框图如图2-3所示。 整个扩展系统是以单片机芯片为核心。扩展内容包括程序存储器、数据存储器和IO 的数据存储器称之为外部数据存储器,简称外部RAM。 1.系统总线 扩展是通过总线进行的,即通过总线把各扩展部件连接起来。 所谓系统总线就是连接系统中各扩展部件的一束公共信号线。按其功能可把系统总线分成三组,即:地址总线,数据总线和控制,总线。 (1)地址总线AB(Address Bus)。地址总线用于传送单片机送出的地址信号,以便进行存储单元和IO端口选择。地址总线是单向的,只能由单片机向外发出地址信号。地址总线的位数决定着可直接访问的存储单元的数目。例如n位地址,可以构成
15、2n个连续的地址编码,因此可访问2n存储单元。MCS51单片机存储器扩展最多可达64KB,所以最多需16位地址线。 (2)数据总线DB(Data Bus)。数据总线用于在单片机与存储器之间或单片机与IO端口之间传送数据。数据总线的位数应与单片机的字长一致。MCS51单片机的字长为8位,所以数据总线的位数也为8。数据总线是双向的,即可以进行两个方向的数据传送。 (3)控制总线CB(Control Bus)。控制总线实际上是一组控制信号线,包括单片机发出的以及其它部件传送给单片机的。对于一条具体的控制信号线来说,其传送的方向是单向的,但是由不同的控制信号线组合的控制总线则表示为双向。 由于采用总线
16、结构形式,因此大大减少了单片机系统中信号传输线的数目,提高了系统的可靠性,增加了系统的灵活性,使系统扩展易于实现。扩展部件只要符合规范,就可以很方便的接人系统,实现单片机扩展。 2地址锁存器由于P0口是作为分时复用的地址/数据线,为此要使用地址锁存器把地址信号从地址/数据线中分离出来。地址锁存器可以使用三态缓冲输出的8D锁存器芯片74LS37374HC373,也可以使用带清除端的8D锁存器芯片74LS27374HC273。这两种芯片的引脚排列如图2-4所示。芯片引脚功能对比见表2-2。 3程序存储器扩展 程序存储器扩展使用只读存储器芯片,只读存储器简称ROM(Read Only Memory)
17、。ROM中的信息一旦写入后就不能随意更改,特别是不能在程序运行过程中写入新的内容,而只能读出存储单元的内容,故称之为只读存储器,根据编程方式的不同,ROM共分为以下四种: (1)掩膜ROM。掩膜ROM也称ROM,其编程是由半导体制造厂家在生产过程中进行的。因编程是以掩膜工艺实现的,因此称掩膜ROM。掩膜ROM制造完成以后,再不能更改其内容。掩膜ROM存储单元结构简单、集成度高。但掩膜工艺成本较高,因此只适合于大批量生产。 (2)一次性编程RCM(OTP)。OTP芯片出厂时并没有任何程序,程序是在应用现场由用户写人的。OrP芯片通常采用塑料封装,无窗口,具有价格低廉使用方便等优点。但这种删只能写
18、入一次,一旦写入后不能修改。(3)可改写PROM(EPROM)。EPROM是用电信号写入而用紫外线擦除的只读存储器芯片。允许反复擦除重新写入。为了擦除的需要,在芯片外壳上方中央有一个圆形窗口,通过这种窗口进行紫外线照射就可以擦除原有信息。由于阳光中含有紫外线成分,所以程序写入后要用不透明的标签贴封窗口,以避免阳光照射而破坏程序。 芯片引脚功能对比 表2274LS27374lS373D07数据输入数据输入Q0Q7数据输出数据输出VCC电源电源GND搭铁搭铁CP时钟脉冲输入(上升沿有效)X LEX锁存允许控制端MR()锁存器清除端(低电子,数据输出端全部清零,高电子正常)X输出控制端(低电平允许输
19、出,高电平输出呈高阻状态) (4)电擦除EPROM(EEPRC)M或殿PRC)M)。EEPROMM是用电信号写入也用电信号擦除的只读存储器芯片。其读写操作与RAM存储器几乎没有什么差别,所不同的只是写入速度慢一些。但EEPROM断电后信息能长久保存,典型EEPROM数据可保存一百年。 由于条件所限目前国内一般尚五条件使用掩膜ROM。但也几少使用OTP,通常使用较多的是EPROM,E2PROM近年来发展迅速,无论从容量还是价格上同EPROM相比差别已经不大,因此应用日走广泛。前文提到的AT89C51的片内带有4KB的萨存,也是属于电擦除EPROM的一种。 在单片机程序存储器扩展中,常用的是Int
20、el公司的27系列EPROM芯片,其中包括2716(2KX8位)2732(4KX8位)等。型号后面的数字表示其位存储宅量(K位)。 2716的信号引脚排列如图2-5所示。 其中: A10A0地址线 07O0数据线 CE(_)PGM双重功能控制线 当使用时,它为片选信号(CE),低电平有效。 当编程时,它为编程控制信号(PGM),用于引入编程脉冲 OE(_)输出允许信号。当OE=0时,输出缓冲器打开,被寻址单元的内容才能被读出。 Vpp(_)编程电源。当芯片编程时,该端加+25V编程电压;当芯片使用时,该端加+5V电源。 2716共有五种工作方式,由OE(_)、CE(_)PGM及VPP信号的状态
21、组合来确定。各种工作方式的基本情况如表23所示。 2716芯片的工作方式 表2-3引脚方式CE(_)/PGMOE(_)VPPQ7Q0读出低低+5V程序读出未选中高X+5V高阻抗编程正脉冲高+25V程序写入程序检验低低+25V程序读出程序禁止低高+25V高阻抗当CE和OE均为低电平,Vpp=+5V时,2716芯片被选中并处于读出工作方式。这时被寻址单元的内容经数据线O7O0读出。单片程序存储器扩展的连接如图2-6所示。 4数据存储器扩展 数据存储器的扩展使用随机存储器芯片。随机存储器(Random Access Memory)简称RAM,用于存放可随时修改的数据,因此在单片机领域中也称之为数据存
22、储器。与ROM不同,对RAM可进行读写两种操作。RAM是易失性存储器。 按其工作方式,RAM又分为静态(SRAM)和动态(DRAM)两种,静态RAM只要加电,所存数据就可能保存。而动态RAM使用的是动态存储单元,需要不停的进行刷新以便周期性地再生,才能保存数据。动态RAM集成密度大,集成同样的位容量,动态RAM所占用的芯片面积只是静态RAM的四分之一。此外动态RAM的功耗低,价格便宜。但动态存储器要有刷新电路,因此只能应用于较大的计算机系统,而在单片机系,统中较少应用。 Intel6116是典型的静态RAM芯片,存储容量2KB。该芯片采用CMOS工艺,因此具有功耗低的特点,在维持状态下只需要几
23、个微安电流,很适宜作低功耗的存储器。6116芯片为24引脚双列直插式封装,其引脚排列如图2-7所示其中:A10A0地址线; D7一DO数据线; CE(_)片选信号; OE(_)数据输出允许信号; WE(_)写选通信号;6116共有四种工作方式。如表2-4所示。 6116芯片的工作方式 表2-4状态CE(_)OE(_)WE(_)D7-D0未选中1XX高阻抗禁止011高阻抗读出001数据读出写入0l0数据写入单片数据存储器扩展如图2-8所示。 5单片机IO接口 计算机系统中共有两类数据传送操作。一类是CPU和存储器之间的数据读写操作;另一类则是CPU和外部设备之间的数据输入输出(IO)操作。 由于
24、CPU与存储器具有相同的电路形式,所以数据信号是相同的(电平信号),能相互兼容直接使用。因此CPU与存储器之间采用同步定时工作方式,它们之间只要时序关系能相互满足就可以正常工作。正因为如此,单片机的存储器扩展连接十分简单,除地址线、数据线之外,就是读写选通信号,实现起来十分方便。 但是计算机的IO操作,即CPU和外部设备之间的数据传送操作却比较复杂。其复杂性主要表现在以下几个方面: (1)外部设备的工作速度快慢差异很大,慢速设备如开关、继电器、机械传感器等,每秒钟提供不了一个数据;而高速设备如磁盘、CRT显示器等,每秒钟可传送成千上万的数据。面对速度差异如此之大的各类外部设备,CPU无法按固定
25、的时序与它们以同步方式工作。 (2)外部设备种类繁多,既有机械式的,又有机电式的,还有电子式的。不同种类的外部设备之间性能各异,对IO数据传送的要求也各不相同,无法按统一数据格式进行。 (3)外部设备的数据信号形式是多种多样的。既有电压信号,也有电流信号;既有数字信号,也有模拟信号。(4)外部设备的数据传送有近距离的,也有远距离的。近距离使用并行数据传送,而远距离则需要使用串行传送方式。 正是由于这些原因,使数据的IO操作变得十分复杂。必须在CPU与外部设备之间设置接口电路,通过接口电路帮助协调CPU与外部设备之间进行的数据传送。因此接口电路就成了数据IO操作的核心内容。 为实现数据的IO传送
26、,接口电路要具有以下几种功能: (1)速度协调:由于CPU和外部设备速度上的差异,使得IO数据传送主要以异步方式进行,即只能在确认外设已为数据传送做好准备的前提下才能进行IO操作。而要知道外部设备是否准备好,就要通过接口电路产生或传送外设的状态信息,从而实现CPU与外设之间的速度协调。 (2)数据锁存:锁存是数据输出的需要。由于CPU的工作速度快,数据在数据总线上保留的时间十分短暂,无法满足慢速输出设备的需要。为此在输出接口电路中需设置数据锁存器,以保存输出数据直至为输出设备所接收。 (3)三态缓冲:IO接口输入电路必须为数据输入提供三态缓冲功能,所谓三态就是电 路输出除了通常的低电平状态,高
27、电平状态外,还有一种高阻抗状态,当三态缓冲器的输人为高或低电平时,就是对数据的驱动(或连通)状态;当三态缓冲器的输人为高阻状态时,本缓冲器输入信号对数据总线不产生影响,这时,其它缓冲器在该总线上传输数据。 (4)数据转换:CPU只能输入和输出并行电压数字信号,但是有些外部设备所提供或所需要的并不是这种信号形式。为此要使用接口电路进行数据信号的转换,其中包括:模一数转换、数一模转换、串一并转换和并一串转换。 模拟电路的电信号是随时间连续变化的,对于模拟电路主要关心的是信号脉冲形状。数字电路的电信号是离散不连续的,对于数字电路主要关心的不是信号的脉冲形状(失真与否),而是脉冲的个数。汽车用单片机是
28、由大量的数字电路和大规模集成电路组成的数字系统。只能处理二进制数字信号。但在汽车微机控制系统中,控制和检测对象的电信号可能是模拟量和数字量两种。例如水温、空气流量、气温等都是通过传感器变成模拟电信号,然后通过AD转换器变成数字量进入MCU;控制怠速用的怠速马达就是把MCU送来的数字信号通过步进电机变成机械位移量(模拟量)。 串行接口电路主要用途是进行串并和并串转换。一次传输一位数据称为串行,进行串行通信使用的接口叫串行接口。串行接口由接收器、发送器和控制器三部分组成,接收器把外部设备送来的串行数据变为并行数据送到数据总线;发送器把数据总线上的并行数据变为串行数据发送到外部设备去。控制器是控制上
29、面两种变换过程的电路。 并行接口:同时传送两个或两个以上的数位称为并行,它是把多位数据,例如8位数据的各个位同时传送,微机内部几乎都是用并行方式。由于CPU与外设的速度不同,外设的数据线不能直接连到数据总线。为使CPU与外设的动作匹配,中间需要缓冲器和锁存器,用于暂时保存数据。具有这些功能的电路称为并行接口。 6单片机IO扩展 单片机IO扩展基于两个方面,一个是功能方面,虽然单片机固有的IO能实现简单的数据IO操作,但其功能毕竟十分有限,难以满足复杂的IO操作要求;另一个是数量方面的。 MCS51系列单片机虽号称有四个8位双向IO口,但在实际应用中,这些口并不能全部用于IO目的,其中大部分用来
30、构成系统总线。例如P0口被作为低8位地址线/数据线,艳口被作为高8位地址线,而P3口赋予的第二功能更为重要,口线中多留作控制信号使用。这样,剩下采真正能作为数据I/O使用的就只P1口了。 正因为如此,所以在实际应用中不得不使用扩展的方法,以增加IO口的数量,增强IO口的功能。 (1)输入扩展是为数据输入的需求而采取的,简单输入扩展功能单一,只解决数据输入的缓冲问题。由于数据总线要求挂在它上面的所有数据源必须具有三态缓冲功能,因此简单输入扩展实际上就是扩展三态缓冲器。其作用是当输入被选通时,能使数据源与数据总线直接沟通;而当输入处于非选通状态时,则把数据源与数据总线分离,即缓冲器输人为高阻状态。
31、简单输入接口扩展的典型芯片74LS244,引脚结构见图29所示。该芯片内部共有两个4位的三态缓冲器,以CE(G)为选通信号。使用74LS244进行的输入扩展,电路连接见图210所示。在此图中,U1、U2、U3构成了基本MCS51系列单片机的最小应用系统,三态缓冲输出8D锁存器74LS373连接于8031与2716之间,用以实现P0端口的地址/数据复用功能。外围设备经三态缓冲芯片74LS244挂到数据总线上,对于外部设备来讲,本身有一固定的访问地址,平时与数据总线是分离的,只有在CPU读取外部设备数据时,其RD信号变为0,同时地址译码器输出地址信号为0(正确译码),地址信号与RD信号经过门电路作
32、用于74LS244的G端(输出允许),这时候,外部设备才可以连接到数据总线,CPU访问外部设备的功能得以实现。 (2)另外一种较为常用的扩展方式是串一并、并一串方式。MCS51系列单片机在片内包含有并行接口和串行接口。在一些特殊的应用场合,如主从设备距离较远,要求数据线较少的情况下,可以采用串个并、并一串转换接口形式,来满足实际应用的需要。例如现在应用较多的LCD显示屏,由于其自身已经集成有驱动电路,只要求输入显示和控制数据,以便LCD显示控制器能进行正确译码显示。为此,采用一个串一并转换接口,使得单片机可以通过串行口输出信息,并由串一并行接口电路将其变换到LCD的接口电路中的8位输入端,节省
33、系统资源,提高系统的利用率。 一种典型的串一并、并一串行接口方法如图2-11所示。在图2-11中所给出的串一并、并一串转换接口中,单片机工作时,其内部串行接口工作在方式0,这时,它是通过P30端(RXD端)执行数据的串行发送或接收的,而P31端(TXD端)则用于输出移位脉冲。在发送或接收时,都是最低有效位LSB居先,最高有效位MSB居后。传送的频率为振荡频率的112。这种方式0的串行工作方式也称移位寄存器方式,或同步方式。1)串并转换接口原理串并转换是指从单片机串行输出,通过转换以后成为并行信号输出的过程。这时P30端口即RXD端执行的是数据发送,所以8位串行数据的低位先送出,最后送出数据的最
34、高位。由于在P3.1端即TXD端发出的是同步脉冲,所以可以用它作为外部串并行寄存器的数据时钟。 在图311中,74HCl64和一“与门”组成串一并转换接口。74HCl64的MR端是清0端,当MR=0时,对74HCl64清0;当MR=1时,则可对74HCl64送入8位串行数据。当单片机工作在串行方式0。时,首先在骊。2,P3,4输出高电平,令MR=1,则74HCl64处于接收串行数据状态。接着从P3。0端发出串行数据,其顺序为先低位,后高位;同时P3.1端发出同步脉冲到74HCl64的时钟输入端CLK。在输出8个脉冲之后,在串行口中的8位数据就会输出并寄存在74HCl64中。这时,串并行转换过程
35、完成。 2)并串行转换接口原理 并串行转换是指从外部并行输入的8位数据,通过转换之后成为串行信号,输入到MCS51的串行口中去的过程。这时,P30端口即RXD执行的是数据接收,接收时是先接收串行数据的最高有效位MSB,最后接收最低有效位LSB。同时由P31端发出的是同步脉冲,它用作74HCl65的串行移位时钟。 在图2-11中,74HCl65和一“与门”组成了并一串行转换接口,74HCl65的PL是并行装入控制信号。当PL=0时,74HCl65装入外部输人的8位数据;当PL=1时,只要从CLKl端有正脉冲来,则74HCl65执行右移串行输出,从而从高位开始执行串行8位数据传送。在CLKl端送人
36、8个正脉冲之后,则74HCl65中的8位数据串行输出完毕。 当MCS51单片机工作于串行方式0时,首先在P3。5输出高电平,令“与门”打开,允许来自74HCl65的Q7端串行信号输入。同时P37应输出高电平,使74HCl65处于串行输出状态。当P31每产生一个脉冲输出时,则送到74HCl65的CLKl时钟输入端,使74HCl65右移一位。在P31输出8个正脉冲之后,74HCl65中的8位数据全部串行移出并送到MCS51的串行口内。这时,并一串行转换结束。 7AD转换技术 对于标准的MCS51系列单片机来讲,由于片内并没有集成AD转换器,对于需要此功能的某些场合来讲必须通过外接专用的AD转换芯片
37、采完成这一功能。 所谓AD转换就是模拟数字转换,将完成这一功能的专用芯片称为AD转换器(Analog to Digital Converter简称ADC)。ADC输出的数字信号可以供给MCU。 图2-12是BENZ 300E的发动机电脑,可以看到该ECU采用的MCU为Intel公司的8429,AD转换器采用的是TI公司的ADC0809,早期的ECU多采用类似的电路结构。 ADC809的主要特征: 8位逐次逼近AD转换器 8通道多路转换器、微处理器兼容控制逻辑便于同多种处理器连接 无需零点和满度调节 05V输人范围,单5V电源工作 输出符合TTL电平规范 分辨率:8位总误差:1SLB转换时间:1
38、00s图2-13为ADC0809的引脚图,有两种不同的封装形式。引脚说明见表2-5 ADC0809引脚功能描述 表2-5OE输出允许 EOC转换结束请求信号,高电平有效。一般接至微处理器的中断请求端START用来起动转换的控制输入CLK外接时钟端VREF(+)参考电压正VREF(-)参考电压负GND接地端子VCC电源供应 2-12-88位数字输出 IN0IN78通道模拟输入ADD AC转换通道输入地址线 ADC0809的典型应用见图2-14所示,在此图中,INOIN7为8路模拟信号输入端,输入信号范围为05V,读信号RD与地址译码信号经“或非门”作用于OE端,作为ADC0809输出允许控制信号
39、;同样写信号WR(_)与地址译码信号经另一“或非门”作用于START和ALE端,作为A/D转换起动控制信号。ALE作为通道地址锁存允许信号用以将通道地址打人地址锁存器,A/D转换器起动后,EOC由高电平变为低电平。ADDAC为通道地址控制字,用以确定具体哪个通道进行转换,见表2-6。CLK端用以连接外部时钟,用采作为转换时基,VREF+、VREF用来连接参考电源,为保证转换精度,一般需连接到专用电压基准源,个别要求不高场合可直接连至5V供电。当AD转换结束后,EOC引脚由低电平变为高电平,向微处理器发出申请,微处理器根据申请中断的级别决定处理的顺序,一般在相应的中断服务子程序中完成对转换结果的
40、读取,同时置人新的地址字,为下一次转换作准备。 转换通道/地址表 表2-6选择模拟通道地 址 线CBAINO000IN1001IN2010IN3011IN4100IN5101IN6110IN7111第二节 SAB 80C515SAB 80C535单片机 SAB80C515SAB80C535是SIEMENS公司生产的8位CMOS单片机,但是与前文说到的8051不同的是,它具有更强的性能。其中SAB80C515SAB80C515-16带有工厂掩膜ROM,而SAB 80C535SAB 80C535-16需要外部扩充ROM。其共同特征如下: 8Kx8片载程序存储器(仅对于SAB80C515) 256x
41、8字节数据存储器 6个8位并行输入/输出口 1个数字/模拟信号输入口 全双工串行通信口 4种操作模式,可变波特率 3个16位定时计数器 AD转换器,8路复用模拟信号输入口,可编程参考电压 16位看门狗定时器 高灵活性的重载、捕获、比较能力 布尔运算 12个矢量中断,4个中断优先级 1微妙指令周期,采用12MHz时钟 4s乘、3s除操作 外部程序/数据存储器可扩充 128KB 空闲、掉电模式:两种温度范围可选择070(采用12、16、20MHz时钟)和-4085(采用12、16MHz) 向后兼容SAB8051 功能等同SAB80515 P-LCC68、P-MQFP-80封装形式更节省空间 1系统
42、构成 SAB80C515的构成示意图215所示,从图中可以看出,它的内核是基于SAB80C52SAB80C32的。也就是说,它是基于MCS-51内核的产品。 SAB 80C515SAB 80C535是SIEMNES SAB 8051 8位微控制器家族中功能强大的一个成员,采用SIEMENS的ACMOS技术设计,功能兼容采用MYMOS技术的SAB 80515SAB 80535。SAB80C515SAB80C535是一个基于SAB 8051SAB80C51架构的卓越、高性能单片微控制器,秉承SAB80C51的操作特性,SAB80C515SAB80C535增加一些功能,以此来增加系统设计的弹性,全面
43、提升系统性能。 采用ACMOS技术,进一步降低芯片的消耗,可以应用在一些对功率耗散要求更低的场合,并且SAB80C515SAB80C535有两种软件选择模式空闲牌电模式,可进一步降低电源消耗。 SAB 80C535同SAB80C515除了片载ROM之外是一样的。表37为SAB 80C5SAB80C535系列微处理器索引信息表。 SAB80C315SAB80C535系列微处理器索引信息表 表2-7型 号索引代码封 装描述(8位CMOS)微处理器SAB 80C515-NQ67120-DXXXXP-LCC-68带有掩膜ROM,12MHz时钟SAB 80C535-NQ67120-C0508P-LCC-68外部扩展存储器,12MHz时钟SAB 80C515-N-T4085Q67120-DXXXXP-LCC-68带有掩膜ROM,12MHz时钟温度范围(-4085)SAB 80C535-N-T4085Q67120-C0510P-LCC-68外部扩展存储器,12MHz时钟温度范围(-4085)SAB 80C515-16-N Q67120-DXXXXP-LCC-68带有掩膜ROM,16MHz时