完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
本人新手,编写了一段TM7705 AD转换的程序,采用了返回值调用方式,编译倒是通过了,仅出现了一条警告“: statement is unreachable”,提示程序无法达到这。本人想向大家请教,如何正确在主函数中调用子函数的返回值呢。主程序如下: #include "public.h" #include "AD7705.h" #include "systick.h" #include "gui.h" #include "led.h" #include "printf.h" /**************************************************************************** * Function Name : main * Description : Main program. * Input : None * Output : None * Return : None ****************************************************************************/ u16 intvalue; int main() { u8 dat[6],j; u16 value; float ad; TFT_Init(); //TFT³õʼ»¯ //AD7705_AllInit(); //ADC³õʼ»¯ LED_Init(); //LED¶Ë¿Ú³õʼ»¯ printf_init();//printf³õʼ»¯ TFT_ClearScreen(BLACK); GUI_Show12ASCII(10,10,"This is a ADC1-Channel1-PA1 Check!",YELLOW,BLACK); GUI_Show12ASCII(10,100,"The AD Value is:",YELLOW,BLACK); while(1) { AD7705_AllInit(); //ADC³õʼ» } if(j>1) 警告提示无法执行到这 { j=0; GPIO_SetBits(GPIOC,GPIO_Pin_0); } else { j++; GPIO_ResetBits(GPIOC,GPIO_Pin_0); } intvalue= ReadAD7705(); delay_ms(100); intvalue=intvalue/10; ad=value*3.3/65536; intvalue=(u16)(ad*100); dat[0]=intvalue/100+0x30; dat[1]='.'; dat[2]=intvalue%100/10+0x30; dat[3]=intvalue%100%10+0x30; dat[4]='V'; dat[5]=' |
