|
知道個什么原理,就好辦了。寫相關(guān)的串口程序。
$GNZDA,152547.000,10,06,2022,00,00*4D
先檢查收到的是不是"$"字符,是的話計數(shù)器清零,用計數(shù)器做下標(biāo)存接收數(shù)組,再接收五個字符,看看數(shù)組內(nèi)是不是接收了$GNZDA,是的話繼續(xù)存入數(shù)組。不是就不管它,讓串口接收程序空轉(zhuǎn)。
等收到換行(0X0A),就可以關(guān)了串口中斷,進(jìn)行數(shù)據(jù)解析,更新DS1302了。當(dāng)然,里面要做時區(qū)處理,每天的16:00:00~24:00:00(UTC),也就是北京時間0點到早上8點要做加一天處理,還有如果是月尾大小月30天31天,2月的閏年閏月2829,滿年要加年之類的日期處理。如果要更精確那更多的處理。因為數(shù)據(jù)出來是最好要加1秒是比較準(zhǔn)的,要不會慢1秒。而加1秒又要做什么滿60秒分鐘加1等等判斷。
接口程序做好后就算沒有接GPS模塊,也可以用串口助手輸入相應(yīng)的一行字符調(diào)時,如下圖。
2022-06-11_014420.jpg (67.73 KB, 下載次數(shù): 181)
下載附件
2022-6-11 02:02 上傳
|
|