单片机原理与控制技术——双解汇编和C51 第3版 教学课件 ppt 作者 张志良 第7章

上传人:E**** 文档编号:89497895 上传时间:2019-05-25 格式:PPT 页数:37 大小:2.04MB
返回 下载 相关 举报
单片机原理与控制技术——双解汇编和C51 第3版 教学课件 ppt 作者 张志良 第7章_第1页
第1页 / 共37页
单片机原理与控制技术——双解汇编和C51 第3版 教学课件 ppt 作者 张志良 第7章_第2页
第2页 / 共37页
单片机原理与控制技术——双解汇编和C51 第3版 教学课件 ppt 作者 张志良 第7章_第3页
第3页 / 共37页
单片机原理与控制技术——双解汇编和C51 第3版 教学课件 ppt 作者 张志良 第7章_第4页
第4页 / 共37页
单片机原理与控制技术——双解汇编和C51 第3版 教学课件 ppt 作者 张志良 第7章_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《单片机原理与控制技术——双解汇编和C51 第3版 教学课件 ppt 作者 张志良 第7章》由会员分享,可在线阅读,更多相关《单片机原理与控制技术——双解汇编和C51 第3版 教学课件 ppt 作者 张志良 第7章(37页珍藏版)》请在金锄头文库上搜索。

1、第7章 机械工业出版社同名教材 配套电子教案,单片机原理与控制技术,第3版,第7章 80C51片外扩展,80C51系列单片机有很强的外部扩展能力。 外部扩展可分为并行扩展和串行扩展两大形式。 早期的单片机应用系统以采用并行扩展为多, 近期的单片机应用系统以采用串行扩展为多。 外部扩展的器件可以有ROM、RAM、I/O口和其他一些功能器件, 扩展器件大多是一些常规芯片,有典型的扩展应用电路, 用户很容易根据规范化电路来构成能满足要求的应用系统。,7.1 并行扩展,数据传送:由数据线DB(D0D7)完成;,交互握手:由控制线CB(PSEN、WR、RD、ALE、EA)完成。,单元寻址:由地址线AB(

2、A0A15)完成;,7.1.1 并行扩展慨述, 控制总线(CB):, 数据总线(DB):,数据总线由P0口提供,其宽度为8位。, 地址总线(AB):,80C51控制总线,有以下几条:, 并行扩展总线组成,地址总线由P0口提供的低8位地址线A0A7和 P2口提供的高8位地址线A8A15组成。,WR:输出,用于写外RAM选通, 执行MOVX写指令时,WR会自动有效, 与外RAM写允许端WE连接。, ALE:输出,用于锁存P0口输出的低8位地址信号, 与地址锁存器门控端G连接。, PSEN:输出,用于外ROM读选通控制, 与外ROM输出允许端OE连接。, EA:输入,用于选择读内/外ROM。EA=1

3、,读内ROM;EA=0,读外ROM。, RD:输出,用于读外RAM选通, 执行MOVX读指令时,RD会自动有效, 与外RAM读允许端OE连接。, P2.X:并行扩展外RAM和I/O时,通常需要片选控制, 一般由P2口高位地址线担任。,可分别扩展64KB ROM(包括片内ROM)和64KB外RAM。, 并行扩展容量,低位地址线A0A10实现片内寻址。 高位地址线A11A13实现片选 (A11A13中只允许有一根为低电平, 另二根必须为高电平,否则出错)。 无关位A14、A15可任取,一般取“1”。,线选法,缺点:芯片地址空间不连续; 存在地址重叠现象。,线选法优点:连接简单;,适用于扩展存储容量

4、较小的场合。,存储器内存储单元的子地址,由与存储器地址线直接连接的低位地址线确定; 存储器的芯片地址由高位地址线产生的片选信号确定。, 并行扩展寻址方式,7.1.2 并行扩展外ROM, 地址线: 低8位地址:由80C51 P0.0P0.7与74373 D0D7连接,ALE有效时, 74373锁存该低8位地址,并从Q0Q7输出,与EPROM芯片低8位地址A0A7相接。 高位地址: 视EPROM芯片容量大小。2764需5位,P2.0P2.4与2764 A8A12相连; 27128需6位,P2.0P2.5与27128 A8A13相连。, 数据线:由80C51地址/数据复用总线P0.0P0.7直接与E

5、PROM数据线D0D7相连。, 输出允许:EPROM的输出允许端 直接与80C51 相连,80C51的 信号 正好用于控制EPROM 端。, :有内ROM并且使用时, 接VCC;无内ROM或仅使用外ROM时, 接地。, 控制线: ALE:80C51 ALE端与74373门控端G相连,专用于锁存低8位地址。 片选端:由于只扩展一片EPROM,因此一般不用片选,EPROM片选端 直接接地。,7.1.3 并行扩展外RAM, 地址线、数据线仍按80C51一般扩展ROM时方式连接, 高位地址线视RAM芯片容量,6116需3根,6264需5根。 片选线一般由80C51高位地址线控制,并决定RAM的口地址。

6、 6264有2个片选端只须用其一个,一般用 ,CE2直接接VCC。 按图7-5,6116的地址范围是7800H7FFFH; 按图7-6,6264的地址范围是6000H7FFFH(无关位为1)。 读写控制线由80C51的 、 分别与RAM芯片的 、 相接。,【例7-1】 按图7-6,试编制程序,将外RAM 7020H为首址的16个数据读出 并写入外RAM 7040H为首址的存储单元。,Keil C51软件调试:编译链接进入调试状态后,打开存储器窗口,在Address编辑框内键入“x:0x7020”, 并在7020和702f存储单元分别键入数据,例如100和200,该两单元将显示64和C8(16进

7、制数)。 全速运行后,看到7040和704f存储单元中的数据已变为64和C8,表明已完成RAM读写。,7.1.4 并行扩展I/O口,并行扩展I/O口可分为可编程和不可编程两大类。 不可编程是指不能用软件对其I/O功能进行设置、编辑,功能固定; 可编程是指通过编程对其I/O功能进行设置、编辑和硬件功能的应用发挥。,扩展I/O口不可编程芯片主要有74LS、74HC系列芯片和CMOS 4000系列芯片。 74LS系列输出驱动能力强、速度快; CMOS 4000系列输入阻抗高、微功耗。 74HC系列是一种高速HCMOS芯片,其引脚和输入输出电平与74LS兼容, 输出驱动能力和速度与74LS系列相当,是

8、目前较为常用的I/O口扩展芯片。,扩展I/O口可分为扩展输入口和输出口。 由于通常通过P0口扩展,而P0口要分时传送低8位地址和输入输出数据, 因此构成输出口时,接口芯片应具有片选和锁存功能; 构成输入口时,接口芯片应具有三态缓冲和锁存功能。, 74373扩展输入口,扩展输入口的74系列芯片有很多,以74373最为方便和常用。,【例7-2】 按图7-9电路,试编制程序, 从373外部每隔1秒读入一个数据,共16个数据, 存入以30H为首址的内RAM。,Proteus ISIS虚拟仿真调试: 参阅与本书配套的(网上免费下载)。, 74377扩展输出口,扩展输出口的典型常用芯片以74377最为方便

9、。,Proteus ISIS虚拟仿真调试: 参阅与本书配套的(可从网上免费下载)。,7.2 串行扩展,80C51系列单片机系统扩展不但可以用并行扩展方式,而且可以用串行扩展方式。 由于串行扩展方式具有显著的优点,不需占用P0口、P2口, 近年来得到了很大的发展和应用,逐渐成为系统扩展的主流形式。,7.2.1 串行扩展概述, 串行扩展特点, 最大程度发挥最小系统的资源功能。,、, 简化连接线路,缩小印板面积。 扩展性好,可简化系统的设计。 缺点是数据吞吐容量较小,信号传输速度较慢,但随着CPU芯片工作频率的提高, 以及串行扩展芯片功能的增强,这些缺点将逐步淡化。, 串行扩展方式分类, 一线制:以

10、Dallas公司1-wire (单总线)为典型代表, 二线制:以philips公司I2C总线(Intel Integrated Circuit BUS)为典型代表, 三线制:三线制的品种较多,应用较广的主要有两种:,1)SPI(Serial peripheral Interface)总线由Motorala公司推出,2)Microwire总线由美国国家半导体公司推出, 80C51移位寄存器串行扩展,7.2.2 80C51同步移位寄存器串行扩展,【例7-4】 已知电路如图7-16所示, 要求16个发光二极管从左至右每隔0.5s移动点亮,不断循环, 试编制程序。, 串行输出扩展,Keil C51软件

11、调试:方法参阅例6-7。Proteus ISIS虚拟电路仿真见例9-11。, 串行输入扩展,【例7-5】 已知电路如图7-18所示, 试编制程序输入K0K15状态数据,并存入内RAM 40H、41H。,Keil C51软件调试:方法参阅例6-8。Proteus ISIS虚拟电路仿真见例9-12。,7.2.3 I2C串行总线, I2C总线概述,器件间由SDA(串行数据线)和SCL(串行时钟线)两根线传送信息, 主器件根据器件地址(固定)寻址。,具备I2C总线结构的器件,均可通过SDA、SCL连接(同名端相连), 不具备者,也可通过具备I2C总线结构的I/O接口电路成为串行扩展器件, 而80C51

12、的数据线SDA和时钟线SCL也可以由通用I/O口中任一端线虚拟构成。,总线上扩展的器件数不是受制于电流驱动能力, 而是受制于电容负载总量。I2C总线的电容负载能力为400 pF,I2C总线传输速率为100Kb/s(改进后的规范为400 Kb/s)。, 器件寻址方式, I2C总线基本信号,有4个基本信号:起始信号S、终止信号P、应答信号A和 。, I2C总线数据传送时序, 虚拟I2C基本信号和数据传送通用软件包,7.2.4 虚拟I2C扩展AT24CXX系列E2PROM, AT24C02概述,AT24CXX的器件地址是1010,A2A1A0为引脚地址,若按图7-24b连接为000,,R/ =1时,

13、读寻址字节SLAR =10100001B=A1H;,R/ =0时,写寻址字节SLAW =10100000B=A0H。, 读/写N字节操作格式,其中, 灰色部分由80C51发送,AT24CXX接收; 白色部分由AT24CXX发送,80C51接收。 SLAW为写AT24CXX寻址字节, A2A1A0接地时,SLAW =10100000B=A0H ; SADR为AT24CXX片内子地址, 是写入该芯片数据N个字节的首地址; data1dataN为写入该芯片数据, N数不能超过页写缓冲器容量。, 写操作格式,调用时, 应给形参a、n、sadr赋值。 其中,a为写入数据数组; n为写入数据字节数; sa

14、dr为写入单元首地址。,调用时,应分别给 R1(80C51内RAM发送数据区首址) R3(写AT24CXX字节数N) R4(写AT24CXX片内子地址首址) 赋值。, 读操作格式,其中, 灰色部分由80C51发送,AT24CXX接收; 白色部分由AT24CXX发送,80C51接收。 SLAR为读AT24CXX寻址字节,A2A1A0接地时, SLAR =10100001B=A1H; SADR为读AT24CXX片内首地址; data1dataN为AT24CXX读出数据。 读出操作,分两步进行: 先发送读出单元首地址SADR, 然后重新启动读操作。,调用时,应给形参b 、n、sadr赋值。 其中,b 为80C51接收数据数组; n为接收数据字节数; sadr为AT24CXX读出单元首地址。,调用时,应分别给 R1(80C51内RAM接收数据区首址)、 R3(读AT24CXX字节数N)和 R4(读AT24CXX片内子地址首址)赋值。,【例7-6】 已知电路如图7-24b所示, 定义P1.0为SCL,P1.1为SDA, 8个数据存在首址为30H的内RAM中, 试将其写入AT24C02 50H57H单元中; 再将其读出,存在80C51内RAM 40H47H。,Keil C51软件调试和Proteus ISIS虚拟仿真调试见例9-14。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号