ESP32 還沒接線,也能先跑程式?小依帶你看懂 Cirkit Designer

小依介紹 Cirkit Designer 瀏覽器電路模擬,桌上另放實體開發板與顯示器

ESP32 還沒接線,也能先跑程式?小依帶你看懂 Cirkit Designer

零件還沒到、桌上也沒有接線工具,ESP32 專題就只能先停著嗎?Cirkit Designer 提供另一種起點:在瀏覽器放上開發板與虛擬元件,先跑程式、觀察輸出,把要驗證的流程整理好,再接上實體硬體。

2026 年 10 月 26 日,Cirkit Designer 創辦人 Austin Small 在樂鑫開發者網站介紹這套 ESP32 模擬架構。本文於 10 月 27 日依平台文件整理,並提出可用於教學的操作與驗證流程;尚未完成平台操作或實體板測試。這篇是社群作者的第一手介紹,並非樂鑫自行推出的新模擬器。閱讀原始介紹。

這則消息,對準備做 ESP32 專題的人有什麼用?

入門時常把幾種問題混在一起:接線有沒有接對、程式有沒有編譯成功、資料有沒有送到畫面,以及網路服務有沒有回應。Cirkit Designer 把電路畫布、程式編輯與模擬放在同一個環境,讓使用者有機會先集中處理其中一段,再逐步加入其他功能。

作者介紹的 ESP32 與 ESP32-S3 模擬器會執行編譯後的韌體,讓程式透過模擬的硬體介面與周邊模型互動。這使得「畫面上有一塊板子」之外,還多了一條可以觀察的程式執行路徑。不過,文件所稱的指令層級模擬,不能直接解讀成整塊實體板的電氣、射頻和效能都已重現。

我的建議是把第一次使用的目標縮小:先完成「輸入變動 → 程式判斷 → 顯示更新」這一個循環。暫時不追求同時接雲端、馬達與多顆感測器,遇到問題才知道該從哪一段開始找。

程式在瀏覽器執行,哪些工作仍會經過後端?

Cirkit Designer 的架構分成兩側。編譯好的 ESP32 韌體與虛擬周邊在瀏覽器內運作;整合式 Arduino CLI 編譯、AI 助手請求,以及通往外部網路服務的流量,仍會使用平台後端。瀏覽器本機模擬,因此不代表整個開發流程都能離線完成。

分清楚這兩側,排錯會容易一些。如果按鈕沒有改變顯示內容,先檢查程式和元件模型;若韌體有執行、外部資料卻沒有進來,就把網路請求、服務回應和資料格式分開查看。官方 Wi-Fi Networking 文件說明,模擬裝置的網路要求會經平台後端轉送到外部伺服器。

Cirkit Designer 的瀏覽器韌體執行、平台編譯與外部網路服務分工
概念架構圖:韌體與虛擬元件在瀏覽器執行,編譯、助手請求與外部網路轉送使用平台後端。

先確認板型,再挑真正能參與模擬的元件

這次原文列出已提供的原始 ESP32 與 ESP32-S3 模擬,將 ESP32-C3、ESP32-C6 列為後續規畫。板卡名稱不能只用「都是 ESP32」概括;晶片架構、周邊和目前模擬支援要一起核對。

以官方 ESP32-S3 支援表為例,Arduino sketch 可使用 GPIO、UART、I2C、SPI、ADC 與 PWM 等功能。Bluetooth、PCNT、TWAI/CAN 尚未支援,睡眠模式也未模擬;RMT 目前只支援發送。若專題的核心是 BLE 配對、CAN 收發或低功耗,就不適合拿這個環境作為主要驗證工具。直接建立 ESP-IDF 專案的支援,文件仍標示為後續功能。

元件庫還有另一層差異:能用來畫電路,不一定能用來跑模擬。官方文件說明,沒有模擬行為的零件仍可能出現在畫布上,但不會產生或回應訊號。挑選時可以使用 Simulation Ready 篩選;碰到不支援的零件,再查看 Find Alternative 提供的候選元件。替代品仍要核對介面與行為,不能只看名稱相近。元件模擬支援說明。

選擇第一個專題時,先問這幾件事
想驗證的內容先確認什麼如何判讀結果
按鈕控制畫面板卡、輸入元件與顯示器都能模擬查看事件、判斷與顯示是否一致
I2C 感測器或顯示器元件模型、位址與程式庫確認通訊流程與資料處理
從網路取得資料平台網路支援與外部服務分開記錄連線、回應和解析結果
電池續航或射頻品質實體電源、板卡與部署環境另用實機量測取得證據

小依的入門練習:先做一個能對照輸入與畫面的專案

如果目的是教學,我會從一塊 ESP32-S3、一個模擬就緒的 I2C 顯示器,再加一個按鈕開始。先完成顯示與按鈕切換,再加入可調整輸入的感測器模型。以下是建議的練習設計,並非已完成的實測教案。

  1. 先寫出預期行為。例如開機顯示首頁,短按切換頁面,輸入超過門檻時顯示提醒。把這三件事寫清楚,比一開始要求做出「完整智慧監控系統」更容易檢查。
  2. 建立最小電路。挑選支援的板卡與元件,逐一記下使用的介面、腳位和位址。不要一邊換顯示器、一邊改程式庫,否則出錯時會同時多出幾個變因。
  3. 先確認程式真的在跑。加入開機、按鈕事件與顯示更新的序列輸出,觀察錯誤發生在編譯、啟動還是互動階段。只有編譯成功,還不足以判斷按鈕流程已經正確。
  4. 刻意測試邊界。把輸入調到門檻附近、連按幾次按鈕,確認顯示會不會停在舊值;若加入網路,再測回應失敗時應顯示什麼,避免把舊資料一直當成新資料。
  5. 保存能重建的版本。記下板卡、元件模型、程式庫和測試條件,保留一份正常運作的版本,再開始增加功能。上課時,這份紀錄也能幫助不同組別重現同一個問題。

如果讓平台助手協助建立專案,可以先給它一段具體需求,而不是只說「幫我做一個很厲害的感測器」。例如:

使用目前支援模擬的 ESP32-S3 和 I2C 顯示器。先列出選用元件、位址、腳位與程式庫,再實作按鈕切換畫面。序列輸出要能看出開機和按鈕事件;請把需要實機確認的項目另外列出。

這是一份需求範例,不是可直接貼上編譯的程式。當助手提出接線或程式修改時,仍要回到選用板卡與元件的文件逐項核對。

想試聯網,可以從官方 ISS 範例看資料怎麼走

作者提供一個 ESP32-S3 與 ILI9341 顯示器的國際太空站追蹤範例:韌體取得外部 API 資料,再把資訊畫到模擬顯示器。這個專案有用的地方,是讓使用者同時觀察請求、資料解析與畫面更新。可以從原文開啟 ISS Space Tracker 範例;開啟或編輯權限以平台當時介面為準。

模擬網路提供名為 CirkitWifi 的虛擬開放式基地台。這能協助測試支援的網路程式流程,但無法驗證現場 Wi-Fi 的訊號、漫遊或 WPA2/WPA3 連線。外部服務由後端轉送,因此也別直接把程式中的 localhost 當成你桌上電腦的 MQTT Broker。

帶學生觀察範例時,可以先記下資料更新時間,再暫停或改變一個條件,討論畫面應如何處理失敗。若使用官方 ISS 範例,也要分清楚它顯示的是即時資料,還是標示為示意的 DEMO 模式。這種「先知道自己正在看什麼資料」的習慣,往後做環境監測同樣用得上。

新增一個感測器模型,還需要檢查哪些內容?

Cirkit Designer 允許建立自訂模擬元件。LCD 教學目前標明,啟用自訂元件的模擬需要 Standard Membership;開始前應核對帳號方案與當時權限。官方的 I2C LCD 教學展示了通訊行為、顯示狀態與畫面呈現需要一起處理,也記錄了字元間距與數字顯示的修正過程。把元件放上畫布,只是工作的一部分。

如果往後要替店裡販售的模組建立教材,我會先準備一份「模型應該怎麼回應」的規格:供電與介面是什麼、位址如何設定、讀取後會回傳幾個位元組、哪些數值範圍才合理、異常時應如何呈現。接著用已知輸入對照預期輸出,並記錄哪些電氣或時序細節尚未涵蓋。這是建模的驗證工作,不能只靠畫面有反應就認定完成。

從瀏覽器搬到實體板,把驗證接續下去

小依對照筆電上的虛擬電路與桌上的開發板,規畫實體驗證
虛擬元件的回應與實體硬體的表現,需要分階段對照。圖中並非平台操作截圖或接線圖。

到了實體接線階段,先拿當前板卡的原廠腳位圖與模組文件對照。相同晶片的不同開發板,仍可能有不同的板載 LED、接腳配置和周邊占用;範例裡的腳位號碼要逐一確認。

接著檢查供電與訊號電壓、共地、I2C 拉高條件及位址,再用最少元件燒錄。先看開機和序列輸出,確認顯示器能正常初始化,最後才把感測器、外部網路或負載控制逐項加回來。這樣即使實機和模擬的行為不同,也比較容易找到差異從哪裡開始。

建議留下的模擬與實機對照紀錄
檢查項目模擬階段記錄實機階段補上
程式環境板型、程式庫、正常版本核心版本、燒錄設定、開機日誌
輸入與顯示已知輸入、預期畫面、錯誤處理實際讀值、按鈕彈跳、顯示異常
介面與接線模型腳位、位址、資料格式真實接腳、電壓、拉高與線路品質
網路流程服務位置、資料格式、失敗畫面Wi-Fi 認證、訊號與斷線恢復
時間與耗電程式邏輯的預期行為實際延遲、電流、睡眠與喚醒量測

尤其別把模擬器的執行速度當成效能測試。ESP32-S3 文件列出不同模擬頻率設定,也提醒部分時序行為有簡化。要判斷畫面更新速度、控制延遲或電池續航,最後仍要回到實際硬體取得量測結果。

小依這次會怎麼用?

我會先選一個用得到的顯示小專題,把按鈕、資料更新和失敗處理都寫清楚。模擬階段每多留下一個可對照的紀錄,實體板出問題時就少一分瞎猜。等最小版本穩定,再增加感測器與聯網功能,會比一開始把所有零件全接上去更有方向。

Cirkit Designer 值得試的地方,是讓準備專題的人提早開始整理程式與驗證方法。你準備做的第一個專題,會是按鈕顯示器、環境資訊看板,還是能從網路取得資料的小工具?

原始消息與文件

本文查核日期:2026/10/27。功能與權限可能隨平台更新,實作時請以對應文件與當時介面為準。

台灣智能感測科技

感測器、開發板與物聯網應用。前往官網,依專題需求查找硬體與技術資料。

分享到社群

發佈留言