51单片机内部资源简介精讲
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
P3口
P3口是多功能端口。 一、作通用I/O口用:①输出:当W=1时(由内部硬件自动置W为高电平),
输出Q端的信号(即输出内部数据)
②输入时:先向端口写“1”,即锁存器Q端为“1”。
P3口
P3口的第二功能
口线 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6
P3.7
替代的第二功能
3)每个定时/计数器都有多种工作方式,其中T0有四种工作方式;T1有 三种工作方式,T2有三种工作方式。通过编程可设定工作于某种方式。
4)每一个定时/计数器定时计数时间到时产生溢出,使相应的溢出位置 位,溢出可通过查询或中断方式处理。
二、 定时/计数器T0、T1的结构及工作原理
RXD(串行口输入)
TXD(串行口输出)
INT0(外部中断0输入) INT1 (外部中断1输入) T0(定时器0的外部输入)
T1 (定时器1的外部输入)
WR(片外数据存储器“写选通控制”输 出) RD (片外数据存储器“读选通控制”输 出)
P3口
二、P3口作为第二功能(内部硬件自动使Q=1) 此时引脚部分输入(Q=1、W=1) 。
512B +P4
1 3个16位 8个,两级
1 3个16位 8个,4级
P0口
下图为P0口的某位P0.n(n=0~7)结构图,它由一个输出锁存器、
两个三态输入缓冲器和输出驱动电路及控制电路组成。 P0口既可以作为I/O用,也可以作为地址/数据线用。
三态缓冲器
与门
多路开关
一、P0口作为一般I/O口使用
1) P口用作输出口时 CPU发出控制电平“0”(即:硬件自动使“控制” =0)封锁“与门”, 将输出上拉场效应管T1截止,同时使多路开关MUX把锁存器的输出端 Q与 场效应管T2栅极接通。
2) P0口用作输入口时
输入时----分读引脚或读锁存器。 读引脚:由传送指令(MOV)实现。
下面的缓冲器2用于读端口引脚数据,当执行一条由端 口输入的指令时,读脉冲把三态缓冲器2打开,这样端 口引脚上的数据经过缓冲器读入到内部总线。
P2口
1)P2口作为普通I/O口
CPU发出控制电平“0” ,使多路开关MUX倒向锁存器输出Q端,构成一个准双 向口。其功能与P1相同。
P2口
2)P2口作为地址总线
在系统扩展片外程序存储器扩展数据存储器且容量超过256B (用MOVX @DPTR指令)时,CPU发出控制电平“1”,使多路开关 MUX倒向内部地址线。此时,P2输出高8位地址。
例如:P3.0作为 串行口输入
P3口
P3口作为第二功能(Q=1) 部分输出(Q=1、W 输出) 。
例如:P3.1 作为串行口 输出
端口的负载能力和接口要求
1. P0口
P0口的输出级无上拉电阻。当输出要去驱动NMOS(N沟 道增强型场效应管)等负载时,需外接上拉电阻,这时 才有高电平输出;作为输入用时,需向端口写“1”;作 为地址/数据总线用时,无需外接上拉电阻。
原因:
如果此时该端口的负载恰是一个晶体管基极,且原端口输出值 为1,那么导通了的PN结会把端口引脚高电平拉低;若此时直 接读端口引脚信号,将会把原输出的“1”电平误读为“0”电平。 现采用读输出锁存器代替读引脚,图中,上面的三态缓冲器就 为读锁存器Q端信号而设,读输出锁存器可避免上述可能发生 的错误。
P0口的每一位口线可驱动8个LS型TTL负载。
2. P1~P3口 • P1~P3口都是准双向口,作为输入用时,必须向相应的
端口写“1”; • P1~P3口内部有上拉电阻,其每一位口线可驱动4个LS
型TTL负载。
补充
“灌电流”与“拉电流”
• “灌电流”
“灌电流”与“拉电流”
•Байду номын сангаас“拉电流”
准双向口
从图中可以看出,在读入端口数据时,由于输出驱动FET并接 在引脚上,如果T2导通,就会将输入的高电平拉成低电平,产 生误读。所以在端口进行输入操作前,应先向端口锁存器写 “1”,使T2截止,引脚处于悬浮状态,变为高阻抗输入。这就 是所谓的准双向口。
二、 P0口作为地址/数据总线使用
在系统扩展时,P0端口作为地址/数据总线使用时。 执行“MOVX”指令或 EA =0 时执行“MOVC”指令时,
P0口的驱动能力较大,当其输出高电平时, 可提供400A的电流(“拉电流”);当其 输出低电平(0.45V)时,则可提供3mA左右 的“灌电流”。
P1、P2、P3口的每一位只能驱动4个LSTTL, 即可提供的电流只有P0口的一半。 所以,任何一个口要想获得较大的驱动能 力,只能用低电平输出。
第1步:输入时,先 向锁存器“写”1。指 令为:SETB P0.n 或:
MOV P0,#0FFH
“读引脚”信号有效,缓 冲器2打开
11
0 0
T2截止
第2步:引脚信号
① P0口用作输入口时
② 输入时----分读引脚或读锁存器 读锁存器:有些指令 如:ANL P0,A 称为“读-修
改-写” 指令, 需要读锁存器。 缓冲器1用于读端口锁存器数据。
P1、P3口的驱动能力有限,在低电平输出时, 一般也只能提供不到2mA的“灌电流”。
定时/计数器接口
一、定时/计数器的主要特性 1)STC89C52RC单片机三个16位的可编程定时/计数器:定时/计数器T0
和定时/计数器T1以及定时/计数器T2。
2)每个定时/计数器既可以对系统时钟计数实现定时,也可以对外部信 号计数实现计数功能,通过编程设定来实现。
内部硬件自动使“控制” =1。
①P0口用作输出地址/数据总线。
② P0引脚输出地址/输入数据
输入信号是从引脚通过输入缓冲器进入内部总线。 此时,CPU自动使MUX向下,并向P0口写“1”,“读引脚”控制
信号有效,下面的缓冲器打开,外部数据读入内部总线。
P1口
它由一个输出锁存器、两个三态输入缓冲器和输 出驱动电路组成----准双向口。
单片机内部资源简介
1、整体简介 2、端口 3、定时器 4、串口 5、中断
MCS-51单片机的基本组成
片内资源 中央处理器CPU 程序存储器ROM 数据存储器RAM 并行I/O口 串行口 定时计数器 中断系统中断源
AT89S52 8位
STC89C52RC 8位
8KB
8KB
256B 4个P0—P3