久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 42290|回復(fù): 9
收起左側(cè)

Arduino教程-讓LED神燈亮度漸變

  [復(fù)制鏈接]
ID:99556 發(fā)表于 2015-12-19 21:36 | 顯示全部樓層 |閱讀模式
Hi,大家好!上一次我們一起學(xué)習(xí)了如何讓LED神燈閃爍。閃爍的狀態(tài)只能表現(xiàn)出兩種狀態(tài),要么亮,要么滅。今天我們換一種變化方式,讓LED神燈的亮度有漸變的效果。
嗯,在開(kāi)始之前,我們要先在硬件和軟件方面做一些準(zhǔn)備。
硬件方面 arduino-led.jpg
圖片來(lái)源:Arduino-UNO-LED
像之前一樣,依然是一塊Arduino UNO電路板,一盞標(biāo)準(zhǔn)的LED神燈,還有一條連接Arduino和電腦的USB線。
軟件方面Arduino官方提供的IDE即可。
像之前一樣,準(zhǔn)備好上面的軟硬件之后,接下來(lái)需要連接好電路,然后敲幾行代碼,就可以讓LED神燈產(chǎn)生亮度漸變的效果啦!
連接電路 arduino-led-fade.jpg
圖片來(lái)源:Arduino連接LED電路示意圖
和讓LED神燈閃爍的電路連接一樣,只需要簡(jiǎn)單的一步,即可連接好我們的電路。這里唯一要注意的點(diǎn)是,LED的長(zhǎng)針腳要插入11號(hào)孔,短針腳插入GND地線孔內(nèi),這一點(diǎn)要注意!最后,用USB線把Arduino連接到電腦上,連好之后會(huì)看到Arduino電路板上的一個(gè)小電源燈被點(diǎn)亮!
添加幾行代碼像之前一樣,最后需要我們添加幾行代碼,即可大功告成!
首先打開(kāi)Arduino的IDE,新建一個(gè)Arduino項(xiàng)目窗口。
arduino-ide-new.jpg
圖片來(lái)源:Arduino官方IDE
新建完成之后,需要向其中添加幾行代碼。


  1. // 定義LED神燈的針腳號(hào)是 11
  2. int led = 11;
  3. // 定義LED神燈當(dāng)前亮度值為整數(shù)值0
  4. int brightness = 0;
  5. // 定義LED神燈亮度變化的幅度為整數(shù)值5
  6. int fadeAmount = 5;

  7. // 對(duì)Arduino電路板或相關(guān)狀態(tài)進(jìn)行初始化方法         
  8. void setup() {
  9.   // 聲明11號(hào)針腳為輸出狀態(tài)
  10.   pinMode(led, OUTPUT);
  11. }

  12. // 系統(tǒng)調(diào)用,無(wú)限循環(huán)方法
  13. void loop() {
  14.   // 設(shè)置LED神燈的當(dāng)前亮度
  15.   analogWrite(led, brightness);

  16.   // 計(jì)算LED神燈的此次循環(huán)的亮度數(shù)值,
  17.   // 每次循環(huán)累加5(fadeAmount定義的數(shù)值)。
  18.   brightness = brightness + fadeAmount;

  19.   // 此判斷語(yǔ)句實(shí)現(xiàn)的效果是,判斷LED神燈的當(dāng)前亮度,
  20.   // 當(dāng)LED神燈全亮,將fadeAmount數(shù)值變?yōu)樨?fù)數(shù),
  21.   // 達(dá)到降低LED神燈亮度的效果。
  22.   // 當(dāng)LED神燈熄滅,將fadeAmount數(shù)值變?yōu)檎龜?shù),
  23.   // 達(dá)到增加LED神燈亮度的效果。
  24.   if (brightness == 0 || brightness == 255) {
  25.     fadeAmount = -fadeAmount ;
  26.   }
  27.   // 每次循環(huán)結(jié)束,進(jìn)入下一次循環(huán)之前,延時(shí)30毫秒執(zhí)行
  28.   delay(30);
  29. }
復(fù)制代碼


完工!比起之前的學(xué)習(xí),好像這次多了點(diǎn)什么?是的,多了一個(gè)if判斷語(yǔ)句,小括號(hào)中出現(xiàn)的兩根豎線||是或的意思,即符號(hào)兩邊的語(yǔ)句只要有一個(gè)正確,即可執(zhí)行大括號(hào)的程序。
除此之外,還出現(xiàn)了一個(gè)新方法,即analogWrite(),這個(gè)方法和之前在學(xué)習(xí)中遇到的那個(gè)digitalWrite()是兩兄弟,分別對(duì)應(yīng)著電路中的模擬信號(hào)和數(shù)字信號(hào)的設(shè)置,從方法名即可看出,前一個(gè)是對(duì)針腳進(jìn)行模擬信號(hào)的設(shè)置,后一個(gè)是對(duì)針腳進(jìn)行數(shù)字信號(hào)的設(shè)置。為什么要使用analogWrite()方法呢?很簡(jiǎn)單,因?yàn)槟M信號(hào)是連續(xù)的,數(shù)字信號(hào)是非連續(xù)的。只有連續(xù)的信號(hào)才可以讓LED神燈產(chǎn)生漸變的效果,所以這里使用的是模擬信號(hào)。
還剩最后一步!把代碼燒入Arduino!只需要點(diǎn)擊新建項(xiàng)目文件上,那個(gè)指向右側(cè)箭頭的圖標(biāo),即可自動(dòng)完成代碼的燒入。
arduino-menu.jpg
圖片來(lái)源:Arduino官方IDE的文件編輯菜單選項(xiàng)(注意此處不是指Arduino頂部工具欄)
如果在此操作中碰到了連接Arduino的失敗錯(cuò)誤,可以查看點(diǎn)亮LED神燈那一節(jié)中,關(guān)于這部分需要注意的兩個(gè)小細(xì)節(jié)。
如果一切順利,將會(huì)看到LED神燈漸變閃爍的效果!
總結(jié)通過(guò)這次學(xué)習(xí),我們實(shí)現(xiàn)了LED神燈的亮度進(jìn)行漸變的效果。多出來(lái)的知識(shí)點(diǎn)呢,一共有兩個(gè),一個(gè)是if語(yǔ)句,另一個(gè)是analogWrite()方法。
下期預(yù)告至此呢,我們已經(jīng)學(xué)習(xí)了點(diǎn)亮LED神燈,以及點(diǎn)亮神燈的兩種方式。通過(guò)這兩種點(diǎn)亮LED神燈的方式,我們了解了如何向外輸出數(shù)字信號(hào),以及模擬信號(hào)。接下來(lái),我們將會(huì)學(xué)習(xí)如何從Arduino讀出元器件輸入的數(shù)字信號(hào)以及模擬信號(hào)。


ohcoder的系列精彩Arduino教程:
Arduino教程-初識(shí)Arduino(包含本教程目錄):http://m.zg4o1577.cn/bbs/dpj-41334-1.html
Arduino教程-開(kāi)篇:http://m.zg4o1577.cn/bbs/dpj-41335-1.html
Arduino教程-點(diǎn)亮LED神燈:http://m.zg4o1577.cn/bbs/dpj-41336-1.html
Arduino教程-讓LED神燈閃爍:http://m.zg4o1577.cn/bbs/dpj-41337-1.html
Arduino教程-讓LED神燈亮度漸變:http://m.zg4o1577.cn/bbs/dpj-41338-1.html
Arduino教程-獲取輸入數(shù)字信號(hào):http://m.zg4o1577.cn/bbs/dpj-41339-1.html
Arduino教程-獲取輸入模擬信號(hào):http://m.zg4o1577.cn/bbs/dpj-41340-1.html
Arduino教程-另一種時(shí)間延遲:http://m.zg4o1577.cn/bbs/dpj-41331-1.html
Arduino教程-按鍵開(kāi)關(guān):http://m.zg4o1577.cn/bbs/dpj-41341-1.html
Arduino教程-停止抖動(dòng)!:http://m.zg4o1577.cn/bbs/dpj-41333-1.html
Arduino教程-拋棄外部電阻!:http://m.zg4o1577.cn/bbs/dpj-41332-1.html
Arduino教程-用按鍵開(kāi)關(guān)計(jì)數(shù):http://m.zg4o1577.cn/bbs/dpj-41330-1.html

………后續(xù)持續(xù)更新中請(qǐng)打開(kāi):http://m.zg4o1577.cn/bbs/dpj-41334-1.html

評(píng)分

參與人數(shù) 1黑幣 +1 收起 理由
是阿阿阿周 + 1

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:173823 發(fā)表于 2017-3-19 22:24 來(lái)自觸屏版 | 顯示全部樓層
大師你好我想求一個(gè)源程序(我只是想學(xué)習(xí)用Ardunio NANO同時(shí)控制一個(gè)舵機(jī)在45度-90度-135度之間來(lái)回停頓運(yùn)行和1組綠LED燈和8組藍(lán)LED燈(其中8組藍(lán)燈要像呼吸燈那樣一閃一閃的)可以嗎?如果可以請(qǐng)麻煩大師把源程序發(fā)到我郵箱:285883100@qq.com萬(wàn)分感謝
回復(fù)

使用道具 舉報(bào)

ID:237069 發(fā)表于 2017-10-4 17:42 | 顯示全部樓層
新人加入,等級(jí)夠了再來(lái)下載學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

ID:470631 發(fā)表于 2019-1-19 21:37 | 顯示全部樓層
既然是模擬信號(hào)為什么針腳不用A0--A5反而選用了數(shù)字端口11呢
回復(fù)

使用道具 舉報(bào)

ID:543640 發(fā)表于 2019-5-22 10:42 | 顯示全部樓層
哪里買(mǎi)這些硬件 淘寶都是套裝 比較貴
回復(fù)

使用道具 舉報(bào)

ID:452731 發(fā)表于 2019-7-8 17:01 | 顯示全部樓層
有大師嗎? 每 次循環(huán)累加5,能夠?qū)崿F(xiàn)例子里的,亮度漸變,變亮然后逐漸熄滅,但是如果每次循環(huán)累加變?yōu)榕紨?shù)數(shù)值,就是變亮,然后突然熄滅,然后逐漸變亮,沒(méi)有了變暗的過(guò)程,這是怎么回事?
回復(fù)

使用道具 舉報(bào)

ID:450950 發(fā)表于 2019-7-21 19:35 | 顯示全部樓層
azi197417 發(fā)表于 2019-7-8 17:01
有大師嗎? 每 次循環(huán)累加5,能夠?qū)崿F(xiàn)例子里的,亮度漸變,變亮然后逐漸熄滅,但是如果每次循環(huán)累加變?yōu)榕紨?shù)數(shù)值 ...

  if (brightness == 0 || brightness == 255) {
    fadeAmount = -fadeAmount ;

brightness每次從0開(kāi)始加5 直到255 再減小 這樣沒(méi)有問(wèn)題,而每次加偶數(shù)的話(huà) brightness==255就會(huì)直接超過(guò)255 而超過(guò)255后pwm信號(hào)就會(huì)認(rèn)為又是從0開(kāi)始
嘗試改成 brightnes<=0||brightness>=255試試
回復(fù)

使用道具 舉報(bào)

ID:698787 發(fā)表于 2020-6-10 12:57 | 顯示全部樓層
210482244 發(fā)表于 2019-1-19 21:37
既然是模擬信號(hào)為什么針腳不用A0--A5反而選用了數(shù)字端口11呢

A0~A5應(yīng)該是輸入引腳吧
回復(fù)

使用道具 舉報(bào)

ID:138707 發(fā)表于 2021-7-3 20:51 | 顯示全部樓層
新人加入,等級(jí)夠了再來(lái)下載學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

ID:1023753 發(fā)表于 2022-7-2 13:48 | 顯示全部樓層
210482244 發(fā)表于 2019-1-19 21:37
既然是模擬信號(hào)為什么針腳不用A0--A5反而選用了數(shù)字端口11呢

ANALOG IN
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 天天久久| 久久九九99 | 亚洲国产情侣 | av国产精品| 日韩精品久久久 | 日日干日日射 | 久久99精品国产 | 五月香婷婷 | 99热这里有精品 | 91久久久久久久久久久久久 | 在线免费观看亚洲 | 夜夜摸夜夜操 | 国产一区二区日韩 | 手机在线一区二区三区 | 毛片com| av在线免费观看网站 | www成人免费视频 | a级毛片免费高清视频 | 1204国产成人精品视频 | 精品在线一区二区 | 一区二区三区四区五区在线视频 | 成人在线免费观看视频 | 亚洲成人精品 | 精品亚洲一区二区 | 亚洲一区 中文字幕 | 国产一区二区久久 | 久久精品手机视频 | 成人av电影在线观看 | 久久久久久久av | 久国产视频 | 国产精品久久久久国产a级 欧美日本韩国一区二区 | 亚洲精品www. | 天天看天天爽 | 国产日韩欧美精品一区二区 | 亚洲在线看 | 五月天婷婷激情 | 大伊人久久 | 久久久久久国产精品免费免费 | 神马福利| 四虎最新 | 91精品久久久久久久久久 |