Arduino實現PWM 調控燈光亮度

2021-10-01 20:36:52 字數 889 閱讀 1558

arduino 控制器有6 個pwm 介面分別是數字介面3、5、6、9、10、11,前面我們已經做了按鍵控制小燈的實驗,那是數碼訊號控制数字介面的實驗,我們也做過電位計的實驗,這次我們就來完成乙個用電位計控制小燈的實驗。

需要的元器件有:

電位計模組*1

紅色m5 直插led*1

220ω直插電阻

麵包板*1

麵包板跳線*1 扎

電位計即為模擬值輸入我們接到模擬口,小燈我們接到pwm 介面上,這樣通過產生不同的pwm 訊號就可以讓小燈有亮度不同的變化。

我們先按照下面的原理圖連線實物圖。

在編寫程式的過程中,我們會用到模擬寫入analogwrite(pwm 介面,模擬值)函式,對於模擬寫入analogwrite()函式,此函式用法也很簡單,我們在本實驗中讀取電位計的模擬值訊號並將其賦給pwm 介面使小燈產生相應的亮度變化,再在螢幕上顯示出讀取的模擬值,大家可以理解為此程式是在模擬值讀取的實驗程式中多加了將模擬值賦給pwm 介面這一部分,下面給大家提供一段參考源程式。

int potpin=0;//定義模擬介面0

int ledpin=11;//定義數字介面11(pwm 輸出)

int val=0;// 暫存來自感測器的變數數值

void setup()

void loop()

執行程式後,我們旋轉電位計的旋鈕不但可以看到螢幕上數值的變化還也可以清楚的看到我們麵包板上的led 小燈的亮度也在隨之變化。

Arduino系列之pwm控制LED燈(呼吸燈)

下面我將寫出最簡單控制呼吸燈的方法 void setup pinmode 12,output 設定12號引腳為輸出引腳 void loop 進入迴圈 for int a 0 a 255 a 當a 0並且a小於255時候,a自加 analogwrite 12,a 12號引腳為pwm腳,輸出亮度 del...

arduino行人可控交通燈

1實現目標 通常情況下,機動車道綠燈常亮,行人通道紅燈常亮 當行人按下按鈕後,機動車道的燈由綠變黃再變紅,行人通道的燈由紅變綠 一段時間後,行人通道綠燈頻閃提醒 頻閃結束,行人通道綠燈變紅燈,機動車道紅燈變綠燈,再變黃燈。行人兩次有效按下按鈕的時間控制為大於10秒,每乙個時期lcd屏將作為補充提醒,...

51微控制器不用PWM實現呼吸燈效果

1 首先連線好電路圖 我連線的p1 0 2 初始化led sbit led1 p1 0 初始化led 3 初始化t0 t0初始化 void time init void time0 interrupt 1 4 呼吸燈邏輯分析,在總頻率不變的情況下 改變高電平的佔比,讓高電平的佔比逐漸增加,低電平的佔...