2024年11月10日 星期日

利用 ESP32 取得氣象網站的天氣開放資料


本實作使用ESP32的無線WiWi模組連上網路,利用HTTP的GET方法進行資料請求,自氣象網站取回天氣資料,故須先取得氣象網站的程式開發API Key,請參考這裡

當設計程式進行Web應用或者是手機應用,若需要秀出天氣數據或者天氣預報數據時,不妨使用 OpenWeatherMap 天氣API服務。
 OpenWeatherMap是OpenWeather Ltd擁有的在線服務,它通過API提供全球天氣數據,包括任何地理位置的當前天氣數據,天氣預報,天氣預報和歷史天氣數據。該公司提供了對任何位置的逐分鐘超局部降雨預報。

OpenWeatherMap  提供當前天氣的地圖,一周預報,降水,風,雲,來自氣象站的其他數據。免費用戶就可以使用絕大部分功能。提供  JSON 、 XML ,、以及  HTML  等多種格式數據。

本實作使用 WeMos LoLin32 開發板,WiFi 802.11b/g/n 進行基地台連線並取得網站資料。直接將 WeMos LoLin32 以 USB 線連接到開發電腦進行程式編譯上傳即可。使用Arduino IDE 編譯 ESP32 程式前請先確認已經正確選定開發板規格。

2024年10月7日 星期一

ESP32 藍牙模組與模擬軟體通訊

藍牙技術是一種無線數據和語音通信開放的全球規範,它是基於低成本的近距離無線連接,為固定和移動設備建立通信環境的一種特殊的近距離無線技術連接,在短距離間交換資料,以形成個人區域網路。其使用短波特高頻無線電波,經由2.4至2.485 GHz的ISM頻段來進行通訊。 

本實作使用 WeMos LoLin32 開發板配合U8g2程式庫於OLED中顯示訊息。直接將 WeMos LoLin32 以 USB 線連接到開發電腦進行程式編譯上傳即可。使用Arduino IDE 編譯 ESP32 程式前請先確認已經正確選定開發板規格。

使用 BluetoothSerial 程式庫可以很方便的控制 ESP32 內的藍牙模組,詳細的程式庫資料請參考 這裡 。本實作利用藍牙通訊接收命令後在OLED中顯示兩種訊息 Power On、Power Off,關於如何在OLED中輸出字串請參考 這裡

2024年5月20日 星期一

讓 ESP32 成為行動熱點 (WiFi 接入點,無線AP)


本實作使用 WeMos LoLin32 開發板,WiFi 802.11b/g/n 進行基地台連線測試。直接將 WeMos LoLin32 以 USB 線連接到開發電腦進行程式編譯上傳即可。

使用Arduino IDE 編譯 ESP32 程式前請先確認已經正確選定開發板規格。

當把ESP32接上電腦後可能會發現COM埠無法使用,這是因為少了 USB to UART Bridge Driver ,去官網下載驅動程式回來安裝即可,網址如下:
https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
要讓ESP32開發板成為行動熱點、AP基地台分享網路連線給其他的無線裝置,可利用WiFiAP程式庫(在撰寫程式時請直接引入 WiFi 程式庫即可)中的softAP()方法:
 bool softAP(const char* ssid, const char* passphrase = NULL, int channel = 1, int ssid_hidden = 0, int max_connection = 4, bool ftm_responder = false);

2024年5月9日 星期四

ESP32 無線基地台連線測試

本實作使用 WeMos LoLin32 開發板,WiFi 802.11b/g/n 進行基地台連線測試。

使用Arduino IDE 編譯 ESP32 程式前請先確認已經正確選定開發板規格。

2024年3月2日 星期六

ESP32 初體驗:使用 Arduino IDE 編譯 ESP32 程式

ESP32由總部位於上海的中國公司樂鑫資訊科技建立和開發,由台積電採用40奈米技術製造。ESP32是一系列低成本,低功耗的單晶片微控制器,整合了Wi-Fi和雙模藍牙。 ESP32系列採用Tensilica Xtensa LX6微處理器,包括雙核心和單核變體,內建天線開關,RF變換器,功率放大器,低雜訊接收放大器,濾波器和電源管理模組。 

本實作使用 WeMos LoLin32 開發板,此開發板是Wemos基於 ESP-32 模組所設計的核心開發板,內建802.11 b/g/n/e/i 2.4 GHz Wi-Fi 的微控制器、藍牙 v4.2 BR/EDR 和低功耗藍牙(BLE、BT4.0、Bluetooth Smart)並引接 ESP-32所有的GPIO接腳,配有雙核心 Tensilica 32bit LX6 微處理器,高達 240 MHz 時脈,適合使用麵包板進行開發應用。