完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
Arduino 位操作相关函数
bit() bit(n);//计算指定位的值 //返回值: bit类型0或者1 void setup() { Serial.begin(115200); Serial.println(bit(0));//相当于2的0次幂 Serial.println(bit(1));//相当于2的1次幂 Serial.println(bit(2));//相当于2的2次幂 Serial.println(bit(3)); Serial.println(bit(5)); Serial.println(bit(8)); Serial.println(bit(9));//相当于2的9次幂 Serial.println("----"); Serial.println(~bit(0));//8位单片机按位取反 Serial.println(~bit(1)); Serial.println(~bit(2)); Serial.println(~bit(3)); Serial.println(~bit(5)); Serial.println(~bit(8)); Serial.println(~bit(9)); } void loop() { } bitClear():清除数值变量的位。
x: 要清除其位的数值变量。 void setup() { Serial.begin(115200); int x = 8; int n = 1; int y = bitClear(x, 3); Serial.print(y); //输出为0 } void loop() { } bitWrite(): 写入数值变量的位。
x: 要写入的数值变量. void setup() { Serial.begin(9600); while (!Serial) {} // wait for serial port to connect. Needed for native USB port only byte x = 0b10000000; // the 0b prefix indicates a binary constant Serial.println(x, BIN); // 10000000 bitWrite(x, 0, 1); // write 1 to the least significant bit of x Serial.println(x, BIN); // 10000001 } void loop() {} lowByte():从右往左取低位字节。 highByte():从左往右取高位字节。 bitSet():将对应位置的值设置为1。 void setup() { Serial.begin(115200); int x = 15; int n = 0; bitSet(x, 1); Serial.print(x, BIN); } void loop() { } |
|
|
|
只有小组成员才能发言,加入小组>>
3320 浏览 9 评论
3000 浏览 16 评论
3496 浏览 1 评论
9069 浏览 16 评论
4089 浏览 18 评论
1190浏览 3评论
612浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
602浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2339浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1899浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 05:56 , Processed in 1.220297 second(s), Total 50, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号