Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
PWM
RT-Thread一般讨论
中心对齐PWM波形,并未中心对齐
发布于 2022-06-19 12:29:06 浏览:750
订阅该版
芯片:STM32F411CEU6 rt-thread: 4.1.0 rt-thread studio: 2.2.3 构建ID: 202204221442 **问题:** 在CubeMx中配置TM1_CH1,TIM1_CH4输出两路PWM,Counter Mode设置为Center Aligned mode1,期望输出两路中心对齐的PWM波形。但是在rt_thread代码中实际输出并非中心对齐,而是UP对齐模式波形。 **1、两路PWM,中心输出配置:** ![camode.png](https://oss-club.rt-thread.org/uploads/20220619/8b9c13db4c4a5bae90077788dbb12e53.png "camode.png") **2、输出两路PWM波形代码:** ```c /* 使用PWM设备 */ struct rt_device_pwm *hv_pwm_device = RT_NULL; //定义PWM设备指针 rt_uint32_t period, pulse; #define HV_PWM_DEVICE "pwm1" #define HV_PWM_CHA 1 #define HV_PWM_CHB 4 int main(void) { int count = 1; period = 50000; /* 单位为纳秒ns , 周期为0.5ms,即为2KHz*/ pulse = 20000; /* 插找PWM设备 */ hv_pwm_device = (struct rt_device_pwm *)rt_device_find(HV_PWM_DEVICE); if(hv_pwm_device == RT_NULL) { LOG_E("HV PWM Device %s not found!", HV_PWM_DEVICE); return -RT_ERROR; } //设置PWM参数 rt_pwm_set(hv_pwm_device, HV_PWM_CHA, period, pulse); rt_pwm_set(hv_pwm_device, HV_PWM_CHB, period, period - pulse); //使能PWM输出 rt_pwm_enable(hv_pwm_device, HV_PWM_CHA); rt_pwm_enable(hv_pwm_device, HV_PWM_CHB); while (count++) { //LOG_D("Hello RT-Thread!"); rt_thread_mdelay(1000); } return RT_EOK; } ``` **3、实际输出波形** 如下图,实际输出的波形,并非中心对齐的。而是与Counter Mode = UP 的波形一致。 ![came.png](https://oss-club.rt-thread.org/uploads/20220619/481a576fbb88e32adc18bcf083fd3fb7.png.webp "came.png")
查看更多
2
个回答
默认排序
按发布时间排序
pkokoc
2022-06-19
这家伙很懒,什么也没写!
经验证发现,需在程序中显示的调用初始化函数 MX_TIM1_Init();显示调用该初始化函数后,可以得到期望的中心对齐PWM波形。 **代码显示调用MX_TIM1_Init():** ![came03.png](https://oss-club.rt-thread.org/uploads/20220619/f38f5835f6ee4394e229e3011298ae79.png "came03.png") ** 输出波形:** ![came04.png](https://oss-club.rt-thread.org/uploads/20220619/2b31f7c57ecbbc261f49903198019351.png.webp "came04.png")
swet123
2022-06-20
ztlchina@foxmail.com
为你点赞!!
撰写答案
登录
注册新账号
关注者
0
被浏览
750
关于作者
pkokoc
这家伙很懒,什么也没写!
提问
20
回答
125
被采纳
4
关注TA
发私信
相关问题
1
有关动态模块加载的一篇论文
2
最近的调程序总结
3
晕掉了,这么久都不见layer2的踪影啊
4
继续K9ii的历程
5
[GUI相关] FreeType 2
6
[GUI相关]嵌入式系统中文输入法的设计
7
20081101 RT-Thread开发者聚会总结
8
嵌入式系统基础
9
linux2.4.19在at91rm9200 上的寄存器设置
10
[转]基于嵌入式Linux的通用触摸屏校准程序
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
Rt-thread中OTA下载后,bootloader不搬程序
2
ulog 日志 LOG_HEX 输出时间改为本地日期时间
3
在RT-Thread Studio中构建前执行python命令
4
研究一了一段时间RTT,直接标准版上手太难,想用nano,但又舍不得组件
5
CherryUSB开发笔记(一):FSDEV USB IP核的 HID Remote WakeUp (USB HID 远程唤醒) 2025-01-18 V1.1
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
I2C_IIC
ESP8266
UART
WIZnet_W5500
ota在线升级
PWM
cubemx
flash
freemodbus
BSP
packages_软件包
潘多拉开发板_Pandora
定时器
ADC
flashDB
GD32
socket
编译报错
中断
Debug
rt_mq_消息队列_msg_queue
SFUD
msh
keil_MDK
ulog
C++_cpp
MicroPython
本月问答贡献
xusiwei1236
5
个答案
2
次被采纳
踩姑娘的小蘑菇
1
个答案
2
次被采纳
用户名由3_15位
7
个答案
1
次被采纳
bernard
4
个答案
1
次被采纳
张世争
1
个答案
1
次被采纳
本月文章贡献
聚散无由
2
篇文章
15
次点赞
catcatbing
2
篇文章
5
次点赞
Wade
2
篇文章
2
次点赞
Ghost_Girls
1
篇文章
6
次点赞
YZRD
1
篇文章
2
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部