uint16 ad_value;
uint8 ad_h,ad_l;
ad_value = HalAdcRead (0x07, HAL_ADC_RESOLUTION_10);
ad_h = ad_value>>8;
ad_l = ad_value&0xff;
HalUARTWrite(HAL_UART_PORT_0,&ad_h,1);
HalUARTWrite(HAL_UART_PORT_0,&ad_l,1);
程序如上,很简单,0V接到P0_7检测读出0x28-0x29,悬空检测读出0x1FFF,什么情况?看了用户手册ADCL最后俩位是无效位读出来会是0,可是实际API里面并没有把俩位移去,而且读出来还是有数值的!是不是要设置成输入才能读???、