新手上路
- 积分
- 35
- 金钱
- 35
- 注册时间
- 2015-7-22
- 在线时间
- 4 小时
|
1金钱
ucosII+emwin是使用的原子的战舰例程,屏幕是7寸V2程序想达到的目的是将ADC值采集到后写入文件
第一次下载的时候可以成功,但是第二次下载进去屏幕就不亮了,必须更改被写入的文件名字才可以亮屏幕
下面是ADC采集的代码
void adcx_measure(INT8U x)
{
u16 adcx;
static int flag_adc=0;
FIL fsrc;
FRESULT tes;
unsigned int bw;
char buf_adc[100];
if(x==1&&(flag_adc==0))
{
adcx=Get_Adc_Average(ADC_Channel_1,10);
flag_adc++;
sprintf(buf_adc,"ADC2:%04d %04d/%02d/%02d %02d:%02d",adcx,calendar.w_year,calendar.w_month,calendar.w_date,calendar.hour,calendar.min);
tes = f_open(&fsrc,"han/ADC8.txt",FA_READ|FA_WRITE|FA_OPEN_ALWAYS);//文件名如果不更改,第二次下载进去屏幕就不会亮
if(tes==FR_OK)
{
tes=f_lseek(&fsrc,fsrc.fsize);
tes=f_write(&fsrc,buf_adc,strlen(buf_adc),&bw);
f_sync(&fsrc);
}
f_close(&fsrc);
printf("%d\r\n",adcx);
OSTimeDlyHMSM(0,0,0,1000);
}
else if(x==2)
{
adcx=Get_Adc_Average(ADC_Channel_8,10);
printf("%d\r\n",adcx);
OSTimeDlyHMSM(0,0,0,100);
}
else
{
adcx=Get_Adc_Average(ADC_Channel_9,10);
printf("%d\r\n",adcx);
OSTimeDlyHMSM(0,0,0,100);
}
}
|
|