Arduino 函数的位操作

 时间:2024-10-11 22:36:54

1、Arduino IDE 新建代码的方法,程序的上传方法,大家可以参考:http://jingyan.baidu.com/article/414eccf6a8fb9f6b431f0ab1.html来操作

Arduino 函数的位操作

2、设置和读取某一位输入代码:byte flags = 0; //定义位变量void setFlag( int flagNumber){ bitSet(flags, flagNumber);//设定变量flags的flagNumber位为1}void clearFlag( int flagNumber){ bitClear(flags, flagNumber);//设定变量flags的flagNumber位为0}int getFlag( int flagNumber){ return bitRead(flags, flagNumber);//传回变量flags的flagNumber位}void setup(){ Serial.begin(9600); showFlags(); setFlag(2); setFlag(5); showFlags(); clearFlag(2); showFlags();}void loop(){}//回传哪些位被设置了void showFlags(){ for(int flag=0; flag < 8; flag++) { if(getFlag(flag) == true) Serial.print("* bit set for flag "); else Serial.print("bit clear for flag "); Serial.println(flag); } Serial.println();}

Arduino 函数的位操作

3、输出效果如下图所示,输出结果中显示了在程序执行过程中被改变的位

Arduino 函数的位操作

4、提取整数中的高位或者低位输入代码:坡纠课柩int intValue = 258; // 258 的 16 进制为 0x102即枢潋雳void setup(){ Serial.begin(9600);}void loop(){ int loWord,hiWord; byte loByte, hiByte; hiByte = highByte(intValue); //取出 intValue 的高位 loByte = lowByte(intValue); //取出 intValue 的低位 Serial.println(intValue,DEC); Serial.println(intValue,HEX); Serial.println(loByte,DEC); Serial.println(hiByte,DEC); delay(10000);}

Arduino 函数的位操作

5、输出效果如下图所示,分别通过串口打印输出了变量的十进制数值、16进制数值、低位和高位

Arduino 函数的位操作

6、将高位和低位结合输入代码:int intValue = 0x102; // 十旅邯佤践进制 258void setup(){ S髫潋啜缅erial.begin(9600);}void loop(){ int loWord,hiWord; byte loByte, hiByte; hiByte = highByte(intValue); loByte = lowByte(intValue); Serial.println(intValue,DEC); Serial.println(loByte,DEC); Serial.println(hiByte,DEC); loWord = word(hiByte, loByte); Serial.println(loWord,DEC); delay(10000);}

Arduino 函数的位操作

7、输出效果如下图所示,输出分别为定义的整数值,低位值,高位值,组合后的整数值

Arduino 函数的位操作
  • 【Snipaste】怎么在界面中显示操作提示
  • 便宜实用又能提高幸福感的女性生活用品
  • oppo连点三下放大怎么关闭
  • 医用胶带持粘性的测试操作步骤
  • 热门搜索
    元宵节手抄报内容资料 十一手抄报 漫游语文世界手抄报 快乐寒假手抄报 环保英语手抄报 植物园手抄报 关于月亮的手抄报 节俭手抄报 关于新年的手抄报 交通手抄报内容