看一下是不是一直在初始化时间
我是进行判断在执行的
所以要清理缓存,要不然也是一直初始化时间
if(CompStr1("#0,12,0,0,#",UART1_RX_BUF,100))
{
memset(UART1_RX_BUF,0,MAX_UART1_RX_SIZE);
SetTime_flag=1;
RTC_SetTime();
}
这个函数可以判断数组里是否有你需要的字符串,也可以返回是第几个
i = CompStr1("+CSQ: ",UART1_RX_BUF,100);
这样就是判断第几个开始符合对应的字符的
u8 CompStr1(char *haddr,char *source,u8 LengerLimit)
{
u8 i,j,k;
i=0;
while(haddr[i]){i++;}
//i = strlen(haddr) - 1;
j = 0;
while(j<LengerLimit)
{
k = 0;
while((haddr[k]==source[j])&&(k<i))
{
k++;
j++;
}
if(k==i) return(j);
j++;
}
return(0);
}