《单片机应用系统设计技术》第7章

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

单片机外部扩展资源及应用7.1外部扩展资源和扩展编址技术概述7.2并行I/O口扩展7.3大容量闪速存储器Flash的扩展7.4单片机系统中的键盘接口技术7.5单片机系统中的LED数码显示器7.6单片机系统中的LCD液晶显示器7.7日历时钟接口芯片及应用单片机外部扩展资源及应用7.8单片机数据采集系统7.9I2C总线接口电路EEPROM及应用7.10RS-232C和RS-485/422通信接口本章小结单片机外部扩展资源及应用7.1外部扩展资源和扩展编址技术概述7.1.1单片机外部扩展资源分类单片机外部扩展资源包含有:外部RAM/ROM、键盘、显示、A/D、D/A、I/O扩展、中断扩展、串行通信、总线驱动、电源监控、看门狗等一些最基本的模块,它们都是大多数单片机应用系统必不可少的关键部分。单片机外部扩展资源及应用1.外部程序存储器ROM当单片机内部程序存储器ROM容量无法满足应用系统要求时,需要在外部进行扩展。对于80C51系列,内部存储器都达到64KB,用户没有必要再扩展外部程序存储器。单片机外部扩展资源及应用2.外部数据存储器RAM由于单片机的内部数据存储器容量较小,在需要大量数据缓冲的单片机应用系统中(如语音系统、商场收费POS)仍然需要在外部扩展数据存储器。外部数据存储器有SRAM、FlashEEPROM单片机外部扩展资源及应用3.并行I/O口资源扩展在较为复杂的控制系统(尤其是工业控制系统,如可编程控制器)中,经常需要扩展I/O口。常用的I/O接口芯片有74HC系列锁存器/寄存器、8255和8155等。单片机外部扩展资源及应用4.键盘和显示器键盘和显示器提供了用户与单片机应用系统之间的人机界面,用户通过键盘向单片机系统输入数据或程序,而通过显示器用户可以了解单片机系统的运行状态。单片机外部扩展资源及应用5.串行通信接口单片机通常都提供了一个串行通信接口,且信号为TTL电平,为了方便单片机系统与PC机、打印机、外设等接口,往往需要扩展通用的RS-232通信接口。为了实现远距离通信,还要扩展RS-485通信接口。常用的RS-232接口芯片为MAX232,常用的RS-485接口芯片为MAX485。当单片机系统需要更多的串行通信接口时,可以通过串行口芯片扩展,常用的串行口芯片有8251、8250、16C554等。单片机外部扩展资源及应用6.模数转换A/DA/D转换接口将外设输入的模拟量转换为计算机使用的数字量,常用的A/D转换芯片有ADC0808/0809、ADC0816/0817、ADC1140、ADC71/76、AD574A等。7.数模转换D/AD/A转换接口将计算机的数字量转换为外设使用的模拟量,常用的D/A转换芯片有DAC0832、DA7520、DAC1208、DAC1230等。单片机外部扩展资源及应用8.电源监控和硬件看门狗在电源不稳定或有强大的干扰源时,系统经常会出现“程序跑飞”等异常情况,给系统的开发和实际应用带来了极大的不便,严重时会使系统瘫痪,甚至发生工业事故。为此需要使用专用的电源监控复位芯片,人们常把此类电路称为硬件看门狗,当系统电压下降和“程序跑飞”时,它能发出复位信号,保证系统正常工作。常用的电源监控复位芯片有CSI24C161、DS1232、X5045等。单片机外部扩展资源及应用9.硬件日历时钟由单片机构成的大多数计费、计时系统中,日期和时间是数据库中的一个重要参数,为此需要在单片机系统中扩展日历时钟芯片。常用的日历时钟接口电路有DS1302、DS12887等。单片机系统是指以单片机为核心,根据其应用目标扩展相关的外围电路所构成的硬件系统,外部扩展是和应用紧密联系的。本章只是对单片机系统中常用资源扩展和流行接口加以论述。单片机外部扩展资源及应用7.1.2单片机系统扩展结构与编址技术单片机通过三总线扩展外部接口电路。这时P0、P2口用作外部扩展总线,无法再作为通用I/O口。P0口经锁存器74HC573在ALE下降沿输出有效的低8位地址信号与P2口组成16位地址总线。片外有效的ROM和RAM寻址空间(包括片外I/O)为0x0000~0xFFFF共64KB。P0口在地址ALE下降沿之后作为8位数据总线。P3口的读写控制信号RD、WR和程序选通信号PSEN等作为控制总线。单片机外部扩展资源及应用图7.1为AT89C52单片机通过三总线的扩展系统结构图。图7.1单片机外部扩展资源及应用由图7.1可知单片机采用三总线扩展ROM、RAM、I/O和CLOCK等接口电路,ROM处于程序存储器空间,当取指控制信号PSEN有效时从ROM读出程序指令,图7.1中AT89C52的EA接Vcc,表示从0000H~1FFFH取指令操作均在片内,片外程序存储器地址从2000H开始。如果EA接GND,则从0000H~FFFFH取指令操作均在片外进行。RAM、I/O和CLOCK则处于数据存储器空间,通过读写选通控制有效信号RD、WR对其进行读/写和输入/输出操作。单片机外部扩展资源及应用译码器产生地址译码信号,在任一时刻其输出的有效片选信号使得单片机只能访问RAM、I/O和CLOCK其中之一,避免了总线竞争现象。下面介绍单片机扩展中的地址译码技术。地址译码有两种方法,线选法和全地址译码法。单片机外部扩展资源及应用1.线选法线选法一般用于扩展少量的片外存储器和I/O接口芯片。所谓线选法通常是将单片机的高8位地址线A8~A15中的某几根与外部接口芯片的片选端一一相连,当该地址线为0时(对0选通有效的外部芯片而言),与该地址线相连接的外部芯片被选通。这种方法的缺点是:全部地址空间是断续的,每个接口电路的地址空间又可能是重叠的。单片机外部扩展资源及应用图是线选法典型电路组成。单片机外部扩展资源及应用图7.2中,当A15=0时,选中RAM6264,而A14=0时,选中I/O芯片8255,为了避免产生总线竞争,A15和A14不能同时为0,由此可确定选中RAM6264的二进制数地址应为:01xxxxxxxxxxxxxx,x为任意,即可以是0也可以是1。故RAM6264的地址范围二进制数是0100000000000000~0111111111111111,对应的十六进制数是4000H~7FFFH。而RAM6264容量只有8KB,故4000H~5FFFH、6000H~7FFFH两段地址完全重叠。同样可确定选中I/O芯片8255的二进制数地址应是:10xxxxxxxxxxxxxx,x为任意。故I/O芯片8255的地址范围二进制数是1000000000000000~1011111111111111。对应十六进制数是8000H~BFFFH。而I/O8255实际只占用4个地址单元,故地址重叠部分更多。单片机外部扩展资源及应用2.全地址译码法全地址译码法,是通过译码电路对单片机可利用的高位地址线进行译码,以得到较多的片选信号。单片机外部扩展资源及应用用全地址译码法扩展存储器举例单片机外部扩展资源及应用7.1.3单片机系统存储器扩展方法外部程序存储器的种类单一,常采用只读存储器ROM。经常使用的程序存储器有EPROM、EEPROM和FlashEEPROM。由于FlashEEPROM具有低成本和快速的电擦写特性,更受用户欢迎。只读存储器ROM的密度普遍提高,目前ROM芯片单片容量已达到或超过64KB,外部扩展程序存储器时,单片即可满足需要,一般都采用线选法或用PSEN直接选中。单片机外部扩展资源及应用图7.4是扩展程序存储器典型电路。当ROM容量小于64KB时,用单片机的A15直接ROM的CS端,如图7.4(a)所示;当ROM容量等于64KB时,用单片机的PSEN接ROM的CS和OE端,如图7.4(b)所示。单片机外部扩展资源及应用7.2并行I/O口扩展7.2.18255可编程并行I/O接口芯片1.8255的电路结构和功能8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。其各口功能可由软件选择,使用灵活,通用性强。8255可作为单片机与多种外设连接时的中间接口电路。单片机外部扩展资源及应用8255内部结构如图7.5所示。单片机外部扩展资源及应用8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。同时必须具有与外设连接的接口A、B、C口。由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制器部分。单片机外部扩展资源及应用1)与CPU连接部分根据定义,8255能并行传送8位数据,所以其数据线为8根D0~D7。由于8255具有3个通道A、B、C,所以只要两根地址线就能寻址A、B、C口及控制寄存器,故地址线为两根A0~A1。此外CPU要对8255进行读、写与片选操作,所以控制线为片选、复位、读、写信号。单片机外部扩展资源及应用2)与外设接口部分根据定义,8255有3个通道A、B、C与外设连接,每个通道又有8根线与外设连接,所以8255可以用24根线与外设连接,若进行开关量控制,则8255可同时控制24路开关。3)控制器8255将3个通道分为两组,即PA0~PA7与PC4~PC7组成A组,PB0~PB7与PC0~PC3组成B组。相应的控制器也分为A组控制器与B组控制器。单片机外部扩展资源及应用2.8255芯片引脚与CPU的连接单片机外部扩展资源及应用1)数据总线DB引脚AT89C52的P0.0~P0.7与8255的D0~D7连接2)地址总线AB引脚A0、A1通过74HC373锁存器与AT89C52的P0.0、P0.1连接。A1A0取00~11值,可选择A、B、C口与控制寄存器,选择方法如下:A1A0=00:选择A口。A1A0=01:选择B口。A1A0=10:选择C口。A1A0=11:选择控制寄存器。单片机外部扩展资源及应用3)控制总线CB片选信号CS:由P2.5~P2.7经138译码器Y7产生。若要选中8255,则Y7必须有效,此时P2.7P2.6P2.5=111。由此可推知各口地址如下:A口:111x~x00=E000H(当x~x=0~0时)。B口:111x~x01=E001H(当x~x=0~0时)。C口:111x~x10=E002H(当x~x=0~0时)。控制口:111x~x11=E003H(当x~x=0~0时)。其中,x~x表示取值可任意单片机外部扩展资源及应用4)3个通道引脚(1)A口的8个引脚PA0~PA7与外设连接,用于8位数据的输入与输出。(2)B口的8个引脚PB0~PB7与外设连接,用于8位数据的输入与输出。(3)C口的8个引脚PC0~PC7与外设连接,用于8位数据的输入与输出或通信线。单片机外部扩展资源及应用3.8255的工作方式接口方式ABC方式0基本I/O方式基本I/O方式基本I/O方式方式1应答I/O方式应答I/O方式通信线方式2双向应答I/O方式无通信线4.8255初始化1)工作方式选择字8255工作方式选择字共8位,如图所示,存放在8255控制寄存器中。最高位D7为标志位,D7=1表示控制寄存器中存放的是工作方式选择字,D7=0表示控制寄存器中存放的是C口置位/复位控制字。单片机外部扩展资源及应用单片机外部扩展资源及应用D3~D6用于A组的控制,D6D5=00表示A组工作于基本I/O方式0,D6D5=01表示A组工作于应答I/O方式1,D6D5=1x表示A组工作于双向应答I/O方式2(x取0或1)。D4=1表示A口工作于输入方式,D4=0表示A口工作于输出方式,D3=1表示上C口工作于输入方式,D3=0表示上C口工作于输出方式。单片机外部扩展资源及应用D0~D2用于B组的控制,各位含义如图7.8所示。D2=0表示B组工作于基本I/O方式0,D2=1表示B组工作于应答I/O方式1。D1=1表示B口工作于输入方式,D1=0表示B口工作于输出方式,D0=1表示下C口工作于输入方式,D0=0表示下C口工作于输出方式。工作方式字应输入控制

1 / 172
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功