c51单片机的P3口功能切换方法:想让P3口做I/O口使用的时候如何避免与第二功能冲突?做输出时怎样避免?

我使用STC单片机时P2口做I/O口时没有问题,但是换成P3口的P3.4~3.6就无法工作,请教高手帮忙... 我使用STC单片机时P2口做I/O口时没有问题,但是换成P3口的P3.4~3.6就无法工作,请教高手帮忙 展开
 我来答
lylxy1965
2011-06-07 · TA获得超过2413个赞
知道小有建树答主
回答量:436
采纳率:100%
帮助的人:223万
展开全部
P3.4~P3.6对应的分别是:T0、T1、WR。要使用这三根线做普通IO口需要满足以下条件:

1、针对WR:不能有对外部RAM的写操作,也就是说不能对XDATA及PDATA型变量进行写操作;再进一步,软件在编译时,变量存储模式选项不能选择中模式及大模式,否则缺省状态下,程序中的局部变量都会采用外部RAM,这样的话一旦发生写操作(对变量赋值),则WR(P3.6)管脚上一定会输出写操作的负脉冲。这种冲突不采用额外的硬件手段是不可能避免的。
2、针对T0、T1:比较简单,只要系统中没有将T0、T1用作外部信号计数,则可以将其用作普通IO口用,不会造成什么冲突。

不像P0口需要接上拉电阻,P3口只要在应用上避开其第二功能,仅用作普通IO口,那么与P2口是没什么区别的。
做而论道
高能答主

2011-06-08 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部
P3.4~3.6,分别是 T0、T1、WR。
在你的项目中,如果使用了外部计数输入端T0......等,就不能再用这些引脚当普通IO口。
使用 P2 做IO口,就避免了冲突。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jinfahua
2011-06-06 · TA获得超过590个赞
知道小有建树答主
回答量:285
采纳率:0%
帮助的人:232万
展开全部
P3口的第一和第二功能无需切换,但要注意作为输入口或者第二功能口使用时,不能向其中写入0,最好先写入1(上电复位后默认就是1)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kq66olbay
2011-06-07 · TA获得超过427个赞
知道答主
回答量:527
采纳率:100%
帮助的人:350万
展开全部

不用切换,单片机对不同指令响应,从而控制不同的外设,执行不同功能。
SBUF = data;则串行数据通过P3.0 P3.1送出去,串口0工作。
单纯指令P3_0 = 1;则GPIO工作。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式