历史上的今天
今天是:2024年09月04日(星期三)
2019年09月04日 | 51单片机系列知识5--并口(2)
2019-09-04 来源:eefocus
2、P1口
P1口对应的专用寄存器的助记符是P1,它是一个8位的专用寄存器,字节地址是90H,它的每一位都有位地址,可以对位进行直接访问。
PI口的位结构如图2-20所示。P1口也是准双向口,它的用途如图2-21所示。
3、P2口
P2口对应的专用寄存器的助记符是P2,它是一个专用寄存器,字节地址是0A0H.。它的每一位都有位地址,可以对位进行直接访问。
P2口的位结构如图2-22所示,P2口的使用方法如表2-11所示。
4、P3口
P3口对应的专用寄存器的助记符是P3,它是一个8位的专用寄存器,字节地址是0B0H。它的每一位都有位地址,可以对位进行直接的访问。
P3口的位结构如图2-23所示。
P3口是1个多用途的端口,每一位口线都有两种功能,即第一功能和第二功能。两种功能可单独使用。其使用方法见表2-21所示。
P3口作第二功能使用时,各口线的功能见表2-23所示。
P3口比P1、P2、P3多了一个缓冲器B3
(1)当P3口作为通I∕O接口时:第二功能输出线为高电平,使与非门的输出取决于口锁存器的状态。在这种情况下,P3口仍是一个准双向口,它的工作方式、负载功能与P1、P2口相同。
(2)当P3口作为第二功能使用时,其锁存器Q端必须为高电平,否则T管导通,引脚被箝位在低电平,无法输入或输出第三功能信号。当Q端为高电平时,P3口的口线状态就取决于第二功能输出线的状态。单片机复位时,锁存器输出端为高电平。P3口的引脚信号输入通道中有两个缓冲器,第二功能输入信号RXD,1NT0、1NT1、T0、T1经缓冲器B3输入,通用输入信号仍经缓冲器B2输入。
注意:不管是作为输入口使用还是第二功能输入口,输出电路中的锁存器输出和第二功能信号输出线都应保持高电平。否则的话在输入为高电平时会被内部T管拉低。
在作输入口使用时,若外部引脚被拉为低电平,由于上拉电阻的存在。此时端口会提供源(拉)电流。P0之所以被视为“真正的”双向口,是因为当它用于输入时。,引脚呈浮空状态。
5、端口的负载与接口要求
端口名称
负载功能
接口要求
P0口
驱动8个LSTTL输入
①作为通用I∕O口使用时,输出级是开漏电路,用它去驱动NMOS输入时,需要外接上拉电阻
②作为地址∕数据总线使用时,不需外接上拉电阻
P1~P3
驱动3个LSTTL输入
①对于HMOS型单片机,当P1和P3口作输入时,任何TTL、MNOS电路都以正常方式去驱动它们
②对于HMOS(CHMOS)型单片机,P1~P3的输入端都可被集电开路,漏极开路所驱动,不需外接上拉电阻
6、I∕O口的读写控制
①每个I∕O端口都有两种读入方法,即读锁存器的输出端和读外部引脚,实现两种读操作分别由相应的指令支持。
a、读锁存器指令实现的过程是:读—修改—写,包括ANL、ORL、XRL、JBC、CPL、INC、DEC等指令。(以I∕O端口或I∕O端口的某个位为操作数)。
b、读引脚指令是实现外部I∕O逻辑电平读入内部总线,进而传送到内部某寄存器或某可位寻址的位中,包括MOV等指令。(以I∕O端口或I∕O端口的某个位为操作数)。当执行读引脚操作后,各位的锁存器状态和引脚的状态应该是相同的。
而向对应的位锁存器写入某数后,相应的位引脚是否呈现与锁存器输出的状态相同的电平,必须考虑与该引脚连接的外部电路的状态。
②作为I∕O端口的输出使用时,所有的引脚都可以直接利用位操作指令置位或清零,也可以使用8位的字节寻址操作指令进行输出状态的修改。
位操作指令包括SETB、CLR、CPL和JBC
字节操作指令包括MOV、ANL、ORL、XRL、INC、DEC
所有这些操作都将影响内部D锁存器的输出状态和引脚电平的状态。但是,也有例外。
上一篇:C8051读取hex文件
史海拾趣
|
这是采用双线串行数字接口的温湿度传感器,与单片机接口非常方便,时序也很简单。 测量的温度/湿度精度很高。我们使用以后觉得很好用,所以,介绍给大家。 特点如下: 相对湿度和温度测量 _ 兼有露点 _ 全标定输出,无需标定即可互换使用 ...… 查看全部问答> |
|
关于IO0PIN指令的疑惑 最近在调一个键盘程序(LPC2103),用到了IO0PIN读端口指令(据说这是飞利浦系列的BUG),发现这个指令没有手册上说的那么简单呐,直接读是读不出来的。有人说要读一个输入状态的端口,要先把它设为输出,然后置高,最后再设 ...… 查看全部问答> |
|
各位手上有什么比较好用的bootloader吗?要求可以将nk.bin文件下载到内存中运行。 有的话给我发推荐一份啊,如果有时间的话麻烦给我发一份。 我的邮箱cy757#21cn.com(#改为@)… 查看全部问答> |
|
用verilog HDL 实现一个网络加密的算法(md5),有没有哪位高手能给点帮助,我邮箱是poppy220@126.com 先谢过啦!^_^ … 查看全部问答> |
|
有个项目用了STM8S105,电池供电(3节镍氢),系统中带DC-DC给功放供电,当DC-DC启动时或输出功率较大时,经常引起MCU复位。 STM8S有没有相应的低电压版本(即管脚,软件都一样,只是工作电压不同的)?… 查看全部问答> |
|
最近刚刚开始接触STM32,今天调试串口的时候发现一个很无奈的问题,源代码基本都是使用keil自带的demo,就不列举了。修改以下这些设置:/* PLLCLK = 12MHz * 6= 72 MHz */ RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_6 ...… 查看全部问答> |
|
想了想,还是把它出掉好了,STM32+W5100+SPI Flash+TFT,有点给力 这其实不是个开发板,而是个接近完成的产品(接近完成是指研发流程已经走完,但还未能进入市场)但资源比较给力---------------> STM32ZET6,带外部总线于是可以用总线挂TFT---------------> W5100,硬件TCP/IP协议 ...… 查看全部问答> |




