单片机AT89S52的p0,p1,p3管脚都有啥用?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单片机AT89S52的p0,p1,p3管脚都有啥用?相关的知识,希望对你有一定的参考价值。
参考技术AP0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。
当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。
在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。
P1口:P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表所示。
在flash编程和校验时,P1口接收低8位地址字节。
P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX
@DPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVX
@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。
在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,p2输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。
在flash编程和校验时,P3口也接收一些控制信号。
求大神指教 51单片机 keil 的 options里面memory model的设置都有啥用啊?
如图这三个需要在什么情况下设置啊,为什么我设置成large后串口就不对了
compact和large必须有外部RAM支持。如果串口收发的数据都存放在一个位于外部RAM的变量中,而你的硬件没有扩展外部RAM,自然就会发生异常。 参考技术A Small:变量默认分配到内部存储空间中,通过普通的MOV指令寻址。Compact:变量默认分配到外部页存储空间中,通过MOVX, @Ri之类指令寻址,在不切换页的前提下,最大支持256字节外部扩展RAM。
Large:变量默认分配到外部存储空间中,通过MOVX, @DPTR之类指令寻址,最大支持64kB外部扩展RAM(实际上配合硬件设计以及软件调整,还可以支持更大的扩展空间)。本回答被提问者和网友采纳
以上是关于单片机AT89S52的p0,p1,p3管脚都有啥用?的主要内容,如果未能解决你的问题,请参考以下文章
AT89S52单片机除P0接上拉电阻外,其他IO口是不是可以不接,对性能有影响吗
单片机课程设计——《基于AT89S52单片机和DS1302时钟芯片的电子时钟(可蓝牙校准)》