来自 Arduino.h
#define lowByte(w) ((uint8_t) ((w) & 0xff))
#define highByte(w) ((uint8_t) ((w) >> 8))
#define bitRead(value, bit) (((value) >> (bit)) & 0x01)
#define bitSet(value, bit) ((value) |= (1UL << (bit)))
#define bitClear(value, bit) ((value) &= ~(1UL << (bit)))
#define bitToggle(value, bit) ((value) ^= (1UL << (bit)))
#define bitWrite(value, bit, bitvalue) ((bitvalue) ? bitSet(value, bit) : bitClear(value, bit))
这段代码展示了Arduino.h中常用的位操作宏定义,
包括lowByte/highByte(获取高低字节)、
bitRead(读取位)、
bitSet/bitClear(置位/清零)、
bitToggle(位反转)和
bitWrite(写入位值)。
这些宏使用位移和位掩码技术实现高效的位操作,适用于嵌入式开发中的寄存器控制
特此记录
anlog
2025年11月1日
2480

被折叠的 条评论
为什么被折叠?



