STM32單片機可以用來做人機交互界面嗎?

-Travel-


按照提問的內容,首先要知道什麼是人機交互,

人機交互,就是人與機器設備進行信息數據交流,機器通過數碼管,顯示屏等輸出參數等信息,人通過按鍵,觸摸等方式輸入設置給機器。

接著說stm32 是一款功能強大的cortex體系的mcu,這個品牌的單片機內核從M0到M7都有,有豐富的外設。

我們以Stm32f1系列的單片機為例,講解如何實現人機交互

第一個方案 stm32帶多個Uasrt串口,所以可以選用市面上 串口屏模組,常見的4.3寸,5.6寸,7寸等都有,考慮到人對機器的信息輸入,可以屏模組自帶觸摸,觸摸分電阻式觸摸和電容式觸摸,電阻觸摸屏 特點價格便宜。用戶體驗檢查,電容觸摸貴,但響應迅速,用戶體驗好。

目前做的比較好的串口顯示屏模組,一般都配有上位機編輯軟件,可以很方便的在電腦上編輯界面,快速實現人機界面功能的設計。

如果不用觸摸方式進行信息輸入,可以在stm32設計幾路獨立按鍵,滿足用戶選擇與參數需求

整體來講,這個設計思路,特點是成本較高,但開發難度較小,只需要stm32通過串口與已經設置好界面的顯示屏模組進行通信就能實現人機交互。

第二種方案

利用stm32單片機自帶的Fsmc接口驅動TFT彩屏,Fsmc原是stm32的一種存儲併線接口,那用在彩屏驅動時,在硬件設計上就需要考慮佈線等長,還要做防靜電等干擾設計

在軟件上。需要使用Fsmc驅動時序,點亮彩屏,然後需要在stm32內部實現字庫與圖片的時編解碼,所以代碼編寫起來,較為複雜,如果簡單的圖片和字體可以考慮此種方案,同時bom成本會比較便宜。

人機交互,如果顯示方式選用數碼管,則更為簡單,做幾路獨立按鍵,對機器進行控制與操作,數碼管顯示當前狀態與參數。也是更為簡單,也行之有效的人機交互方式

按照提問,stm32肯定可以實現人機交互,而且不止一種,還有很多其他的方式,如串口輸出打印在電腦顯示屏等等。具體怎麼選擇,就要根據實際項目對成本,任務交期等要求要衡量。

以上是我對本提問的回答

歡迎大家留言,轉發,關注,私信

謝謝


科技電小二


可以,人機交互的話,建議去學學stemwin(emwin的stm32版本,免費實用,前身是大名鼎鼎的ucgui)。是專門針對stm32開發板的一款免費的lcd交互方案。可以實現gui設計以及觸摸效果。


分享到:


相關文章: