1507|2

162

帖子

5

TA的资源

一粒金砂(中级)

楼主
 

【小华HC32F448测评]PWM输出测试 [复制链接]

 

看了几天资料和例程,突然发现习惯了ST的HAL库,感觉小华的LL库很陌生啊,参考例程,使用TimerA输出50%占空比的PWM;

 
 
手上没有示波器,所以就用逻辑分析仪查看下PWM输出的波形了
 
#define TMRA_UNIT                       (CM_TMRA_1)				//外设映射
#define TMRA_PERIPH_CLK                 (FCG2_PERIPH_TMRA_1)
#define TMRA_PWM_CH                     (TMRA_CH2)				//通道2

#define TMRA_PWM_PORT                   (GPIO_PORT_A)			
#define TMRA_PWM_PIN                    (GPIO_PIN_09)
#define TMRA_PWM_PIN_FUNC               (GPIO_FUNC_4)			//GPIO功能选择

#define TMRA_MD                         (TMRA_MD_SAWTOOTH)		//锯齿波
#define TMRA_DIR                        (TMRA_DIR_UP)			//向上计数
#define TMRA_PERIOD_VAL                 (40U - 1U)
#define TMRA_PWM_CMP_VAL                (20U - 1U)

static void TmrAConfig(void)
{
    stc_tmra_init_t stcTmraInit;
    stc_tmra_pwm_init_t stcPwmInit;

    /* 1. Enable TimerA peripheral clock.使能定时器A时钟 */
    FCG_Fcg2PeriphClockCmd(TMRA_PERIPH_CLK, ENABLE);	

    /* 2. Set a default initialization value for stcTmraInit.设置定时器A为初始值 */
    (void)TMRA_StructInit(&stcTmraInit);

    /* 3. Modifies the initialization values depends on the application.根据应用程序修改初始化值 */
    stcTmraInit.sw_count.u8CountMode = TMRA_MD;		//计数模式为
    stcTmraInit.sw_count.u8CountDir  = TMRA_DIR;	//计数方向
    stcTmraInit.u32PeriodValue = TMRA_PERIOD_VAL;	//指定基准值
    (void)TMRA_Init(TMRA_UNIT, &stcTmraInit);		//初始化定时器A

    (void)TMRA_PWM_StructInit(&stcPwmInit);			//设置PWM初始化结构的默认值。
    stcPwmInit.u32CompareValue = TMRA_PWM_CMP_VAL;	//指定TMRA通道的比较值
    GPIO_SetFunc(TMRA_PWM_PORT, TMRA_PWM_PIN, TMRA_PWM_PIN_FUNC);	//设置指定的端口引脚功能
    (void)TMRA_PWM_Init(TMRA_UNIT, TMRA_PWM_CH, &stcPwmInit);		//PWM初始化
    TMRA_PWM_OutputCmd(TMRA_UNIT, TMRA_PWM_CH, ENABLE);				//PWM输出使能\
}

 

 

最新回复

看了几天资料和例程,突然发现习惯了ST的HAL库,感觉小华的LL库很陌生啊,参考例程,使用TimerA输出50%占空比的PWM; 跑例程是最好的学习方式。   详情 回复 发表于 2023-8-19 06:15
点赞 关注
 
 

回复
举报

6973

帖子

11

TA的资源

版主

沙发
 

看了几天资料和例程,突然发现习惯了ST的HAL库,感觉小华的LL库很陌生啊,参考例程,使用TimerA输出50%占空比的PWM;

跑例程是最好的学习方式。

点评

是的,是的  详情 回复 发表于 2023-8-21 09:17
 
 
 

回复

162

帖子

5

TA的资源

一粒金砂(中级)

板凳
 
lugl4313820 发表于 2023-8-19 06:15 看了几天资料和例程,突然发现习惯了ST的HAL库,感觉小华的LL库很陌生啊,参考例程,使用TimerA输出50%占空 ...

是的,是的

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
推荐帖子
《关于日本人》

(1)四个外科医生围坐在一起,谈论他们喜欢为何种人做手术。第一个医生说:“我最喜欢为图书管理员做手术。当你打开 ...

2011仪器器件清单分析(全)——决战2011全国大学生电子设计竞赛

本帖最后由 paulhyde 于 2014-9-15 09:27 编辑 决战2011全国大学生电子设计竞赛——仪器器件清单分析 格式好乱……原文可以在 ...

谈谈嵌入式系统的可靠性(一)

许多的操作系统,在宣传自己的优异性时,不外乎上下文切换时间多么短、占用系统资源多么少、功能模块多么多、线程间通信手段 ...

送给所有正在学习或者还在观望的朋友们——51单片机从入门到提高

说在前面的话: 很多朋友在学习51的道路上可能会走弯路,有很多朋友都会问,我怎么学,学什么之类的问题。由于版块的发帖量大, ...

请帮忙看看这个开关电源电路怎么滤波?

如题,ACDC开关电源经过LDO输出5V电压,接下在怎么滤波啊? 下面有我用的原理图和示波器采集的波形。

STM32CubeMX使用LL库设置定时器使用外部时钟模式控制gpio翻转

本帖最后由 qq825117996 于 2020-9-8 11:56 编辑 499349499353499356499361 cube自动生成的初始化函数 void MX_TIM1_ ...

安信可NB-IoT模组测评——休眠功率测试

根据文档《EC-01系列模组AT指令集》的描述,这款开发板可以支持多种休眠模式。 根据《EC-01F开发板原理图》休眠后,可以通过 ...

Vim 9.0 发布

Vim 9.0 发布 619675 经过多年的逐步改进,Vim 现在迈出了一大步,主要 发布。 除了许多小的补充之外,聚光灯是一个新的化 ...

【DigiKey“智造万物,快乐不停”创意大赛】MAIX BIT KIT上“九子贤棋”的核心逻辑

正在调试“九子贤棋”的自动求解代码,发现有bug,修复后觉得有必要梳理一下规则的实现方法。这里贴一下lucky9starCla ...

把TI官网模型导进去LTspice为什么会出现如下现象?

820157 在TI官网找了一个TL431模型,不知道是不是自己操作问题还是模型问题,现在变成这样,请问是什么原因? 下载的模型 ...

关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表