你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm32g431 DMA方式更新周期信息。

[复制链接]
梦醒了主 提问时间:2023-6-12 14:14 / 未解决
收藏 评论3 发布时间:2023-6-12 14:14

举报

3个回答
梦醒了主 回答时间:2023-6-12 14:22:17

1.系统时钟配置

image.png 2.TIM配置 image.png 3.DMA配置

image.png

4、自己增加的代码 uint32_t ccr_value[] = {1000, 2000, 3000}; HAL_TIM_OC_Start_DMA(&htim1, TIM_CHANNEL_1, ccr_value, 3); 这样是可以更新占空比信息的。但是调用函数: HAL_TIM_Base_Start_DMA(&htim1, ccr_value, 3);会执行失败。 image.png

会执行到 image.png

xmshao 回答时间:2023-6-12 15:28:58
首先,建议你这里DMA传输的内存端和外设端宽度都选用32位;


另外,在调用库函数时注意那些状态机变量的适时手动调整,因为我们在调用库时往往
并没有完全按照库代码的思路走。


我这里具体指的就是相应外设的ready状态、busy状态这些。请适当地阅读下库代码。


再就是基本的配置问题,比方对于DMA到底哪里到哪里,别弄反了。
butterflyspring 回答时间:2023-6-12 16:24:35
楼主配置的定时器通道1是产生PWM1方式,驱动函数用HAL_TIM_OC_Start_DMA,是不是应该用HAL_TIM_PWM_Start_DMA 呢

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版