作者:祁星晨
概述
《戰(zhàn)爭雷霆》提供了一個非常詳細(xì)和個性化的載具駕駛體驗,使玩家可以駕駛數(shù)千種不同型號的海陸空載具,在空戰(zhàn)模式,模擬真實物理環(huán)境狀態(tài)下的飛行參數(shù)是需要及時獲取的,PC端界面的局限性,不便直觀的查看,因此萌發(fā)了利用ART-PI制作一款可方便查看飛行時儀表數(shù)據(jù)外設(shè)的興趣。
開發(fā)環(huán)境
RT-Thread版本:RTT-nano 3.1.3
開發(fā)工具及版本:MDK v5.33 CubeMX v6.1.0
RT-Thread使用情況概述
內(nèi)核部分:調(diào)度器,互斥量。
調(diào)度器:創(chuàng)建多個線程來實現(xiàn)不同的工作。
互斥量:用來同步線程。
組件部分:無。
軟件包部分:無
硬件框架
ST-Link串口部分接收來自PC的數(shù)據(jù),4.3寸顯示TouchGFX UI。
軟件框架說明
軟件框圖
軟件流程圖
WarThunder數(shù)據(jù)解析任務(wù)負(fù)責(zé)解析來自PC串口通信的飛行數(shù)據(jù),TouchGFX UI任務(wù)負(fù)責(zé)顯示數(shù)據(jù),Main任務(wù)中循環(huán)blink板載LED
軟件模塊說明
WarThunder數(shù)據(jù)解析任務(wù) 簡單的string.h 解析,自定義格式幀
TouchGFX UI任務(wù)均由designer設(shè)計
演示效果
視頻觀看:
比賽感悟
紙上得來終覺淺,絕知此事要躬行。陸游的這首詩,完美的詮釋了我在這次比賽中的收獲。
時代的發(fā)展,MCU的性能也越來越強,萬物互聯(lián)的需求也愈加強烈,使用RTOS來實現(xiàn)物與網(wǎng)的鏈接,是時代發(fā)展的潮流,通過綜合對比,我選擇了國人自主的 RT-Thread。
首先要感謝RT-Thread和電路城,幫助我克服了沒有時間做東西的困難,以及怎么樣用最少的時間做出有意思的東西,結(jié)果不重要,比賽的deadline才重要,一定程度上克服了我拖拖拉拉的習(xí)慣,比賽過程中,學(xué)習(xí)到了一是必須要靠自己,靠自己,靠自己,二是多百度,多百度,多百度,三是要仔細(xì),要仔細(xì),要仔細(xì),四是多嘗試,多嘗試,多嘗試,重要的事說三遍。收獲了晚上調(diào)試的快樂,收獲了大佬們的贊,收獲了玩游戲和比賽的雙重快樂。
通過 RT-Thread官網(wǎng)上的文檔中心,我學(xué)習(xí)了 多線程及其調(diào)度、信號量、郵箱、消息隊列、內(nèi)存管理、定時器等,學(xué)完之后,有種感覺就是看過了,我都懂,但是感覺把這些都融合不起來,通過這次比賽的項目實踐,這些知識點已經(jīng)全部融會貫通,我對RTOS也有了全新的認(rèn)識。
最后感謝主辦方提供了這么好的一個平臺,不僅能展示自我,也能學(xué)到很多知識,還要感謝論壇上那些解決我問題以及制作軟件包的大佬,希望有朝一日我也能給開源社區(qū)貢獻(xiàn)一份自己力量。