1 / 94

模块七

模块七. 80C51 的系统扩展. 本章主要内容. 80C51 存储器扩展 ( 扩展 ROM 、 RAM ). 80C51 并行接口扩展 ( 芯片 8155 ). 80C51 单片机键盘和显示器扩展. 问题的提出 1. 80C51 系列典型产品资源配置. 芯片型号. ROM 类型及字节数. RAM 字节数. 分类. 基本型. 80C31. 无 ROM. 128B. 80C51. 4KB 掩膜 ROM. 128B. 87C51. 4KBEPROM. 128B. 89C51. 4KBFLashROM. 128B. 80C32. 增强型.

jolene
Télécharger la présentation

模块七

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 模块七 80C51的系统扩展 本章主要内容 80C51存储器扩展(扩展ROM、RAM) 80C51并行接口扩展(芯片8155) 80C51单片机键盘和显示器扩展

  2. 问题的提出1 80C51系列典型产品资源配置 芯片型号 ROM类型及字节数 RAM字节数 分类 基本型 80C31 无ROM 128B 80C51 4KB掩膜ROM 128B 87C51 4KBEPROM 128B 89C51 4KBFLashROM 128B 80C32 增强型 无ROM 256B 80C52 8KB掩膜ROM 256B 87C52 8KBEPROM 256B 89C52 8KBFLashROM 256B

  3. EA/VPP ALE/PROG PSEN 问题的提出2 并行口 P0、P1、P2、P3 VCC 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 8031 8051 8751 89C51 RST P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 RXD TXD /INT0 /INT1 T0 T1 /WR /RD P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 XTAL2 XTAL1 VSS

  4. 并行口 P0、P1、P2、P3

  5. 问题的提出3 在单片机的应用系统设计中,往往出现ROM、RAM和I/O口不够用时怎么办? ▼ ROM扩展 ▼ RAM扩展 ▼ I/O接口扩展

  6. 一、存储器的扩展 当系统要求扩展时,为了便于与各种芯片相连接,应将其外部连线变为与一般CPU类似的三总线结构形式,即 宽度为8位,由P0口提供; 数据总线(DB): 地址总线(AB): 宽度为16位,低8位地址由P0口分时复用,高8位地址由P2口提供; 控制总线(CB): /RD、/WR、/EA、ALE和/PSEN等信号组成。

  7. ▼相关引脚:EA 1、程序存储器的扩展 片内资源: ▼80C31片内无ROM,80C51片内ROM容量为4KB。 ▼片外最大可扩展ROM为64KB。 用到锁存器芯片: 例如74LS373 能够作为片外ROM的芯片主要有EPROM存储器和E2PROM存储器。

  8. ①常见EPROM芯片的主要技术特性 芯片型号 2732 2764 27128 27256 27512 容量/KB 4 8 16 32 64 引脚数 24 28 28 28 28 读出时间/ns 100~300 100~300 100~300 100~300 100~300 最大工作 电流/mA 100 75 100 100 125 最大工作 电流/mA 35 35 40 40 40

  9. ②常见E2PROM芯片的主要技术特性 ▼E2PROM具有ROM的非易失性,同时又具有RAM的随机读/写特性,可使用单片机系统的5V电源在线擦除和改写。每个单元可以重复进行1万次改写。 芯片型号 2816 2816A 2817 2817A 2864 容量/KB 4 8 16 32 64 引脚数 24 24 28 28 28 读操作电压 5V 5V 5V 5V 5V 写操作电压 21V 5V 21V 5V 5V 擦除时间/ms 10 9~15 10 10 10 写入时间/ms 10 9~15 10 10 10

  10. Vcc PGM N.C A8 A9 A11 OE A10 CE D7 D6 D5 D4 D3 CE 2764 OE PGM ③ 8KB EPROM 2764引脚功能 VPP A12 A7 A6 A5 A4 A3 A2 A1 A0 D0 D1 D2 GND 2764引脚功能 A0~A12 地址线 D0~D7 数据线 地址线 地址线 编程脉冲输入 VPP 编程电源

  11. D 触发器 三态门 D D0 地址锁存器 G Q0 G Q Q G 74LS373 OE D7 … D0 . . . Q7 … Q0 . . . D D7 Q7 OE G ④ 地址锁存器的结构 地址锁存器一般选用带三态缓冲输出的8D锁存器74LS373。 G高电平Q=D D锁存在Q中 G低电平,D变化时Q不再随之变化

  12. 8D 锁存器 三态门 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 D0 D1 D2 D3 D4 D5 D6 D7 OUT IN G OE ⑤ 地址锁存器的工作原理 G高电平Q=D D锁存在Q中 G低电平,D变化时Q不再随之变化

  13. CE 74LS373 2764 80C31 OE OE EA PSEN 80C31扩展2764A程序存储器 8KB ROM P2.7 P2.0~P2.4 A8~A12 ALE G A7 … A0 D7 … D0 Q7 … Q0 P0 D0~D7

  14. 扩展ROM地址分配表及其读操作 P2.7 P2.6 P2.5 P2.4~P2.0 P0.7~P0.0 0 × × 0 0 0 0 0 0 0 0 0 0 0 0 0 0 × × 1 1 1 1 1 1 1 1 1 1 1 1 1 扩展ROM地址可以为:0000H~1FFFH. 读ROM 1000H单元操作 MOV DPTR,#1000H MOVC A,@DPTR

  15. CE 74LS373 2764 80C51 OE OE EA PSEN VCC 80C51扩展2764A程序存储器 8KB ROM P2.7 P2.0~P2.4 A8~A12 ALE G A7 … A0 D7 … D0 Q7 … Q0 P0 D0~D7

  16. 扩展ROM地址分配表及其读操作 由于80C51内部已经有4KBROM(0000H~0FFFH),同时/EA接高电平,所以扩展ROM地址范围为: P2.7 P2.6 P2.5 P2.4~P2.0 P0.7~P0.0 0 × 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 × 1 0 1 1 1 1 1 1 1 1 1 1 1 1 片外ROM地址可以为:1000H~2FFFH。

  17. CE 74LS373 2764 80C31 OE EA OE PSEN P2.7 P2.0~P2.4 A8~A12 ALE G A7 … A0 D7 … D0 Q7 … Q0 P0 D0~D7 执行MOVC A, @DPTR读片外ROM指令时,使/PSEN信号变为低电平,从而选通/OE。

  18. 片外RAM的读和写由80C51的RD和WR信号控制。 2、数据存储器的扩展 片内资源: ▼80C51片内仅128BRAM,80C52片内也仅256BRAM。 ▼片外最大可扩展RAM为64KB。 用到锁存器芯片: 例如74LS373 常用的数据存储器SRAM芯片有6116、6264、62256等。

  19. Vcc WE CS A8 A9 A11 OE A10 CE D7 D6 D5 D4 D3 CE 6264 OE WE ① 8KB SRAM 6264引脚功能 N.C A12 A7 A6 A5 A4 A3 A2 A1 A0 D0 D1 D2 GND 2764引脚功能 A0~A12 地址线 D0~D7 数据线 片选 读 写

  20. +5V 74LS373 6264 80C31 OE OE WE RD CE WR 80C31扩展6264A程序存储器 8KB RAM P2.7 P2.0~P2.4 A8~A12 ALE G CS A7 … A0 D7 … D0 Q7 … Q0 P0 D0~D7

  21. 扩展RAM地址分配表及其读操作 P2.7 P2.6 P2.5 P2.4~P2.0 P0.7~P0.0 0 × × 0 0 0 0 0 0 0 0 0 0 0 0 0 0 × × 1 1 1 1 1 1 1 1 1 1 1 1 1 扩展RAM地址可以为:0000H~1FFFH,地址不是唯一的,也可以为:6000H~7FFFH 写RAM操作实例 读RAM操作实例 MOV DPTR,#1000H MOV DPTR,#1000H MOVX A,@DPTR MOVX @DPTR,A

  22. 74LS373 6264 80C31 OE OE EA WR RD WE CE 读写片外RAM 8KB RAM P2.7 P2.0~P2.4 A8~A12 ALE G A7 … A0 CS D7 … D0 Q7 … Q0 P0 D0~D7 执行MOVX A,@DPTR片外读指令时,使/RD信号变为低电平,从而选通/OE 执行MOVX @DPTR,A片外写指令时,使/WR信号变为低电平,从而选通/WE。

  23. 二、并行接口(I/O接口)的扩展 ▼对于简单的I/O设备可以直接于单片机的4个并行接口或1个串行接口连接。 ▼当I/O接口不够用或当系统较为复杂时,往往要借助于输入/输出接口电路(简称I/O接口)完成单片机与I/O设备的。 ▼现在许多I/O接口已经系列化、标准化,并具有可编程功能。 本小节主要学习可编程接口芯片8155

  24. I/O 设备 80C51 单片机与I/O设备 存在的问题 P0 ①单片机的I/O口有限; 数据/地址复用 P1 ②单片机要比I/O设备快很多; P2 高8位地址 ③I/O设备信号类型多样,有些不能与单片机直接连接。等等 P3 第二功能

  25. 状态信号 控制信号 单片机与I/O设备 P0 数据/地址复用 P1 数据 I/O接口 P2 高8位地址 I/O 设备 P3 第二功能 80C51

  26. 状态信号 74LS373 I/O设备 数据 控制信号 WR RD OE 80C51 1、单片机与I/O设备的关系 P2 I/O接口 状态端口 ALE G D7 … D0 Q7 … Q0 P0 数据端口 控制端口

  27. 2、I/O接口的功能 ①对单片机输出的数据锁存 单片机要比I/O设备快得多,I/O接口的数据端口要锁存数据线上瞬间出现的数据,以解决单片机与I/O设备的速度协调问题。 ②对输入设备的三态缓冲 单片机的数据是所有I/O设备分时复用的,利用I/O接口的三态缓冲功能,可以实现I/O设备与数据总线的隔离,从而实现I/O设备的总线共享。

  28. I/O接口的功能 ③信号转换 必须利用I/O接口实现单片机与I/O设备间信号类型(数字与模拟、电流与电压)、信号电平(高与低、正与负)、信号格式(并行与串行)等的转换。 ④时序协调 单片机输入输出数据时,只有I/O设备准备好了,才能进行读写操作。 不同的I/O设备的定时与控制逻辑是不同的,需要I/O接口进行时序的协调。

  29. 3、可编程接口8155与显示器 本小节主要内容: 1) 七段LED显示器工作原理 2) 8155的引脚及结构 3) 8155的工作方式 4) 8155芯片与单片机的接口 5) 8155的状态字格式 6) 计数器输出模式 7) 选通I/O的组态

  30. LED显示器由若干个发光二极管组成,当发光二极管导通时,相应的一个笔画或一个点发光。LED显示器由若干个发光二极管组成,当发光二极管导通时,相应的一个笔画或一个点发光。 1)七段显示器件的工作原理 a a b c d e f g 1 1 1 1 1 1 0 b f 0 1 1 0 0 0 0 g 1 1 0 1 1 0 1 c e  d

  31. a g f b COM a a b f b f 发光字段,由管脚 a ~ g 电平控制是否发光。 g g e c e c 小数点,需要时才点亮。 d d DP DP c e d DP COM 数码显示器简介 七段半导体数码显示器(LED) 显示的数字形式 常用共阴极 LED

  32. COM COM d c b a DP g f e 共阳极 R d c b a DP g f e COM R 共阴极 COM 共阳接法 共阴接法 半导体数码显示器内部接法 主要优点:字形清晰、工作电压低、体积小、可靠 性高、响应速度快、寿命长和亮度高等。 主要缺点:工作电流大,每字段工作电流约 10 mA 。 VCC +5 V 串接限流电阻   共阴接法数码显示器需要配用输出高电平有效的译码器。 a ~ g 和 DP 为高电平 时才能点亮相应发光段。 a ~ g 和 DP 为低电平时才能点亮相应发光段。   共阳接法数码显示器需要配用输出低电平有效的译码器。

  33. a a b c d e f g 1 1 1 1 1 1 0 b f g 0 1 1 0 0 0 0 1 1 0 1 1 0 1 c e  d 共阳顺序段码:C0H,F9H,A4H,B0H,99H,92H,82H,F8H,80H,90H • 共阴顺序段码:3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH

  34. 项目七:六位动态LED显示 1、项目内容 将79H开始的六个单元依次送入06H , 05H , 08H , 00H , 00H ,02H,并将这些数据用六位LED依次显示。 2、项目分析 由于所需LED位数较多,采用动态LED显示较合适,采用8155接口芯片的PA口作为扫描口(字位口),PB口作为段数据口(字型口)。

  35. dp g 8155 f 80C51 e +5V RD EA CE RD WR WR d c IO/M b a +5V 3、项目电路 PB7 PB6 PB5 PB4 P2.7 PB3 PB2 P2.0 PB1 PB0 RESET RESET 7407×2 P0 AD0~AD7 ALE ALE PA5 PA4 PA3 PA2 PA1 PA0 7406 COM

  36. 主程序 5、源程序 4、画流程图 ORG 0000H START: AJMP MAIN 主程序流程图 ORG 0030H 程序开始 MAIN: MOV 79H,06H MOV 7AH,05H MOV 7BH,08H MOV 7CH,00H MOV 7DH,00H MOV 7EH,02H 送数据到79H开始的 显示缓冲单元 设置8155工作方式 MOV DPTR,#7F00 H MOV A,#03H MOVX @DPTR,A 调用显示子程序 LOOP: ACALL DISPLAY 结束 SJMP LOOP END

  37. 显示子程序 4、画流程图 子程序入口 显示数据缓冲区首地址送R0 送显示 使显示器最右边位亮 调用延时子程序 数据指针指向A口 指向下一个显示段数据地址 送扫描值 扫描到第6个 显示器否? 数据指针指向B口 取欲显示的数据 未到,扫描码左移1位 查表,取出字型码

  38. 5、源程序 显示子程序 MOV A,R3 JB ACC.5 ,ELD1 ;R3存放扫描值 RL A MOV R0,#79H DISPLAY: MOV R3,A AJMP LD0 MOV R3,#01H ELD1: RET MOV A, R3 ;--------------------段码 DSEG: DB 3FH,06H,5BH,4FH DB 66H,6DH,7DH,07H DB 7FH,6FH,77H,7CH DB 39H,5EH,79H,71H, DB 40H,00H MOV DPTR,#7F01H LD0: MOVX @DPTR,A INC DPTR MOV A,@R0 DELAY:MOV R7,#200 DEL1: MOV R6,#123 NOP DEL2: DJNZ R6,DEL2 DJNZ R7,DEL1 RET ADD A,#0DH MOVC A,@A+PC MOVX @DPTR, A ACALL DEALY INC R0

  39. AD0~AD7 VCC PA0~PA7 ALE IO/M WR CE RD PB0~PB7 RESET TIMER IN TIMER OUT PC0~PC5 GND 2) 8155的内部结构 A 256×8 静态RAM 命令/状态 寄存器 B 计数器 C

  40. IO/M CE:片选信号 IO/M:内部端口和SRAM选择信号 CE RD WR WR、RD: 读写信号 8155的引脚 PC3 PC4 VCC 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 PC2 PC1 PC0 TIMER IN RESET:复位信号输入端 RESET PC5 AD7~AD0:三态地址/数据总线 PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0 TIMER OUT ALE:地址锁存允许信号输入端 8155 ALE AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 PA7 PA6 PA5. PA4 PA3 PA2. PA1 PA0 PA0~PA7:A口的8根通用I/O口线 PB0~PB7:B口的8根通用I/O口线 PC0~PC5:C口的6根数据/控制线 GND TIMER IN、 TIMER OUT :计数器时钟输入输出端。

  41. 3) 8155的工作方式设置 ▼8155的工作方式设置通过命令字写入命令寄存器实现。 ▼8155的状态可以由读出状态寄存器的内部获得。 ▼从逻辑上说,只允许写入命令寄存器和读出状态寄存器,所以 命令寄存器和状态寄存器可以采用同一编址,简称命令/状态寄存器,用C/S表示。

  42. A口数据传送方向设置位。 0:输入;1:输出 A口的中断允许设置位 0:禁止;1:允许 计数器工作方式 设置位 C口工作方式 设置位 工作方式设置 ▼8155的状态可以由读出状态寄存器的内部获得。 000 TM2 TM1 IEB PC2 PC1 PB PA IEA

  43. C口工作方式 工作方式 说明 PC2 PC1 ALT1 A、B口为基本I/O,C口方向为输入 0 0 1 1 A、B口为基本I/O,C口方向为输出 ALT2 0 1 ALT3 A口为选通I/O,PC0~PC2作为A口的选通应答 B口为基本I/O,PC3~PC5方向为输出 1 0 ALT4 A、B口为基本I/O,C口方向为输出

  44. 定时/计数器命令字 TM2 TM1 工作方式 说明 0 0 方式0 空操作,对计数器无影响 0 1 使计数器停止计数 方式1 1 0 方式2 减1计数器回0后停止工作 1 1 方式3 未计数时,送完初值及方式后立即启动计数;正常计数时,重置初值后,减1计数器回0则按新计数初值计数

  45. 4)8155的内部编址 ▼8155的内部RAM地址为00H~FFH。 ▼8155的内部端口地址为: 000—命令/状态寄存器 001—A口 010—B口 011—C口 100—计数器低8位 101—计数器高6位及计数器方式设置位

  46. dp g 8155 f 80C51 e +5V RD EA CE RD WR WR d c IO/M b a +5V 3、项目电路 PB7 PB6 PB5 PB4 P2.7 PB3 PB2 P2.0 PB1 PB0 RESET RESET 7407×2 P0 AD0~AD7 ALE ALE PA5 PA4 PA3 PA2 PA1 PA0 7406 COM

  47. 8155 80C51 CE EA RD WR WR RD IO/M +5V 5)8155与单片机接口实例 输出 PA P2.7 输出 P2.0 PB RESET RESET P0 AD0~AD7 PC ALE ALE TIME IN TIME OUT

  48. IO/M=1 ①求I/O端口地址 P2.7 P2.0 P0.7~P0.0 P0.2 P0.1 P0.0 I/O口 P2.6~P2.1 0 ×××××× 1 ×××××××× 0 0 0 命令状态口 0 ×××××× 1 ×××××××× 0 0 1 PA口 0 ×××××× 1 ×××××××× 0 1 0 PB口 0 ×××××× 1 ×××××××× 0 1 1 PC口 0 ×××××× 1 ×××××××× 1 0 0 计数器低8位 0 ×××××× 1 ×××××××× 1 0 1 计数器高6位 及方式

  49. P2.7~P2.0 P0.7 P0.1 P0.0 I/O口 地址 0××××××1 ×××××000 命令状态口 7F00H 0××××××1 ×××××001 PA口 7F01H 0××××××1 ×××××010 PB口 7F02H 0××××××1 ×××××011 PC口 7F03H 0××××××1 ×××××100 计数器低8位 7F04H 0××××××1 ×××××101 计数器高6位 及方式 7F05H ▼一般将不用的P2口位置1,而不用的P0口位置0

  50. IO/M=0 ②求RAM地址 P2.7 P2.0 P0.7~P0.0 RAM地址 P2.6~P2.1 0000 0000 0 ×××××× 0 7E00H 0 ×××××× 0 1111 1111 7EFFH ▼RAM 地址因P2.7=0及P2.0=0,故可选为 0111 1110 0000 0000B(7E00H)~ 0111 1110 1111 1111B(7EFFH)

More Related