void main(void) { unsigned char number; char AD_value;
Mark=0; Content=0;//这两位是串口显示函数里的标志位 SCI0Init();
ATD0CTL2=0xC0; ATD0CTL3=0x08; ATD0CTL4=0x07; ATD0CTL5=0xB0; ATD0DIEN=0x00;
EnableInterrupts; DDRB=0XFF; while(1){ while(!(ATD0STAT1 & 0x01)); //等待转换结束 AD_value=ATD0DR0;//读取转换结果 PORTB_BIT3=!PORTB_BIT3; delay_ms(10); WritedataToSCI0(100.3456,4); WritestrToSCI0("
"); WritedataToSCI0(AD_value*0.0037,6); WritestrToSCI0("
“) } 参考电压是3.84V。因为串口能正常显示100.3456,所以我认为串口显示函数没有问题。但是串口显示的AD值不正常,比如给测的是在参考电压范围之内的电压值,但是它显示的是负值,而且值也不对。请各位路过的大虾指点指点。 |