Q A &在Arduino中輕松實(shí)現(xiàn)脈寬調(diào)制(PWM) 脈寬調(diào)制( PWM ) 信號基本上是一個(gè)方波,可在導(dǎo)通(高)和關(guān)斷(低)狀態(tài)之間切換。PWM信號的占空比和頻率用于確定PWM信號控制目標(biāo)的動(dòng)作。
PWM信號的 占空比 是指信號處于高電平(導(dǎo)通)狀態(tài)的時(shí)間與完成一個(gè)周期所需的總時(shí)間之比,通常用百分比或比率來表示。
50%的占空比意味著,高電平狀態(tài)占據(jù)一半的時(shí)間,低電平狀態(tài)占據(jù)另一半時(shí)間。這與理想的方波相同。如果該比率大于50%,則邏輯高電平信號在周期中占用的時(shí)間比邏輯低電平多,反之亦然。因此,100%占空比表示信號始終處于導(dǎo)通狀態(tài)(滿量程),0%占空比表示信號始終處于關(guān)斷狀態(tài)(接地)。
可在Arduino上通過各種方式輕松實(shí)現(xiàn)PWM。下面這款Seeeduino板就是很好的學(xué)習(xí)和評估板。它基于ATmega328P單片機(jī)且與Arduino相兼容。
該板上包含6個(gè)引腳(即引腳3、5、6、9、10、11),可以輸出帶有 analogWrite() 函數(shù)的PWM波。調(diào)用 analogWrite() 函數(shù),即可在PWM引腳上生成具有指定占空比的穩(wěn)定方波。一般來說,這些引腳的頻率在490Hz左右,而Seeeduino或類似板的引腳5和6的頻率為980Hz。
Arduino引腳的輸出電壓為5V,不同的占空比輸出的電壓電平各不相同,具體如下所示:
應(yīng)用示例:調(diào)節(jié)LED的亮度
在下面這個(gè)應(yīng)用示例中,我們將借助PWM技術(shù),利用Arduino來控制LED的亮度。
硬件連接
軟件
analogWrite()函數(shù)語法:
analogWrite ( pin , value ) ;
該值代表占空比,數(shù)值介于0(關(guān)斷)和255(導(dǎo)通)之間。
int ledPin = 9; //LED connected to digital pin 9
void setup (){
pinMode(ledPin, OUTPUT); // sets the pinas output
}
void loop (){
analogWrite(ledPin, 255); //set duty cycleto always on
}
你可以針對不同的輸出將“255”更改為0~255之間的任意數(shù)字,也可以修改代碼以連續(xù)更改該值。
原文標(biāo)題:在Arduino中輕松實(shí)現(xiàn)PWM應(yīng)用?跟我學(xué),你也行!
文章出處:【微信公眾號:得捷電子DigiKey】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
責(zé)任編輯:haq
-
PWM
+關(guān)注
關(guān)注
114文章
5191瀏覽量
214173 -
Arduino
+關(guān)注
關(guān)注
188文章
6471瀏覽量
187288
原文標(biāo)題:在Arduino中輕松實(shí)現(xiàn)PWM應(yīng)用?跟我學(xué),你也行!
文章出處:【微信號:得捷電子DigiKey,微信公眾號:得捷電子DigiKey】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論