单片机论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 311|回复: 7
收起左侧

51单片机bit的用法

[复制链接]
一鲸落万物生 发表于 2020-1-8 15:11 | 显示全部楼层 |阅读模式
程序语句中比bit的用法,类似 if(key4==0&&bz==1&&a==0) 这句是什么意思

#include "key.h"

#include "delay.h"
bit bz;  
extern int i;  
char b,c;
int q;  
extern int tab[3];

void key(void)
{
if(key4==0&&bz==1&&a==0)   
{
  delay1ms(10);   
  bz=0;
  a=1;
}
if(key4==0&&bz==1&&a==1)   
{
  delay1ms(10);
  bz=0;
  a=2;
}
if(key4==0&&bz==1&&a==2)  
{
  delay1ms(10);
  bz=0;
  a=1;
}

回复

使用道具 举报

liuyongjun000a 发表于 2020-1-8 16:22 | 显示全部楼层
bit 位标量是 c51 编译器的一种扩充数据类型,利用它可定义一个位标量,但不能定义 位指针,也不能定义位数组。它的值是一个二进制位,不是 0 就是 1,类似一些高级语 言中的 Boolean 类型中的 True 和 False。
回复

使用道具 举报

csmyldl 发表于 2020-1-9 00:07 | 显示全部楼层
判断该位是0还是1,因为每一位只有0和1两种状态
回复

使用道具 举报

yxfyxf2000 发表于 2020-1-9 15:45 | 显示全部楼层
bit就是一个位变量,早期的51单片机支持,就是在使用布尔型变量的时候,使用位变量可以节省一些字节数。
位变量在51单片机中表示一个io的高低电平状态
回复

使用道具 举报

王元双 发表于 2020-1-9 18:08 | 显示全部楼层
yxfyxf2000 发表于 2020-1-9 15:45
bit就是一个位变量,早期的51单片机支持,就是在使用布尔型变量的时候,使用位变量可以节省一些字节数。
...

0001 1110 八个位
回复

使用道具 举报

翾fei 发表于 2020-1-9 18:20 | 显示全部楼层
如果开关KEY4断开,蜂鸣器BZ不响且a等于0时,做if之后的操作
回复

使用道具 举报

Host 发表于 2020-1-10 11:12 | 显示全部楼层
判断三个变量同时满足的条件下,执行下列语句
回复

使用道具 举报

mocul 发表于 2020-1-10 11:40 | 显示全部楼层
&&符号是且的意思,也就是说要你那三个条件同时满足才会进入if函数里面,还有就是51单片机的bit是位定义的意思,你可以理解成给一个口命名,然后才能操作那个口
回复

使用道具 举报

9#
无效楼层,该帖已经被删除
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|单片机论坛 |51黑电子论坛技术交流 QQ 管理员QQ:125739409;技术交流QQ群636986012

Powered by 单片机教程网

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