51单片机P0~P3口工作原理
这里写目录标题
- P0
- 作数据/地址引脚
- 发出信号
- 接受信号
- 作通用I/O引脚
- P1
- P1.x的电路结构
- P1.x的工作原理
- 总结
- P2
- P2.x的电路结构
- P2.x的工作原理
- 总结
- P3
- P3.x的电路结构
- P3.x的工作原理
- 总结
P0
- 多路开关MUX决定P0.x是作数据/地址引脚还是作通用I/O引脚。
- 三态缓冲器BUF1,BUF2由C1,C2控制是读锁存器还是读引脚
作数据/地址引脚
控制线置1,MUX连通地址/数据线,此时作P0.x数据/地址引脚
发出信号
- 数据/地址线置1,V1导通,V2截止。P0.x输出1的数据/地址信号;
- 数据/地址线置0,V1截止,V2导通。P0.x输出0的数据/地址信号;
接受信号
- 数据输入:在取数据期间,“控制”信号为“0”,V1管截止,多路开关也跟着转向锁存器反相输出端Q非;CPU自动将0FFH(11111111,即向D锁存器写入一个高电平‘1’)写入P0口锁存器,使V2管截止(高组态时才能读数据),在读引脚信号控制下,通过读引脚三态门电路将指令码读到内部总线。
注意:当P0作为地址/数据总线使用时,在接收数据前,CPU自动向P0口锁存器写入0FFH,破坏了P0口原来的状态。因此,不能再作为通用的I/O端口。
作通用I/O引脚
控制线置0,MUX连通D锁存器,此时作P0.x通用I/O引脚(此时V1永久截止)
- 输出1:内部总线输出1,C1端给入时钟信号,使得 Q ‾ \overline{Q} Q置0,使得V2也截止,此时P0.x引脚变成高阻态,此时需在片外附加上拉电阻才能正常输出1信号
- 输出0:内部总线输出0,C1端给入时钟信号,使得 Q ‾ \overline{Q} Q置1,V2导通,此时P0.x引脚接地,正常输出1信号
注意:在P0.x作通用I/O引脚,读取外部信号时,需先用内部总线写入1,使P0.x处于高阻态,随后P0.x的信号方可送入输入缓冲器BUF2。
P0.x只有写入1才能正常读,因此P0.x在作通用I/O引脚为准双向口(双向口:无需其他操作,即可完成读和写)
- 读引脚:外部信号通过P0.x送入缓冲器BUF2;C1控制BUF2导通,数据被送入内部总线。同时也送入了D脚,数据就被暂时保存在了Q端。
- 读锁存器:Q暂存着数据,C2控制BUF1导通,最后暂存的数据被送入内部总线。
注意:凡属于读-修改-写方式的指令,从锁存器读入信
号,其它指令则从端口引脚线上读入信号。
读-修改-写指令的特点是,从端口输入(读)信号,在单片机内加以运算(修改)后,再输出(写)到该端口上(如ANL)。
P1
P1.x的电路结构
P1.x的工作原理
P1.x只能作通用IO口使用
- P1口作为输出口时,若CPU输出1,Q=1,Q*=0,场效应管截止,P1.x引脚的输出为1;若CPU输出0,Q=0,Q*=1,场效应管导通,P1.x引脚的输出为0。
- P1口作为输入口时,分为“读锁存器”和“读引脚”两种方式。“读锁存器”时,锁存器的输出端Q的状态经输入缓冲器BUF1进入内部总线;“读引脚”时,先向锁存器写1,使场效应管截止,P1.x引脚上的电平经输入缓冲器BUF2进入内部总线。
总结
- P1口由于有内部上拉电阻,没有高阻抗输入状态,故为准双向口。作为
输出口时,不需要在片外接上拉电阻。 - P1口“读引脚”输入时,必须先向P1口的锁存器写入1。
P2
P2.x的电路结构
P2.x的工作原理
作地址总线
在内部控制信号作用下,MUX与“地址”接通。当“地址”线为0时,
场效应管导通,P2.x引脚输出0;当“地址”线为1时,场效应截止
引脚输出1。作通用I/O口
与P1.x相同
总结
- 作为高8位地址总线使用时,可输出外部存储器或I/O的高8位地址,与P0口输出并经锁存器的锁存的低8位地址一起构成16位地址,共可寻址64KB的片外地址空间。当P2口作为高8位地址输出口时,输出锁存器的内容保持不变。
- P2口作为通用I/O口使用时,为准双向口,功能与P1口一样。一般情况下,P2口大多作为高8位地址总线口使用,这时就不能再作为通用1/O口。如果不作为地址总线口使用,可作为通用I/O口使用。
P3
P3.x的电路结构
P3.x的工作原理
由于引脚数目有限,在P3口增加了第二功能
- 第二功能输出:内部总线置1,与非门可以当成,第二功能输出口连接了一个非门使用,由第二功能输出口控制P3.x输出。当第二输出为1时,场效应管截止,P3.x引脚输出为1;当第二输出为0时,场效应管导通,P3.x引脚输出为0;
- 第二功能输入:内部总线和输出口应置1,此时第二功能输入口即可读取BUF3的内容
- 通用I/O口:第二功能输出口置1,P3.x作通用I/O口使用同P1.x
总结
- 由于P3口每一引脚有第一功能与第二功能,究竟是使用哪
是由单片机执行的指令控制来自动切换的,用户不需要进行任何设置。 - 引脚输入部分有两个缓冲器,第二功能的输入信号取自缓冲器BUF3的输出端,第一功能的输入信号取自缓冲器BUF2的输出端。
51单片机P0~P3口工作原理相关推荐
- 51单片机定时/计数器的工作原理
定时/计数器的最基本工作原理是进行计数.对内部时钟脉冲进行计数时,作为定时器:对外部脉冲信号计数时,则是计数器.不管作为定时器还是计数器,本质上都是计数器. 51单片机有两个定时/计数器:T0/P3. ...
- 理解51单片机最小系统的工作原理
51单片机最小应用系统 概述 要想使用单片机,第一个要搭建的电路就是单片机的最小系统,有了这个最小系统单片机就可以去正常的工作,即使没有其他的外围电路(显示器啥的),也可以对单片机进行程序的编写,程序 ...
- 51单片机并行I/O口工作原理
51单片机并行I/O口工作原理 51单片机并行I/O口工作原理 P1: 仅作为双向I/O口 P3: 做为双向I/O口,同时还有第二功能 P2: 双向I/O口和高8位地址线,与P1的结构相比多了一个数据 ...
- 单片机c语言怎么把p0口换p1口,关于51单片机P0口的结构及上拉问题
1.P0作为地址数据总线时,V1和V2是一起工作的,构成推挽结构.高电平时,V1打开,V2截止:低电平时,V1截止,V2打开.这种情况下不用外接上拉电阻.而且,当V1打开,V2截止,输出高电平的时候, ...
- 单片机原理与实践学习记录之51单片机I/O口简单应用
单片机原理与实践学习记录 第二课(更新时间:2021.9.3) 51单片机I/O口简单应用 C51中常用的头文件 通常有reg51.h,reg52.h,math.h, ctype.h, stdio ...
- p3.3输入p1口输出c语言,第三节 趣讲51单片机之P1P2P3口深入讲解
趣讲51单片机之P1P2P3口深入讲解 一.P1口 P1口是4组Parallel Ports中最简单的.其结构图如下: 与P0口的区别是:由于没有端口复用功能,所以,P0口的V1变成了一个上拉电阻. ...
- 51单片机P0/P1/P2/P3端口的区别
传统的以MCS-51为基础的8051内核单片机通常有4个双向8位I/O接口,它们是P0.P1.P2.P3.在无外接存储器时,这4个I/O接口均可以作为通用I/O接口使用,CPU既可以对它们进行字节操作 ...
- MCS-51 单片机的结构和工作原理
MCS-51 单片机的结构和工作原理 一.MCS-51单片机的基本组成 MCS-51单片机芯片有许多种,如8051.8031.8751.80c51.80c31等.它由中央处理器(CPU).时钟 ...
- 51单片机串行口的使用与串行通信
51单片机串行口的使用与串行通信 串行通信: 俩个概念: RS232接口标准: 串行口的使用: 串行口的结构: 串行口相关寄存器: 串行口的工作方式: 方式0:同步移位寄存器方式 利用方式0扩展并行I ...
最新文章
- 阿里程序员回老家被哥们问工作,回答在阿里,哥们却吐槽:破IT就破IT,还阿里巴巴!网友:京东就是送快递的,美团就是送外卖的!...
- PTP4L 简化版本OC模式
- 禁止snmpd往syslog中写入无用信息
- mysql 堆叠查询_SQL 注入方法 - 盲注、报错注入、UNION查询注入与堆叠注入
- maven 单元测试并行_并行运行单元测试
- 如何清除tomcat缓存
- 向银行贷款20万, 分期三年买50万的车,个人借款40万, 贷款10年买200万的房子,再贷款120万分创业...
- Windows Terminal Preview v0.11 发布:新的字体和主题
- 新浪网产品设计指南(含UI规范)
- Jenkins-SCM
- Spark生态之Alluxio学习15--alluxio性能分析和加速方式
- Matlab中xlsread 函数读取excel表格数据或者字符串
- 哇塞,可以用Python实现电脑自动写小说了!!!
- PyCharm2021安装教程
- svchost.exe占用网速多
- Laravel8 实现注册新用户时邮箱验证
- pg数据库意外优化一例
- Oracle数据库基本使用
- 流程图工具有哪些?三分钟告诉你流程图如何制作
- 什么是三证合一和五证合一?