2015年3月17日 星期二

輕鬆入門 Arduino 範例分析與實作設計

最近為了還清圖書館的 "書債", 努力地翻閱被迫必須還的書, 這本葉難寫的 Arduino 入門書借來快一個月沒動過, 結果一天之內斷斷續續跳讀就差不多抓住重點了.


葉難的 Raspberry Pi 我有買, 但 Arduino 的既然市圖有, 就不多花銀子了. 不過他的書真的寫得好, 實力派的.

這本書最棒的是最後一章 (CH12), 介紹如何用麵包板自製 Arduino, 以及接下來如何將程式或 bootloader 燒進 ATMEGA328P 晶片的方法. 已有 UNO 板的人, 可以把 UNO 模擬成 ISP 燒錄器, 將 bootloader 或一般程式寫入自製 Arduino 的 328P CPU 內 (只能 2 選 1, 不能同時燒錄兩種).

接線方式 :
  1. UNO pin10 (SS) - ATMEGA328 pin1 (reset)
  2. UNO pin11 (MOSI) - ATMEGA328 pin17 (MOSI)
  3. UNO pin12 (MISO) - ATMEGA328 pin18 (MISO)
  4. UNO pin13 (SCK) - ATMEGA328 pin19 (SCK)
操作要點 :
  1. 工具-板子 : 選 Arduino UNO
  2. 工具-燒錄器 : 選 Arduino as ISP
  3. 工具-燒錄 bootloader : 燒錄開機啟動程式
  4. 檔案-以燒錄器上傳 : 燒錄一般程式
原型開發階段可以用 UNO 測試,  但實際作品用 UNO 就太浪費, 或者太佔空間了, 應該用洞洞板自己兜電路, 把感應器或是 Ethernet 介面板焊在一起, 小專案甚至不必用到 UNO 等級的 328P 晶片, ATtiny85 即可.

第十三章提到 AVR 低階開發, 即不用 Arduino 核心, 直接用 AVR 組合語言或 C 開發, 可以寫出較精粹或快速的程式碼. Arduino 核心甚至已經被移植到其他 MPU 平台, 例如 PIC 或 ARM 晶片平台上, 函式使用方式一樣, 但已針對各 MPU 重新實作了.

書中的範例程式可在下列網站下載 :

https://github.com/yehnan/arduino_practices
http://yehnan.blogspot.tw/2012/02/arduino_21.html

參考 :

# List of Arduino boards and compatible systems
# Kobakant 穿戴式技術 DIY
# Adafruit Learning System


沒有留言 :