unsigned char xdata b ;
unsigned char xdata dat_tep[24] ;
dat_tep[13] = 0x27 ;
b = ((dat_tep[13] >> 4) * 8) + dat_tep[13] & 0x0f ;
结果b = 7 ;正确为23才对.
如果改成
b = ((dat_tep[13] >> 4) * 8);
b += dat_tep[13] & 0x0f ;
结果b = 23 ;
想不明白为什么用前一个表达式结果会出错,难道51不能用此表达式?还是我有些问题没注意到?请大虾们指教
我要赚赏金打赏帖 |
|
|---|---|
| 基于MCP23S17的输入输出功能模块控制被打赏¥20元 | |
| 【S32K3XX】SPD 软件包使用Link文件修改被打赏¥22元 | |
| Switch-Case局部变量定义问题被打赏¥23元 | |
| 基于米尔TIAM62L开发板的串口通信及应用被打赏¥20元 | |
| PCF8574功能模块及其使用被打赏¥20元 | |
| 传感器LSM6DSO及LIS3MDL的功能检测被打赏¥18元 | |
| LPS25HB气压传感器及其检测被打赏¥18元 | |
| HTS221温湿度传感器及其检测被打赏¥18元 | |
| 【S32K3XX】HSE FW 版本更新被打赏¥21元 | |
| 基于ArduinoUNO开发板的AT24C02读写测试被打赏¥16元 | |
我要赚赏金
