|
使用HAL库配置 TIM 输出DMA PWM ,几乎差不多的 代码,F103可以启动,但F407无法启动。可否有例程可以参考,感觉资料太少了。 if (HAL_TIM_PWM_Init(&htim2) != HAL_OK) //HAL_TIM_OC_Init 同样不行,都调用到DMA配置了。 { Error_Handler(); } sConfigOC.OCMode = TIM_OCMODE_TOGGLE; sConfigOC.Pulse = 50; sConfigOC.OCPolarity = TIM_OCPOLARITY_LOW; sConfigOC.OCFastMode = TIM_OCFAST_ENABLE; if (HAL_TIM_OC_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) { Error_Handler(); } TIM2->CR1 |= ((uint16_t)0x0081); //TIM_ARRPreloadConfig(TIM2, ENABLE); TIM2->DIER &= ~TIM_DMA_UPDATE; HAL_DMA_Start_IT(htim2.hdma[TIM_DMA_ID_UPDATE], (uint32_t)SLOWRUN, (uint32_t)TIM2->ARR,100); |
STM32H7A3VGTA QSPI读W25Q128J DMA模式不能工作
//STM32H7A3VGT6 QSPI的DMA方式无法正常工作
无刷电机PWM输出配置
CubeMX+STM32F407VGT6+配置lwip的httpd功能,工程编译报错
STM32G474 HRTIM 推挽模式下 关闭死区 在比较寄存器较小的情况下,存在输出脉宽直接到100%
workbench5.3.1生成代码问题
motor control workbench新建自主工程,STM32F405,生成代码,执行pilot,显示检测不到母线电压,电流,一直不转,检测不到极对数
STM32F4以太网 MAC Loopback(MAC回环)的实现
串口空闲+DMA接收GPS信号,空闲中断触发时间不对。
想要一个成熟产品OTG通信的程序。
微信公众号
手机版
HAL_TIM_MspPostInit(&htim5); //配置管脚重定向
if (HAL_TIM_PWM_Init(&htim5) != HAL_OK) //DMA初始化
{
Error_Handler();
}
sConfigOC.OCMode = TIM_OCMODE_PWM1;
sConfigOC.Pulse = 400;
sConfigOC.OCPolarity = TIM_OCPOLARITY_LOW;
sConfigOC.OCFastMode = TIM_OCFAST_ENABLE;
HAL_TIM_OC_ConfigChannel(&htim5,&sConfigOC,TIM_CHANNEL_3);
TIM5->CR1|= ((uint16_t)0x0081);
TIM5->DIER &= ~TIM_DMA_UPDATE;
HAL_DMA_Start_IT(&hdma_tim5_ch3_up, (uint32_t)SLOWRUN, (uint32_t)TIM5->ARR,100);
DMA1->HIFCR |= (1<< 21); //清中断 //uint16_t SLOWRUN[100],值已初始化
TIM5->CCER |= 0X100;
//TIM5->DIER |= TIM_DMA_UPDATE; // UDE:更新 DMA 请求使能
TIM5->DIER |= 0X101; //对着手册开启 DMA_UPDA 和TIM_UPDA
上电后直接输出PWM波形,和DMA似乎没任何关系,SLOWRUN的值似乎传不到ARR