拒絕平庸,以程式設計師的名義定義新桌面!

2022-09-15 02:33:09 字數 2337 閱讀 7581

現代人群與各類電子終端的接觸時間越來越長,桌面作為經常伴隨的環境,成為了我們視線和注意力最集中的一角,說是一片個人的小天地也不為過。

」hello-iot 創意桌面擺件」專注打造個性化桌面!

桌面成了我們經常伴隨的環境,桌面環境也在潛移默化影響著我們,好的桌面環境會給我們帶來更好的感受。基於這些考慮,做出了這樣的作品。

(1)成本削減

(2)適應更多場景

(3)降低開發難度

首先通過xframe微控制器軟體框架來實現硬體底層和系統抽象層來適配tencentos tiny。這樣的話就可以在不修改或者最小修改上層應用**的前提下適應我們不同的微控制器和硬體平台,以及rtos。

其次通過platform平台適配層,通過虛擬的方式將微控制器應用放到windows或者linux上執行,我們這裡相當部分的應用開發便是放到windows上進行虛擬開發的,在電腦上虛擬了lcd/觸控/按鍵/spi flash/檔案系統/24c02等。

下圖展示了"hello-iot 桌面擺件「的裝置端軟體層次結構圖:

裝置端微控制器的軟體層次結構圖

github上的tencentos tiny專案下,開發者們貢獻了很多開發板的tencentos tiny的移植例程,我使用的微控制器是stm32f103vet6,所以我直接參考整點原子的工程進行了移植。

把hal庫改成了標準庫,gui需要的記憶體比較大,又把tencentos tiny的堆疊大小由0x6000改成了0x1000,其它的保留不變,移植就完成了,tencentos tiny的移植非常簡單便捷。

gui元件框架圖

我們這裡使用的是一塊以stm32f103vet6為主控的微控制器硬體平台,帶有esp8266和jdy32藍芽串列埠模組,以此實現聯網和輸出除錯,w25q128 flash晶元作為字型檔和素材儲存,sd卡作為檔案系統和桌面電子相簿相片的儲存。

硬體pcb加上我們的lcd面板基本就可以實現最小功能了,然後搭配了乙個塑料支架,可調仰俯角,方便實用。lcd面板使用isp全視角面板,即使擺得很偏也能保持驚豔的**效果。

電路原理圖

pcb3d版圖

」hello-iot創意桌面擺件」前檢視

因為相當部分人沒有製作硬體的經驗,所以借助便宜的第三方硬體方案可能是更好的選擇。這裡選擇國產某tkm32f499,這個晶元帶有8mb的ram和240mhz的主頻。官方硬體板卡成本**相對來說很便宜。

(1)tencentos tiny的移植

因為這款mcu的是基於m4核心的,github上也正好有正點原子f429開發板的tencentos tiny移植例程。只要是核心一樣,直接複製貼上檔案就可以移植,所以移植tencentos tiny到這個平台是有可能的。

(2)板卡自帶esp8266模組

(3)240mhz的主頻和8mb記憶體

可以彌補當前stm32刷屏不流暢的缺點,實現更多的功能。

舉乙個例子,作者本人在本次比賽之前幾乎沒有接觸過任何網路開發,也沒接觸過任何物聯網雲平台,連最基本linux下的socket通訊demo和esp8266 sdk開發都沒有接觸過,更不要說mtqq之類的了,此前也就接觸過微控制器串列埠通訊,在物聯網行業連小白都算不上。

另外,tencentos tiny的多平台支援非常全面,各個廠商的多個系列晶元還有官方板卡的例程工程應有盡有,尤其是stm32的支援連正點原子的開發板都適配了,給開發者帶來了極大的便利。

程式設計師雜記 以顯擺的名義!

我是上中專的,1997年因為中考落榜險些倫落街邊小店去纏了電機。還好母親大人心疼,讓我去打字影印店學了打字。那幾個月是改變我一生命運的契機,我的no.1 一位美麗的女士 雖然十幾年過去了,因為一些原因,我沒有再見到過她,但是從內心裡感謝她教會了我五筆打字,認識了什麼是作業系統,辦公系統等,雖然當時只...

程式設計師雜記 以顯擺的名義!

我是上中專的,1997年因為中考落榜險些倫落街邊小店去纏了電機。還好母親大人心疼,讓我去打字影印店學了打字。那幾個月是改變我一生命運的契機,我的no.1 一位美麗的女士 雖然十幾年過去了,因為一些原因,我沒有再見到過她,但是從內心裡感謝她教會了我五筆打字,認識了什麼是作業系統,辦公系統等,雖然當時只...

程式設計師雜記 以顯擺的名義!

我是上中專的,1997年因為中考落榜險些倫落街邊小店去纏了電機。還好母親大人心疼,讓我去打字影印店學了打字。那幾個月是改變我一生命運的契機,我的no.1 一位美麗的女士 雖然十幾年過去了,因為一些原因,我沒有再見到過她,但是從內心裡感謝她教會了我五筆打字,認識了什麼是作業系統,辦公系統等,雖然當時只...