0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

如何在Arduino中簡單實現(xiàn)PWM?

得捷電子DigiKey ? 來源:得捷電子DigiKey ? 作者:得捷電子DigiKey ? 2021-05-21 10:37 ? 次閱讀

Q A &在Arduino中輕松實現(xiàn)脈寬調(diào)制(PWM) 脈寬調(diào)制( PWM ) 信號基本上是一個方波,可在導通(高)和關斷(低)狀態(tài)之間切換。PWM信號的占空比和頻率用于確定PWM信號控制目標的動作。

PWM信號的 占空比 是指信號處于高電平(導通)狀態(tài)的時間與完成一個周期所需的總時間之比,通常用百分比或比率來表示。

50%的占空比意味著,高電平狀態(tài)占據(jù)一半的時間,低電平狀態(tài)占據(jù)另一半時間。這與理想的方波相同。如果該比率大于50%,則邏輯高電平信號在周期中占用的時間比邏輯低電平多,反之亦然。因此,100%占空比表示信號始終處于導通狀態(tài)(滿量程),0%占空比表示信號始終處于關斷狀態(tài)(接地)。

可在Arduino上通過各種方式輕松實現(xiàn)PWM。下面這款Seeeduino板就是很好的學習和評估板。它基于ATmega328P單片機且與Arduino相兼容。

該板上包含6個引腳(即引腳3、5、6、9、10、11),可以輸出帶有 analogWrite() 函數(shù)的PWM波。調(diào)用 analogWrite() 函數(shù),即可在PWM引腳上生成具有指定占空比的穩(wěn)定方波。一般來說,這些引腳的頻率在490Hz左右,而Seeeduino或類似板的引腳5和6的頻率為980Hz。

Arduino引腳的輸出電壓為5V,不同的占空比輸出的電壓電平各不相同,具體如下所示:

pIYBAGCnHfqAN6DpAAAyvZjRLxs187.jpg

應用示例:調(diào)節(jié)LED的亮度

在下面這個應用示例中,我們將借助PWM技術,利用Arduino來控制LED的亮度。

硬件連接

軟件

analogWrite()函數(shù)語法:

analogWrite ( pin , value ) ;

該值代表占空比,數(shù)值介于0(關斷)和255(導通)之間。

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ù)更改該值。

原文標題:在Arduino中輕松實現(xiàn)PWM應用?跟我學,你也行!

文章出處:【微信公眾號:得捷電子DigiKey】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • PWM
    PWM
    +關注

    關注

    114

    文章

    5118

    瀏覽量

    213165
  • Arduino
    +關注

    關注

    187

    文章

    6457

    瀏覽量

    186501

原文標題:在Arduino中輕松實現(xiàn)PWM應用?跟我學,你也行!

文章出處:【微信號:得捷電子DigiKey,微信公眾號:得捷電子DigiKey】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    何在反激式拓撲實現(xiàn)軟啟動

    電子發(fā)燒友網(wǎng)站提供《如何在反激式拓撲實現(xiàn)軟啟動.pdf》資料免費下載
    發(fā)表于 09-04 11:09 ?0次下載
    如<b class='flag-5'>何在</b>反激式拓撲<b class='flag-5'>中</b><b class='flag-5'>實現(xiàn)</b>軟啟動

    PWM技術如何實現(xiàn)電機的平滑啟動和停止

    PWM(脈沖寬度調(diào)制)技術在電機控制實現(xiàn)平滑啟動和停止的功能,主要通過精確調(diào)節(jié)電機輸入電壓或電流的波形來實現(xiàn)。這種技術能夠顯著減少電機在啟動和停止過程
    的頭像 發(fā)表于 08-12 17:53 ?955次閱讀

    如何實現(xiàn)pwm的控制功能

    數(shù)字信號控制技術,通過控制脈沖的占空比來實現(xiàn)對模擬信號的控制。占空比是指在一個周期內(nèi),脈沖的高電平時間與整個周期時間的比值。 特點 PWM具有以下特點: (1)簡單實現(xiàn)
    的頭像 發(fā)表于 08-08 15:08 ?556次閱讀

    何在FPGA實現(xiàn)隨機數(shù)發(fā)生器

    分享如何在Xilinx Breadboardable Spartan-7 FPGA, CMOD S7實現(xiàn)4位偽隨機數(shù)發(fā)生器(PRNGs)。
    的頭像 發(fā)表于 08-06 11:20 ?548次閱讀
    如<b class='flag-5'>何在</b>FPGA<b class='flag-5'>中</b><b class='flag-5'>實現(xiàn)</b>隨機數(shù)發(fā)生器

    何在FPGA實現(xiàn)狀態(tài)機

    在FPGA(現(xiàn)場可編程門陣列)實現(xiàn)狀態(tài)機是一種常見的做法,用于控制復雜的數(shù)字系統(tǒng)行為。狀態(tài)機能夠根據(jù)當前的輸入和系統(tǒng)狀態(tài),決定下一步的動作和新的狀態(tài)。這里,我們將詳細探討如何在FPGA設計
    的頭像 發(fā)表于 07-18 15:57 ?429次閱讀

    何在Tensorflow實現(xiàn)反卷積

    ,扮演著重要角色。以下將詳細闡述如何在TensorFlow實現(xiàn)反卷積,包括其理論基礎、TensorFlow實現(xiàn)方式、以及實際應用
    的頭像 發(fā)表于 07-14 10:46 ?519次閱讀

    何在PyTorch實現(xiàn)LeNet-5網(wǎng)絡

    等人提出,主要用于手寫數(shù)字識別任務(如MNIST數(shù)據(jù)集)。下面,我將詳細闡述如何在PyTorch從頭開始實現(xiàn)LeNet-5網(wǎng)絡,包括網(wǎng)絡架構設計、參數(shù)初始化、前向傳播、損失函數(shù)選擇、優(yōu)化器配置以及訓練流程等方面。
    的頭像 發(fā)表于 07-11 10:58 ?662次閱讀

    PWM控制電機轉速的原理與實現(xiàn)

    PWM(脈寬調(diào)制)是一種廣泛應用于電機控制領域的調(diào)制技術。它通過調(diào)節(jié)脈沖信號的占空比,實現(xiàn)對電機轉速的精確控制。PWM控制電機轉速的方法因其高效、穩(wěn)定、易于實現(xiàn)等優(yōu)點,在現(xiàn)代工業(yè)、家電
    的頭像 發(fā)表于 06-03 17:23 ?5246次閱讀

    請問如何在TC334打開和關閉PWM?

    在基于 TC334 的芯片電機控制器,我想實現(xiàn) PWM 開和關,應該如何編寫函數(shù)來實現(xiàn)這一功能? 當關機故障發(fā)生時,我關閉 PWM
    發(fā)表于 05-17 17:19

    如何用Arduino開發(fā)STM32G070?

    如何用Arduino開發(fā)STM32G070,各位大神有相關教程嗎。我如何在Arduino的開發(fā)板管理器添加STM32G070開發(fā)板,如何把程序下載到CPU
    發(fā)表于 04-07 08:22

    何在code通過軟件實時配置各個PWM component的引腳?

    PWM component連接到P2.6 P3.0 P3.4 P3.6上,實現(xiàn)下一個功能。 那么請問,如何在code通過軟件實時配置各個PWM
    發(fā)表于 02-21 08:00

    arduino如何停止loop循環(huán)

    退出這個循環(huán)。本文將詳細介紹如何在Arduino停止loop循環(huán)。 在Arduino,可以通過使用一個布爾變量或條件語句來
    的頭像 發(fā)表于 02-14 16:24 ?4031次閱讀

    arduinowhile循環(huán)怎么跳出

    執(zhí)行某段代碼的情況。然而,如何在合適的時機跳出 while 循環(huán)是一個需要注意的問題。本文將詳細介紹 Arduino while 循環(huán)的基本概念,以及如何使用不同的技巧跳出該循環(huán)來實現(xiàn)
    的頭像 發(fā)表于 02-14 16:22 ?2278次閱讀

    何在IDE利用PWM實現(xiàn)WM_MOTOR_CONTROL_01 DAVE?速度控制?

    順時針和逆時針方向旋轉 WM_MOTOR_CONTROL_01 。 如何在 IDE 利用 PWM 以WM_MOTOR_CONTROL_01 DAVE?速度控制?我是否需要將用于 MCU 接口的相同 GPIO 引腳配置為WM_M
    發(fā)表于 01-19 06:28

    何在 3DICC 基于虛擬原型實現(xiàn)多芯片架構探索

    何在 3DICC 基于虛擬原型實現(xiàn)多芯片架構探索
    的頭像 發(fā)表于 11-23 09:04 ?441次閱讀
    如<b class='flag-5'>何在</b> 3DICC <b class='flag-5'>中</b>基于虛擬原型<b class='flag-5'>實現(xiàn)</b>多芯片架構探索