STC89C51的I/O端口那么多,在编程里面以十六进制转化二进制去打开单片机的I/O端口,刚取高四位和低四位,它

它是怎么控制所有I/O端口的?本人初学,请高手指教.最好详细点.... 它是怎么控制所有I/O端口的?本人初学,请高手指教.最好详细点. 展开
 我来答
Cindere鞡
2013-09-01 · TA获得超过7251个赞
知道大有可为答主
回答量:1148
采纳率:84%
帮助的人:501万
展开全部

你好:

51单片机的IO口是最简单的IO口,不用关心它的输入输出方向和第二功能的设置,所以在程序中没有特殊用途也不用去初始化它。

那么51单片机IO口的操作,你只要包含了编译软件提供的头文件reg51.h就能直接使用P0、P1、P2、P3共4组IO口,每组有8位Px^0~Px^7,若要表示其中某一个IO口可以这样P1^1,这就表示操作P1组IO的第二个IO端口;若要对一组IO口一并操作可以直接使用赋值 或者 按位或 或者 按位与来操作,比如P1=0x30,那么P1这8个IO端口从高到低输出二进制数据00110000,。

说到IO口的本质,本来单片机是不识别P0、P1这样的标识,它只识别各个寄存器的地址,因为在头文件里使用sfr关键字来定义了P1口,如sfr P1=0x90,所以我们再使用P1的时候,实际上操作的是0x90这个地址,单片机自动识别0x90,知道这是在操作P1口。更多地址定义可查看我传给你的REG51.H文本。

有不懂的地方随时回复我。

希望我的回答能帮助到你。 

wangpenggod
2013-09-02 · 超过13用户采纳过TA的回答
知道答主
回答量:33
采纳率:0%
帮助的人:20.2万
展开全部
51单片机可以直接对位操作
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式