找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

51单片机中bit标志位的用法是怎么样的?求各位会的大佬解答

查看数: 13016 | 评论数: 3 | 收藏 1
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2018-11-8 12:57

正文摘要:

bit定义的标志位变量只有1,0.有好多的用法我看了别人的程序,一到有bit定义的程序就看不懂了。例如bit set=0;然后下面就有if(set=1){......} 我实在是搞不懂if是怎么判断set是=1还是=0的。还有的好像这个bit定 ...

回复

ID:244223 发表于 2018-11-8 22:42
肯定有其他条件啊,我用bit都是先赋值,当触发我设置的某个条件时会改变bit的值,然后在需要的地方判断bit的状态,执行相应的功能
ID:310519 发表于 2018-11-8 19:21
“=” 是赋值,“==”是比较。

你定义了一个位变量,你可以用它来标志任何状态。

这个状态不是自动改变的,而是要你自己改变它。

比如你定义了一个变量i, 你要用它来表示一个灯的开关状态, 1为开,0为关。

检测到灯开时,你的程序里要写 i =1,灯关时写i =0;

当需要根据灯的开或关执行不同的行为时:

if (i ==1){"i =1这里被执行"}else{"i =0这里被执行"};



ID:401564 发表于 2018-11-8 19:09
SET就是一个位,就是片上的任意一个位,你可以自己用软件去改变它,也可以让它由其它条件去改变它
比如,SET是STC12C5A60S2的ADC的START位,那么,这个位你可以去让它=1或者等于0,你让它=1之后,ADC就开始转换,转换完成了,它又变成=0了,明白了没有
又比如,P1.0也是个BIT位,如果你加了个按键上去,你可以是P1.0=0
但如果你是一直按下这个按键的话,读取P1.0的话,P1.0=0
自己理解了

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表