这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 如何控制51单片机的引脚

共5条 1/1 1 跳转至

如何控制51单片机的引脚

工程师
2021-06-07 23:55:10     打赏

控制单片机的引脚,分为两个知识点,一个是怎么让引脚单片机输出高低电平,一个是怎么检测接入到引脚上的电平是高还是低。我们有时候会听到这样的话:“此单片机有几个IO口?”这里说的IO口,就是输入(input)输出(output)接口。一般情况下,单片机的引脚当中,除了电源引脚和晶振引脚,其它的都是IO口。当我们控制单片机的引脚高低时,我们把引脚当做输出引脚;当我们需要检测连接到单片机引脚上的电平时,我们把引脚当做输入引脚使用。

使引脚P1.5输出高电平,可以这样写:

P1=0x20;

或者:

sbit XXX=P1^5;

XXX=1;

第一种写法,在20前面加0x,表示这是一个十六进制数,把这个十六进制数0x20写成二进制数就是0010 0000,从左到右代表了P1.7~P1.0,我们发现,在P1.5的位置为1。

第二种写法,把P1.5命名为XXX,再给XXX写1,同样可以使得P1.5=1,让P1.5输出高电平。

第一种写法直接操作P1寄存器,第二种写法叫做“位操作”。sbit是一个“伪关键字”,并不是c语言标准的关键字。这个伪关键字是专门为51单片机准备的,大家不用担心,51单片机的伪关键字一共没有几个。

检测P1.5引脚的电平高低,可以这样写:

if((P1&0x20)==0x20) // 如果是高电平

else // 如果是低电平

或者:

sbit XXX=P1^5;

if(XXX==1) // 如果是高电平

else // 如果是低电平

第一种写法依然是使用观察P1寄存器。第二种写法依然是使用“位操作”。




专家
2021-06-08 00:02:55     打赏
2楼

感谢楼主的分享,很实用了。


工程师
2021-06-08 00:11:37     打赏
3楼

感谢楼主的分享,很实用了。


工程师
2021-06-10 23:07:14     打赏
4楼

设计的蛮不错的


工程师
2021-06-16 23:41:18     打赏
5楼

学会了


共5条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]