日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

JL杰理AC696N開發(fā)板PWM波形生成與控制(1):頻率、占空比

李杰 ? 來(lái)源:jf_74684824 ? 作者:jf_74684824 ? 2026-04-03 13:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

引言

PWM這玩意兒,做調(diào)光、調(diào)速、甚至模擬音頻都離不開。JL杰理AC696N的定時(shí)器自帶PWM輸出功能,配置起來(lái)不算復(fù)雜,但真要調(diào)出穩(wěn)定的波形,有幾個(gè)坑是繞不開的。比如初始化的時(shí)候LED會(huì)閃一下、占空比設(shè)0反而輸出一個(gè)高電平、想換個(gè)引腳輸出還得搞清楚通道映射。之前在AC696N開發(fā)板上調(diào)PWM驅(qū)動(dòng)呼吸燈和電機(jī),把這些小問(wèn)題都踩了一遍,整理出來(lái)方便后面用的時(shí)候直接抄。

PWM常用于控制燈光亮度、電機(jī)速度等。JL杰理AC696N芯片的定時(shí)器支持靈活的PWM輸出。

PWM的核心參數(shù)是頻率和占空比。

wKgZO2nPUoeACJtrAAAMZndDLCU05.webp

如圖,高電平的時(shí)間(1ms) + 低電平的時(shí)間(3ms) = 4ms(一個(gè)周期)

頻率 = 1s / 4ms = 250HZ

高電平時(shí)間 / 一個(gè)周期時(shí)間 = 1ms / 4ms = 25%(占空比)

使用timer_pwm_init函數(shù)可以初始化指定定時(shí)器產(chǎn)生PWM。需要傳入定時(shí)器(如JL_TIMER3)、頻率(Hz)、初始占空比(0-10000對(duì)應(yīng)0-100%)和輸出引腳。

每個(gè)定時(shí)器有對(duì)應(yīng)的硬件引腳,也可通過(guò)通道映射(如CH2_T3_PWM_OUT)輸出到其他引腳,但需注意避免IO沖突和定時(shí)器被系統(tǒng)占用(如TIMER1、TIMER2)。

常見問(wèn)題包括:

初始化時(shí)LED閃爍,可通過(guò)先設(shè)置周期和占空比再開啟計(jì)數(shù)模式解決;

wKgZPGnPUoeAV-U2AAA2pkjcOYI73.webp

占空比設(shè)為0時(shí)可能出現(xiàn)一個(gè)周期的高電平,需調(diào)整寄存器操作順序;

void set_timer_pwm_duty(JL_TIMER_TypeDef *JL_TIMERx, u32 duty) { if(duty == 0){ if(JL_TIMERx->PWM == 0){ return; } //計(jì)時(shí)標(biāo)志,進(jìn)來(lái)此函數(shù)前PB3已經(jīng)設(shè)置為高電平,PB3部分控制可省略 JL_PORTB->OUT &= ~BIT(3); /*周期內(nèi)低電平時(shí)期進(jìn)入此函數(shù),強(qiáng)制延長(zhǎng)半個(gè)到一個(gè)周期等下一個(gè)周期下降沿再觸發(fā), 防止一個(gè)周期最后1us左右時(shí)間觸發(fā)此函數(shù)導(dǎo)致的程序執(zhí)行時(shí)間不夠?qū)е聵O短時(shí)間的高電平*/ if(JL_TIMERx->CNT > JL_TIMERx->PWM){ while(JL_TIMERx->CNT > JL_TIMERx->PWM){ delay(1); } while(JL_TIMERx->CNT < JL_TIMERx-?>PWM){ delay(1); } } //周期內(nèi)高電平時(shí)間進(jìn)入此函數(shù),等周期內(nèi)低電平時(shí)間觸發(fā) while(JL_TIMERx->CNT < JL_TIMERx-?>PWM){ delay(1); } //關(guān)閉PWM波形 JL_TIMERx->CON &= ~BIT(8); //時(shí)間標(biāo)志 JL_PORTB->OUT |= BIT(3); } else{ //開啟PWM JL_TIMERx->CON |= BIT(8); } JL_TIMERx->PWM = (JL_TIMERx->PRD * duty) / 10000; //0~10000對(duì)應(yīng)0~100% //時(shí)間標(biāo)志 JL_PORTB->OUT &= ~BIT(3); } void timer_pwm_test(void) { //PB3為了計(jì)時(shí)設(shè)置,可以去掉 gpio_set_pull_down(IO_PORTB_03,0); gpio_set_pull_up(IO_PORTB_03,0); gpio_set_direction(IO_PORTB_03,0); timer_pwm_init(JL_TIMER3, 100000, 2000, IO_PORTB_05, 0); } //測(cè)試按鍵消息 case KEY_SET_PWM: log_info("KEY_SET_PWMn"); static int pwm_flag = 0; JL_PORTB->OUT |= BIT(3); if(pwm_flag){ set_timer_pwm_duty(JL_TIMER3,0); pwm_flag = 0; } else{ set_timer_pwm_duty(JL_TIMER3,5000); pwm_flag = 1; } break;

問(wèn)題波形1(占空比變?yōu)?時(shí)1周期的高電平):

wKgZO2nPUoeAWyzUAAAe6GIhv6Y03.webp

問(wèn)題波形2(周期末尾操作寄存器執(zhí)行時(shí)間不夠?qū)е虏ㄐ雾樠拥较轮芷诓艌?zhí)行):

wKgZPGnPUoiAPRfTAAAi_Ew8hgg16.webp

以及操作寄存器時(shí)機(jī)不當(dāng)導(dǎo)致波形順延。

理解時(shí)鐘源選擇(系統(tǒng)時(shí)鐘或晶振時(shí)鐘)對(duì)產(chǎn)生高頻率PWM也至關(guān)重要。

總結(jié)

PWM配置看著簡(jiǎn)單,但細(xì)節(jié)決定成敗。

定時(shí)器別跟系統(tǒng)沖突,TIMER1和TIMER2通常被系統(tǒng)占用,建議用TIMER3及以后的。

初始化順序很重要,先配周期和占空比,再開計(jì)數(shù),不然會(huì)看到一個(gè)意外的脈沖。占空比從0到10000對(duì)應(yīng)0%到100%,想設(shè)50%就寫5000。

如果需要高頻率輸出(比如幾十kHz以上),時(shí)鐘源選系統(tǒng)時(shí)鐘,別選晶振時(shí)鐘,頻率上限更高。

建議在AC696N開發(fā)板上先用示波器把基礎(chǔ)波形抓出來(lái),確認(rèn)頻率和占空比都對(duì)得上,再往實(shí)際應(yīng)用里套,省得后面調(diào)半天分不清是代碼問(wèn)題還是硬件問(wèn)題。

審核編輯 黃宇

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

    關(guān)注

    116

    文章

    5894

    瀏覽量

    226732
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    26

    文章

    6433

    瀏覽量

    121219
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    理智能藍(lán)牙音響開發(fā)板AC696N:文件系統(tǒng)操作API精講

    數(shù)據(jù)、切換曲目……JLAC696N開發(fā)板的SDK封裝了一套標(biāo)準(zhǔn)的文件系統(tǒng)API,用起來(lái)跟C標(biāo)準(zhǔn)庫(kù)的fopen、fread很像,上手不難。
    發(fā)表于 04-27 00:25

    使用JLAC696N開發(fā)板實(shí)現(xiàn)PC模式下讀取外掛SPI Flash虛擬為U盤的具體案例操作說(shuō)明_V1.0

    、Flash參數(shù)及USB模式。具體宏定義請(qǐng)參考資料包中的示例工程。 三、使用流程:通過(guò)USB拷貝MP3文件 步驟1:編譯與燒錄 完成上述配置后,編譯固件并燒錄到 JL
    發(fā)表于 04-18 00:04

    JLAC696N開發(fā)板PWM波形生成控制(2):?jiǎn)栴}排查

    AC696N上都有對(duì)應(yīng)的解決辦法。剛用AC696N開發(fā)板調(diào)PWM的時(shí)候把這些坑都踩了一遍,把問(wèn)題現(xiàn)象和解決方案整理出來(lái),方便遇到類似情況時(shí)快速定位。
    發(fā)表于 04-07 14:07

    JLAC696N開發(fā)板做存儲(chǔ)設(shè)備適配(1):SD/TF卡與MMC卡的基礎(chǔ)配置與兼容

    JLAC696N開發(fā)板做存儲(chǔ)設(shè)備適配(1):SD/TF卡與MMC卡的基礎(chǔ)配置與兼容 引言 做
    發(fā)表于 04-06 19:31

    JLAC696N開發(fā)板PWM波形生成控制(2):?jiǎn)栴}排查

    JLAC696N開發(fā)板PWM波形
    發(fā)表于 04-05 23:45

    JLAC696N開發(fā)板PWM波形生成控制(1):頻率占空比配置

    32-JLAC696N開發(fā)板PWM波形
    發(fā)表于 04-03 21:44

    JLAC696N系列開發(fā)GPIO控制大全:模式、API與特殊引腳

    JLAC696N系列開發(fā)GPIO控制大全:模式、API與特殊引腳 引言 GPIO配置看著簡(jiǎn)單
    發(fā)表于 04-02 21:21

    JLAC696N系列芯片SPI接口實(shí)戰(zhàn):驅(qū)動(dòng)Flash、LCD與RGB燈

    文章闡述了,AC696N系列芯片功能:驅(qū)動(dòng)Flash、LCD、RGB等。AC696N開發(fā)板支持SPI主機(jī)模式,可輕松驅(qū)動(dòng)這種類型外設(shè)。
    的頭像 發(fā)表于 04-01 17:49 ?1250次閱讀
    <b class='flag-5'>JL</b><b class='flag-5'>杰</b><b class='flag-5'>理</b><b class='flag-5'>AC696N</b>系列芯片SPI接口實(shí)戰(zhàn):驅(qū)動(dòng)Flash、LCD與RGB燈

    JLAC696N開發(fā)板引腳速查:AC6966B開發(fā)板關(guān)鍵接口連接圖

    硬件開發(fā),引腳定義是“地圖”。本文將JLAC696N開發(fā)板的核心引腳連接以圖表形式清晰呈現(xiàn)
    發(fā)表于 04-01 09:52

    JLAC696N開發(fā)之定時(shí)器系統(tǒng)全解析:sys_timer與usr_timer的應(yīng)用

    做藍(lán)牙音頻或IoT嵌入式開發(fā),定時(shí)器用不好是真要命——回調(diào)睡過(guò)頭、中斷里卡死、低功耗喚醒亂套……這些坑估計(jì)不少人都踩過(guò)。 最近在整理總結(jié)JL A
    發(fā)表于 03-31 09:53

    JLAC696N系列芯片開發(fā)經(jīng)驗(yàn):芯片復(fù)位與喚醒源深度解析

    簡(jiǎn)介 做低功耗產(chǎn)品,最頭疼的就是兩個(gè)問(wèn)題:一是設(shè)備無(wú)緣無(wú)故重啟了,找不到原因;二是睡眠之后喚不醒,或者誤喚醒導(dǎo)致功耗居高不下。 JLAC696N這個(gè)系列的芯片在藍(lán)牙耳機(jī)、音箱、Io
    發(fā)表于 03-28 10:57

    JLAC696N開發(fā)板電源管理精要:提高內(nèi)核電壓與長(zhǎng)按復(fù)位配置

    本文簡(jiǎn)易闡述了JLAC696N開發(fā)板電源管理模塊的信息。
    的頭像 發(fā)表于 03-28 10:54 ?368次閱讀
    <b class='flag-5'>JL</b><b class='flag-5'>杰</b><b class='flag-5'>理</b><b class='flag-5'>AC696N</b><b class='flag-5'>開發(fā)板</b>電源管理精要:提高內(nèi)核電壓與長(zhǎng)按復(fù)位配置

    AC6966B開發(fā)板開發(fā)準(zhǔn)備-環(huán)境搭建:Windows下JLAC696N開發(fā)環(huán)境配置

    做藍(lán)牙音頻、音箱或IoT產(chǎn)品的開發(fā),最怕的不是寫代碼,而是環(huán)境配半天跑不起來(lái)。JLAC696N這顆芯片在耳機(jī)、音箱方案里很常見,性價(jià)比高
    的頭像 發(fā)表于 03-28 09:52 ?473次閱讀
    <b class='flag-5'>AC</b>6966B<b class='flag-5'>開發(fā)板</b><b class='flag-5'>開發(fā)</b>準(zhǔn)備-環(huán)境搭建:Windows下<b class='flag-5'>JL</b><b class='flag-5'>杰</b><b class='flag-5'>理</b><b class='flag-5'>AC696N</b><b class='flag-5'>開發(fā)</b>環(huán)境配置

    藍(lán)牙音頻產(chǎn)品開發(fā),五分鐘上手:從AC696N開發(fā)板出廠直觀的功能體驗(yàn)開始

    無(wú)需編寫一行代碼,JLAC696N開發(fā)板出廠程序已集成了完整的多媒體功能。通過(guò)幾個(gè)按鍵,快速體驗(yàn)它的所有功能和強(qiáng)大。 “藍(lán)牙模式” “音
    發(fā)表于 03-24 23:49

    JLAC696N開發(fā)板引腳速查:AC6966B開發(fā)板關(guān)鍵接口連接圖

    硬件開發(fā),引腳定義是“地圖”。本文將JLAC696N開發(fā)板的核心引腳連接以圖表形式清晰呈現(xiàn)
    發(fā)表于 03-23 21:21
    永济市| 中方县| 湘西| 二连浩特市| 建德市| 温泉县| 松阳县| 永顺县| 芜湖县| 阿拉善右旗| 成安县| 利辛县| 陆丰市| 武宁县| 长岭县| 奈曼旗| 灵武市| 易门县| 洛南县| 从化市| 江永县| 饶阳县| 博罗县| 永州市| 华安县| 潜山县| 泰兴市| 花垣县| 措勤县| 青岛市| 土默特左旗| 平罗县| 伊金霍洛旗| 鄂温| 遂昌县| 赣州市| 固安县| 潼关县| 三江| 建宁县| 伊吾县|