念旧的人属于什么性格| 什么样的人容易中风| 胎儿窘迫什么意思| 现在领结婚证需要什么| 黄体功能不足吃什么药| 蜂王浆是什么| 刷牙时牙龈出血是什么原因| 红斑狼疮是一种什么病| 苹果对身体有什么好处| 血压低吃什么水果最好| 舌头不舒服挂什么科| 个子矮吃什么才能长高| 梦魇什么意思| 艾地苯醌片治什么病| 心烦意乱是什么意思| 火旺是什么意思| 经常腰疼是什么原因女| 心悸吃什么中成药| 间接胆红素偏高是什么意思| 色素沉着有什么办法可以去除| 头发的主要成分是什么| 什么东西解辣| 做梦掉牙齿是什么意思周公解梦| 金箔是什么| 审美疲劳是什么意思| 免疫力低挂什么科| 中国的国花是什么花| 洁身自好什么意思| 乙酸是什么| 一什么心| 硫酸镁注射有什么作用| 老人喝什么牛奶好| 怕空调冷风什么原因| 早孕反应最早什么时候出现| 天蝎座与什么星座最配| 草字头加西读什么| 袖珍人是什么意思| 胸口正中间疼是什么病| 荨麻疹是什么原因引起| broom是什么意思| 龙跟什么生肖最配| 鱼饼是什么做的| 为什么一进去就想射| 蓝眼泪是什么意思| 什么地指挥| 海虹是什么| 口腔医学技术是干什么的| 马克杯是什么意思| 卜在姓氏里读什么| 不遗余力的遗是什么意思| 城五行属什么| 小娇妻是什么意思| 健康管理师是干什么的| 干咳有痰是什么原因| 右手小指疼痛预兆什么| 爱屋及乌什么意思| 蝗虫的呼吸器官是什么| 拉稀屎是什么原因| 运动前吃什么| 牛肉炖什么好吃又营养| 什么叫阈值| 腰肌劳损用什么药最好| 金达克宁和达克宁有什么区别| 92年是什么年| 低血糖是什么引起的| 为什么大便不成形| 贾宝玉大名叫什么| 卡马西平片治什么病| 窦性心律不齐什么意思| 雪松香是什么味道| 太阳穴凹陷是什么原因| 子母环是什么形状图片| 四面八方指什么生肖| 猪肝可以钓什么鱼| 烧心反酸水吃什么药| 梦见自己吐血是什么征兆| xl代表什么尺码| 彩色相片什么时候出现| 画饼是什么意思| 红血丝用什么护肤品修复比较好| 吃brunch是什么意思啊| 脸颊两侧长斑是什么原因怎么调理| 补牙用什么材料最好| 梦见缝被子是什么意思| 柔肝是什么意思| 筋膜炎是什么症状| 什么什么动听| 铁蛋白偏低是什么意思| 镶牙用什么材料好| 朱棣是朱元璋的什么人| 神戳戳是什么意思| 结婚长明灯有什么讲究| 什么生水| 身体出虚汗是什么原因| 什么是爬虫| 凝血四项是查什么的| 辛是什么味道| 小儿流清鼻涕吃什么药效果好| 坐飞机要什么证件| 马华念什么字| 吃花生有什么好处| 手麻是什么原因引起| 什么是pc| 孝敬是什么意思| 什么是射精| 拂是什么生肖| 肺炎挂什么科| 痘痘破了涂什么药膏| 托付是什么意思| 补血补气吃什么最快最好| 大腿麻木是什么原因| 吧唧嘴什么意思| 白玫瑰代表什么| 内热是什么原因引起的| 男性孕前检查挂什么科| 血管炎不能吃什么食物| 朱砂是什么东西| 一拃是什么意思| 三月是什么月| 肺部纤维化是什么意思| 柚子是什么季节的水果| 外冷内热是什么症状| 芈月传芈姝结局是什么| 属马跟什么属相犯冲| 胆红素是什么意思| 青蟹什么季节吃最好| 白蛋白是什么| 心悸症状是什么感觉| 拔牙后能吃什么| 做梦相亲是什么意思| 一个井一个点念什么| 77年属蛇的是什么命| 康复治疗学学什么| 彩金是什么| 维生素c高是什么原因| ipi是什么意思| 丑土代表什么| 杀青原指什么| 检验科是做什么的| 白羊座是什么象星座| 颞下颌关节炎吃什么药| 鲭鱼是什么鱼| 秘语是什么意思| 减肥每天吃什么三餐| 周公解梦是什么意思| 以貌取人是什么意思| 珊瑚红是什么颜色| 猪头肉是什么意思| 火龙果有什么功效| 拉黑一个人意味着什么| 昏天黑地什么意思| AFP医学上是什么意思| hco3-是什么意思| primark是什么牌子| 定夺是什么意思| 安宫牛黄丸什么时间吃最好| 偈语是什么意思| 胃胀气适合吃什么食物| 辣椒什么时候种| tp是什么| 谷维素片治什么病| 前列腺增生吃什么食物好| 100mg是什么意思| 今天属什么生肖老黄历| 心脏杂音是什么意思| 尉姓氏读什么的| 正月二十一是什么星座| 晴字五行属什么| 舌头中间裂纹是什么病| 日本豆腐是什么做的| 女人脸黄是什么原因该怎么调理| 肝胆不好有什么症状有哪些表现| 什么是钙化灶| 2017属什么| 抗生素是什么| 供血不足吃什么药| 三月七号是什么星座| 社论是什么| 金蝉脱壳是什么意思| 知了猴是什么东西| 天鹅吃什么| 月经期间吃什么补血| 新生儿黄疸吃什么药| 附骨疽是什么病| 小肠气挂什么科| 邹字五行属什么| 脸色发黑是什么原因| iga肾病是什么意思| 孤魂野鬼是什么生肖| 吃什么可以拉肚子通便| 冉冉是什么意思| 家里为什么有蟑螂| 病历是什么| 睡觉起来眼皮肿是什么原因| 胃反酸是什么原因造成的| 92年的属什么| 日本的国宝是什么| 农历10月19日是什么星座| 四两棉花歇后语是什么| 不吃肉对身体有什么影响| 口契是什么字| 多少年婚姻是什么婚| 优越感是什么意思| 晚上看见刺猬预示什么| 吃什么容易得胆结石| 刺五加配什么药治失眠| 一级护理是什么意思| 倒打一耙的前一句是什么| 水漫金山是什么生肖| 礼是什么意思| 1985属什么| 医政科是做什么的| 你算什么男人歌词| 大腿肌肉酸痛是什么病| 家奴是什么生肖| 山竹为什么那么贵| 癸酉五行属什么| 热惊厥病发是什么症状| 西施是什么生肖| 什么叫化疗为什么要化疗| 寅木代表什么| 脑血栓不能吃什么水果| 应景是什么意思| 讨喜是什么意思| 慢性阑尾炎吃什么消炎药| 猪八戒的真名叫什么| 打蛋器什么牌子好| 丁克夫妻是什么意思| 521代表什么含义| 番茄红素有什么作用| 负荆请罪的负是什么意思| 74年大溪水命缺什么| 强直性脊柱炎什么症状| 守望相助是什么意思| 女孩子喜欢什么礼物| 健康证什么时候可以办| 封顶是什么意思| 不想说话是什么原因| 外围女是什么意思| 扁平疣是什么引起的| 什么菜不能放醋| 困是什么意思| 尿肌酐是什么| 蜱虫用什么药消灭| 世界上最长的英语单词是什么| a02是什么牌子| 防晒衣的面料是什么| 青稞是什么东西| 慢阻肺是什么原因引起的| 鹦鹉能吃什么| 腔隙脑梗吃什么药最好| 同工同酬什么意思| 吃猪肝有什么好处和坏处| EV71疫苗是什么| pc是什么材质| 小孩呕吐是什么原因| 糖类抗原125是什么意思| 四月初七是什么星座| 空腹吃荔枝有什么危害| 内务是什么意思| 外阴白斑是什么原因| 滋阴润燥是什么意思| 小孩咳嗽吃什么药好| 限量版是什么意思| 百度
这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 ? 论坛首页 ? 嵌入式开发 ? STM32 ? STM32实例-步进电机的速度控制

共2条 1/1 1 跳转至

STM32实例-步进电机的速度控制

高工
2025-08-04 14:05:05     打赏
百度 回过头来看,昔日的先锋到今天已经是寥寥无几,然而硕果仅存的,毫无例外成为了当今诗坛的主将或者悍将,新世纪先锋诗人三十三家自然也是如此,在某种意义上,这个选本是当代实力诗人的点将台。

image.png

项目需求

    在制作一个使用全向轮的机器人底盘,对于全向轮,电机的精度是影响效果的重要因素。所以使用了步进电机,使用步进电机的优点是可以不使用编码器,开环控制即可达到高精度的效果。

调整占空比或者调整周期

    众所周知,PWM有两个重要参数,周期与占空比。
    步进电机的运动方式是,每收到一个脉冲,就旋转指定的角度。因此影响电机速度的唯一参数就是PWM的频率。以下附图两张来说明调整占空比与调整周期的区别。

周期固定,调整占空比

image.png
    上图中有4个PWM,它们的周期是一样的,不同之处是拥有从80%至20%的占空比。可以看出,无论占空比为多少,在1s内,它们产生的高电平的数量是一样的,即无论占空比为多少,PWM的频率都一致。因此也就无法调整步进电机的速度。因为步进电机的速度仅与PWM的频率有关。

占空比固定,调整周期

image.png
    上图中有4个PWM,它们的占空比都固定为50%,却拥有不同的周期。可以看出,即使占空比固定,只要动态调整周期,PWM就能在相同时间内产生数量不同的脉冲。因此,固定占空比,动态调整PWM周期,即可达到控制步进电机速度的效果。

基于STM32的实现

    在STM32F1中,定时器具有PWM模式,可以用来产生PWM。相关文章:STM32中PWM的配置与应用详解。但是,STM32的PWM模式,只要确定了时基单元(即确定了PWM周期),改变输出比较寄存器,仅可改变PWM的占空比。
    若需要改变PWM周期,需不停地改变定时器的时基单元。但时基单元与硬件相关,不适合频繁变更。因此,步进电机的调速,不适合使用STM32下定时器的PWM模式来控制。
    在多方查找资料后,确定了一种利用输出比较精确控制PWM周期的方式。

利用输出比较产生频率可变的PWM

    利用输出比较产生频率可变的PWM,原理简单介绍如下:
    首先配置定时器时基单元,确定脉冲最小长度单位CK。
    然后开启定时器的输出比较,设置模式为翻转模式,并开启输出比较中断。
    将定时器内计数器CNT当前值,加上脉冲长度X(单位为CK),写入输出比较寄存器。
    在X个CK后,将会触发输出比较中断。同时电平翻转。
    在中断中再次将当前计数器CNT的值,加上脉冲长度X,写入输出比较寄存器。
    在X个CK后,将会触发输出比较中断。同时电平翻转。
    在中断中再次将当前计数器CNT的值,加上脉冲长度X,写入输出比较寄存器。
    如此往复……
    以此即可得到一个占空比为50%,周期为2X个CK的PWM。

确定最小单位CK,配置时基单元

    首先确定一个最小的间隔CK,规定PWM的高电平长度和低电平长度的单位都是CK。
    即高电平的长度一定是CK的整数倍。低电平亦然。
    然后配置定时器的时基单元,通过CK的长度确定预分频系数。
    已知STM32F103的主频为72MHZ,则时基单元中预分频系数为

PSC = 72M / (1/CK)

    例如,rtz所确定的CK长度为10us(0.00001s),即可得出方程。

image.png

   预分频系数确定为720后,由高速晶振产生的72MHZ的时钟信号被720分频,得到100000HZ的时钟信号。即时钟信号每秒变动100000次。每次10us。同时可将重装载值设定为0XFFFF(16位定时器的最大值)。因为本次使用的输出比较模式不使用更新中断,该值可随意设置。

TIM_TimeBaseStructure.TIM_Period = 0XFFFF;
TIM_TimeBaseStructure.TIM_Prescaler =720;
TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);


    开启输出比较通道,设置输出比较模式为翻转模式,并配置NVIC,开启输出比较中断,配置输出比较通道:

TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_Toggle;TIM_OCInitStructure.TIM_Pulse = 500;TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;TIM_OCInitStructure.TIM_OCIdleState = TIM_OCIdleState_Set;TIM_OCInitStructure.TIM_OCNIdleState = TIM_OCIdleState_Reset;TIM_OC1Init(TIM2, &TIM_OCInitStructure);

    开启输出比较中断,配置NVIC优先级:

TIM_ITConfig(TIM2, TIM_IT_CC1, ENABLE);
NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;NVIC_Init(&NVIC_InitStructure);

编写中断服务函数

    在输出比较中断中,唯一要做的事情就是把当前CNT的值取出,加上脉冲长度X,写入输出比较寄存器。
    当计数器达到0XFFFF(之前设定的重装载值)后,再加一会自动变为0.
    例如,当前CNT值为0XFFFF,脉冲长度为5,很明显,输出比较寄存器应设置为0X0004才可触发下一次中断,而不是0X10004,这样会造成溢出。
    因此将CNT的值与脉冲长度相加后,需要取0XFFFF的余数后,再写入输出比较寄存器。

int t_m=5;//低电平和高电平的长度
void TIM2_IRQHandler(void){
if (TIM_GetITStatus(TIM2, TIM_IT_CC1) != RESET) {    
    TIM_SetCompare1(TIM2,(TIM2->CNT+t_m)%0XFFFF);    
            TIM_ClearITPendingBit(TIM2, TIM_IT_CC1);  
            }
            }

    动态调整中断服务函数中的变量t_m,即可达到修改PWM频率的效果。





关键词: STM32     实例     步进     电机    

专家
2025-08-04 19:47:30     打赏
2楼

感谢分享


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]
发生火灾时的正确做法是什么 下巴下面长痘痘是什么原因 夜深人静是什么意思 执业药师是干什么的 窝边草是什么意思
维生素b2有什么功效 本科二批是什么意思 白细胞高什么原因 做肠镜要挂什么科 殁送是什么意思
抓包是什么意思 孤是什么意思 老是吐口水是什么原因 长高吃什么 印度信仰什么教
包皮红肿瘙痒用什么药 血燥吃什么好 双飞是什么意思 c5是什么意思 月经期间喝什么汤好
血脂高吃什么药hcv8jop1ns3r.cn 吃什么祛湿hcv7jop5ns0r.cn 中性粒细胞高说明什么hcv9jop2ns8r.cn 青椒炒什么hcv9jop4ns3r.cn 8月27号是什么星座cl108k.com
金牛男喜欢什么样的女生hcv8jop7ns4r.cn 阴道炎不能吃什么hcv8jop7ns4r.cn 胃反流吃什么药好hcv9jop3ns4r.cn 音爆是什么hcv7jop7ns3r.cn 2型糖尿病是什么意思hcv8jop9ns9r.cn
尿隐血阴性是什么意思hcv7jop9ns3r.cn 什么掌不能拍hcv8jop4ns6r.cn 监督的近义词是什么hcv8jop5ns5r.cn 油麦菜不能和什么一起吃hcv8jop6ns0r.cn 颈部有肿块看什么科室kuyehao.com
金榜题名是什么生肖jiuxinfghf.com 贪吃的动物是什么生肖hcv8jop5ns3r.cn 男士内裤买什么牌子好hcv8jop6ns6r.cn 不结婚的叫什么族hcv8jop6ns3r.cn 清淡饮食吃什么hcv9jop5ns9r.cn
百度