一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

【先楫半導(dǎo)體HPM6750EVKMINI評(píng)估板試用體驗(yàn)】PWM定時(shí)器簡(jiǎn)單應(yīng)用

開發(fā)板試用精選 ? 來源:開發(fā)板試用 ? 作者:電子發(fā)燒友論壇 ? 2022-11-17 15:46 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文來源電子發(fā)燒友社區(qū),作者:jf_32467263, 帖子地址:https://bbs.elecfans.com/jishu_2287618_1_1.html

三、pwm定時(shí)器配置
首先需要重點(diǎn)設(shè)定以下參數(shù):
① 重裝載RLD寄存器值:該函數(shù)有兩個(gè)重裝載值,通常配置reload即可,而ex_reload用于當(dāng)reload寄存器不夠時(shí)提供擴(kuò)展


  1. static inline void pwm_set_reload(PWM_Type *pwm_x,uint8_t ex_reload,uint32_t reload)
復(fù)制代碼

② 比較值cmp:用于定時(shí)器計(jì)數(shù)時(shí)判斷計(jì)數(shù)是否溢出
③ 比較模式mode:用于設(shè)定定時(shí)器比較模式,有輸出比較與輸入比較兩種
typedef enum pwm_cmp_mode {
pwm_cmp_mode_output_compare = 0, /**< output compare*/
pwm_cmp_mode_input_capture = 1, /**< input compare*/
} pwm_cmp_mode_t;
④ 觸發(fā)方式更新update_trigger:分為以下四種更新方式:
typedef enum pwm_register_update {
pwm_shadow_register_update_on_shlk = 0, /**< after software set shlk bit of shlk register*/
pwm_shadow_register_update_on_modify = 1, /**
pwm_shadow_register_update_on_hw_event = 2, /**
pwm_shadow_register_update_on_sh_synci = 3, /**< after SHSYNCI assert */
} pwm_shadow_register_update_trigger_t;
官方也給出了一個(gè)PWM定時(shí)器配置的示例,示例如下
void config_pwm(PWM_Type *ptr, uint8_t pin, uint8_t cmp_index, uint32_t reload, bool cmp_initial_zero, uint8_t hw_event_cmp)
{
pwm_cmp_config_t cmp_config = {0};
pwm_config_t pwm_config = {0};
pwm_stop_counter(ptr);
pwm_get_default_pwm_config(ptr, &pwm_config);//復(fù)位默認(rèn)pwm寄存器配置
pwm_get_default_cmp_config(ptr, &cmp_config);//復(fù)位默認(rèn)比較寄存器配置
pwm_config.enable_output = false;
pwm_config.dead_zone_in_half_cycle = 0;//半周期PWM死區(qū)設(shè)定
pwm_config.invert_output = false;//反轉(zhuǎn)輸出電平設(shè)定
pwm_set_reload(ptr, 0, reload);//設(shè)置重裝載值
pwm_set_start_count(ptr, 0, 0);//設(shè)置PWM定時(shí)器起始值
//預(yù)配置寄存器信息
cmp_config.mode = pwm_cmp_mode_output_compare;//設(shè)定PWM定時(shí)器比較模式為
cmp_config.cmp = cmp_initial_zero ? 0 : reload + 1;//設(shè)定比較值cmp
cmp_config.update_trigger = pwm_shadow_register_update_on_modify;//更新觸發(fā)方式為立即更新
pwm_config_cmp(ptr, cmp_index, &cmp_config);//PWM配置更新
//更新觸發(fā)器類型,以便在硬件事件(重新加載)時(shí)更新比較值
cmp_config.update_trigger = pwm_shadow_register_update_on_hw_event;
//將pwm配置為cmp驅(qū)動(dòng)的輸出
if (status_success != pwm_setup_waveform(ptr, pin, &pwm_config, cmp_index, &cmp_config, 1)) {
printf("failed to setup waveformn");
while(1);
}//pwm_setup_waveform設(shè)定輸出PWM波形
//配置硬件事件
cmp_config.cmp = reload - 1;
cmp_config.update_trigger = pwm_shadow_register_update_on_hw_event;
pwm_load_cmp_shadow_on_match(ptr, hw_event_cmp, &cmp_config);//設(shè)定影子寄存器
}

PWM定時(shí)器配置完成后,對(duì)定時(shí)器中斷綁定服務(wù)函數(shù)及分配相應(yīng)優(yōu)先級(jí),并使能開始計(jì)數(shù)即可完成設(shè)定
static inline void pwm_start_counter(PWM_Type *pwm_x)
intc_m_enable_irq_with_priority(irq, priority)
使用時(shí)如需更新PWM輸出狀態(tài)即占空比,可使用以下函數(shù)進(jìn)行邊沿對(duì)齊


  1. pwm_update_raw_cmp_edge_aligned(pwm, pwm_cmp, duty);
復(fù)制代碼

以上,加之上篇的GPIO與外部中斷的介紹,對(duì)于MCU的簡(jiǎn)單應(yīng)用暫告一段落,GPIO、外部中斷、PWM定時(shí)器為MCU最基本的功能,對(duì)于體驗(yàn)而言還是比較輕松的,配置起來也不是特別繁瑣,主要?dú)w功于官方所提供的庫(kù)函數(shù),使用的流程也與傳統(tǒng)的MCU類似。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17961

    瀏覽量

    366292
  • 先楫半導(dǎo)體
    +關(guān)注

    關(guān)注

    11

    文章

    250

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    半導(dǎo)體HPM6E8Y:實(shí)時(shí)控制芯片驅(qū)動(dòng)的機(jī)器人關(guān)節(jié)“芯”時(shí)代

    及產(chǎn)品總監(jiān)費(fèi)振東帶來了一款實(shí)時(shí)控制芯片驅(qū)動(dòng)——HPM6E8Y。 ? ? 據(jù)費(fèi)振東介紹,半導(dǎo)體HPM6E8Y系列高性能MCU芯片為機(jī)器人關(guān)
    發(fā)表于 05-13 11:50 ?1193次閱讀
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半導(dǎo)體</b><b class='flag-5'>HPM</b>6E8Y:<b class='flag-5'>先</b><b class='flag-5'>楫</b>實(shí)時(shí)控制芯片驅(qū)動(dòng)的機(jī)器人關(guān)節(jié)“芯”時(shí)代

    重磅更新 | 半導(dǎo)體HPM_APPS v1.9.0發(fā)布

    重磅更新 | 半導(dǎo)體HPM_APPS v1.9.0發(fā)布
    的頭像 發(fā)表于 05-13 11:29 ?541次閱讀
    重磅更新 | <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半導(dǎo)體</b><b class='flag-5'>HPM</b>_APPS v1.9.0發(fā)布

    【強(qiáng)勢(shì)上新】HPM5E00:EtherCAT運(yùn)動(dòng)控制MCU,半導(dǎo)體再拓工業(yè)總線產(chǎn)品新版圖

    2025年5月6日 上海 |高性能微控制及嵌入式解決方案提供商“上海半導(dǎo)體科技有限公司”(
    發(fā)表于 05-07 14:07 ?717次閱讀
    【強(qiáng)勢(shì)上新】<b class='flag-5'>HPM</b>5E00:EtherCAT運(yùn)動(dòng)控制MCU,<b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半導(dǎo)體</b>再拓工業(yè)總線產(chǎn)品新版圖

    【強(qiáng)勢(shì)上新】HPM5E00:EtherCAT運(yùn)動(dòng)控制MCU,半導(dǎo)體再拓工業(yè)總線產(chǎn)品新版圖

    2025年5月6日上海|高性能微控制及嵌入式解決方案提供商“上海半導(dǎo)體科技有限公司”(
    的頭像 發(fā)表于 05-06 11:09 ?535次閱讀
    【強(qiáng)勢(shì)上新】<b class='flag-5'>HPM</b>5E00:EtherCAT運(yùn)動(dòng)控制MCU,<b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半導(dǎo)體</b>再拓工業(yè)總線產(chǎn)品新版圖

    重磅更新 | 半導(dǎo)體HPM_SDK v1.9.0 發(fā)布

    版本更新概況[New]增加HPM6P00系列MCU以及hpm6p00evk支持[New]增加了開發(fā)已知問題說明[Update]將全系列開發(fā)VCore電壓調(diào)節(jié)至1.275V,
    的頭像 發(fā)表于 04-02 08:31 ?416次閱讀
    重磅更新 | <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半導(dǎo)體</b><b class='flag-5'>HPM</b>_SDK v1.9.0 發(fā)布

    半導(dǎo)體HPM6E8Y榮獲芯片創(chuàng)新獎(jiǎng),彰顯卓越產(chǎn)品力!

    科技有限公司(半導(dǎo)體,HPMicro)于年初在CES2025發(fā)布的新品——HPM6E8Y微控制芯片,憑借其高性能、高集成度、小封裝及
    的頭像 發(fā)表于 03-04 13:36 ?724次閱讀
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半導(dǎo)體</b><b class='flag-5'>HPM</b>6E8Y榮獲芯片創(chuàng)新獎(jiǎng),彰顯卓越產(chǎn)品力!

    半導(dǎo)體HPM_SDK v1.7.0發(fā)布!這些更新你值得關(guān)注!

    半導(dǎo)體HPM_SDK v1.7.0發(fā)布!這些更新你值得關(guān)注!
    的頭像 發(fā)表于 02-08 13:42 ?664次閱讀
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半導(dǎo)體</b><b class='flag-5'>HPM</b>_SDK v1.7.0發(fā)布!這些更新你值得關(guān)注!

    半導(dǎo)體hpm_apps v1.7.0上線

    半導(dǎo)體hpm_apps v1.7.0上線
    的頭像 發(fā)表于 02-08 13:41 ?642次閱讀
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半導(dǎo)體</b><b class='flag-5'>hpm</b>_apps v1.7.0上線

    半導(dǎo)體HPM_SDK v1.8.0 發(fā)布

    半導(dǎo)體HPM_SDK v1.8.0 發(fā)布
    的頭像 發(fā)表于 02-08 13:39 ?642次閱讀
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半導(dǎo)體</b><b class='flag-5'>HPM</b>_SDK v1.8.0 發(fā)布

    半導(dǎo)體發(fā)布高性能HPM6E8Y系列MCU

    近日,上海半導(dǎo)體科技有限公司,國(guó)內(nèi)領(lǐng)先的高性能微控制及嵌入式解決方案提供商,推出了專為機(jī)器人運(yùn)動(dòng)與控制設(shè)計(jì)的高性能MCU產(chǎn)品——HPM
    的頭像 發(fā)表于 01-23 15:40 ?656次閱讀

    半導(dǎo)體HPM OBOX 離線燒錄正式發(fā)布

    在量產(chǎn)燒錄領(lǐng)域,一個(gè)令人振奮的消息傳來——終于可以擺脫上位機(jī)的束縛,實(shí)現(xiàn)更加高效、便捷的量產(chǎn)流程!這一切得益于半導(dǎo)體推出的離線OBOX,一款基于HPM 5361 MCU開發(fā)的創(chuàng)新離
    的頭像 發(fā)表于 01-16 15:29 ?667次閱讀

    CES 2025:半導(dǎo)體發(fā)布高性能機(jī)器人MCU

    半導(dǎo)體科技有限公司(半導(dǎo)體,HPMicro)閃耀登場(chǎng)。該公司發(fā)布了一款專注于機(jī)器人運(yùn)動(dòng)與控制的高性能MCU產(chǎn)品——HPM6E8Y系列,為
    的頭像 發(fā)表于 01-09 16:14 ?942次閱讀

    HPM6E00技術(shù)日 | 百人研討共話工業(yè)應(yīng)用創(chuàng)新及發(fā)展趨勢(shì)

    2024年8月29日,深圳 | 由上海半導(dǎo)體科技有限公司(半導(dǎo)體,HPMicro)主辦的
    發(fā)表于 09-02 10:14

    戰(zhàn)略合作丨華秋商城攜手半導(dǎo)體,共創(chuàng)新篇

    2024年7月24日,上海半導(dǎo)體科技有限公司(半導(dǎo)體,HPMicro)正式授權(quán)深圳華秋電
    的頭像 發(fā)表于 08-30 12:05 ?1097次閱讀
    戰(zhàn)略合作丨華秋商城攜手<b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半導(dǎo)體</b>,共創(chuàng)新篇

    半導(dǎo)體hpm_apps v1.6.0上線

    半導(dǎo)體hpm_apps v1.6.0上線
    的頭像 發(fā)表于 08-02 08:18 ?1510次閱讀
    <b class='flag-5'>先</b><b class='flag-5'>楫</b><b class='flag-5'>半導(dǎo)體</b><b class='flag-5'>hpm</b>_apps v1.6.0上線