传感技术
直播中

电子发烧友doodle

7年用户 345经验值
擅长:控制/MCU MEMS/传感技术
私信 关注
[资料]

51单片机教程-控制引脚

在51单片机教程第1讲中,我已经说过,学单片机就是两个内容,一个是学习控制单片机引脚,一个是学习单片机内部寄存器的配置。这一讲,来学习如何控制51单片机的引脚。
  控制单片机的引脚,分为两个知识点,一个是怎么让引脚单片机输出高低电平,一个是怎么检测接入到引脚上的电平是高还是低。我们有时候会听到这样的话:“此单片机有几个IO口?”这里说的IO口,就是输入(input)输出(output)接口。一般情况下,单片机的引脚当中,除了电源引脚和晶振引脚,其它的都是IO口。当我们控制单片机的引脚高低时,我们把引脚当做输出引脚;当我们需要检测连接到单片机引脚上的电平时,我们把引脚当做输入引脚使用。
  使引脚P1.5输出高电平,可以这样写:
  P1=0x20;
  或者:
  ***it 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寄存器,第二种写法叫做“位操作”。***it是一个“伪关键字”,并不是c语言标准的关键字。这个伪关键字是专门为51单片机准备的,大家不用担心,51单片机的伪关键字一共没有几个。
  检测P1.5引脚的电平高低,可以这样写:
  if((P1&0x20)==0x20) // 如果是高电平
  else // 如果是低电平
  或者:
  ***it XXX=P1^5;
  if(XXX==1) // 如果是高电平
  else // 如果是低电平
  第一种写法依然是使用观察P1寄存器。第二种写法依然是使用“位操作”。

回帖(7)

尧建堂

2016-12-13 15:53:13
五一单片机经验,路过学习一下。
举报

houjue

2016-12-13 20:07:56
个人认为 ***it 是一个“伪关键字”不妥,它应该说是51单片机专用的关键字!
1 举报

电子发烧友doodle

2016-12-14 17:12:04
引用: houjue 发表于 2016-12-13 20:07
个人认为 ***it 是一个“伪关键字”不妥,它应该说是51单片机专用的关键字!

举报

李秀波

2016-12-14 22:56:54
学习了,讲解很详细
举报

however1241

2016-12-26 08:49:22

谢谢楼主分享
谢谢楼主分享
举报

彪哥够厉害

2017-1-29 09:14:24
非常入门级,感谢
举报

一枚扫地僧

2020-4-21 20:56:40
一点一点进步一点一点进步
举报

更多回帖

发帖
×
20
完善资料,
赚取积分