最近很忙,收到板子后一直沒(méi)抽出時(shí)間來(lái)搞一下,趁著五一假期看到了之前一篇小虎寫的【GD32F310開發(fā)板試用】可無(wú)限擴(kuò)展的軟件定時(shí)器MultiTimer移植 聯(lián)想到自己最近在做的項(xiàng)目,看一下能不能移植使用一下,首先對(duì)小虎表示感謝。
先說(shuō)一下我的需求,首先要在裸機(jī)上實(shí)現(xiàn)基于離散傅里葉變換的特征信號(hào)識(shí)別,因?yàn)椴蓸狱c(diǎn)是864不是基4的,沒(méi)法用快速傅里葉變換。對(duì)時(shí)間的要求較高,但是有一個(gè)對(duì)時(shí)間要求更高的需求故障判斷。
為了保障故障判斷功能模塊,工程大量采用狀態(tài)機(jī),對(duì)于涉及技術(shù)的過(guò)程,沒(méi)計(jì)算兩三步就需要狀態(tài)機(jī)跳出,對(duì)于顆粒度如何劃分只能通過(guò)實(shí)際的測(cè)試進(jìn)行調(diào)試。
看到MultiTimer猜想是否可以在裸機(jī)上實(shí)現(xiàn)任務(wù)的自動(dòng)切換。下面直接基于小虎的工程進(jìn)行移植,但是發(fā)現(xiàn)MultiTimer文件夾沒(méi)有文件,從github上Load下載后進(jìn)行測(cè)試分析。
安裝pack存在如下問(wèn)題:
別人說(shuō)MDK版本太低導(dǎo)致,但是我的MDK是正版只支持到5.16a無(wú)法進(jìn)行升級(jí)。也在微信群里找到了解決辦法
按照該方法可以完美解決。
但是分析開源工程發(fā)現(xiàn)可能也無(wú)法滿足我項(xiàng)目的需求,首先是該開源工程存在一個(gè)callback占用時(shí)間過(guò)長(zhǎng)時(shí),會(huì)阻塞其他callback任務(wù)的執(zhí)行,而我的工程設(shè)計(jì)大量float以及double的計(jì)算會(huì)非常消耗時(shí)間,時(shí)間切片還是得自己進(jìn)行,無(wú)法做到系統(tǒng)級(jí)別的自動(dòng)任務(wù)管理。
審核編輯:劉清
-
軟件定時(shí)器
+關(guān)注
關(guān)注
0文章
18瀏覽量
6778 -
狀態(tài)機(jī)
+關(guān)注
關(guān)注
2文章
492瀏覽量
27614 -
GD32F3
+關(guān)注
關(guān)注
0文章
11瀏覽量
3858
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論