實驗目的
讓一顆燈號閃爍,每隔一秒切換一次燈號。材料
- Arduino 主板 x 1
- LED x 1
接線
- 把 LED 接到 Arduino 板子上,LED 長腳 (陽極) 接到 pin13,短腳 (陰極) 接到 GND,如下圖:
程式碼
先來看 Arduino 版本的 Blink 程式:
這是 Arduino 的入門程式,相信你應該很熟悉。
從 Arduino 與 AVR 腳位對應關係圖可知,PB5 就是 pin 13,所以現在我們可以改用 I/O Ports 暫存器重新改寫程式:
PB5 是 PortB 的 bit 5,所以我們用 (1 << 5) 當作位元遮罩 (bit mask)。 要特別注意的是,在設定 DDRx 暫存器的時候,1 是代表 OUTPUT,而 0 是代表 INPUT。
在下一篇中,我們將使用 _BV() 巨集把這支程式變得清晰易讀一些。
Hello! 你這系列的文章真的淺顯易懂!
回覆刪除對初學者真的很有幫助~
另外第二篇介紹LED _BV()巨集使用的文章連結似乎失效了
不客氣,拋磚引玉,希望有專門寫書的作家可以把這些概念寫得更容易懂。
回覆刪除你是說這個連結嗎?
http://coopermaa2nd.blogspot.tw/2011/04/bv.html