2024年10月27日 星期日

DIY - ESP32 Arduino Hello World 程式(五)

DIY - ESP32 Arduino Hello World 程式(五):

筆者安裝完成 Arduino ESP32 整合開發環境(IDE / Integrated Development Environment)後,首先是會測試整合開發環境(IDE)是否正常?筆者通常都會使用簡單的 Hello World 程式來作測試,確認整合開發環境、開發板和編譯程式是否有問題。

ESP32 Arduino Hello World 程式
操作系統:Windows 10 Pro 22H2 版本
開發環境:Arduino IDE 1.8.19 版本
原程式:C:\Development\Develop_ESP32\ Develop_ESP32_Arduino\DIY-Android-001-01 Hello World
程式:C:\Development\Develop_ESP32\ Develop_ESP32_Arduino\DIY-Android-001-01 Hello World

Arduino 的程式結構,主要分成 Setup() 與 Loop(),Setup 用來做初始設定,Arduino只會執行一次,然後就會執行 Loop,Loop 就是迴圈,會不斷重複的執行。

Hello World 程式:

void setup() {

  // put your setup code here, to run once:

 //Initialize serial and wait for port to open:

 Serial.begin(115200);

}

 

void loop() {

 // put your main code here, to run repeatedly:

 Serial.println("Hello World!");

 delay(1000);

}


連接好 ESP32 開發板到電腦的 USB 接口,Arduino ESP32 整合開發環境(IDE)設定好 Board Manager。

ESP32 Arduino Board Manager 設定

然後按Ü開始上載編譯程式,當 IDE 連接 Serial Port COM3,按著 ESP32 開發板的 Flash 按鍵,直至成功連接,便可以放開按鍵,IDE 便會開始上載程式至 ESP32 開發板,最後上載成功,測試便完成。

執行 Arduino 上載程式
Arduino 上載程式的詳情顯示
Arduino 上載程式的詳情顯示

2024年 10月 27日(Sun)天氣報告
氣溫:53.0°F / 12.0°C @ 07:00
風速:每小時 29公里
降雨機會:30%
相對濕度:百分之 81%
天氣:小雨

2024年9月27日 星期五

DIY - ESP32 Arduino 開發板 USB 驅動程式安裝 (四)

DIY - ESP32 Arduino 開發板 USB 驅動程式安裝 (四):

筆者安裝完成 Arduino 整合開發環境(IDE / Integrated Development Environment)和 ESP32 Arduino 的開發板程式後,因為 ESP32 Arduino 的開發板是連接在電腦的 USB 接口上,需要安裝 USB 驅動程式,目前 ESP32 大部分採用 CH340 或者 CP2102 與電腦 USB 溝通。筆者的 ESP32 Arduino 的開發板是使用 CP2102,標準的 Windows 操作系統都沒有內建 CP2102 驅動,因此要接上 ESP32 開發板 的 USB,還是需要安裝驅動的。
DIY - DIY ESP32 Arduino

  • CP2102 下載網址:https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
  • CH340下載網址:http://www.wch.cn/download/CH341SER_ZIP.html
登入 CP2102 下載網址,選擇 CP210x Windows Driver,便可以下載安裝。
CP2102 下載網址

使用管理員身份安裝 CP210x Windows Driver,根據提示便可以輕鬆完成安裝。
使用管理員身份安裝 CP210x Windows Driver
開始安裝 CP210x Windows Driver
完成安裝 CP210x Windows Driver

安裝 CP210x Windows Driver 完成後,插入 ESP32 Arduino 的開發板,程式便會在 Control Panel 的 Device Manager 顯示 Ports (COM & LPT) Silicon Labs CP210x USB to UART Bridge (COM3) 。
Control Panel的 Device Manager顯示Ports (COM & LPT) Silicon Labs CP210x USB to UART Bridge (COM3)
2024年 9月 27日(Fri)天氣報告
氣溫:58.0°F / 14.0°C @ 07:00
風速:每小時 3公里
降雨機會:10%
相對濕度:百分之 89%
天氣:多雲

2024年8月31日 星期六

DIY - ESP32 Arduino 的開發板程式安裝(三)

DIY - ESP32 Arduino 的開發板程式安裝(三):

Arduino IDE 安裝完成後,由於 ESP32 並非 Arduino 原廠產品,祇是 Arduino 相容的產品,因此必須在 Arduino IDE 中安裝 ESP32 核心程式,這樣才可使用 Arduino IDE 編寫 ESP32 程式。

ESP32 Arduino 的開發
首先開啟 Arduino IDE,選擇功能表的 File → Preferences(檔案 → 偏好)設定,開啟 Preferences(偏好)設定視窗,在 Addition Boards Manager URLs:(增加管理開發板)輸入 URL (https://dl.espressif.com/dl/package_esp32_index.json),然後按 OK。Arduino IDE 便會下載 ESP32 開發板管理程式。

File → Preferences(檔案 → 偏好)
在Addition Boards Manager URLs:(增加管理開發板)輸入 URL
接著點選 Tools → Boards Manager(工具→開發板 → 開發板管理員),即會出現開發板管理員視窗,在開發板管理員視窗中,輸入關鍵字 ESP32 後,即可篩選出 ESP32 核心套件,目前版本是 2.0.13,直接點選右側的安裝按鈕,並等候系統下載 ESP32 核心套件,完成安裝後,關閉開發板管理員視窗。

安裝 ESP32 核心套件
完成以上步驟,再次選擇 Tools → Boards Manager(工具/開發板),並往下拉找到 ESP32 Arduino 系列主板,然後選擇 ESP32 Dev Module 主板(要根據自已使用的開發板選擇)。

選擇 ESP32 Dev Module 主板


2024年 8月 31日(Sat)天氣報告
氣溫:58.0°F / 14.0°C @ 07:00
風速:每小時 2 公里
降雨機會:2%
相對濕度:百分之52%
天氣:晴

2024年7月29日 星期一

DIY - ESP32 Arduino 安裝(二)

DIY - ESP32 Arduino 安裝(二):

在使用 Arduino 之前,首先要安裝 Arduino 整合開發環境(IDE / Integrated Development Environment),才能夠用來編寫程式,由於 Arduino 所提供的整合開發環境,是一個跨平台應用程式,在 Windows、MacOS、Linux 的作業系統上都可以使用, Arduino也提供了很多第三方廠商推出的開發板,包括筆者將會使用的 Espressif 的 EPS32 / ESP8266。

Arduino 網站首頁
Step 1:下載 Arduino IDE 程式
網站 Arduino IDE:https://www.arduino.cc/en/software

下載 Arduino IDE 頁面
Step 2:選擇適用於你的作業系統
在下載頁面上,你將看到適用於不同作業系統的版本,包括 Windows、macOS 和 Linux。選擇你的作業系統版本。筆者是使用 Windows 作業系統,選擇「Windows Installer」。

選擇「Windows Installer」下載
按 JUST DOWNLOAD
按 JUST DOWNLOAD
執行安裝 Arduino IDE 程式
下載安裝程式
安裝程式:arduino-ide_2.3.2_Windows_64bit (筆者:arduino-ide_2.3.2_Windows_64bit)
程序:155,248 KB(筆者:114,557KB)
下載完成後,便點擊進入安裝程序。

Step 3:執行安裝程式
下載完成後,便點擊執行安裝程式。按照安裝指南進行安裝
遵循安裝程式的指示。通常情況下,你只需點擊「下一步」並接受預設設置。

打開 Arduino IDE
Step 4:打開 Arduino IDE
安裝完成後,你可以在桌面或開始菜單中找到 Arduino 整合開發環境(IDE)。筆者是安裝了 Arduino 1.8.19 版本。

打開 Arduino IDE
Arduino 1.8.19 版本

2024年 7月 29日(Mon)天氣報告
氣溫:60.0°F / 16.0°C @ 07:00
風速:每小時 11 公里
降雨機會:0%
相對濕度:百分之87%
天氣:多雲

2024年6月29日 星期六

DIY - ESP32 Arduino 的開始(一)

DIY - ESP32 Arduino 的開始(一):

筆者已經從 2018年1月開始使用 ESP32 了,但在 2019年1月便暫停,因為最近(20240607)又有新的項目需要使用 MCU 來處理,便想起了這枚 ESP32 SoC 處理器,然後在家中尋找 EPS32 物資,幸運地 ESP32 開發板仍舊存在,沒有棄置,這樣便可以從新再開始 ESP32 的旅程,但編程 IDE 已經過期!在網上看到很多關於Arduino ESP32 的文章,看來可以使用流行的 Arduino 來編寫 ESP32 程式,會不很會方便快捷,所以這次便嘗試使用 Arduino 來編程,看看是否如網上所言。

Arduino 註冊商標

Arduino (/a:r′dwiːnoʊ/)是一家義大利開源硬體和軟體公司、專案和使用者社群。他們設計和製造用於建造數位裝置的單板微控制器和微控制器套件。Arduino 的硬體產品根據 CC BY-SA 獲得許可,而軟體根據 GNU 寬通用公共授權 (LGPL) 或 GNU 通用公共授權 (GPL) 獲得許可,這意味著任何人都可以建立 Arduino 板並銷售。Arduino 板可以從官方網站或授權經銷商購買。Arduino 官方推薦使用整合了 Arduino 庫的 C++ 進行編程。Arduino 的名字來自於義大利伊夫雷亞的一家酒吧,該計畫的一些創始人就是在那裡相遇的。酒吧以伊夫雷亞侯爵、1002 年至 1014 年義大利國王阿杜因 (Arduin of Ivrea) 的名字命名。

Arduino 的團隊
Arduino 里程沿革

Arduino 的核心開發團隊成員包括:馬西莫‧班齊(Massimo Banzi)、大衛‧奎提耶斯(David Cuartielles)、湯姆‧伊果(Tom Igor)、贊布羅塔‧馬提諾(Gianluca Martino)、大衛‧梅利斯(David Mellis)和尼可拉斯‧蘭比提(Nicholas Zambetti)。據說馬西莫‧班齊之前是義大利Ivrea 一家高科技設計學校的老師。他的學生們經常抱怨找不到便宜好用的微控制器。2005年冬天,馬西莫‧班齊跟大衛‧奎提耶斯討論了這個問題。大衛‧奎提耶斯是一個西班牙籍晶片工程師,當時在這所學校做訪問學者。兩人決定設計自己的電路板,並引入了馬西莫‧班齊的學生大衛‧梅利斯為電路板設計程式語言。兩天以後,大衛‧梅利斯就寫出了程式碼。又過了三天,電路板就完工了。這塊電路板被命名為 Arduino。幾乎任何人,即使不懂電腦編程,也能用 Arduino 做出東西。唯一被保留的只有 Arduino 這個名字,它被註冊成了商標。

Arduino 開發板

Arduino Software IDE 使用與 C 語言和 C++ 相仿的程式語言,並且提供了包含常見的輸入/輸出函式的 Wiring 軟體函式庫。在使用 GNU toolchain 編譯和連結後,Arduino Software IDE 提供了一個程式「avrdude」用來轉換可執行檔成為能夠燒寫入 Arduino 硬體的韌體。2019 年後,版本分為簡潔、免安裝的 IDE1 和功能齊全的 IDE2。

Arduino Software IDE

參考網址:Wikipedia https://en.wikipedia.org/wiki/Arduino

2024年 6月 29日(Sat)天氣報告
氣溫:61.0°F / 16.0°C @ 07:00
風速:每小時 5 公里
降雨機會:3%
相對濕度:百分之 68%
天氣:睛

2024年5月29日 星期三

VEVOR 焊錫排煙器(Solder Fume Extractor)開箱文

VEVOR 焊錫排煙器(Solder Fume Extractor)開箱文:

由於家居的空氣流通有限制,窗戶也不能完全打開,所以在做電子銲接零件時,空氣的質素很差,暫時會使用焊錫排煙器來減低空氣的有限不良物質,便在網上選購買了一台是焊錫排煙器。VEVOR 焊錫排煙器(Solder Fume Extractor),是一台桌面上使用的焊錫排煙器,收到了這台排煙器,真的很小巧,加上橙色的外殼,非常可愛!

VEVOR 焊錫排煙器(Solder Fume Extractor)

VEVOR 焊錫排煙器(Solder Fume Extractor)尺寸真的非常小巧,基本上是和散熱風扇大小差不多,包裝盒是很普通的卡通紙材料,包裝盒尺寸:880mm × 570mm × 102mm,機身尺寸是 139/168mm × 80mm × 138mm(規格:126 × 76 × 137mm),重量是 1.0kg(規格:2.2lbs/1.0kg),手柄部份是可以彎曲 90度,機箱右邊有電源開關,如果有調速旋紐會更好。

VEVOR 焊錫排煙器(Solder Fume Extractor)的包裝盒
VEVOR 焊錫排煙器(Solder Fume Extractor)開箱文:
VEVOR 焊錫排煙器(Solder Fume Extractor)的正面
VEVOR 焊錫排煙器(Solder Fume Extractor)的背面
VEVOR 焊錫排煙器(Solder Fume Extractor)的右側面
VEVOR 焊錫排煙器(Solder Fume Extractor)的的左側面
VEVOR 焊錫排煙器(Solder Fume Extractor)的頂部
VEVOR 焊錫排煙器(Solder Fume Extractor)的底部

VEVOR 焊錫排煙器(Solder Fume Extractor)內置的風扇品牌是 SNUON,型號 DP100A,編號 P/N 1123XSL,規格 110/120V 50/60Hz 0.26A,功率 21/20W,供應商 Shenzhen Xingketai Trading Co., Ltd. ,尺寸 120 mm x 120 mm x 38 mm。

VEVOR 焊錫排煙器(Solder Fume Extractor)風扇規格
VEVOR 焊錫排煙器(Solder Fume Extractor)規格標貼

VEVOR 焊錫排煙器(Solder Fume Extractor)附件有 3片過濾片和說明書,過濾片可以簡單的放入排煙器前面,過濾片可過濾焊錫煙霧、助焊劑、化學物質和氣體,放心工作在密閉空間,當然最好是將焊錫煙霧排出屋外,這是下一步的計劃。

VEVOR 焊錫排煙器(Solder Fume Extractor)的主機和配件

2024年 5月 29日(Wed)天氣報告
氣溫:52.0°F / 11.0°C @ 07:00
風速:每小時 11 公里
降雨機會:0%
相對濕度:百分之82%
天氣:雨

2024年5月28日 星期二

VEVOR 焊錫排煙器(Solder Fume Extractor)介紹

VEVOR 焊錫排煙器(Solder Fume Extractor)介紹:

我們在焊接操作過程中經常會產生一些有毒的物質,如:乙醛、松香酸、異氰酸鹽、氮氧化物、硫化物、碳氫化合物等。有毒物質在空氣中飛揚,通過呼吸道侵入到人的內臟及血液中,威脅操作人員的健康,還會導致許多職業病的出現。焊錫排煙器/焊煙淨化器既能有效的淨化空氣,又能有效去除焊煙廢氣和降解焊煙焦油味和各種有毒有害氣體,保護工人身體健康。

VEVOR 焊錫排煙器(Solder Fume Extractor)應用

VEVOR 焊錫排煙器(Solder Fume Extractor)是一台桌面式焊錫排煙器,可擕式、輕量設計拔取器可以輕鬆地放置在工作臺或桌面上、從而使您的工作方式更加靈活。迷你尺寸緊湊型排煙器去除器,適用於手機維修、DIY 焊接、3D 列印。
VEVOR 焊錫排煙器(Solder Fume Extractor)

VEVOR 焊錫排煙器,內置 38W 馬達,轉速 2700RPM,可產生強大的 86.63 立方公尺/小時氣流(86.63m³/h),可清除 5-6 英吋距離內的有害煙霧,同時以 ≤55 dB 的低噪音運轉,帶 3 級過濾器(3-layer Filtration System),過濾片有效吸收和減輕焊錫煙霧、助焊劑、化學物質和氣體,輕鬆消除工作空間中令人不快的有害氣味。
VEVOR 焊錫排煙器(Solder Fume Extractor)風速
VEVOR 焊錫排煙器(Solder Fume Extractor)過濾空氣

VEVOR 焊錫排煙器由防靜電金屬製成(Anti-static Metal),比塑膠框架焊錫煙霧吸收器更耐用。 4 個防滑橡膠腳(Anti-slip Rubber Feet)將設備固定在桌面上,而方便的手柄則方便移動。
VEVOR 焊錫排煙器(Solder Fume Extractor)外殼結構


VEVOR 焊錫排煙器(Solder Fume Extractor)
品牌型號:VEVOR 焊錫排煙器(Solder Fume Extractor)
型號:XF38U
輸入電壓:AC110-120V 60Hz
額定功率:38W
吸氣容量:86.63 立方公尺/小時氣流
噪音:運轉時 ≤55 dB
配件:過濾片*3
特點:過濾片有效吸收和減輕焊錫煙霧、助焊劑、化學物質和氣體,輕鬆消除工作空間中令人不快的有害氣味,4 個防滑橡膠腳,防止滑動
材料:防靜電金屬製成
機身尺寸:125mm × 76mm × 137mm(規格:4.9 × 3.0 × 5.4 inches)
重量:1.0kg / 2.2lb(規格:1.0kg / 2.2lb)
顏色:橙色
保証期間:1年 Limited Manufacturer's Warranty
生產地區:中國製造(Made in China)
發售日期:估計 2022年
參考價格:$20.59美元,不含裞(≒港幣$160.60)
2024年 5月 28日(Tue)天氣報告
氣溫:54.0°F / 11.0°C @ 07:00
風速:每小時 8 公里
降雨機會:7%
相對濕度:百分之81%
天氣:小雨

2024年4月28日 星期日

Excel:使用萬用字元(Wildcard)搜尋用法

Excel:使用萬用字元(Wildcard)搜尋用法:

在使用 Excel 365 的過程中,可以使用使用萬用字元(Wildcard)作搜尋,萬用字元是一種特殊字元,可代表文字值中的未知字元,很適合尋找具有類似但並非相同資料的多個專案。萬用字元也可以協助根據指定的模式比對來取得資料,而且並可使用不同函數來實現,傳回相同的結果。

萬用字元(Wildcard):

使用

尋找

範例

?

任何單一字元

例如,smth 會找到 “smith” 和 “smyth”。

bll 會找出 ballbell bill

*

任何數目的字元

例如,*east 會找到 “Southeast” 和 “Southeast

wh* 會找出 whatwhite why,但是不會找出 awhile watch

[ ]

比對括號內的字元

b[ae]ll 會 找出 ball bell,但不會找出 bill

!

排除括號內的字元

b[!ae]ll 會找出 bill bull,但是不會找出 ball bellLike [a]*”會尋找不是以字母 a 開頭的所有專案。

-

比對某個範圍的字元。 請記得以遞增順序指定字元 (A Z,而不是以 Z A)

b[a-c]d 會找出 badbbd bcd

#

比對任何單一數字字元

1#3 會找出 103113 123

~

(波狀符號) 後面跟著 ?* ~,問號、星號或波狀符號

fy06~? 會找到 “fy06?”


萬用字元(Wildcard)數據:

Year

Brand

Model

Q1

Q2

Q3

Q4

Total

2022

Banana

phone 12

100

200

300

400

1000

2023

Banana

phone 12

200

260

370

410

1240

2024

Banana

phone 12

150

300

350

440

2240

2023

Banana

Skybook 128M

5600

5000

3000

2000

15600

2024

Banana

Skybook 256M

7200

7800

7900

8000

30900

2024

BWS

Thinkbook X1

400

460

470

440

1770

2024

Free

Space II E5000

200

230

210

180

820

2024

Free

Inspiron 150

200

330

210

450

1190

2023

Free

EXPS 17

200

999

1999

290

3488

2024

Free

EXPS 17

200

1999

2999

390

5588

2024

Free

EXPS 18

2200

21999

22999

2390

49588

 






Total :

113424



1. VLOOKUP 函數搭配萬用字元(Wildcard)搜尋用法:
例子 1.1; 使用 VLOOKUP 搜尋某個範圍中的牌子名,然後傳回型號。它包括 lookup_value (單元格 J2)、lookup_array (範圍 C2:C12),以及 return_array (範圍 H2:H12 = Row 6) 自變數。
=VLOOKUP("*"&J2&"*",C2:H12,6,0)

VLOOKUP 函數搭配萬用字元(Wildcard)搜尋用法

2. XLOOKUP 函數搭配萬用字元(Wildcard)搜尋用法:
例子 2.1; 使用 XLOOKUP 搜尋某個範圍中的牌子名,然後傳回型號。它包括 lookup_value (單元格 J2)、lookup_array (範圍 C2:C12),以及 return_array (範圍 H2:H12) 自變數。
=XLOOKUP("*"&J2&"*",C2:C12,H2:H12,"NG",2)

XLOOKUP 函數搭配萬用字元(Wildcard)搜尋用法

3. INDEX & MATCH 函數搭配萬用字元(Wildcard)搜尋用法:
例子 3.1; 使用INDEX & MATCH 搜尋某個範圍中的牌子名,然後傳回型號。它包括 lookup_value (單元格 J2)、lookup_array (範圍 C2:C12),以及 return_array (範圍 H2:H12) 自變數。
=INDEX(H2:H12,MATCH("*"&J2&"*",""&C2:C12,0))

INDEX & MATCH 函數搭配萬用字元(Wildcard)搜尋用法

例子 3.2; 使用 INDEX & MATCH 搜尋某個範圍中的牌子名,然後傳回型號。它包括 lookup_value (單元格 J2,K2)、lookup_array (範圍 B2:B12,C2:C12),以及 return_array (範圍 H2:H12) 自變數。
=INDEX(H2:H12,MATCH(1,(LEFT(C2:C12,LEN(K2))=K2)*(B2:B12=J2),0),0)

INDEX & MATCH 函數搭配萬用字元(Wildcard)搜尋用法

例子 3.3; 使用 INDEX & MATCH 搜尋某個範圍中的牌子名,然後傳回型號。它包括 lookup_value (單元格 J2,K2)、lookup_array (範圍 B2:B12,C2:C12),以及 return_array (範圍 H2:H12) 自變數。
=INDEX(H2:H12,MATCH(1,(LEFT(C2:C12,5)=LEFT(K2,5))*(B2:B12=J2),0),0)

INDEX & MATCH函數搭配萬用字元(Wildcard)搜尋用法

4. FILTER 函數搭配萬用字元(Wildcard)搜尋用法:
例子 4.1; 使用FILTER 搜尋某個範圍中的牌子名,然後傳回型號。它包括 lookup_value (單元格 J2)、lookup_array (範圍 C2:C12),以及 return_array (範圍 H2:H12) 自變數。
=FILTER(H2:H12,LEFT(C2:C12,LEN(J2))=J2)

FILTER 函數搭配萬用字元(Wildcard)搜尋用法


2024年 4月 28日(Sun)天氣報告
氣溫:48.0°F / 9.0°C @ 08:00
風速:每小時 21公里
降雨機會:10%
相對濕度:百分之 77%
天氣:多雲