1. 程式人生 > >ESP32F--階段學習小結

ESP32F--階段學習小結

前言

ESP32F是一個帶有WIFI、藍芽、音訊的開發板,可以利用這些模組完成例如感測器與服務端、移動端(Android、Linux等)之間的通訊。適合製作開發一些穿戴式的智慧硬體。


模組大綱:

CPU

Xtensa®32-bitLX6 單/雙核處理器,運算能力高達 600DMIPS 448KBROM
520KBSRAM
RTC 中 16KBSRAM
QSPI 最多可連線 4 個 Flash / SRAM,每個 Flash 最大為 16MB
供電電壓:2.2V 到 3.6V
工作電流:平均:80mA
封裝尺寸:18mmx25.5mmx2.8mm
溫度範圍:-40°C~+85°C*

時鐘和定時器

內建 8MHz 振盪器,支援自校準
內建 RC 振盪器,支援自校準
支援外接 2MHz 至 40MHz 的晶振
支援外接 32kHz 晶振,用於 RTC,支援自校準
2 個定時器群組,每組包括 2 個 64-bit 通用定時器和 1 個主系統看門狗 具有次秒級精度的 RTC 定時器
RTC 看門狗

外設介面

12-bitSARADC,多達 18 個通道
2 個 8-bitD/A 轉換器
10 個觸控感測器
溫度感測器
4 個 SPI
2 個 I2S
2 個 I2C
3 個 UART
1 個 HostSD / eMMC / SDIO
1 個 SlaveSDIO / SPI
帶有專用 DMA 的乙太網 MAC 介面,支援 IEEE1588
CAN2.0
IR(TX / RX)
電機 PWM
LEDPWM,多達 16 個通道
霍爾感測器
超低噪聲前置模擬放大器

Wi-Fi

標準:

FCC/CE/IC/TELEC/KCC/SRRC/NCC

協議:

802.11b/g/n/d/e/i/k/r(802.11n,速度高達 150Mbps)
A-PDU 和 A-MSDU 聚合,支援 0.4µs 防護間隔

頻率範圍:

2.4~2.5GHz

Wi-Fi 模式:

Station/softAP/SoftAP+station/P2P

安全機制:

WPA/WPA2/WPA2-Enterprise/WPS

加密型別:

AES/RSA/ECC/SHA

藍芽

協議:

符合藍芽 v4.2BR/EDR 和 BLE 標準

射頻:

具有 -98dBm 靈敏度的 NZIF 接收器
Class-1,Class-2 和 Class-3 發射器
AFH

音訊:

CVSD 和 SBC 音訊


程式設計

  1. 利用Arduino、Eclipse、VSCode等編碼器寫專案程式碼
  2. 編譯檢查程式碼語法等BUG
  3. 匯出二進位制檔案,開發板上電燒寫程式碼,Arduino有便利的按鈕,不過速度可能慢點,也可以利用 ESPFlashDownloadTool 等軟體進行下載韌體。(PS:用Arduino IDE時記得把開發板型號,flash頻率,串列埠號,下載波特率選好)

小結

由於在大創小組擔任的硬體開發的角色,學習了這些知識,感覺硬體程式設計的學習是比較有門檻的。首先至少起步很難,不好上手。需要有的一些準備是:C語言程式碼要熟悉(其中包括一些多文件設計以及要看得懂一些巨集定義),接著就是瘋狂看文件,改例程,除錯。逐漸地就能搞懂一些函式地作用(反正我是這樣來的),接著就是一些感測器的使用。總的來說這學期的學習有長進的地方就是搜尋資料的水平提高了,(面向百度程式設計)。噢,補充一定Github確實要學,試著去熟悉,因為上面的大牛,原始碼,例程確實多,能省去很多功夫。