過去幾年我最大的遺憾就是不會軟件編程,作為一個資深板農,無法親手讓自己設計的硬件跑起來,那種心情是非常難受的。
自去年底樹莓派基金會發布第一顆自己設計的IC - RP2040以及基于RP2040的核心模塊PICO以來,從性能、靈活性、價格上看這是一顆會迅速火起來的器件,于是第一時間投入其中,于春節期間親自設計了一款基于PICO的外設擴展板(當時還沒有拿到Pico模塊),并在電子森林平臺發起了幾次活動,迅速匯集了很多優秀的開源項目資源。
看好RP2040/Pico的原因不僅是因為樹莓派強大的生態會迅速推起這顆器件的應用(現在海外知名網站上的各種基于RP2040的板卡和開源項目資源可以證明這一點),更是因為它的高性能、PIO的靈活性 + 對MicroPython的支持。
對我,PIO的靈活性可以在很多場合實現FPGA能實現的功能;而MicroPython這種優雅、易學易用的編程語言給我了很大的自信心。
前幾天我看到一個小伙用Pico + 16顆電阻設計的任意信號發生器,
哇,RP2040太強大了!雖然自己不會編程,但花了一個下午竟然將這位小伙的代碼移植到我自己設計的板子上,在示波器上看到了他產生的這些波形。
由此我在想,既然它能做任意波形發生器,為何不基于我們現有的梅林雀口袋儀器的框架用RP2040也做一款高速的信號發生器呢?
采用RP2040 + 高速DAC + 240*240的彩屏(ST7789控制器)制作一款便攜式信號發生器?用KiCad迅速設計了一塊板子:
做信號發生器的小伙只是提供了DDS部分的代碼,并沒有按鍵的控制以及菜單、波形的顯示,要知道自己從頭設計一個LCD上顯示的控制界面并用按鍵操作起來,對我這種菜鳥來講那是天方夜譚,估計要再苦練半年也未必能寫出來。
直到,我看到另一篇文章,另一個小伙基于前面小伙的成果,再加上一款Micro-GUI就做成了下面的這個儀器:
太好了,我這個不會寫代碼的菜鳥頓時自信心來了,相信用不了多久,我也能自己DIY出一個高性能的掌中信號發生器。
于是我學習了一下Micro-GUI,太強悍、太好用了,必須給大家推薦!!!
它支持320*240以下分辨率的屏幕,無論我們硬禾常用的240*240的彩色LCD還是128*64/128*32的OLED顯示屏都不在話下
它支持5個按鍵的輸入或者2個按鍵+一個旋轉編碼器的輸入,感覺就是為我們精心定制的!
它不僅支持RP2040/Pico還支持ESP32等等,因為是基于標準的MicroPython,未來任何支持MicroPython的處理器都可以用它
是不是很酷?很容易?
在Peter的Github頁面上有非常詳細的使用文檔,我會逐步根據自己的使用體會匯總并完善在電子森林的百科頁面。
并提供了各種信息的展示方式,比如繪制各種圖形,并提供了豐富的案例,配合按鍵的控制:
很多人都知道的LVGL,也有國外的工程師移植到Pico上面,但這需要用C編譯一下,至少我搞不定。而這個MicroGUI則可以輕松搞定,而且功能強大到應有盡有,配合DMA的屏幕操作,執行起來非常流暢。
應該不需要LVGL了。
另外,如果你使用的場景不需要這么多按鍵,可以使用消耗更少資源的nano-GUI,也是這位老先生寫的。
他的Github頁面:
Micro-GUI:https://github.com/peterhinch/micropython-micro-gui
Nano-GUI:https://github.com/peterhinch/micropython-nano-gui
在他的項目頁面還有很多代碼資源可以學習、使用。
向這位退休的大神致敬!
有了這些巨人的肩膀,我們可以看得更遠、走得更快!MicroPython的出現對于嵌入式系統的學習和應用一定會起到巨大的改變,而開源Micro-GUI則給了我們更多的可能,即便在最終的產品中,也會大大節省開發的時間。
責任編輯:haq
-
FPGA
+關注
關注
1630文章
21759瀏覽量
604328 -
嵌入式
+關注
關注
5087文章
19148瀏覽量
306158 -
代碼
+關注
關注
30文章
4803瀏覽量
68750
原文標題:嵌入式系統入門(4)- 菜鳥都能玩轉的MicroPython開源圖形界面:Micro-GUI
文章出處:【微信號:xiaojiaoyafpga,微信公眾號:電子森林】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論