??Easyio 是一款適配于ESP-IDF框架的開源驅動庫,以支持ESP32的簡便開發,目的是簡化樂鑫ESP-IDF開發框架的使用難度,(真要方便的話,有現成的Arduino和Platform可以用,不過實在迫于作業要求,有的開源東西不讓用,同時便于對接FAE,于是就有了 Easyio)
功能上,Easyio 已初具雛形,目前涵蓋如下的驅動:
- LED、GPIO(+中斷)
- 按鍵(佇列方式,數目幾無上限)、觸摸按鍵
- ADC(8通道)、DAC(2通道)
- LEDc、PWM(+輸入捕獲)、PCNT(編碼器計數)
- RMT紅外、RMT-WS2812B-RGB燈帶
- UART、RS485
- I2C_TOOLS、I2C_MPU6050、I2C_AHT20
- SPI液晶屏(支持
ST7735、ST7735S、ST7789V、ILI9341、ILI9488、ILI9481、ST7796S、HX8357C8種IC,涵蓋3.5寸以下的絕大多數液晶模組) - SPI_AS5047P/TLE5012B 磁編碼器,
- FT5/6xxx電容觸摸屏,
- NVS、FATFS、SD_CARD(SPI模式,1/4線SDIO模式),
??借助ESP-IDF強大的框架底層,Easyio在此基礎上對其API進行了二次封裝,并添加了許多常用外設芯片的驅動代碼,做到了一行API一個外設,一段代碼一個功能,完善庫的同時,給每個外設都提供了測驗Demo,每個Demo都提供了README檔案,并在.c.h原始碼保留了大量注釋,夸張點說注釋真的要比代碼多,純小白也能用的懂,
??目前已提供包含以上功能的32個Demo,未來打算繼續加入jpeg解碼庫、OTA、LVGL、WIFI/BLE、有線以太網和一些網路通信的Demo,豐富庫的應用范圍,
如何使用 easyio
1、ESP32開發環境搭建
??ESP32 ESP-IDF開發環境搭建,Windows下基于ESP-IDF | Cmake | VScode插件的 ESP32 開發環境搭建
2、獲取Easyio庫原始碼+Demo
Github原始碼倉庫:easyio-lib-for-esp32
3、Easyio庫匯入到工程中
- 庫的匯入方式例外簡單,直接將檔案夾
easyio_lib,拖入到工程的components檔案夾下, - 并包含頭檔案
#include "easyio.h",即可使用Easyio的全部功能,

4、運行Easyio的測驗Demo
Easyio庫中,給各個.c.h模組都配套了測驗Demo,- 打開
VSCode,檔案-打開檔案夾,選擇要運行的測驗Demo目錄,

- 打開測驗工程后,左下角,點擊圖示,來
選擇埠、編譯、下載、打開監視器除錯設備, - 所有的操作均可在VSCode上一站式進行,

5、README幫助檔案的使用,注釋的使用
- 每個
Demo都配有細致的README.md,點擊VSCode右上角的打開側邊預覽即可查看說明檔案, README.md通常包含有:例程簡介、硬體連接、運行現象、關鍵函式(API用法)、注意事項,Easyio驅動單一外設時,大多數只要一行代碼就能解決問題,小但不簡單,


- 考慮到博客的教程可能跟不上原始碼更新速度,于是干脆將注釋寫的詳細些,這滿螢屏的注釋、規范的格式,請把細致打到評論區,即使沒有正兒八經的說明檔案,光看注釋也能將用法理解個通透,

6、清理工程,減小體積
??cleanBuild.bat 為編譯檔案的清理腳本,滑鼠雙擊運行,可洗掉同檔案夾下所有工程的編譯檔案,一般一個工程的大小在幾百KB,但編譯后會生成100多MB的 build 檔案,清理后可大大減少存盤占用空間,每次push原始碼前先運行下此腳本,清理所有工程,方便同步到 Github 倉庫,
注意
Easyio建議搭配ESP-IDF的V4.2版本使用,V4.3版本與我的Easyio驅動庫有兼容性問題,發現很多奇怪現象,不單單是編譯不通過的問題,有些能編譯但在硬體上運行報錯,就很離譜,而這些問題在V4.2上則不存在,鑒于V4.2已經對ESP32提供了足夠的支持,V4.3著重添加了ESP32-S2/C3的功能,而自己的easyio庫暫時沒有兼并ESP32-S2/C3的精力,于是推薦使用V4.2版本,
小結
??有Easyio如此神器,在今后的ESP-IDF開發程序中可謂如魚得水、如虎添翼,節省掉重寫底層框架和調Bug的時間,必能更加游刃有余的完成應用層的作業,
??看都看到這兒了,還不多多star、點贊收藏,?乛?乛? 歡迎評論區留下您的交流意見,
??開發板計劃也在行程中,之前做了一版偏向于HMI的設計,出于外觀考量介面都留在了背面,導致留出的介面較少且指示意義不強,對開發來講并不友好,下一版會偏向傳統設計,平鋪放置,但功能毫不含糊,Demo提到的外設它都會有,硬體資料會在驗證無誤后同步上傳,
相關教程
??本專欄內容:
??ESP32開發環境搭建:ESP32 ESP-IDF開發環境搭建,Windows下基于ESP-IDF | Cmake | VScode插件的 ESP32 開發環境搭建
樂鑫ESP-IDF 在線幫助檔案
ESP-IDF 快速入門
ESP-IDF API編程指南
ESP32 硬體設計參考
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/299036.html
標籤:其他
