1043|2

89

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

【CW32L052R8T6评估板测评】四、程序开发-->2、PWM输出 [复制链接]

 
本帖最后由 皓月光兮非自明 于 2023-8-14 21:17 编辑

四、程序开发-->2、PWM输出

            此次我们主要关注定时器输出PWM波形,首先对IO口进行配置

void GPIO_Configuration(void)
{  	
    //PWM
	CW_GPIOA->ANALOG &= ~GPIOx_ANALOG_PIN6_Msk;	
	CW_GPIOA->AFRL_f.AFR6=6;
	CW_GPIOA->DIR &= ~GPIOx_DIR_PIN6_Msk;	
}

 

            随后根据参考手册对通用定时器GTIM1进行配置

 

图1 PWM功能配置

void GTIM1_Configuration(void)
{
    GTIM_InitTypeDef GTIM_InitStruct = {0};
    // APB1_CLK = 16MHz
    GTIM_InitStruct.Mode = GTIM_MODE_TIME;
    GTIM_InitStruct.OneShotMode = GTIM_COUNT_CONTINUE;
    GTIM_InitStruct.Prescaler = GTIM_PRESCALER_DIV1;    
    GTIM_InitStruct.ReloadValue = 7;
    GTIM_InitStruct.ToggleOutState = DISABLE;
    GTIM_TimeBaseInit(CW_GTIM1, >IM_InitStruct);
    GTIM_OCInit(CW_GTIM1, GTIM_CHANNEL1, GTIM_OC_OUTPUT_PWM_LOW);  
    GTIM_SetCompare1(CW_GTIM1, (GTIM_InitStruct.ReloadValue + 1) * 0.1);
    GTIM_Cmd(CW_GTIM1, ENABLE);	
}

            根据经典的分频公式

F=f÷((pcs+1)*(add+1))

            在PA05引脚获得如下频率以及不同占空比的PWM方波

 

图2 PWM:20kHz,50%

 

 

图3 PWM:20kHz,90%

 

 

图4 PWM:20kHz,20%

 

 

图5 PWM:40kHz,50%

 

 

图6 PWM:50kHz,50%

 

 

  图7 PWM:1MHz,50%

 

 

图8 PWM:2MHz,50%

 

 

图9 PWM:2MHz,10%

 

                经过测定,通过评估板GTIM1设置的PWM输出波形正常,MHz以下时上升下降沿均约在50ns左右,MHz以上上升下降沿约为80ns左右(鉴于受布线影响,实际输出质量应 > 本实验数据)

最新回复

上升时间还是挺短的,这个和IO口的速度是不是有关    详情 回复 发表于 2023-8-16 14:04
点赞 关注
 
 

回复
举报

6450

帖子

10

TA的资源

版主

沙发
 

上升时间还是挺短的,这个和IO口的速度是不是有关 

点评

这个跟IO口的硬件设计和软件定义的关系不大,PWM产生机制是由定时器Timer模块内的脉冲宽度调制器操作的,跟IO的设计不相关,是属于Timers的,定时器组只是借用了IO的输出窗口而已,并没有进入IO的相关电路,(下面红  详情 回复 发表于 2023-8-17 17:08
个人签名

在爱好的道路上不断前进,在生活的迷雾中播撒光引

 
 
 

回复

89

帖子

0

TA的资源

一粒金砂(高级)

板凳
 
本帖最后由 皓月光兮非自明 于 2023-8-18 09:10 编辑
秦天qintian0303 发表于 2023-8-16 14:04 上升时间还是挺短的,这个和IO口的速度是不是有关 

这个跟IO口的硬件设计和软件定义的关系不大,PWM产生机制是由定时器Timer模块内的脉冲宽度调制器操作的,跟IO的设计不相关,是属于Timers的,定时器组只是借用了IO的输出窗口而已,并没有进入IO驱动部分的相关电路,(下面红色是IO内部电路结构,紫色是PWM输出路径,您可以看到PWM输出路径是独立于IO驱动电路之外的)。它这个上升下降时间完全是在于PWM调制器里头的输出比较器起主要作用,所以输出方波的上升/下降时间 = 比较器的输出上升/下降时间 + 线路寄生电容的充放电时间 大概是这么一个关系

 

 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 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
快速回复 返回顶部 返回列表