OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3899|回复: 4

stm32 定时器无cc事件产生

[复制链接]

1

主题

4

帖子

0

精华

新手入门

积分
28
金钱
28
注册时间
2014-11-12
在线时间
0 小时
发表于 2014-11-12 13:27:56 | 显示全部楼层 |阅读模式
5金钱

我用定时器1的PWM模式来输出波形,主要是想利用其CC事件来触发DMA传输,都配置好了,测得PWM波形正确,但是相应的DMA就是没启动,难道是没有CC事件产生吗?我查看了DMA设置都没问题。另外,TIM1采用的是单次转换,然后在TIM1 更新中断中重新开启TIM1 。部分代码如下:

定时器设置:

TIM_TimeBaseStructure.TIM_Period = T1;
    TIM_TimeBaseStructure.TIM_Prescaler = 71;
    TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
    TIM_TimeBaseStructure.TIM_ClockDivision = 0;
 
    TIM_TimeBaseInit(TIM1, &TIM_TimeBaseStructure);
    TIM_SelectOnePulseMode(TIM1,TIM_OPMode_Single);
    
    TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
    TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
    //TIM_OCInitStructure.TIM_OutputNState = TIM_OutputNState_Enable;
    TIM_OCInitStructure.TIM_Pulse = T2;
    TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
 
    TIM_OC1Init(TIM1, &TIM_OCInitStructure);
    TIM_OC1PreloadConfig(TIM1, TIM_OCPreload_Enable);
 
    TIM_DMACmd(TIM1, TIM_DMA_CC1, ENABLE);
 
 
DMA设置:
         DMA_InitTypeDef DMA_InitStructure;
 
    DMA_DeInit(DMA1_Channel2);
 
    DMA_InitStructure.DMA_PeripheralBaseAddr = (uint32_t)ADDR;
    DMA_InitStructure.DMA_MemoryBaseAddr = (uint32_t)&MADDR;
    DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralDST;
    DMA_InitStructure.DMA_BufferSize = Num;
    DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;
    DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Enable;
    DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_Word;
    DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_Word;
    DMA_InitStructure.DMA_Mode = DMA_Mode_Normal;
    DMA_InitStructure.DMA_Priority = DMA_Priority_High;
    DMA_InitStructure.DMA_M2M = DMA_M2M_Disable;
 
    DMA_Init(DMA1_Channel2, &DMA_InitStructure);

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

4

帖子

0

精华

新手入门

积分
28
金钱
28
注册时间
2014-11-12
在线时间
0 小时
 楼主| 发表于 2014-11-12 15:59:24 | 显示全部楼层
没人知道么?求原子哥来解答一下
回复

使用道具 举报

1

主题

4

帖子

0

精华

新手入门

积分
28
金钱
28
注册时间
2014-11-12
在线时间
0 小时
 楼主| 发表于 2014-11-12 21:08:27 | 显示全部楼层
没人啊
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-11-12 21:58:38 | 显示全部楼层
这个定时器触发dma,我也还没搞过,帮顶了。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

1

主题

4

帖子

0

精华

新手入门

积分
28
金钱
28
注册时间
2014-11-12
在线时间
0 小时
 楼主| 发表于 2014-11-13 11:22:42 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
多谢原子哥回帖
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-29 04:58

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表