在51单片机教程第1讲中,我现已说过,学单片机便是两个内容,一个是学习操控单片机引脚,一个是学习单片机内部寄存器的装备。这一讲,来学习怎样操控51单片机的引脚。
操控单片机的引脚,分为两个知识点,一个是怎样让引脚单片机输出凹凸电平,一个是怎样检测接入到引脚上的电平是高仍是低。咱们有时候会听到这样的话: “此单片机有几个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((P10x20)==0x20) // 如果是高电平
else // 如果是低电平
或许:
sbit XXX=P1^5;
if(XXX==1) // 如果是高电平
else // 如果是低电平
第一种写法依然是运用调查P1寄存器。第二种写法依然是运用“位操作”。