LCD显示AD采样的电压值,当不乘12时,可以显示小数部分,但乘上12时,就无法显示小数部分了,求教!!!!
int main(void)
{
u16 adcx;
float temp;
SystemInit();
delay_init(72); //延时初始化
NVIC_Configuration();
uart_init(9600);
LED_Init();
KEY_Init();
LCD_Init();
Adc_Init();
LCD_Clear(BLUE);
  OINT_COLOR=RED;//设置字体为红色
LCD_ShowString(60,50,"Mini STM32");
LCD_ShowString(60,75,"ADC TEST");
LCD_ShowString(60,100,"Tan Fang tao");
LCD_ShowString(60,125,"2013/8/6");
//显示提示信息
  OINT_COLOR=BLUE;//设置字体为蓝色
LCD_ShowString(60,155,"ADC_CH0_VAL:");
LCD_ShowString(60,180,"ADC_CH0_VOL:0.000V");
while(1)
{
adcx=Get_Adc(ADC_Channel_0);
LCD_ShowNum(156,155,adcx,4,16);//显示ADC的值
temp=(float)adcx*(3.3/4096);
adcx=temp*12;
LCD_ShowNum(156,180,adcx,1,16);//显示电压值
temp-=adcx;
temp*=1000;
LCD_ShowNum(172,180,temp,3,16);
LED0=!LED0;
delay_ms(1000);
}
}
|