電路連接
由于數碼管品種多樣,還有共陰共陽的,下面我們使用一個數碼管段碼生成器(在文章結尾) 去解決不同數碼管的問題:
本例作者利用手頭現有的一位不知品牌的共陽數碼管:型號D5611 A/B,在Eagle 找了一個 類似的型號SA56-11,引腳功能一樣可以直接代換。所以下面電路圖使用SA56-11 做引腳說明。
注意:
1. 將數碼管的a~g 段,分別接到Arduino 的D0~D6 上面。如果你手上的數碼管未知的話,可以通過通電測量它哪個引腳對應哪個字段,然后找出a~g 即可。
2. 分清共陰還是共陽。共陰的話,接220Ω電阻到電源負極;共陽的話,接220Ω電阻到電源+5v。
3. 220Ω電阻視數碼管實際工作亮度與手頭現有原件而定,不一定需要準確。
4. 按下按鈕即停。
源代碼
由于我是按照段碼生成器默認接法接的,所以不用修改段碼生成器了,直接在段碼生成器選擇共陽極,再按“自動”生成數組就搞定。
下面是源代碼,由于偷懶不用寫循環,使用了部分AVR 語句。
PORTD 這個是AVR 的端口輸出控制語句,8 位對應D7~D0,PORTD=00001001 就是D3 和D0 是高電平。
PORTD = a;就是找出相應的段碼輸出到D7~D0。
DDRD 這個是AVR 語句中控制引腳作為輸出/輸入的語句。DDRD = 0xFF;就是D0~D7 全部
作為輸出腳了。
ARDUINO CODECOPY
/*
Arduino 單數碼管骰子
Ansifa 2011-12-28
*/
//定義段碼表,表中十個元素由LED 段碼生成器生成,選擇了共陽極。
inta[10] = {0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90};
voidsetup()
{
DDRD = 0xFF; //AVR 定義PortD 的低七位全部用作輸出使用。即0xFF=B11111111對
應D7~D0
pinMode(12, INPUT); //D12用來做骰子暫停的開關
}
voidloop()
{
for(int i = 0; i < 10; i++)
{
//將段碼輸出PortD 的低7位,即Arduino 的引腳D0~D6,這樣需要取出PORTD 最高位,即
D7的狀態,與段碼相加,之后再輸出。
PORTD = a[i];
delay(50); //延時50ms
while(digitalRead(12)) {} //如果D12引腳高電平,則在此死循環,暫停LED 跑
動
}
}
標簽:
Arduino
10
數碼管
實驗
上傳時間:
2013-10-15
上傳用戶:baitouyu
Arduino 是一塊基于開放原始代碼的Simple i/o 平臺,并且具有使用類似java,C 語言的開發環境。讓您可以快速 使用Arduino 語言與Flash 或Processing…等軟件,作出互動作品。Arduino 可以使用開發完成的電子元件例如Switch 或Sensors 或其他控制器、LED、步進電機或其他輸出裝置。Arduino 也可以獨立運作成為一個可以跟軟件溝通的平臺,例如說:flash processing Max/MSP VVVV 或其他互動軟件…
Arduino 開發IDE界面基于開放原始碼原則,可以讓您免費下載使用開發出更多令人驚奇的互動作品。 什么是Roboduino?
DFRduino 與Arduino 完全兼容,只是在原來的基礎上作了些改進。Arduino 的IO 使用的孔座,做互動作品需要面包板和針線搭配才能進行,而DFRduino 的IO 使用針座,使用我們的杜邦線就可以直接把各種傳感器連接到DFRduino 上。
特色描述
1. 開放原始碼的電路圖設計,程式開發界面免費下載,也可依需求自己修改!!
2. DFRduino 可使用ISP 下載線,自我將新的IC 程序燒入「bootloader」;
3. 可依據官方電路圖,簡化DFRduino 模組,完成獨立云作的微處理控制器;
4. 可簡單地與傳感器、各式各樣的電子元件連接(如:紅外線,超聲波,熱敏電阻,光敏電阻,伺服電機等);
5. 支援多樣的互動程式 如: Flash,Max/Msp,VVVV,PD,C,Processing 等;
6. 使用低價格的微處理控制器(ATMEGA168V-10PI);
7. USB 接口,不需外接電源,另外有提供9VDC 輸入接口;
8. 應用方面,利用DFRduino,突破以往只能使用滑鼠,鍵盤,CCD 等輸入的裝置的互動內容,可以更簡單地達成單人或多人游戲互動。
性能描述
1. Digital I/O 數字輸入/輸出端共 0~13。
2. Analog I/O 模擬輸入/輸出端共 0~5。
3. 支持USB 接口協議及供電(不需外接電源)。
4. 支持ISP 下載功能。
5. 支持單片機TX/RX 端子。
6. 支持USB TX/RX 端子。
7. 支持AREF 端子。
8. 支持六組PWM 端子(Pin11,Pin10,Pin9,Pin6,Pin5,Pin3)。
9. 輸入電壓:接上USB 時無須外部供電或外部5V~9V DC 輸入。
10.輸出電壓:5V DC 輸出和3.3V DC 輸出 和外部電源輸入。
11.采用Atmel Atmega168V-10PI 單片機。
12.DFRduino 大小尺寸:寬70mm X 高54mm。
Arduino開發板圖片
標簽:
Arduino
控制器
圖文教程
上傳時間:
2014-01-14
上傳用戶:909000580