介紹
ColorEasyDuino是嘉立創推出的一塊Aduino開發板(類似物),具有豐富的外設介面:uart、i2c、spi、adc、pwm等;開發板設計參考原型是Arduino Uno,採用的晶片是ATMEGA328P,它的外觀設計比較緊湊,把所有的IO都引出供開發者使用,可玩性、可擴充性都特別強,再加上Arduino這個平臺具有豐富的開發資源,確實是創客們嚐鮮的不二之選
開發板
- 電源供電為5V,採用type C口供電,也可以用DC電源口進行供電
- 不支援線上除錯,這可能是Arduino Uno本身就不支援的緣故
- 4顆LED:一個電源指示燈、一個使用者自定義、另外兩個用來指示串列埠的狀態(也可以自定義使用)
- 一個復位按鍵
晶片
- AVR RISC架構
- 記憶體:2K SRAM、32K FLASH、1K EEPROM
- 23個可程式設計I/O
- 8路解析度為10位的adc,參考電壓為5V
- 2路8位定時/計數器、1路16位定時/計數器
- 6路PWM
- 自帶USART、i2c、SPI各一路
- 時鐘最高能達到16MHz
最小系統
跟51微控制器差不多,主要分為3大部分
- 電源電路
- 晶振電路
- 復位電路
環境
先下載IDE,直接解壓開啟Arduino IDE.exe就可以了,我這裡使用的Arduino版本號為:2.3.3-nightly-20240608
① 選單欄:常見的功能分類,如檔案(程式新建、程式碼示例等功能)、編輯(文字編輯功能)、程式(編譯、下載等功能)、工具、幫助等功能
② 工具欄:編譯(Verify)、下載(Upload)、開發板配置(型號+串列埠)、串列埠繪圖、串列埠監控等功能入口放在此處
③ 功能區:SKETCHBOOK、開發板管理、軟體庫管理、除錯、搜尋等功能
④ 程式碼文字編輯區
⑤ 控制檯:編譯輸出、串列埠輸出等
最小例程
setup
函式用於配置開發板的硬體資源,如GPIO的工作狀態;loop
函式則是一個任務,它是一個死迴圈;這兩個函式是每個Sketch程式必備的,可能跟51、stm32那些程式程式碼不大一樣;並且,Sketch是支援C++程式設計的;下面這個例程位於File -> Examples -> 0.1 Basics -> Blink
下,用於迴圈點亮板載的藍色LED燈
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
將開發板的Type C口用USB線連線電腦,在IDE端進行以下操作
① 配置開發板為:Arduino Uno,配置串列埠為對應的串列埠
② 點選工具欄上面的Verify按鈕,對話方塊彈出Done compiling表示編譯沒有問題
③ 然後點選Upload
④ 看到對話方塊彈出,對話方塊彈出Done uploading表示程式下載沒有問題,output控制檯會輸出當前程式的大小、佔用磁碟比率
實驗效果:可以看到開發板上面的綠色LED被迴圈點亮
總結
- Sketch指的就是Arduino的程式,這是它的專有名詞
- SKETCHBOOK,我理解應該是Arduino程式的開發指導(文件)
- IDE上手難度幾乎為0,很輕鬆就能跑一個示例
- Arduino對開發板、開源庫的管理比較完善,形成了一個硬體、軟體的體系,Example幾乎可以無縫移植
- 但功能方面個人覺得還是51微控制器比較強大,51歷史悠久,廠商幾乎遍地開花,成本也很低