本篇主要介紹Arduino數(shù)字引腳及相關(guān)函數(shù)幻馁,通過(guò)數(shù)字I/O輸出控制板載LED燈亮滅狀態(tài)(數(shù)字引腳13)洗鸵。
數(shù)字信號(hào)是以0越锈、1表示的電平不連續(xù)變化的信號(hào),也就是以二進(jìn)制的形式表示的信號(hào)膘滨。在Arduino中數(shù)字信號(hào)通過(guò)高低電平來(lái)表示甘凭,高電平則為數(shù)字信號(hào)1,低電平則為數(shù)字信號(hào)0 火邓,其實(shí)在計(jì)算機(jī)中也只有0和1兩種信號(hào)丹弱。
Arduino開發(fā)板上每一個(gè)帶有數(shù)字編號(hào)的引腳,都是數(shù)字引腳铲咨,包括標(biāo)有"A"編號(hào)的模擬輸入引腳躲胳。可以通過(guò)這些引腳來(lái)實(shí)現(xiàn)數(shù)字信號(hào)的輸入輸出纤勒。
1. 實(shí)驗(yàn)材料
- Uno R3開發(fā)板
- 配套USB數(shù)據(jù)線
2. 實(shí)驗(yàn)步驟
-
新建sketch坯苹,拷貝如下代碼替換自動(dòng)生成的代碼并進(jìn)行保存。
/* Blink 等待一秒鐘摇天,點(diǎn)亮LED粹湃,再等待一秒鐘,熄滅LED泉坐,如此循環(huán) */ //在大多數(shù)Arduino控制板上13號(hào)引腳都連接了一個(gè)標(biāo)有"L"的LED燈 int led = 13; //給13號(hào)引腳連接的設(shè)備起一個(gè)別名"led" void setup() { pinMode(led, OUTPUT); //將"led"引腳設(shè)置為輸出狀態(tài) } void loop() { digitalWrite(led, HIGH); //引腳輸出高電平1,點(diǎn)亮LED delay(1000); //等待1s digitalWrite(led, LOW); //引腳輸出低電平0,熄滅LED delay(1000); //等待1s }
保存程序 通過(guò)USB數(shù)據(jù)線連接Uno R3到電腦为鳄。在IDE中設(shè)置好對(duì)應(yīng)端口號(hào)和開發(fā)板類型。
-
下載程序到開發(fā)板腕让。
上傳程序
3. 實(shí)驗(yàn)現(xiàn)象
可觀察到板載LED燈間斷閃爍孤钦。
4. 函數(shù)介紹
-
pinMode()
- 描述:將指定引腳配置為輸入或者輸出模式
- 函數(shù)原型:pinMode(pin, mode)
- 參數(shù):
- pin:要設(shè)置其模式的引腳編號(hào)
- mode: INPUT(輸入模式), OUTPUT(輸出模式), INPUT_PULLUP(上拉輸入模式)
- 返回值: 無(wú)返回值
-
digitalWrite()
- 描述:將數(shù)字HIGH或LOW值寫入數(shù)字引腳
- 函數(shù)原型:digitalWrite(pin, value)
- 參數(shù):
- pin:要設(shè)置其輸出的引腳編號(hào)
- value:HIGH(1), LOW(0)
- 返回值: 無(wú)返回值
-
delay()
- 描述:將程序暫停給定參數(shù)的時(shí)間量(以毫秒為單位)
- 函數(shù)原型:delay(ms)
- 參數(shù):ms 暫停的毫秒數(shù)
- 返回值: 無(wú)返回值
程序首先通過(guò)pinMode設(shè)置13引腳為輸出模式,然后在loop里面通過(guò)digitalWrite來(lái)改變引腳的輸出電平纯丸,HIGH輸出高電平即為當(dāng)前Arduino的工作電壓5V司训,LOW輸出低電平即為0V。delay函數(shù)暫停1s讓我們可以清晰看到閃爍狀態(tài)液南。你也可以減小等待時(shí)間壳猜,LED就會(huì)閃爍的更快了。