历史上的今天
今天是:2025年12月21日(星期日)
2022年12月21日 | stm32单片机直流电机驱动原理分析
2022-12-21 来源:zhihu
stm32直流电机驱动与测速
说实话就现在的市场应用中stm32已经占到了绝对住到的地位,51已经成为过去式,32的功能更加强大,虽然相应的难度有所增加,但是依然阻止不了大家学习32的脚步,不说大话了这些大家都懂要不然也不会学习stm32的人那么多!!!
进入我们今天的主题,今天给大家介绍的是stm32中一个很小但是比较实用的stm32直流电机驱动与测速,话不多说先给大家上一段直流电机控制的代码。
void pwm_ARRPreloadConfig(void)
{
PrescalerValue = (uint16_t) (SystemCoreClock /TIM2_rate) - 1;
//设定的是定时器的频率,要设定pwm的频率为50hz要乘以对
//应的arr值
TIM_TimeBaseStructure.TIM_Prescaler = PrescalerValue; //TIM_Prescaler
设置了用来作为TIMx时钟频率除数的预分频值
TIM_TimeBaseStructure.TIM_Period = PWM_ARR;
//设置了在下一个更新事件装入活动的自动重装载寄存器周期的值
TIM_TimeBaseStructure.TIM_ClockDivision = 0;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;//向上计数模式
TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
TIM_OC3PreloadConfig(TIM2, TIM_OCPreload_Enable); //pwm3已经调好可以用 PB0
TIM_OC4PreloadConfig(TIM2, TIM_OCPreload_Enable); //pwm4已经调好可以用 PB1
TIM_ARRPreloadConfig(TIM2, ENABLE);
TIM_Cmd(TIM2, ENABLE);
}
史海拾趣
|
仿真时出现以下错误!不知道怎么设置!请各位帮助! U1 Error: Pin order data (PINS=1:[]) not in READ ONLY field 4. Pins sorted by pin-name. U1 Error: Part type must be entered in READ ONLY field 1: type=() U1 Error: Netlist data m ...… 查看全部问答> |
|
之前看到有朋友用NEC的单片机,找不到资料,这里放上 因为有几百兆,所以选择放链接,请斑竹谅解: 1.NEC单片机选型手册 http://www.getsoon.com.cn/bbs/viewthread.php?tid=2&;extra=page%3D1 2.NEC单片机开发环境 h ...… 查看全部问答> |
|
PPT 36页 课题:电子元件基础知识 内容: 1.基本术语的概念; 2.电阻、电容的辨别; 3.其它常用元件(二极管、三极管、电感、变压器等)的感官认识;… 查看全部问答> |
|
请教: 我想用 PWM 输出占空比变化的电压 见附件 资料上还有一段话: CPS2/CPS1/CPS0 = 1/0/0 时,PCA/PWM 的时钟源是 Fosc, 不用 Timer0, PWM 的频率为 Fosc/256,如果使用系统时钟 /3 来作为 PCA 的时钟源,应让 T0 工作在 1T 模式, 记数 3 个 ...… 查看全部问答> |
|
请问GPRS模块能直接向上位PC机发送短消息吗,哪位大侠知道 我用sim508模块扩展了一个外围电路,用ARM9开发板通过串口对其进行控制,如果我的上位机没有GPRS模块,能不能接收来自下位机的短消息呢,类似于飞信一样的应用程序?谢谢啦… 查看全部问答> |




