gpt4 book ai didi

c - Operator "|"用法是 c 树莓派

转载 作者:行者123 更新时间:2023-11-30 19:13:57 26 4
gpt4 key购买 nike

我正在使用树莓派读取陀螺仪数据。我对此很陌生,但到目前为止,除了使用“|”之外,我了解我的代码所依据的一切在里面。当查找它时,它说它的“按位或”运算符,但在我的情况下它没有意义,比我再次不理解维基百科上的解释。

使用它的行如下所示

readBlock(0x80 | OUT_X_L_G, sizeof(block), block);

readBlock 是用户定义的函数,如下所示。

readBlock(uint8_t command, uint8_t size, uint8_t *data) {
int result = i2c_smbus_read_i2c_block_data(file, command, size, data);
}

最佳答案

表达式0x80 | OUT_X_L_G 返回一个 OUT_X_L_G 值,其中设置了位号 7:

OUT_X_L_G = xxxx xxxx
bitwise or
0x80 = 1000 0000
---------------------
result = 1xxx xxxx

整个函数调用背后的逻辑应该由您未提供的上下文决定。

关于c - Operator "|"用法是 c 树莓派,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34861462/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com