51单片机外围电路扩展
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
转电路图 转时序图
外部ROM的容量扩展原理(一)
如何使用两片32K的ROM芯片扩展为64K的存储阵列。
A15 P2口
/CE1 A14 A8
/CE2 A14 A8 A7
ห้องสมุดไป่ตู้
MCS - 51
74LS373 A7
P0口 A0 /EA ALE Psen /OE1 O0~O7
A0
/OE2 O0~O7
由两片32K的ROM构成64K存储阵列与A15的 关系表
数码管(四)
数码管显示器的显示常采用两种方法: 1.静态显示 2.动态扫描显示 静态显示:就是把多个LED 显示器的每一段 与一个独立的并行口连接起来,而公共端则 根据数码管的种类连接到“VCC”或“GND” 端。 这种方法当显示位数较多时单片机中I/O 口 的开销很大,需要提供的I/O 接口电路也较 复杂,但它具有编程简单,显示稳定,CPU 的效率较高的优点。
静态LED数码显示电路(共阳极)
Vcc
七段译码器 七段译码器 七段译码器 七段译码器 七段译码器
BCD码 0000
0001
0010
0011
0100
返回
数码管(五)
由于静态显示占用的I/O 口线较多,CPU 的开销很大,所以为了节省单片机的I/O 口线,常采用动态扫描方式来作为LED 数 码管的接口电路。 动态显示的接口电路是把所有LED的8 个笔 划段a~g,dp 同名端连在一起,而每一个 显示器的公共极COM 端与各自独立的I/O 口连接。当CPU 向字段输出口送出字形码 时,所有显示器接收到相同的字形码,但 究竟是那个显示器亮,则取决于COM 端, 而这一端是由I/O 口控制的,所以我们就 可以自行决定何时显示哪一位了。
按键接口设计(一)
按键是人机会话的一个重要的输入工具。 常用按键举例 复位按键 功能转换按键 数据输入键盘 复位按键:对于MCS—51系列单片机的 复位引脚RST上只要出现10ms以上的高电 平,单片机就会实现复位。
按键接口设计(二)
以下是一个典型的复位电路设计图:
按键接口设计(三)
数码管(一)
在单片机系统中,通常用LED 数码显示器 来显示各种数字或符号。 八段LED 显示器由8 个发光二极管组成。 LED 显示器有两种不同的连接形式:一种 是8 个发光二极管的正极连在一起,称之 为共阳极LED 显示器;另一种是8 个发光 二极管的负极连在一起,称之为共阴极 LED 显示器。
MCS-51单片机的系统扩展及应用
通过地址总线、数据总线和控制总线实现系统 的扩展 介绍外围电路的扩展
3.1:程序存储器的扩展 3.2:数据存储器的扩展 3.3:指示小灯 3.4:按键扩展 3.5:数码管应用 3.6:A/D转换器接口 3.7:温度传感器接口 3.8:IIC电路扩展 3.9:液晶电路
最小系统板
外扩
AD转换
数码管显示
程序存储器 温度传感器 51单片机 IIC总线
键盘
电源模块
数据存储器
指示灯
LCD液晶
3.1:程序存储器ROM的扩展
1,在使用8031(无片内ROM)或大于4K程序存储器时, 必须通过外接ROM来构成、扩充系统的程序存储区。 2,当使用外部存储器来扩展系统时,必须占用单片机的 P0、P2口作为外部电路的数据、地址总线。此时,P0、 P2口就不能作为通用的I/O端口。 3,在系统扩展时,外部电路与单片机连接的依据是单片 机访问外部存储器的时序,所以正确的理解时序是硬件电 路设计的关键。
数码管(六)
当用电平依次选通DS1,DS2,DS3,DS4时, 同时输入相应位的码段数据,这样就是动态 扫描的显示过程,只要扫描的频率不小于 25Hz,由于人眼的视觉停留特性,就不会感 觉闪烁,看起来是4位数码管同时发光的效果。
AD转换 数码管显示 程序存储器 温度传感器 键盘 51单片机
按键接口设计(五)
数据输入键盘
按键接口设计(六)
数据输入键是最常用的一种键盘: 上图所示的按键主要是实现了按键按下之 后,对应S0,S1,S2,S3分别由按下之前的 高电平变为低电平,从而实现了输入由1到 0的变化。此类按键一般需要对其进行编码 和确定键值。 当然还有其他种类的键盘,这里就不再一 一列举,希望我们用的时候自己总结。
OE
返回前一次
外部ROM的状态与地址线A15的关系表
ROM引脚
/CE
A14~A8
A7~A0
单片机引脚 A15 P2口 P0口 0 00000000 00000000 0000H~ 0 11111111 11111111 07FFH
1 1 00000000 00000000 11111111 11111111 8000H FFFFH
复位电路的设计: 单片机的复位分为上电复位和按钮复位。 上电复位是指单片机在加电瞬间,要在 RST引脚上出现大于10ms的正脉冲,使单 片机进入复位状态。 按钮复位是指用户按下“复位”按钮,使 单片机进入复位状态。
按键接口设计(四)
功能转换按键:
此类按键主要是当I/O口用作多种用途时,可以使 用此类按键可以实现同一I/O口的复用。 如图所示:SW DIP-8的引脚1-8可以接某一 I/O口,当按键开关在不同的位置可以控制不同的 外部接口
A
转电路图 返回前一次
B
(参考讲义70页)
片外存储器访问时序说明
P0、P2口作地址和数据总线。其中P0口作为地址和数据复 用总线,前半部(A段)作地址总线,后半部(B段)作为 数据总线。 外部程序存储器ROM的操作步骤如下: 1,单片机必须为其提供完整的(15位)地址信息; 2,ROM芯片的/CE 端=0,选中该芯片; 3,在满足上述条件的基础上,当ROM的/OE=0时(B时 间段),存储器输出数据的三态门打开,并将与输入地址 相对应的存储单元中的指令(数据)向外输出,单片机通 过P0口将指令送至CPU 内部。 74LS373锁存器:将A时间段P0口输出的低位地址进行保存, 使ROM在B时间段仍然可以得到完整的地址信号。
未选中
选中
外部ROM的容量扩展原理(二)
若需要对2片以上的芯片扩展,可以通过译码电路实现。
MCS–51 P2.7 P2.6 P2.5 P2.4 P2.0 74LS138 C B A
y7
/CE0
0y
/CE1
/CE7
A12 A8 A7
A12 A8 A7
A12 A8 A7
8K×8
P0口 A0 ALE Psen /OE1 74LS373 O0~O7
0000H~1FFFH 2000H~3FFFH 0000H~1FFFH 4000H~5FFFH
011
100 101 110 111
Y3=0
Y4=0 Y5=0 Y6=0 Y7=0
第4片
第5片 第6片 第7片 第8片
0000H~1FFFH 6000H~7FFFH
0000H~1FFFH 8000H~9FFFH 0000H~1FFFH A000H~BFFFH 0000H~1FFFH C000H~ DFFFH
数码管(二)
共阴与共阳的内部电路如下图所示:
数码管(三)
由图可以看出,共阳和共阴结构的LED 显 示器各笔划段名的安排位置是相同的,当 二极管导通时,相应的笔划段就发亮,由 发亮的笔划段组合而显示出各种字符(a~g 是7个笔段电极,DP为小数点) 需要注意的是:对于同一个字符的编码, 共阴和共阳接法对应的编码是不一样的, 两者互为反码。
串行传输口设计(三)
由于51单片机接口输出的是TTL电平,而 串口通信需要RS232电平,所以要用 MAX232来实现TTL电平与RS232电平的 转换。如下图所示:
串行传输口设计(二)
串口用于ASCII码字符的传输,通信使用3 根线完成:(1)地线,(2)发送, (3)接收。 对于51单片机,它本身就有一个串口通 信的接口,RXD与TXD,分别对应P3.0与 P3.1引脚。 要实现串口的通信,并不是直接将P3.0与 P3.1的线接出来,而是需要有一个器件 MAX232。
MCS-51与32K ROM的连接
MCS-51
P2.7 : : : P2.0 P0.7 : : : P0.0 ALE /EA Psen 完整的地址 信号
27256 32K ROM
CE A14 : : A8 A7 : : : A0
/CE = P2.7(A15)
D7 Q7
D0 Q0 CP
O7 : : : O0
A15 /CE A14~A8 P2口 0000000 0 1111111 1 0000000 0 1111111 1 A7~A0 P0口 0000000 0 1111111 1 地址范围 ROM1工作 ROM2工作 状态 状态
0 0
0000H~ 07FFH
选中
未选中
1 1
0000000 0 8000H ~ 1111111 FFFFH 1
8K×8
A0
/OE1 O0~O7
8K×8
A0 /OE1 O0~O7
采用LS138译码器实现ROM扩展示意表
P2.7~ P2.5 138 输 出
选中 ROM P2.4~P0.0 有效地址范围
000
001 010
Y0=0
Y1=0 Y2=0
第1片
第2片 第3片
0000H~1FFFH 0000H~1FFFH
Vdd
Vdd
Px.y 灌电流方式 输出”0”点 亮LED
Vdd
Px.y
拉电流方式 输出高电平 点亮LED
当然,不是所有的单片机都是这样,PIC 单片机就可以提供30mA的拉电流和灌电流。 单对于大多数IC电路,最好还是使用“灌电流” 去推动负载。
返回
指示灯电路(二)
二、端口指示灯
可以将某一I/O口的输出端接在三极管 的基极,如下图的接法(当LED0端的输入为 高电平时,三极管饱和导通,此时三极管消耗 功率最小,LED亮)实现指示灯电路。
返回
AD转换 数码管显示 程序存储器 温度传感器 键盘 51单片机
IIC总线
电源模块
数据存储器
指示灯 LCD液晶
最小系统板
指示灯电路(一)
一、电源指示灯 通常的指示灯电路是使用发光二极管,接 法如下:
当电源正常工作时发光二极管就正常显示
1.6.5 并行端口在使用时应注意的几个问题
“拉电流”还是“灌电流”----与大电流负载的 连接 (我们以美国ATMEL公司生产的AT8951为例) 1, 使用灌电流的方式与电流较大的负载 直接连接时, 端口可以吸收约20mA的电流而保 证端口电平不高于0.45V(见右上图)。 2,采用拉电流方式连接负载时, AT89C51所能提供“拉电流”仅仅为80μA, 否则输出的高电平会急剧下降.如果我们采用右 下图的方式,向端口输出一个高电平去点亮 LED,会发现,端口输出的电平不是“1”而是 “0”!
地址范围
ROM工作 状态 选中
未选中
访问外部程序存储器ROM的时序:
MOVC A,@A+DPTR S1 S2 S3 S4 S5 S6
373地址锁存信号 ALE
存储器数据输出控制 /Psen 地址总线(高八位)P2口
地址数据总线(低8位)P0 口
A15-A8(PC) A7-A0 OP A15-A8 (DPTR+A) A7-A0 常数
0000H~1FFFH E000H~FFFFH
小结:
1,单片机的P0、P2口作为地址数据总线; 2,P0口为数据、地址复用总线,所以必须加入八位锁 存器74LS373来锁存P0口的低八位地址。 3,外接ROM是靠MOVC指令产生的Psen信号来打开数 据三态门,使ROM中的指令通过P0口送入单片机内部。 4,存储器的容量M与其地址线条数n的关系:M=2↑n 5,当使用两片ROM扩展时,可以使用一个反向器实现容 量的扩展,通过ROM芯片的/CE端实现。 6,当使用2片以上的ROM芯片扩展时,就要使用译码器 实现存储容量的扩展,译码器的输入与高位地址相连接, 输出端分别与各ROM芯片的/CE连接(如图所示)。 7,当外接ROM的高八位地址线与P2口高八位线没有完全 用足时,要注意外存储的地址重叠问题。
IIC总线
电源模块
数据存储器
指示灯 LCD液晶
最小系统板
串行传输口设计(一)
串口是计算机上一种非常通用设备通信协 议。串口通信的概念简单,串口按位发送 和接收字节。尽管比按字节传送的并行通 信慢,但是串口可以在使用一根线发送数 据的同时用另一根线接收数据。串口的通 信要遵循固定的协议,比如通信两设备间 要有相同的波特率,要设定所传输的数据 位个数,还有是否要用奇偶位、校验位及 停止位。
外部ROM的容量扩展原理(一)
如何使用两片32K的ROM芯片扩展为64K的存储阵列。
A15 P2口
/CE1 A14 A8
/CE2 A14 A8 A7
ห้องสมุดไป่ตู้
MCS - 51
74LS373 A7
P0口 A0 /EA ALE Psen /OE1 O0~O7
A0
/OE2 O0~O7
由两片32K的ROM构成64K存储阵列与A15的 关系表
数码管(四)
数码管显示器的显示常采用两种方法: 1.静态显示 2.动态扫描显示 静态显示:就是把多个LED 显示器的每一段 与一个独立的并行口连接起来,而公共端则 根据数码管的种类连接到“VCC”或“GND” 端。 这种方法当显示位数较多时单片机中I/O 口 的开销很大,需要提供的I/O 接口电路也较 复杂,但它具有编程简单,显示稳定,CPU 的效率较高的优点。
静态LED数码显示电路(共阳极)
Vcc
七段译码器 七段译码器 七段译码器 七段译码器 七段译码器
BCD码 0000
0001
0010
0011
0100
返回
数码管(五)
由于静态显示占用的I/O 口线较多,CPU 的开销很大,所以为了节省单片机的I/O 口线,常采用动态扫描方式来作为LED 数 码管的接口电路。 动态显示的接口电路是把所有LED的8 个笔 划段a~g,dp 同名端连在一起,而每一个 显示器的公共极COM 端与各自独立的I/O 口连接。当CPU 向字段输出口送出字形码 时,所有显示器接收到相同的字形码,但 究竟是那个显示器亮,则取决于COM 端, 而这一端是由I/O 口控制的,所以我们就 可以自行决定何时显示哪一位了。
按键接口设计(一)
按键是人机会话的一个重要的输入工具。 常用按键举例 复位按键 功能转换按键 数据输入键盘 复位按键:对于MCS—51系列单片机的 复位引脚RST上只要出现10ms以上的高电 平,单片机就会实现复位。
按键接口设计(二)
以下是一个典型的复位电路设计图:
按键接口设计(三)
数码管(一)
在单片机系统中,通常用LED 数码显示器 来显示各种数字或符号。 八段LED 显示器由8 个发光二极管组成。 LED 显示器有两种不同的连接形式:一种 是8 个发光二极管的正极连在一起,称之 为共阳极LED 显示器;另一种是8 个发光 二极管的负极连在一起,称之为共阴极 LED 显示器。
MCS-51单片机的系统扩展及应用
通过地址总线、数据总线和控制总线实现系统 的扩展 介绍外围电路的扩展
3.1:程序存储器的扩展 3.2:数据存储器的扩展 3.3:指示小灯 3.4:按键扩展 3.5:数码管应用 3.6:A/D转换器接口 3.7:温度传感器接口 3.8:IIC电路扩展 3.9:液晶电路
最小系统板
外扩
AD转换
数码管显示
程序存储器 温度传感器 51单片机 IIC总线
键盘
电源模块
数据存储器
指示灯
LCD液晶
3.1:程序存储器ROM的扩展
1,在使用8031(无片内ROM)或大于4K程序存储器时, 必须通过外接ROM来构成、扩充系统的程序存储区。 2,当使用外部存储器来扩展系统时,必须占用单片机的 P0、P2口作为外部电路的数据、地址总线。此时,P0、 P2口就不能作为通用的I/O端口。 3,在系统扩展时,外部电路与单片机连接的依据是单片 机访问外部存储器的时序,所以正确的理解时序是硬件电 路设计的关键。
数码管(六)
当用电平依次选通DS1,DS2,DS3,DS4时, 同时输入相应位的码段数据,这样就是动态 扫描的显示过程,只要扫描的频率不小于 25Hz,由于人眼的视觉停留特性,就不会感 觉闪烁,看起来是4位数码管同时发光的效果。
AD转换 数码管显示 程序存储器 温度传感器 键盘 51单片机
按键接口设计(五)
数据输入键盘
按键接口设计(六)
数据输入键是最常用的一种键盘: 上图所示的按键主要是实现了按键按下之 后,对应S0,S1,S2,S3分别由按下之前的 高电平变为低电平,从而实现了输入由1到 0的变化。此类按键一般需要对其进行编码 和确定键值。 当然还有其他种类的键盘,这里就不再一 一列举,希望我们用的时候自己总结。
OE
返回前一次
外部ROM的状态与地址线A15的关系表
ROM引脚
/CE
A14~A8
A7~A0
单片机引脚 A15 P2口 P0口 0 00000000 00000000 0000H~ 0 11111111 11111111 07FFH
1 1 00000000 00000000 11111111 11111111 8000H FFFFH
复位电路的设计: 单片机的复位分为上电复位和按钮复位。 上电复位是指单片机在加电瞬间,要在 RST引脚上出现大于10ms的正脉冲,使单 片机进入复位状态。 按钮复位是指用户按下“复位”按钮,使 单片机进入复位状态。
按键接口设计(四)
功能转换按键:
此类按键主要是当I/O口用作多种用途时,可以使 用此类按键可以实现同一I/O口的复用。 如图所示:SW DIP-8的引脚1-8可以接某一 I/O口,当按键开关在不同的位置可以控制不同的 外部接口
A
转电路图 返回前一次
B
(参考讲义70页)
片外存储器访问时序说明
P0、P2口作地址和数据总线。其中P0口作为地址和数据复 用总线,前半部(A段)作地址总线,后半部(B段)作为 数据总线。 外部程序存储器ROM的操作步骤如下: 1,单片机必须为其提供完整的(15位)地址信息; 2,ROM芯片的/CE 端=0,选中该芯片; 3,在满足上述条件的基础上,当ROM的/OE=0时(B时 间段),存储器输出数据的三态门打开,并将与输入地址 相对应的存储单元中的指令(数据)向外输出,单片机通 过P0口将指令送至CPU 内部。 74LS373锁存器:将A时间段P0口输出的低位地址进行保存, 使ROM在B时间段仍然可以得到完整的地址信号。
未选中
选中
外部ROM的容量扩展原理(二)
若需要对2片以上的芯片扩展,可以通过译码电路实现。
MCS–51 P2.7 P2.6 P2.5 P2.4 P2.0 74LS138 C B A
y7
/CE0
0y
/CE1
/CE7
A12 A8 A7
A12 A8 A7
A12 A8 A7
8K×8
P0口 A0 ALE Psen /OE1 74LS373 O0~O7
0000H~1FFFH 2000H~3FFFH 0000H~1FFFH 4000H~5FFFH
011
100 101 110 111
Y3=0
Y4=0 Y5=0 Y6=0 Y7=0
第4片
第5片 第6片 第7片 第8片
0000H~1FFFH 6000H~7FFFH
0000H~1FFFH 8000H~9FFFH 0000H~1FFFH A000H~BFFFH 0000H~1FFFH C000H~ DFFFH
数码管(二)
共阴与共阳的内部电路如下图所示:
数码管(三)
由图可以看出,共阳和共阴结构的LED 显 示器各笔划段名的安排位置是相同的,当 二极管导通时,相应的笔划段就发亮,由 发亮的笔划段组合而显示出各种字符(a~g 是7个笔段电极,DP为小数点) 需要注意的是:对于同一个字符的编码, 共阴和共阳接法对应的编码是不一样的, 两者互为反码。
串行传输口设计(三)
由于51单片机接口输出的是TTL电平,而 串口通信需要RS232电平,所以要用 MAX232来实现TTL电平与RS232电平的 转换。如下图所示:
串行传输口设计(二)
串口用于ASCII码字符的传输,通信使用3 根线完成:(1)地线,(2)发送, (3)接收。 对于51单片机,它本身就有一个串口通 信的接口,RXD与TXD,分别对应P3.0与 P3.1引脚。 要实现串口的通信,并不是直接将P3.0与 P3.1的线接出来,而是需要有一个器件 MAX232。
MCS-51与32K ROM的连接
MCS-51
P2.7 : : : P2.0 P0.7 : : : P0.0 ALE /EA Psen 完整的地址 信号
27256 32K ROM
CE A14 : : A8 A7 : : : A0
/CE = P2.7(A15)
D7 Q7
D0 Q0 CP
O7 : : : O0
A15 /CE A14~A8 P2口 0000000 0 1111111 1 0000000 0 1111111 1 A7~A0 P0口 0000000 0 1111111 1 地址范围 ROM1工作 ROM2工作 状态 状态
0 0
0000H~ 07FFH
选中
未选中
1 1
0000000 0 8000H ~ 1111111 FFFFH 1
8K×8
A0
/OE1 O0~O7
8K×8
A0 /OE1 O0~O7
采用LS138译码器实现ROM扩展示意表
P2.7~ P2.5 138 输 出
选中 ROM P2.4~P0.0 有效地址范围
000
001 010
Y0=0
Y1=0 Y2=0
第1片
第2片 第3片
0000H~1FFFH 0000H~1FFFH
Vdd
Vdd
Px.y 灌电流方式 输出”0”点 亮LED
Vdd
Px.y
拉电流方式 输出高电平 点亮LED
当然,不是所有的单片机都是这样,PIC 单片机就可以提供30mA的拉电流和灌电流。 单对于大多数IC电路,最好还是使用“灌电流” 去推动负载。
返回
指示灯电路(二)
二、端口指示灯
可以将某一I/O口的输出端接在三极管 的基极,如下图的接法(当LED0端的输入为 高电平时,三极管饱和导通,此时三极管消耗 功率最小,LED亮)实现指示灯电路。
返回
AD转换 数码管显示 程序存储器 温度传感器 键盘 51单片机
IIC总线
电源模块
数据存储器
指示灯 LCD液晶
最小系统板
指示灯电路(一)
一、电源指示灯 通常的指示灯电路是使用发光二极管,接 法如下:
当电源正常工作时发光二极管就正常显示
1.6.5 并行端口在使用时应注意的几个问题
“拉电流”还是“灌电流”----与大电流负载的 连接 (我们以美国ATMEL公司生产的AT8951为例) 1, 使用灌电流的方式与电流较大的负载 直接连接时, 端口可以吸收约20mA的电流而保 证端口电平不高于0.45V(见右上图)。 2,采用拉电流方式连接负载时, AT89C51所能提供“拉电流”仅仅为80μA, 否则输出的高电平会急剧下降.如果我们采用右 下图的方式,向端口输出一个高电平去点亮 LED,会发现,端口输出的电平不是“1”而是 “0”!
地址范围
ROM工作 状态 选中
未选中
访问外部程序存储器ROM的时序:
MOVC A,@A+DPTR S1 S2 S3 S4 S5 S6
373地址锁存信号 ALE
存储器数据输出控制 /Psen 地址总线(高八位)P2口
地址数据总线(低8位)P0 口
A15-A8(PC) A7-A0 OP A15-A8 (DPTR+A) A7-A0 常数
0000H~1FFFH E000H~FFFFH
小结:
1,单片机的P0、P2口作为地址数据总线; 2,P0口为数据、地址复用总线,所以必须加入八位锁 存器74LS373来锁存P0口的低八位地址。 3,外接ROM是靠MOVC指令产生的Psen信号来打开数 据三态门,使ROM中的指令通过P0口送入单片机内部。 4,存储器的容量M与其地址线条数n的关系:M=2↑n 5,当使用两片ROM扩展时,可以使用一个反向器实现容 量的扩展,通过ROM芯片的/CE端实现。 6,当使用2片以上的ROM芯片扩展时,就要使用译码器 实现存储容量的扩展,译码器的输入与高位地址相连接, 输出端分别与各ROM芯片的/CE连接(如图所示)。 7,当外接ROM的高八位地址线与P2口高八位线没有完全 用足时,要注意外存储的地址重叠问题。
IIC总线
电源模块
数据存储器
指示灯 LCD液晶
最小系统板
串行传输口设计(一)
串口是计算机上一种非常通用设备通信协 议。串口通信的概念简单,串口按位发送 和接收字节。尽管比按字节传送的并行通 信慢,但是串口可以在使用一根线发送数 据的同时用另一根线接收数据。串口的通 信要遵循固定的协议,比如通信两设备间 要有相同的波特率,要设定所传输的数据 位个数,还有是否要用奇偶位、校验位及 停止位。