读取ADC值,为什么要左移八位,然后加低八位
请教各位大师,读取ADC值,为什么ADC_RES<<8位,可以详细举例吗。为什么不能右移。return(((u16)ADC_RES << 8) | ADC_RESL);
ADC_RES存储了ADC的高四位(12位AD),ADC_RESL存储了ad值的低8位。返回的为无符号16位的,所以左移,也就是return(((u16)ADC_RES << 8) | ADC_RESL); 话说右移你想要得到什么0.0~ 放大作用相当是ADC_RES*256 本帖最后由 17141200320 于 2024-1-16 13:28 编辑
请你好好学习一下数制与码制,还有C语言的运算符{:4_166:} 右移补0了 Kingsley 发表于 2024-1-17 15:10
右移补0了
是的,我也是请教别人讲得。
右移只能得到寂寞,数据都移没了{:4_245:} xuzeabc 发表于 2024-1-16 08:38
ADC_RES存储了ADC的高四位(12位AD),ADC_RESL存储了ad值的低8位。返回的为无符号16位的,所以左移,也就 ...
非常感谢
页:
[1]
2