版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
arduino入門(mén)很簡(jiǎn)單中arduino入門(mén)很簡(jiǎn)單中arduino入門(mén)很簡(jiǎn)單中6.1使用到的專(zhuān)用器件在本節(jié)中只需要使用到一個(gè)專(zhuān)用的器件——LED二極管。LED二極管的類(lèi)型和規(guī)格有很多,這里使用的是一個(gè)藍(lán)色的5MM發(fā)光二極管。arduino入門(mén)很簡(jiǎn)單中arduino入門(mén)很簡(jiǎn)單中ardu16.1使用到的專(zhuān)用器件在本節(jié)中只需要使用到一個(gè)專(zhuān)用的器件——LED二極管。LED二極管的類(lèi)型和規(guī)格有很多,這里使用的是一個(gè)藍(lán)色的5MM發(fā)光二極管。6.1使用到的專(zhuān)用器件在本節(jié)中只需要使用到一個(gè)專(zhuān)用的器件26.2驅(qū)動(dòng)單個(gè)LED程序驅(qū)動(dòng)LED的程序非常簡(jiǎn)單。要持續(xù)地點(diǎn)亮一個(gè)LED二極管,只需要為L(zhǎng)ED二極管提供一個(gè)額定范圍內(nèi)恒定的電壓即可。Arduino開(kāi)發(fā)板的針腳有輸入和輸出兩種模式,將針腳設(shè)置為輸出模式后就可以做為電源。指定Arduino針腳模式的函數(shù)原型如下:pinMode(pin,mode)6.2驅(qū)動(dòng)單個(gè)LED程序驅(qū)動(dòng)LED的程序非常簡(jiǎn)單。要持續(xù)36.2.1使用數(shù)字針腳點(diǎn)亮LED由于數(shù)字針腳只能輸出高電壓和低電壓,因此在不借用其他元件的情況下只可以點(diǎn)亮或者熄滅LED。6.2.1使用數(shù)字針腳點(diǎn)亮LED由于數(shù)字針腳只能輸出高電41.電路圖1.電路圖52.程序intpin=10; //指定LED連接的針腳voidsetup(){pinMode(pin,OUTPUT);//設(shè)置針腳模式為輸出digitalWrite(pin,HIGH);//設(shè)置針腳輸出電壓}voidloop(){
}2.程序intpin=10; //指定LED連接的針腳66.2.2使用模擬針腳點(diǎn)亮LED經(jīng)過(guò)前面講解可以得知,analogWrite()函數(shù)可以修改針腳的輸出電壓(0~5V)。那么,就可以通過(guò)為analogWrite()函數(shù)傳入不同的參數(shù)來(lái)控制針腳的輸出電壓,進(jìn)而就可以控制LED的亮度。6.2.2使用模擬針腳點(diǎn)亮LED經(jīng)過(guò)前面講解可以得知,a76.2.3使用LED發(fā)送S.O.S摩爾斯碼摩爾斯電碼可以很方便地用來(lái)發(fā)送英文字母、數(shù)字以及部分符號(hào)。摩爾斯電碼是通過(guò)控制電信號(hào)的長(zhǎng)短來(lái)發(fā)聲信息的。SOS這三個(gè)字母的摩爾斯電碼表示如下:···―――···6.2.3使用LED發(fā)送S.O.S摩爾斯碼摩爾斯電碼可以86.2.4使用LED發(fā)送摩爾斯電碼從示例6-5中的代碼中也可以看出dot()和dash()函數(shù)是非常類(lèi)似的,只是等待的時(shí)間不同而已,而這個(gè)等待的時(shí)間也是以一個(gè)基準(zhǔn)的時(shí)間變量stdd來(lái)設(shè)置的。那么,我們就可以進(jìn)一步地將上面這兩個(gè)個(gè)函數(shù)用一個(gè)函數(shù)來(lái)實(shí)現(xiàn):voiddot(intledPin,intlen,intstdd){digitalWrite(ledPin,HIGH);delay(stdd*len);digitalWrite(ledPin,LOW);delay(stdd*2);}6.2.4使用LED發(fā)送摩爾斯電碼從示例6-5中的代碼中96.2.5LED跑馬燈6.2.5LED跑馬燈106.2.6使用LED模擬交通燈6.2.6使用LED模擬交通燈116.3驅(qū)動(dòng)LED點(diǎn)陣6.3.1LED點(diǎn)陣顯示表情6.3.2LED點(diǎn)陣跑馬燈6.3.3回紋燈6.3.4矩形回縮燈6.3驅(qū)動(dòng)LED點(diǎn)陣6.3.1LED點(diǎn)陣顯示表情126.3.1LED點(diǎn)陣顯示表情6.3.1LED點(diǎn)陣顯示表情136.3.2LED點(diǎn)陣跑馬燈在6.3.5小節(jié)中實(shí)現(xiàn)了由三個(gè)LED組成的簡(jiǎn)易跑馬燈,在本節(jié)就在8*8的LED點(diǎn)陣上來(lái)實(shí)現(xiàn)跑馬燈。這個(gè)示例的電路不需要改動(dòng),我們直接編寫(xiě)對(duì)應(yīng)的程序就可以了。6.3.2LED點(diǎn)陣跑馬燈在6.3.5小節(jié)中實(shí)現(xiàn)了由三個(gè)146.3.3回紋燈回紋表示的是從外圈向中心回旋的方式,在我們將要實(shí)現(xiàn)的回紋燈就是使用LED點(diǎn)陣來(lái)實(shí)現(xiàn)這一描述。回紋燈的實(shí)現(xiàn)電路與之前的LED點(diǎn)陣示例接法相同,因此這里只需要重新設(shè)計(jì)程序即可。6.3.3回紋燈回紋表示的是從外圈向中心回旋的方式,在我156.3.4矩形回縮燈矩形回縮燈就是從LED點(diǎn)陣最外圈的8*8矩形回縮到最小的2*2的矩形(以8*8點(diǎn)陣為例),以這種形式來(lái)展現(xiàn)類(lèi)似矩形縮放的效果。其電路接法與前面的所有示例相同,因此這里只需要重新編寫(xiě)程序即可。6.3.4矩形回縮燈矩形回縮燈就是從LED點(diǎn)陣最外圈的8166.4使用74HC595驅(qū)動(dòng)LED6.4.174HC595使用方式6.4.2使用74HC595驅(qū)動(dòng)LED點(diǎn)陣6.4使用74HC595驅(qū)動(dòng)LED6.4.174HC176.4.174HC595使用方式74HC595是一個(gè)CMOS(ComplementaryMetal-Oxide-Semiconductor)器件6.4.174HC595使用方式74HC595是一個(gè)CM18arduino入門(mén)很簡(jiǎn)單中課件196.4.2使用74HC595驅(qū)動(dòng)LED點(diǎn)陣6.4.2使用74HC595驅(qū)動(dòng)LED點(diǎn)陣206.5使用MAX7219驅(qū)動(dòng)LED6.5.1MAX7219LED顯示驅(qū)動(dòng)器6.5.2MAX7219的數(shù)據(jù)格式6.5.3MAX7219的寄存器6.5.4LedControl庫(kù)6.5.5Arduino通過(guò)MAX7219控制8*8LED點(diǎn)陣6.5.6MAX7219級(jí)聯(lián)控制8*40LED點(diǎn)陣6.5使用MAX7219驅(qū)動(dòng)LED6.5.1MAX7216.5.1MAX7219LED顯示驅(qū)動(dòng)器MAX7219是小巧但功能強(qiáng)大的串行輸入輸出共陰極顯示驅(qū)動(dòng)器。它非常容易驅(qū)動(dòng)七段LED數(shù)碼管和LED點(diǎn)陣。6.5.1MAX7219LED顯示驅(qū)動(dòng)器MAX7219是22arduino入門(mén)很簡(jiǎn)單中課件236.5.2MAX7219的數(shù)據(jù)格式MAX7219的數(shù)據(jù)是以16位為一個(gè)單位的。D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0XXXX寄存器地址數(shù)據(jù)6.5.2MAX7219的數(shù)據(jù)格式MAX7219的數(shù)據(jù)是246.5.3MAX7219的寄存器MAX7219有14個(gè)可編址的寄存器,他們可以通過(guò)D11~D8的值來(lái)指定。寄存器寄存器地址16進(jìn)制表示D15~D12D11D10D9D8No-OpX00000xX0Digit0X00010xX1Digit1X00100xX2Digit2X00110xX3Digit3X01000xX4Digit4X01010xX5Digit5X01100xX6Digit6X01110xX7Digit7X10000xX8DecodeModeX10010xX9IntensityX10100xXAScanLimitX10110xXBShutdownX11000xXCDisplayTestX11110xXF6.5.3MAX7219的寄存器MAX7219有14個(gè)可256.5.4LedControl庫(kù)LedControl函數(shù)庫(kù)是一個(gè)可以全面控制MAX7219的一個(gè)第三方庫(kù),它可以從http://playground.arduino.cc/uploads/Main/LedControl.zip獲取。6.5.4LedControl庫(kù)LedControl函數(shù)266.5.5Arduino通過(guò)MAX7219控制8*8LED點(diǎn)陣1.MAX7219控制8*8LED點(diǎn)陣的連接電路2.Arduino通過(guò)MAX7219控制8*8LED的代碼實(shí)現(xiàn)6.5.5Arduino通過(guò)MAX7219控制8*8LE271.MAX7219控制8*8LED點(diǎn)陣的連接電路1.MAX7219控制8*8LED點(diǎn)陣的連接電路28arduino入門(mén)很簡(jiǎn)單中課件292.Arduino通過(guò)MAX7219控制8*8LED的代碼實(shí)現(xiàn)2.Arduino通過(guò)MAX7219控制8*8LED的代碼實(shí)306.5.6MAX7219級(jí)聯(lián)控制8*40LED點(diǎn)陣所謂級(jí)聯(lián)就是將兩個(gè)以上的設(shè)備通過(guò)某種方式連接起來(lái),起到擴(kuò)容的效果。MAX7219的級(jí)聯(lián)非常容易,只需要將上一級(jí)的DOUT作為下一級(jí)的DIN,然后共用LOAD和CLK信號(hào)。1.MAX7219級(jí)聯(lián)電路2.MAX7219級(jí)聯(lián)的控制代碼6.5.6MAX7219級(jí)聯(lián)控制8*40LED點(diǎn)陣所謂級(jí)311.MAX7219級(jí)聯(lián)電路1.MAX7219級(jí)聯(lián)電路322.MAX7219級(jí)聯(lián)的控制代碼2.MAX7219級(jí)聯(lián)的控制代碼336.6RGB三色LED6.6RGB三色LED346.7七段數(shù)碼管七段數(shù)碼管是常用來(lái)顯示數(shù)字的一類(lèi)數(shù)碼管。這類(lèi)數(shù)碼管是由多個(gè)發(fā)光二極管構(gòu)成的。6.7.1Arduino直接控制七段數(shù)碼管6.7.2Arduino通過(guò)74HC595控制一個(gè)七段數(shù)碼管6.7.3使用兩個(gè)74HC595驅(qū)動(dòng)4位七段數(shù)碼管6.7.4Arduino通過(guò)MAX7219控制七段數(shù)碼管6.7七段數(shù)碼管七段數(shù)碼管是常用來(lái)顯示數(shù)字的一類(lèi)數(shù)碼管。356.7.1Arduino直接控制七段數(shù)碼管6.7.1Arduino直接控制七段數(shù)碼管366.7.2Arduino通過(guò)74HC595控制一個(gè)七段數(shù)碼管6.7.2Arduino通過(guò)74HC595控制一個(gè)七段數(shù)376.7.3使用兩個(gè)74HC595驅(qū)動(dòng)4位七段數(shù)碼管4位七段數(shù)碼管通過(guò)多路復(fù)用技術(shù)將4個(gè)七段數(shù)碼管封裝在一起。6.7.3使用兩個(gè)74HC595驅(qū)動(dòng)4位七段數(shù)碼管4位七38arduino入門(mén)很簡(jiǎn)單中課件396.7.4Arduino通過(guò)MAX7219控制七段數(shù)碼管1.MAX7219控制七段數(shù)碼管的連接電路2.MAX7219控制七段數(shù)碼管的實(shí)現(xiàn)代碼6.7.4Arduino通過(guò)MAX7219控制七段數(shù)碼管401.MAX7219控制七段數(shù)碼管的連接電路1.MAX7219控制七段數(shù)碼管的連接電路41arduino入門(mén)很簡(jiǎn)單中課件422.MAX7219控制七段數(shù)碼管的實(shí)現(xiàn)代碼2.MAX7219控制七段數(shù)碼管的實(shí)現(xiàn)代碼43第7章蜂鳴器7.1蜂鳴器的工作原理及分類(lèi)7.2驅(qū)動(dòng)蜂鳴器程序7.3蜂鳴器使用實(shí)例第7章蜂鳴器7.1蜂鳴器的工作原理及分類(lèi)447.1蜂鳴器的工作原理及分類(lèi)蜂鳴器是通過(guò)給壓電材料供電來(lái)發(fā)出聲音的。壓電材料可以隨電壓和頻率的不同產(chǎn)生機(jī)械變形,從而產(chǎn)生不同頻率的聲音。蜂鳴器又分為有源蜂鳴器和無(wú)源蜂鳴器兩種。7.1蜂鳴器的工作原理及分類(lèi)蜂鳴器是通過(guò)給壓電材料供電來(lái)457.2驅(qū)動(dòng)蜂鳴器程序7.2.1驅(qū)動(dòng)有源蜂鳴器7.2.2驅(qū)動(dòng)無(wú)源蜂鳴器7.2驅(qū)動(dòng)蜂鳴器程序7.2.1驅(qū)動(dòng)有源蜂鳴器467.2.1驅(qū)動(dòng)有源蜂鳴器7.2.1驅(qū)動(dòng)有源蜂鳴器477.2.2驅(qū)動(dòng)無(wú)源蜂鳴器7.2.2驅(qū)動(dòng)無(wú)源蜂鳴器487.3蜂鳴器使用實(shí)例7.3.1使用無(wú)源蜂鳴器輸出7個(gè)基本音級(jí)7.3.2使用無(wú)源蜂鳴器演奏音樂(lè)7.3.3使用有源蜂鳴器發(fā)送S.O.S摩爾斯碼7.3蜂鳴器使用實(shí)例7.3.1使用無(wú)源蜂鳴器輸出7個(gè)497.3.1使用無(wú)源蜂鳴器輸出7個(gè)基本音級(jí)聲音是由物體振動(dòng)所產(chǎn)生的的。只是由于物體的材料以及振幅、頻率不同,而產(chǎn)生不同的聲音。聲音的響度是由振幅決定的。而音調(diào)則是由頻率決定的。音階1(Do)2(Re)3(Mi)4(Fa)5(Sol)6(La)7(Si)頻率2622943303493924404947.3.1使用無(wú)源蜂鳴器輸出7個(gè)基本音級(jí)聲音是由物體振動(dòng)507.3.2使用無(wú)源蜂鳴器演奏音樂(lè)有了上一個(gè)示例中的演奏7個(gè)基本音階的經(jīng)驗(yàn)后,我們就可以根據(jù)樂(lè)音知識(shí)來(lái)簡(jiǎn)易地演奏一些音樂(lè)。這里就以生日歌中的一個(gè)片段來(lái)進(jìn)行演示。該示例的元器件接法同示例7-3相同。7.3.2使用無(wú)源蜂鳴器演奏音樂(lè)有了上一個(gè)示例中的演奏7517.3.3使用有源蜂鳴器發(fā)送S.O.S摩爾斯碼使用有源蜂鳴器發(fā)送S.O.S莫爾斯碼的接法如圖7.4相同,讀者參照其連接即可。使用有源蜂鳴器發(fā)送S.O.S莫爾斯碼的程序與使用LED非常類(lèi)似,只需稍作修改即可。7.3.3使用有源蜂鳴器發(fā)送S.O.S摩爾斯碼使用有源蜂52第8章按鈕8.1按鈕的作用及分類(lèi)8.2按鈕的實(shí)質(zhì)8.3按鈕的使用示例第8章按鈕8.1按鈕的作用及分類(lèi)538.1按鈕的作用及分類(lèi)按鈕是一種非常常見(jiàn)而且形式多樣的控制電器元件。它常用來(lái)接通或者斷開(kāi)控制電路。按鈕可以分為如下的幾種形式:常開(kāi)按鈕:開(kāi)關(guān)觸點(diǎn)在默認(rèn)狀態(tài)下是斷開(kāi)的。常閉按鈕:開(kāi)關(guān)觸點(diǎn)在默認(rèn)狀態(tài)下是接通的。常開(kāi)/常閉按鈕:在默認(rèn)狀態(tài)下有接通和斷開(kāi)的按鈕。8.1按鈕的作用及分類(lèi)按鈕是一種非常常見(jiàn)而且形式多樣的控54arduino入門(mén)很簡(jiǎn)單中課件558.2按鈕的實(shí)質(zhì)按鈕的實(shí)質(zhì)就是用來(lái)發(fā)送一個(gè)電信號(hào)(低電平或者高電平),軟件可以根據(jù)檢測(cè)到的信號(hào)進(jìn)行相應(yīng)的操作。要在A(yíng)rduino上正確地使用按鈕,還需要了解兩個(gè)個(gè)重要的概念——上拉電阻和下拉電阻。首先來(lái)看一個(gè)不使用下拉電阻的電路,它用一個(gè)常開(kāi)按鈕控制Arduino的板載LED(名為L(zhǎng))。按鈕被按下時(shí)LED點(diǎn)亮,松開(kāi)時(shí)熄滅。8.2按鈕的實(shí)質(zhì)按鈕的實(shí)質(zhì)就是用來(lái)發(fā)送一個(gè)電信號(hào)(低電平568.3按鈕的使用示例8.3.1使用按鈕控制LED燈8.3.2使用Arduino的中斷8.3.3按鈕矩陣的使用8.3.4使用按鈕矩陣模擬鋼琴8.3按鈕的使用示例8.3.1使用按鈕控制LED燈578.3.1使用按鈕控制LED燈8.3.1使用按鈕控制LED燈588.3.2使用Arduino的中斷中斷會(huì)在需要的時(shí)候向CPU發(fā)送請(qǐng)求以通知CPU處理。CPU在接收到中斷后會(huì)暫停執(zhí)行當(dāng)前的任務(wù)轉(zhuǎn)而處理中斷,處理完成后繼續(xù)執(zhí)行之前的任務(wù)。而在中斷未發(fā)送的時(shí)間段內(nèi),CPU可以執(zhí)行其他的任務(wù),這明顯可以大幅度提高運(yùn)行效率。attachInterrupt(interrupt,ISR,mode)detachInterrupt(interrupt)8.3.2使用Arduino的中斷中斷會(huì)在需要的時(shí)候向C59arduino入門(mén)很簡(jiǎn)單中課件608.3.3按鈕矩陣的使用在本小節(jié)中使用的是名為Keypad的第三方庫(kù)。該庫(kù)可以從http://playground.arduino.cc//Code/Keypad#Download下載。8.3.3按鈕矩陣的使用在本小節(jié)中使用的是名為Keypa61arduino入門(mén)很簡(jiǎn)單中課件628.3.4使用按鈕矩陣模擬鋼琴8.3.4使用按鈕矩陣模擬鋼琴63第9章電位器9.1普通電位器9.2游戲搖桿9.3使用示例第9章電位器9.1普通電位器649.1普通電位器電位器是一種三端元件,它由兩個(gè)固定端和一個(gè)滑動(dòng)端組成。9.1普通電位器電位器是一種三端元件,它由兩個(gè)固定端和一659.2游戲搖桿游戲搖桿其實(shí)也是一種特殊的電位器。它的X軸和Y軸上分別裝有一個(gè)電位器。9.2游戲搖桿游戲搖桿其實(shí)也是一種特殊的電位器。它的X軸669.3使用示例9.3.1讀取電位器的值9.3.2使用電位器控制LED亮度9.3.3使用電位器控制LED流水燈速度9.3.4游戲搖桿的使用9.3使用示例9.3.1讀取電位器的值679.3.1讀取電位器的值電位器在旋轉(zhuǎn)(旋轉(zhuǎn)式電位器)和滑動(dòng)(滑動(dòng)式電位器)的過(guò)程中會(huì)將更大或者更小的電阻接入電路,而對(duì)應(yīng)的電壓則變小或者變大。通過(guò)Arduino的模擬輸入端口,可以讀取到這個(gè)電壓,并為其映射一個(gè)相應(yīng)的值。analogRead(pin)9.3.1讀取電位器的值電位器在旋轉(zhuǎn)(旋轉(zhuǎn)式電位器)和滑68arduino入門(mén)很簡(jiǎn)單中課件699.3.2使用電位器控制LED亮度9.3.2使用電位器控制LED亮度709.3.3使用電位器控制LED流水燈速度9.3.3使用電位器控制LED流水燈速度719.3.4游戲搖桿的使用1.獲取游戲搖桿的XY軸方向的值2.使用游戲搖桿控制4個(gè)LED9.3.4游戲搖桿的使用1.獲取游戲搖桿的XY軸方向的值721.獲取游戲搖桿的XY軸方向的值1.獲取游戲搖桿的XY軸方向的值732.使用游戲搖桿控制4個(gè)LED2.使用游戲搖桿控制4個(gè)LED74第10章光敏電阻和常見(jiàn)傳感器10.1光敏電阻10.2火焰?zhèn)鞲衅?0.3溫濕度傳感器10.4紅外線(xiàn)收發(fā)10.5液位傳感器第10章光敏電阻和常見(jiàn)傳感器10.1光敏電阻7510.1光敏電阻10.1.1光敏電阻應(yīng)用原理10.1.2光控?zé)?0.1光敏電阻10.1.1光敏電阻應(yīng)用原理7610.1.1光敏電阻應(yīng)用原理根據(jù)串聯(lián)電路的電壓規(guī)律——串聯(lián)電路的總電壓等于各部分電路兩端電壓之和,也就是說(shuō),光敏電阻的阻值越大,則它分到的電壓就越多,而總的電壓是固定的。那么,其他部分電路的電壓就必然會(huì)減小。10.1.1光敏電阻應(yīng)用原理根據(jù)串聯(lián)電路的電壓規(guī)律——串77arduino入門(mén)很簡(jiǎn)單中課件7810.1.2光控?zé)艄饷綦娮柙谌粘I钪凶畛R?jiàn)的一種應(yīng)用就是聲控?zé)簦?dāng)然常見(jiàn)的聲控?zé)糁羞€使用到了聲音傳感器,因此在本小節(jié)中就實(shí)現(xiàn)一個(gè)光控?zé)?。該光控?zé)粼诠饩€(xiàn)暗比較暗的時(shí)候點(diǎn)亮,而在光線(xiàn)明亮的時(shí)候熄滅。10.1.2光控?zé)艄饷綦娮柙谌粘I钪凶畛R?jiàn)的一種應(yīng)用就79arduino入門(mén)很簡(jiǎn)單中課件8010.2火焰?zhèn)鞲衅?0.2火焰?zhèn)鞲衅?1arduino入門(mén)很簡(jiǎn)單中課件8210.3溫濕度傳感器10.3.1精密攝氏溫度傳感器LM3510.3.2溫濕度傳感器模塊10.3溫濕度傳感器10.3.1精密攝氏溫度傳感器L8310.3.1精密攝氏溫度傳感器LM3510.3.1精密攝氏溫度傳感器LM358410.3.2溫濕度傳感器模塊溫濕度傳感器是集溫度濕度檢測(cè)于一體的傳感器在實(shí)際中常用的是DHT11。10.3.2溫濕度傳感器模塊溫濕度傳感器是集溫度濕度檢測(cè)8510.4紅外線(xiàn)收發(fā)10.4.1紅外線(xiàn)模塊構(gòu)成10.4.2使用第三庫(kù)Irremote10.4紅外線(xiàn)收發(fā)10.4.1紅外線(xiàn)模塊構(gòu)成8610.4.1紅外線(xiàn)模塊構(gòu)成最初的紅外線(xiàn)接收端則是由單獨(dú)的光敏電阻和集成電路組成的。現(xiàn)在的接收端普遍將光敏電阻和接收、放大、解調(diào)電路集成到了一起。這種形式的優(yōu)勢(shì)就在于體積非常小。在接下來(lái)的講解中將使用VS1838B來(lái)作為接收端而發(fā)射端則是一個(gè)常見(jiàn)的MP3遙控器。10.4.1紅外線(xiàn)模塊構(gòu)成最初的紅外線(xiàn)接收端則是由單獨(dú)的8710.4.2使用第三庫(kù)Irremote10.4.2使用第三庫(kù)Irremote88arduino入門(mén)很簡(jiǎn)單中課件8910.5液位傳感器10.5.1接觸式液位傳感器10.5.2完善液位傳感器10.5液位傳感器10.5.1接觸式液位傳感器9010.5.1接觸式液位傳感器10.5.1接觸式液位傳感器9110.5.2完善液位傳感器(1)通過(guò)測(cè)量或者查看器件手冊(cè)獲取液位傳感器可以測(cè)量的最高液位;(2)將液位傳感器測(cè)量液位部分完全浸入液體中,記錄Arduino讀取到的電壓值;(3)使用map()函數(shù)將電壓與液位重新映射。10.5.2完善液位傳感器(1)通過(guò)測(cè)量或者查看器件手冊(cè)92謝謝!謝謝!93arduino入門(mén)很簡(jiǎn)單中arduino入門(mén)很簡(jiǎn)單中arduino入門(mén)很簡(jiǎn)單中6.1使用到的專(zhuān)用器件在本節(jié)中只需要使用到一個(gè)專(zhuān)用的器件——LED二極管。LED二極管的類(lèi)型和規(guī)格有很多,這里使用的是一個(gè)藍(lán)色的5MM發(fā)光二極管。arduino入門(mén)很簡(jiǎn)單中arduino入門(mén)很簡(jiǎn)單中ardu946.1使用到的專(zhuān)用器件在本節(jié)中只需要使用到一個(gè)專(zhuān)用的器件——LED二極管。LED二極管的類(lèi)型和規(guī)格有很多,這里使用的是一個(gè)藍(lán)色的5MM發(fā)光二極管。6.1使用到的專(zhuān)用器件在本節(jié)中只需要使用到一個(gè)專(zhuān)用的器件956.2驅(qū)動(dòng)單個(gè)LED程序驅(qū)動(dòng)LED的程序非常簡(jiǎn)單。要持續(xù)地點(diǎn)亮一個(gè)LED二極管,只需要為L(zhǎng)ED二極管提供一個(gè)額定范圍內(nèi)恒定的電壓即可。Arduino開(kāi)發(fā)板的針腳有輸入和輸出兩種模式,將針腳設(shè)置為輸出模式后就可以做為電源。指定Arduino針腳模式的函數(shù)原型如下:pinMode(pin,mode)6.2驅(qū)動(dòng)單個(gè)LED程序驅(qū)動(dòng)LED的程序非常簡(jiǎn)單。要持續(xù)966.2.1使用數(shù)字針腳點(diǎn)亮LED由于數(shù)字針腳只能輸出高電壓和低電壓,因此在不借用其他元件的情況下只可以點(diǎn)亮或者熄滅LED。6.2.1使用數(shù)字針腳點(diǎn)亮LED由于數(shù)字針腳只能輸出高電971.電路圖1.電路圖982.程序intpin=10; //指定LED連接的針腳voidsetup(){pinMode(pin,OUTPUT);//設(shè)置針腳模式為輸出digitalWrite(pin,HIGH);//設(shè)置針腳輸出電壓}voidloop(){
}2.程序intpin=10; //指定LED連接的針腳996.2.2使用模擬針腳點(diǎn)亮LED經(jīng)過(guò)前面講解可以得知,analogWrite()函數(shù)可以修改針腳的輸出電壓(0~5V)。那么,就可以通過(guò)為analogWrite()函數(shù)傳入不同的參數(shù)來(lái)控制針腳的輸出電壓,進(jìn)而就可以控制LED的亮度。6.2.2使用模擬針腳點(diǎn)亮LED經(jīng)過(guò)前面講解可以得知,a1006.2.3使用LED發(fā)送S.O.S摩爾斯碼摩爾斯電碼可以很方便地用來(lái)發(fā)送英文字母、數(shù)字以及部分符號(hào)。摩爾斯電碼是通過(guò)控制電信號(hào)的長(zhǎng)短來(lái)發(fā)聲信息的。SOS這三個(gè)字母的摩爾斯電碼表示如下:···―――···6.2.3使用LED發(fā)送S.O.S摩爾斯碼摩爾斯電碼可以1016.2.4使用LED發(fā)送摩爾斯電碼從示例6-5中的代碼中也可以看出dot()和dash()函數(shù)是非常類(lèi)似的,只是等待的時(shí)間不同而已,而這個(gè)等待的時(shí)間也是以一個(gè)基準(zhǔn)的時(shí)間變量stdd來(lái)設(shè)置的。那么,我們就可以進(jìn)一步地將上面這兩個(gè)個(gè)函數(shù)用一個(gè)函數(shù)來(lái)實(shí)現(xiàn):voiddot(intledPin,intlen,intstdd){digitalWrite(ledPin,HIGH);delay(stdd*len);digitalWrite(ledPin,LOW);delay(stdd*2);}6.2.4使用LED發(fā)送摩爾斯電碼從示例6-5中的代碼中1026.2.5LED跑馬燈6.2.5LED跑馬燈1036.2.6使用LED模擬交通燈6.2.6使用LED模擬交通燈1046.3驅(qū)動(dòng)LED點(diǎn)陣6.3.1LED點(diǎn)陣顯示表情6.3.2LED點(diǎn)陣跑馬燈6.3.3回紋燈6.3.4矩形回縮燈6.3驅(qū)動(dòng)LED點(diǎn)陣6.3.1LED點(diǎn)陣顯示表情1056.3.1LED點(diǎn)陣顯示表情6.3.1LED點(diǎn)陣顯示表情1066.3.2LED點(diǎn)陣跑馬燈在6.3.5小節(jié)中實(shí)現(xiàn)了由三個(gè)LED組成的簡(jiǎn)易跑馬燈,在本節(jié)就在8*8的LED點(diǎn)陣上來(lái)實(shí)現(xiàn)跑馬燈。這個(gè)示例的電路不需要改動(dòng),我們直接編寫(xiě)對(duì)應(yīng)的程序就可以了。6.3.2LED點(diǎn)陣跑馬燈在6.3.5小節(jié)中實(shí)現(xiàn)了由三個(gè)1076.3.3回紋燈回紋表示的是從外圈向中心回旋的方式,在我們將要實(shí)現(xiàn)的回紋燈就是使用LED點(diǎn)陣來(lái)實(shí)現(xiàn)這一描述?;丶y燈的實(shí)現(xiàn)電路與之前的LED點(diǎn)陣示例接法相同,因此這里只需要重新設(shè)計(jì)程序即可。6.3.3回紋燈回紋表示的是從外圈向中心回旋的方式,在我1086.3.4矩形回縮燈矩形回縮燈就是從LED點(diǎn)陣最外圈的8*8矩形回縮到最小的2*2的矩形(以8*8點(diǎn)陣為例),以這種形式來(lái)展現(xiàn)類(lèi)似矩形縮放的效果。其電路接法與前面的所有示例相同,因此這里只需要重新編寫(xiě)程序即可。6.3.4矩形回縮燈矩形回縮燈就是從LED點(diǎn)陣最外圈的81096.4使用74HC595驅(qū)動(dòng)LED6.4.174HC595使用方式6.4.2使用74HC595驅(qū)動(dòng)LED點(diǎn)陣6.4使用74HC595驅(qū)動(dòng)LED6.4.174HC1106.4.174HC595使用方式74HC595是一個(gè)CMOS(ComplementaryMetal-Oxide-Semiconductor)器件6.4.174HC595使用方式74HC595是一個(gè)CM111arduino入門(mén)很簡(jiǎn)單中課件1126.4.2使用74HC595驅(qū)動(dòng)LED點(diǎn)陣6.4.2使用74HC595驅(qū)動(dòng)LED點(diǎn)陣1136.5使用MAX7219驅(qū)動(dòng)LED6.5.1MAX7219LED顯示驅(qū)動(dòng)器6.5.2MAX7219的數(shù)據(jù)格式6.5.3MAX7219的寄存器6.5.4LedControl庫(kù)6.5.5Arduino通過(guò)MAX7219控制8*8LED點(diǎn)陣6.5.6MAX7219級(jí)聯(lián)控制8*40LED點(diǎn)陣6.5使用MAX7219驅(qū)動(dòng)LED6.5.1MAX71146.5.1MAX7219LED顯示驅(qū)動(dòng)器MAX7219是小巧但功能強(qiáng)大的串行輸入輸出共陰極顯示驅(qū)動(dòng)器。它非常容易驅(qū)動(dòng)七段LED數(shù)碼管和LED點(diǎn)陣。6.5.1MAX7219LED顯示驅(qū)動(dòng)器MAX7219是115arduino入門(mén)很簡(jiǎn)單中課件1166.5.2MAX7219的數(shù)據(jù)格式MAX7219的數(shù)據(jù)是以16位為一個(gè)單位的。D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0XXXX寄存器地址數(shù)據(jù)6.5.2MAX7219的數(shù)據(jù)格式MAX7219的數(shù)據(jù)是1176.5.3MAX7219的寄存器MAX7219有14個(gè)可編址的寄存器,他們可以通過(guò)D11~D8的值來(lái)指定。寄存器寄存器地址16進(jìn)制表示D15~D12D11D10D9D8No-OpX00000xX0Digit0X00010xX1Digit1X00100xX2Digit2X00110xX3Digit3X01000xX4Digit4X01010xX5Digit5X01100xX6Digit6X01110xX7Digit7X10000xX8DecodeModeX10010xX9IntensityX10100xXAScanLimitX10110xXBShutdownX11000xXCDisplayTestX11110xXF6.5.3MAX7219的寄存器MAX7219有14個(gè)可1186.5.4LedControl庫(kù)LedControl函數(shù)庫(kù)是一個(gè)可以全面控制MAX7219的一個(gè)第三方庫(kù),它可以從http://playground.arduino.cc/uploads/Main/LedControl.zip獲取。6.5.4LedControl庫(kù)LedControl函數(shù)1196.5.5Arduino通過(guò)MAX7219控制8*8LED點(diǎn)陣1.MAX7219控制8*8LED點(diǎn)陣的連接電路2.Arduino通過(guò)MAX7219控制8*8LED的代碼實(shí)現(xiàn)6.5.5Arduino通過(guò)MAX7219控制8*8LE1201.MAX7219控制8*8LED點(diǎn)陣的連接電路1.MAX7219控制8*8LED點(diǎn)陣的連接電路121arduino入門(mén)很簡(jiǎn)單中課件1222.Arduino通過(guò)MAX7219控制8*8LED的代碼實(shí)現(xiàn)2.Arduino通過(guò)MAX7219控制8*8LED的代碼實(shí)1236.5.6MAX7219級(jí)聯(lián)控制8*40LED點(diǎn)陣所謂級(jí)聯(lián)就是將兩個(gè)以上的設(shè)備通過(guò)某種方式連接起來(lái),起到擴(kuò)容的效果。MAX7219的級(jí)聯(lián)非常容易,只需要將上一級(jí)的DOUT作為下一級(jí)的DIN,然后共用LOAD和CLK信號(hào)。1.MAX7219級(jí)聯(lián)電路2.MAX7219級(jí)聯(lián)的控制代碼6.5.6MAX7219級(jí)聯(lián)控制8*40LED點(diǎn)陣所謂級(jí)1241.MAX7219級(jí)聯(lián)電路1.MAX7219級(jí)聯(lián)電路1252.MAX7219級(jí)聯(lián)的控制代碼2.MAX7219級(jí)聯(lián)的控制代碼1266.6RGB三色LED6.6RGB三色LED1276.7七段數(shù)碼管七段數(shù)碼管是常用來(lái)顯示數(shù)字的一類(lèi)數(shù)碼管。這類(lèi)數(shù)碼管是由多個(gè)發(fā)光二極管構(gòu)成的。6.7.1Arduino直接控制七段數(shù)碼管6.7.2Arduino通過(guò)74HC595控制一個(gè)七段數(shù)碼管6.7.3使用兩個(gè)74HC595驅(qū)動(dòng)4位七段數(shù)碼管6.7.4Arduino通過(guò)MAX7219控制七段數(shù)碼管6.7七段數(shù)碼管七段數(shù)碼管是常用來(lái)顯示數(shù)字的一類(lèi)數(shù)碼管。1286.7.1Arduino直接控制七段數(shù)碼管6.7.1Arduino直接控制七段數(shù)碼管1296.7.2Arduino通過(guò)74HC595控制一個(gè)七段數(shù)碼管6.7.2Arduino通過(guò)74HC595控制一個(gè)七段數(shù)1306.7.3使用兩個(gè)74HC595驅(qū)動(dòng)4位七段數(shù)碼管4位七段數(shù)碼管通過(guò)多路復(fù)用技術(shù)將4個(gè)七段數(shù)碼管封裝在一起。6.7.3使用兩個(gè)74HC595驅(qū)動(dòng)4位七段數(shù)碼管4位七131arduino入門(mén)很簡(jiǎn)單中課件1326.7.4Arduino通過(guò)MAX7219控制七段數(shù)碼管1.MAX7219控制七段數(shù)碼管的連接電路2.MAX7219控制七段數(shù)碼管的實(shí)現(xiàn)代碼6.7.4Arduino通過(guò)MAX7219控制七段數(shù)碼管1331.MAX7219控制七段數(shù)碼管的連接電路1.MAX7219控制七段數(shù)碼管的連接電路134arduino入門(mén)很簡(jiǎn)單中課件1352.MAX7219控制七段數(shù)碼管的實(shí)現(xiàn)代碼2.MAX7219控制七段數(shù)碼管的實(shí)現(xiàn)代碼136第7章蜂鳴器7.1蜂鳴器的工作原理及分類(lèi)7.2驅(qū)動(dòng)蜂鳴器程序7.3蜂鳴器使用實(shí)例第7章蜂鳴器7.1蜂鳴器的工作原理及分類(lèi)1377.1蜂鳴器的工作原理及分類(lèi)蜂鳴器是通過(guò)給壓電材料供電來(lái)發(fā)出聲音的。壓電材料可以隨電壓和頻率的不同產(chǎn)生機(jī)械變形,從而產(chǎn)生不同頻率的聲音。蜂鳴器又分為有源蜂鳴器和無(wú)源蜂鳴器兩種。7.1蜂鳴器的工作原理及分類(lèi)蜂鳴器是通過(guò)給壓電材料供電來(lái)1387.2驅(qū)動(dòng)蜂鳴器程序7.2.1驅(qū)動(dòng)有源蜂鳴器7.2.2驅(qū)動(dòng)無(wú)源蜂鳴器7.2驅(qū)動(dòng)蜂鳴器程序7.2.1驅(qū)動(dòng)有源蜂鳴器1397.2.1驅(qū)動(dòng)有源蜂鳴器7.2.1驅(qū)動(dòng)有源蜂鳴器1407.2.2驅(qū)動(dòng)無(wú)源蜂鳴器7.2.2驅(qū)動(dòng)無(wú)源蜂鳴器1417.3蜂鳴器使用實(shí)例7.3.1使用無(wú)源蜂鳴器輸出7個(gè)基本音級(jí)7.3.2使用無(wú)源蜂鳴器演奏音樂(lè)7.3.3使用有源蜂鳴器發(fā)送S.O.S摩爾斯碼7.3蜂鳴器使用實(shí)例7.3.1使用無(wú)源蜂鳴器輸出7個(gè)1427.3.1使用無(wú)源蜂鳴器輸出7個(gè)基本音級(jí)聲音是由物體振動(dòng)所產(chǎn)生的的。只是由于物體的材料以及振幅、頻率不同,而產(chǎn)生不同的聲音。聲音的響度是由振幅決定的。而音調(diào)則是由頻率決定的。音階1(Do)2(Re)3(Mi)4(Fa)5(Sol)6(La)7(Si)頻率2622943303493924404947.3.1使用無(wú)源蜂鳴器輸出7個(gè)基本音級(jí)聲音是由物體振動(dòng)1437.3.2使用無(wú)源蜂鳴器演奏音樂(lè)有了上一個(gè)示例中的演奏7個(gè)基本音階的經(jīng)驗(yàn)后,我們就可以根據(jù)樂(lè)音知識(shí)來(lái)簡(jiǎn)易地演奏一些音樂(lè)。這里就以生日歌中的一個(gè)片段來(lái)進(jìn)行演示。該示例的元器件接法同示例7-3相同。7.3.2使用無(wú)源蜂鳴器演奏音樂(lè)有了上一個(gè)示例中的演奏71447.3.3使用有源蜂鳴器發(fā)送S.O.S摩爾斯碼使用有源蜂鳴器發(fā)送S.O.S莫爾斯碼的接法如圖7.4相同,讀者參照其連接即可。使用有源蜂鳴器發(fā)送S.O.S莫爾斯碼的程序與使用LED非常類(lèi)似,只需稍作修改即可。7.3.3使用有源蜂鳴器發(fā)送S.O.S摩爾斯碼使用有源蜂145第8章按鈕8.1按鈕的作用及分類(lèi)8.2按鈕的實(shí)質(zhì)8.3按鈕的使用示例第8章按鈕8.1按鈕的作用及分類(lèi)1468.1按鈕的作用及分類(lèi)按鈕是一種非常常見(jiàn)而且形式多樣的控制電器元件。它常用來(lái)接通或者斷開(kāi)控制電路。按鈕可以分為如下的幾種形式:常開(kāi)按鈕:開(kāi)關(guān)觸點(diǎn)在默認(rèn)狀態(tài)下是斷開(kāi)的。常閉按鈕:開(kāi)關(guān)觸點(diǎn)在默認(rèn)狀態(tài)下是接通的。常開(kāi)/常閉按鈕:在默認(rèn)狀態(tài)下有接通和斷開(kāi)的按鈕。8.1按鈕的作用及分類(lèi)按鈕是一種非常常見(jiàn)而且形式多樣的控147arduino入門(mén)很簡(jiǎn)單中課件1488.2按鈕的實(shí)質(zhì)按鈕的實(shí)質(zhì)就是用來(lái)發(fā)送一個(gè)電信號(hào)(低電平或者高電平),軟件可以根據(jù)檢測(cè)到的信號(hào)進(jìn)行相應(yīng)的操作。要在A(yíng)rduino上正確地使用按鈕,還需要了解兩個(gè)個(gè)重要的概念——上拉電阻和下拉電阻。首先來(lái)看一個(gè)不使用下拉電阻的電路,它用一個(gè)常開(kāi)按鈕控制Arduino的板載LED(名為L(zhǎng))。按鈕被按下時(shí)LED點(diǎn)亮,松開(kāi)時(shí)熄滅。8.2按鈕的實(shí)質(zhì)按鈕的實(shí)質(zhì)就是用來(lái)發(fā)送一個(gè)電信號(hào)(低電平1498.3按鈕的使用示例8.3.1使用按鈕控制LED燈8.3.2使用Arduino的中斷8.3.3按鈕矩陣的使用8.3.4使用按鈕矩陣模擬鋼琴8.3按鈕的使用示例8.3.1使用按鈕控制LED燈1508.3.1使用按鈕控制LED燈8.3.1使用按鈕控制LED燈1518.3.2使用Arduino的中斷中斷會(huì)在需要的時(shí)候向CPU發(fā)送請(qǐng)求以通知CPU處理。CPU在接收到中斷后會(huì)暫停執(zhí)行當(dāng)前的任務(wù)轉(zhuǎn)而處理中斷,處理完成后繼續(xù)執(zhí)行之前的任務(wù)。而在中斷未發(fā)送的時(shí)間段內(nèi),CPU可以執(zhí)行其他的任務(wù),這明顯可以大幅度提高運(yùn)行效率。attachInterrupt(interrupt,ISR,mode)detachInterrupt(interrupt)8.3.2使用Arduino的中斷中斷會(huì)在需要的時(shí)候向C152arduino入門(mén)很簡(jiǎn)單中課件1538.3.3按鈕矩陣的使用在本小節(jié)中使用的是名為Keypad的第三方庫(kù)。該庫(kù)可以從http://playground.arduino.cc//Code/Keypad#Download下載。8.3.3按鈕矩陣的使用在本小節(jié)中使用的是名為Keypa154arduino入門(mén)很簡(jiǎn)單中課件1558.3.4使用按鈕矩陣模擬鋼琴8.3.4使用按鈕矩陣模擬鋼琴156第9章電位器9.1普通電位器9.2游戲搖桿9.3使用示例第9章電位器9.1普通電位器1579.1普通電位器電位器是一種三端元件,它由兩個(gè)固定端和一個(gè)滑動(dòng)端組成。9.1普通電位器電位器是一種三端元件,它由兩個(gè)固定端和一1589.2游戲搖桿游戲搖桿其實(shí)也是一種特殊的電位器。它的X軸和Y軸上分別裝有一個(gè)電位器。9.2游戲搖桿游戲搖桿其實(shí)也是一種特殊的電位器。它的X軸1599.3使用示例9.3.1讀取電位器的值9.3.2使用電位器控制LED亮度9.3.3使用電位器控制LED流水燈速度9.3.4游戲搖桿的使用9.3使用示例9.3.1讀取電位器的值1609.3.1讀取電位器的值電位器在旋轉(zhuǎn)(旋轉(zhuǎn)式電位器)和滑動(dòng)(滑動(dòng)式電位器)的過(guò)程中會(huì)將更大或者更小的電阻接入電路,而對(duì)應(yīng)的電壓則變小或者變大。通過(guò)Arduin
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年“新九論”學(xué)習(xí)心得體會(huì)例文(3篇)
- 2025年湖南貨運(yùn)從業(yè)資格證新政
- 2025年濰坊b2貨運(yùn)資格證多少道題
- 二零二五版籃球場(chǎng)地租賃及賽事門(mén)票銷(xiāo)售合同3篇
- 2025版體檢服務(wù)信息化建設(shè)合作合同協(xié)議2篇
- 2024跨國(guó)公司研發(fā)中心合作合同
- 二零二五年度城市綜合體消防安全管理代理服務(wù)合同3篇
- 二零二五年度合同擔(dān)保制度標(biāo)準(zhǔn)合同范本匯編3篇
- 2025版天然氣發(fā)電機(jī)組購(gòu)銷(xiāo)合同范本3篇
- 2025年度個(gè)人對(duì)公司借款及稅收優(yōu)惠合同規(guī)范4篇
- 無(wú)人化農(nóng)場(chǎng)項(xiàng)目可行性研究報(bào)告
- 《如何存款最合算》課件
- 社區(qū)團(tuán)支部工作計(jì)劃
- 拖欠工程款上訪(fǎng)信范文
- 2024屆上海市金山區(qū)高三下學(xué)期二模英語(yǔ)試題(原卷版)
- 《wifi協(xié)議文庫(kù)》課件
- 《好東西》:女作者電影的話(huà)語(yǔ)建構(gòu)與烏托邦想象
- 教培行業(yè)研究系列(七):出國(guó)考培的再研究供需變化的新趨勢(shì)
- 真人cs基于信號(hào)發(fā)射的激光武器設(shè)計(jì)
- 2024年國(guó)信證券招聘筆試參考題庫(kù)附帶答案詳解
- 道醫(yī)館可行性報(bào)告
評(píng)論
0/150
提交評(píng)論