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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

樹莓派的PWM模式介紹

CHANBAEK ? 來源:頭條號(hào)科G棧 ? 作者:頭條號(hào)科G棧 ? 2023-03-24 11:30 ? 次閱讀

樹莓派可以同時(shí)產(chǎn)生兩路獨(dú)立的pwm。

poYBAGQdGV6Ad9qMAADfpzCvOxQ805.jpg

每一路可以配置到規(guī)定的幾個(gè)gpio上,而實(shí)際能用的只有12、13、18、19,其他都沒有引出來。這里的gpio指的是bcm的。

pYYBAGQdGV-AQnN5AAC4AeeB3Yo799.jpg

poYBAGQdGV-ANwYWAAKS5qQjWsM321.jpg

在BCM2835 ARM外設(shè)手冊中對(duì)PWM做了詳細(xì)的介紹。

pYYBAGQdGWCAdKvXAAHp3_VdzrE497.jpg

樹莓派的PWM有兩種操作模式:PWM模式和Serialiser模式。PWM模式又有兩種模式:N/M模式和M/S模式。我們平時(shí)常用的那種固定頻率改變占空比的操作是PWM模式的M/S模式。

pYYBAGQdGWGAWcfkAABAGzmifqs710.jpg

PWM由8個(gè)寄存器控制,手冊上給出的總線起始地址為0x7e20c000,對(duì)應(yīng)的物理地址是0x3f20c000。

poYBAGQdGWOAUbt5AAF9fadqnGg417.jpg

如果不使用FIFO和DMA,配置很簡單,主要是設(shè)置CTL,使能對(duì)應(yīng)的PWM控制器并設(shè)置模式,設(shè)置RNG給定PWM的范圍,就是上面圖片的S,設(shè)置DAT給定要輸出的值,就是圖片中的M。也就是說RNG設(shè)置PWM的控制粒度,DAT控制輸出高低電平的時(shí)間,二者的比值就是占空比。

在設(shè)置PWM之前,還有一個(gè)重要的地方需要設(shè)置,就是PWM的時(shí)鐘,外設(shè)手冊只說了一下配置時(shí)鐘的寄存器是CPRMAN,沒有其他信息。但是可以參考bcm2835庫的設(shè)置方式。

pYYBAGQdGWSAFXJdAADBcnALJDE046.jpg

pYYBAGQdGWWAfwkfAAOYz0ud3YI228.jpg

poYBAGQdGWeAUCbwAAJ99TKm-hM737.jpg

總結(jié)一下,樹莓派的pwm配置分這么幾步:

1、設(shè)置對(duì)應(yīng)的gpio為pwm復(fù)用功能;

2、設(shè)置pwm的時(shí)鐘;

3、設(shè)置pwm的模式并使能;

4、設(shè)置pwm的range;

5、設(shè)置pwm的dat;

以后控制pwm就只需改變dat的值就可以改變pwm的占空比了。

Linux系統(tǒng)下,使用內(nèi)存映射mmap可以很方便的操控這些寄存器。PWM需要映射gpio寄存器、時(shí)鐘寄存器和pwm寄存器,bcm2835的庫就是使用的這種方式。

pYYBAGQdGWiAVnrRAAEskbaKrpk866.jpg

poYBAGQdGWmAW59iAAPobPZcNkc170.jpg

我用樹莓派18、19獲取的pwm波形。

pYYBAGQdGWqASNoWAAE6KLK6hKg259.jpg

網(wǎng)上有樹莓派只提供了一個(gè)硬件pwm輸出的說法,在我的3b上證明是錯(cuò)誤的,我猜測這種說法應(yīng)該是針對(duì)之前舊版本硬件的。

有這兩路PWM做兩輪平衡車剛剛好。

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

    關(guān)注

    134

    文章

    9027

    瀏覽量

    366479
  • PWM
    PWM
    +關(guān)注

    關(guān)注

    114

    文章

    5118

    瀏覽量

    213165
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11207

    瀏覽量

    208717
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1188

    瀏覽量

    51836
  • 樹莓派
    +關(guān)注

    關(guān)注

    116

    文章

    1688

    瀏覽量

    105456
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    簡單介紹樹莓

    本帖最后由 348081236 于 2016-1-8 17:44 編輯 看到個(gè)很有意思的動(dòng)畫片介紹什么是樹莓。
    發(fā)表于 01-08 17:44

    請問樹莓硬件PWM是什么輸出?

    網(wǎng)上有很多樹莓輸出PWM的,但是都是通過GPIO模擬的,不是硬件PWM模塊產(chǎn)生的。 因?yàn)檐浖M的頻率上不去,周期好像是10ms,也就是頻率才100Hz。
    發(fā)表于 11-04 02:33

    樹莓學(xué)習(xí)筆記之PWM控制直流電機(jī)轉(zhuǎn)速介紹 相關(guān)資料分享

    樹莓控制PWM控制電機(jī)轉(zhuǎn)速一、硬件二、連線三、樹莓python庫配置一、硬件樹莓
    發(fā)表于 06-29 08:47

    樹莓pwm是如何去控制無刷電機(jī)的?

    樹莓pwm是如何去控制無刷電機(jī)的?其實(shí)現(xiàn)代碼是怎樣去編寫的?
    發(fā)表于 07-21 06:46

    樹莓裝機(jī)教程

    樹莓裝機(jī)教程樹莓裝機(jī)教程樹莓裝機(jī)教程樹莓
    發(fā)表于 11-25 10:14 ?52次下載

    樹莓3wifi配置_樹莓3開啟wifi熱點(diǎn)_樹莓3的wifi使用教程

    樹莓3在2016年2月29號(hào)正式發(fā)布了,樹莓3幾乎和樹莓2代板型一致,大外觀沒什么變化小電
    發(fā)表于 12-08 11:47 ?3.1w次閱讀

    樹莓有什么用_樹莓能用來做啥_樹莓新手入門教程

    本文首先介紹樹莓的功能,其次介紹樹莓的用途,最后詳細(xì)
    的頭像 發(fā)表于 05-08 14:15 ?3.3w次閱讀

    樹莓驅(qū)動(dòng)舵機(jī)介紹_樹莓驅(qū)動(dòng)舵機(jī)代碼

    本文主要詳細(xì)介紹樹莓驅(qū)動(dòng)舵機(jī)以及它的驅(qū)動(dòng)代碼,具體的跟隨小編一起來了解一下。
    的頭像 發(fā)表于 05-30 14:47 ?1.4w次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>驅(qū)動(dòng)舵機(jī)<b class='flag-5'>介紹</b>_<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>驅(qū)動(dòng)舵機(jī)代碼

    樹莓是什么樹莓的簡單介紹

    要想玩轉(zhuǎn)樹莓,首先得知道樹莓是什么。在本節(jié)中,作者將帶領(lǐng)大家揭開樹莓的神秘面紗,了解
    發(fā)表于 05-15 18:09 ?30次下載
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>是什么<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>的簡單<b class='flag-5'>介紹</b>

    樹莓3和樹莓4的原理圖免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是樹莓3和樹莓4的原理圖免費(fèi)下載。
    發(fā)表于 01-07 10:23 ?91次下載
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>3和<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>4的原理圖免費(fèi)下載

    樹莓3和樹莓4的原理圖免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是樹莓3和樹莓4的原理圖免費(fèi)下載。
    發(fā)表于 01-07 10:23 ?223次下載
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>3和<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>4的原理圖免費(fèi)下載

    樹莓IO擴(kuò)展板的技術(shù)規(guī)格 樹莓擴(kuò)展板該怎么用

    樹莓IO擴(kuò)展板是著名開源硬件商DFRobot專為樹莓開發(fā)的IO擴(kuò)展板,IO擴(kuò)展板支持PWM、ADC、讀取模擬量、數(shù)字量,支持
    的頭像 發(fā)表于 05-17 15:18 ?3362次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>IO擴(kuò)展板的技術(shù)規(guī)格 <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>擴(kuò)展板該怎么用

    樹莓4B的擴(kuò)展功能板介紹

    樹莓 功能擴(kuò)展板介紹
    的頭像 發(fā)表于 09-25 17:31 ?1888次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>4B的擴(kuò)展功能板<b class='flag-5'>介紹</b>

    樹莓通過pwm控制電機(jī)速度

    樹莓通過脈沖寬度調(diào)制可以控制電機(jī)的速度。實(shí)際上在精度要求不是非常高的情況下,普通引腳也可以通過軟件模擬來控制 電機(jī),實(shí)現(xiàn)pwm一樣的功能。pwm功能可以控制直流電機(jī)的速度,同時(shí),也
    發(fā)表于 03-21 10:19 ?0次下載
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>通過<b class='flag-5'>pwm</b>控制電機(jī)速度

    樹莓控制PWM控制電機(jī)轉(zhuǎn)速

    樹莓控制PWM控制電機(jī)轉(zhuǎn)速 一、硬件 樹莓 12V直流電機(jī) L298N電機(jī)驅(qū)動(dòng)器 220V轉(zhuǎn)12V變壓器 二、連線
    發(fā)表于 03-31 10:59 ?3次下載
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>控制<b class='flag-5'>PWM</b>控制電機(jī)轉(zhuǎn)速