M5CoreS3:開啟智慧創新之旅

M5CoreS3 相對於一般的物聯網開發板,更接近一個成熟應用產品的狀態,能夠有效幫助開發者節省前期硬體設計階段,讓更多的注意力集中到功能的創意上。

M5CoreS3 的內部主控核心採用了 ESP32-S3,同時整合 Wi-Fi、藍牙 USB-OTG 等眾多周邊,同時板載了 16MB Flash + 8MB PSRAM 的大記憶體組合,這樣的記憶體組合使開發人員在進行一些使用者介面繪製或是音訊資料處理時,變得更加遊刃有餘,不再為有限的記憶體資源擔心。

接下來,就由來自 M5Stack 的高階應用工程師,郭少翔給大家詳細介紹一下這款高整合、可程式化控制器—— M5CoreS3。

-主講嘉賓:-
郭少翔,M5Stack 高階應用工程師
充滿好奇,“HelloWorld”。


访谈视频在这里 -
↓↓↓

Cover_00




M5CoreS3 介紹

人機互動方面 M5CoreS3 正面嵌入了一塊 2 英寸 IPS 電容觸控式螢幕,用於資訊顯示和輸入互動,同時整合雙聲道麥克風輸入和高傳真揚聲器功率放大器,除了實現音訊錄製和播放,還可以做為語音助手接入 Home Assistant,實現智慧家庭聯動。

以下示範點亮 RGB 燈:


點亮 RGB 燈示範

內部還整合了 6 軸慣性測量單元姿態感測器,可以解鎖更多對話模式。


內部整合 6 軸慣性測量單元姿態感測器

螢幕下方整合 30 萬像素攝影機和接近感測器,你可以基於它實現人臉識別、手勢識別等應用。


螢幕下方整合 30 萬像素攝影機和接近感測器

M5CoreS3 內建了獨立的 RTC 時鐘,晶片除了用於斷電情況下進行精準計時,還能實現低功率消耗定時喚醒。


內置獨立 RTC 時鐘

機身側面 TypeC 介面除了用於程式下載以外,還支援 USB 功能開發,裝置可以模擬成 USB 主機或是周邊,例如鍵盤、MIDI 裝置、儲存裝置,甚至是 USB 網卡等,而且大多數的裝置類型都在晶片官方 Github 有現成的範例程式,能夠節省不少的開發時間。


機身側面 TypeC 介面支援 USB 功能開發


裝置可以模擬成 USB 主機或是周邊

整機在供電上也非常靈活,外部支持 9-24VDC 供電或 5V Type-C 供電,裝置內建了 500 mAh 鋰電池,並且提供獨立的電源開關。在一些特殊場景下,開發人員也可以透過這個開關完全關掉裝置供電,來減少不必要的電能損耗。


外部支援 9-24VDC 供電或 5V Type-C 供電裝置內建 500 mAh 鋰電池

功能拓展方面,M5CoreS3 提供了 3 組用於外接拓展裝置的 Grove 介面,不同的介面顏色,定義了不同的功能映射。

紅色的為 I2C 通訊協定,很多資料獲取相關的感測器可能會用到該介面,它允許你同時掛載多個不同位址的 I2C 裝置到同一個介面上,能夠有效節省 IO 資源。

藍色的為 UART 介面,一些涉及指令通訊控制的模組,例如 NBIoT 模組、LoRa WAN 模組,將會使用到該介面,同時你還可以外接 RS485 或 RS232 模組來進行電平轉換,以適應不同類型的外接裝置。

黑色則為 GPIO 輸入輸出,可用於數位訊號或類比訊號的輸入輸出,以實現例如繼電器控制、燈光控制、按鍵輸入、ADC 訊號輸入採集等功能。


M5CoreS3 提供 3 組用於外接拓展裝置的 Grove 介面,不同的介面顏色,定義了不同的功能映射

除此之外,主控底部的 2x15 排針母座,對部分 IO 進行了導出。可搭配 M5Stack 模組系列,透過堆疊方式進行功能拓展,就像堆疊積木一樣,只需要把不同功能的模組層層疊加,就能完成應用硬體的搭建工作。


可搭配 M5Stack 模組系列,透過堆疊方式進行功能拓展

結構方面,M5CoreS3 的底座在設計時,考慮到不同用戶的使用場景,在固定方式上提供了很多選擇,它可以是螺絲孔固定、掛耳固定、滑軌固定、LEGO 結構件固定,可以很方便的安裝到各種場景之中。


底座可以是螺絲孔固定、掛耳固定、滑軌固定、 LEGO 結構件固定

下面介紹一下軟體發展環境,M5CoreS3 支援多種開發方式,有 M5Stack 官方自行研發的圖形化開發平臺 UIFlow;也可以是創客們熟悉的 Arduino IDE,以及官方推出的 ESP-IDF 等,你可以根據應用的複雜程度進行選擇,總有一款適合你。


M5CoreS3 支援多種開發方式

本期的分享,我們將以 ArduinoIDE 開發方式舉例,實現溫濕度節點採集,並實現資料讀取和顯示,使用到的硬體有 M5 CoreS3(K128)Unit-ENV(U001-D) 溫濕度感測器。


M5 CoreS3(K128) Unit-ENV(U001-D) 溫濕度感測器

首先瀏覽 Arduino 官方網站下載並安裝 Arduino IDE,打開 IDE 後,進入首個選項設置,添加 M5Stack 開發板管理 URL:https://static-cdn.m5stack.com/resource/arduino/package_m5stack_index.json


添加 M5Stack 開發板管理 URL

搜索 M5Stack 開發板管理,並進行安裝


搜索 M5Stack 開發板管理

在函式庫管理中安裝 M5 CoreS3 函式庫


在函式庫管理中安裝 M5 CoreS3 函式庫

安裝 M5 Unit-ENV 感測器函式庫,同時安裝其相關的依賴函式庫


安裝 M5 Unit-ENV 感測器函式庫

在工具功能表中切換開發板選項為 M5 CoreS3


切換開發板選項為 M5 CoreS3

接下來是程式碼運行部分,導入 CoreS3 標頭檔,M5Unit-ENV 標頭檔,調用 CoreS3 begin 函數,初始化整機裝置,並調整顯示的字體與大小

初始化溫濕度感測器,


初始化溫濕度感測器

在主迴圈中獲取溫濕度氣壓數值更新,並將其顯示至螢幕


在主迴圈中獲取溫濕度氣壓數值更新

接下來是程式編譯和上傳部分,先將 M5 CoreS3 透過 USB 線連接至電腦,長按裝置的重置鍵,等待綠燈亮起後則表示進入了下載模式。此時在 IDE 中選中對應埠,點選左上角的上傳按鈕,等待程式編譯與上傳,完成上傳後,再次重置裝置,可以看到裝置已經讀取到了當前溫濕度資料。



程式編譯和上傳部分 1-2

另外,M5 CoreS3 函式庫中還提供了其他自帶周邊的範例程式,能夠幫助你快速的熟悉這款裝置並進行二次開發。


M5 CoreS3 函式庫中提供的其他自帶周邊範例程式

M5 CoreS3 不只是一款硬體產品,它更是⼀種新穎的應用開發載體,有別於一般的從 PCB 繪製、到測試、再到軟體發展的開發流程,M5 CoreS3 能夠一步到位的提供一個完善且成熟產品形態,幫助你的創意快速落地。

或許你的創意到產品落地,差了僅僅只是一個 M5 CoreS3,本期的產品分享就到這裡,更多好玩優質內容,我們下一期見。

相關產品