网易首页 > 网易号 > 正文 申请入驻

STM32CubeMX模块化设计举例:舵机控制(赖德翔贡献)

0
分享至

一路PWM波程序的模块化设计

我们的设计中需要一个舵机用来模拟门禁的开关动作,舵机需要一路周期为50Hz,占空比为2.5%-12.5%之间的PWM波来控制,这在我们的设计中是一个比较简单的模块,我们显然希望在main.c中应用尽可能少的语句来实现它。我把我们程序中对舵机的控制稍微加了一点改动,做了这样一个实验。主函数可以通过调用定时器模块的两个函数:PWM波初始化函数,PWM波占空比修改函数,很简单地完成对舵机的控制。

实验目的:采用模块化的设计控制一路PWM波,改变它的占空比。

实验现象:控制舵机的PWM波占空比在4%和9%之间切换,每隔3秒切换一次。

创建工程

打开STM32CubeMX,创建一个新工程,RCC、SYS、Clock Configuration的配置同之前的几个实验。

1、 配置TIM1---选通道4输出

配置TIM1

选择Clock Source为Internal Clock;

选择Channel4为PWM Generation CH4;

TIM1配置完成后自动分配芯片的PWM输出引脚

这一步做完后系统会自动将PA11作为PWM波输出通道。

2.设置TIM1参数

TIM1参数配置

在Parameter Settings中

设置预分频Prescaler为7199;

设置计数值Counter Period为199;

设置auto-reload preload为Enable;

其他参数可以采用默认值

这样PWM的频率为72MHz/(7199+1)/(199+1)=50Hz;

如果要改变频率需要改变Prescaler和Counter Period的值。

3.修改管脚名称

修改管脚名称

为了与原理图匹配,我在GPIO的TIM找到PA11,将User Label修改为PWM。其实这里不改动也不太影响程序的可移植性。

4.生成模块化的工程文件

模块化工程选项

勾选Generated files的第一项后点击“Generate Code”。

功能代码

在tim.c里面添加:

/* USER CODE BEGIN 1 */

void PWM_Init(void)

HAL_TIM_Base_Start(&htim1);//打开定时器1

HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_4);//定时器1通道4输出PWM

void PWM_SetDuty(float dutycycle)

int duty=dutycycle*(htim1.Init.Period+1)/100;//根据占空比计算出比较值duty

__HAL_TIM_SET_COMPARE(&htim1, TIM_CHANNEL_4,duty);

/* USER CODE END 1 */

在tim.h里面添加:

/* USER CODE BEGIN Prototypes */

void PWM_Init(void);

void PWM_SetDuty(float dutycycle);

/* USER CODE END Prototypes */

在main.c里面添加如下代码:

/* USER CODE BEGIN 2 */

PWM_Init();

/* USER CODE END 2 */

while (1)

/* USER CODE END WHILE */

/* USER CODE BEGIN 3 */

PWM_SetDuty(4);

HAL_Delay(3000);

PWM_SetDuty(9);

HAL_Delay(3000);

/* USER CODE END 3 */

这里用到了两个函数,PWM_Init(void)可以打开定时器并开始输出PWM波,PWM_SetDuty(float dutycycle)可以改变PWM波的占空比,入口参数dutycycle是PWM波的占空比,它可以是小数,但由于计数值为199,所以PWM波的实际精度只能达到

1÷(199+1)*100%=0.5%,要提高精度需要提高计数值。

编译、下载、运行。将PA11连接到舵机的控制线上,可以看到舵机在两个位置间切换,转过的角度约为90°。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
奔驰最大降幅50% 雅阁最大降幅39%|本周新车降价排行榜

奔驰最大降幅50% 雅阁最大降幅39%|本周新车降价排行榜

道哥说车
2024-06-14 10:50:27
影片中“强奸片段”的假戏真做了,这到底是艺术还是故意伤害?

影片中“强奸片段”的假戏真做了,这到底是艺术还是故意伤害?

综艺拼盘汇
2024-06-15 18:20:56
网传某高校劳务派遣人员管理办法,基本工资2570元/月,岗位津贴最高4038元

网传某高校劳务派遣人员管理办法,基本工资2570元/月,岗位津贴最高4038元

可达鸭面面观
2024-06-14 16:25:01
穆帅陪弗爵看欧洲杯,曝其欲800万签曼联一人!旧将承认怀念狂人

穆帅陪弗爵看欧洲杯,曝其欲800万签曼联一人!旧将承认怀念狂人

罗米的曼联博客
2024-06-15 11:35:14
0:3惨败,欧洲杯大战,西班牙“非常规”大胜,黄健翔:太沮丧了

0:3惨败,欧洲杯大战,西班牙“非常规”大胜,黄健翔:太沮丧了

话体坛
2024-06-16 02:31:15
A股:大家做好心理准备,股市,将会重演16年的历史

A股:大家做好心理准备,股市,将会重演16年的历史

生活中的栗子
2024-06-14 15:25:46
姜萍被重点高中家长吐槽:凭啥我儿子做不到,她中专女却能做到?

姜萍被重点高中家长吐槽:凭啥我儿子做不到,她中专女却能做到?

熙熙说教
2024-06-14 17:11:08
张天爱自拍大秀“凶器”,身材气质绝佳!曾和娜扎联手锤渣男?

张天爱自拍大秀“凶器”,身材气质绝佳!曾和娜扎联手锤渣男?

狐飞火
2024-06-15 00:40:03
18强赛最大变数诞生!力压沙特进二档,有望时隔40年再进世界杯!

18强赛最大变数诞生!力压沙特进二档,有望时隔40年再进世界杯!

绿茵舞着
2024-06-16 02:51:31
4个奥运冠军3个出事!中国梦之队名声扫地,功勋教练被终身禁赛

4个奥运冠军3个出事!中国梦之队名声扫地,功勋教练被终身禁赛

体坛知识分子
2024-06-12 06:20:03
塔图姆嘲讽湖人詹姆斯:绿军只挂总冠军旗帜 季中赛夺冠没有意义

塔图姆嘲讽湖人詹姆斯:绿军只挂总冠军旗帜 季中赛夺冠没有意义

篮球话题团
2024-06-15 01:05:18
秒杀人类!日本三菱电机0.305秒复原魔方刷新世界纪录上央视新闻

秒杀人类!日本三菱电机0.305秒复原魔方刷新世界纪录上央视新闻

机器人大讲堂
2024-06-13 17:51:55
吴艳妮人气堪比奥运冠军!长发披肩没化大浓妆 网友称赞:格局大

吴艳妮人气堪比奥运冠军!长发披肩没化大浓妆 网友称赞:格局大

念洲
2024-05-29 11:59:28
阿玛尼公开选“男模”!满屏都是190高颜值帅哥,网友:有眼福了

阿玛尼公开选“男模”!满屏都是190高颜值帅哥,网友:有眼福了

咖啡店的老板娘
2024-06-15 22:19:44
回顾男子新车跑20万公里,成功跑报废,4S店:买完车就没有熄过火

回顾男子新车跑20万公里,成功跑报废,4S店:买完车就没有熄过火

琪琪故事记
2024-06-14 09:09:07
沈阳一大学生减重后“猝死”:代表学校备战拳击赛,39天减了近20斤

沈阳一大学生减重后“猝死”:代表学校备战拳击赛,39天减了近20斤

奔流新闻
2024-06-15 15:29:32
劳塔罗:感谢梅西把点球让给我,他在场上场下都是一位绅士

劳塔罗:感谢梅西把点球让给我,他在场上场下都是一位绅士

懂球帝
2024-06-15 10:51:12
俄乌大战再现重大转折!车臣精锐突袭乌境,三天拿下苏梅州重镇

俄乌大战再现重大转折!车臣精锐突袭乌境,三天拿下苏梅州重镇

美人茶话会
2024-06-16 05:21:37
中医鬼才倪海厦竟然还活着,传言在日本?

中医鬼才倪海厦竟然还活着,传言在日本?

心灵短笛
2024-06-14 10:49:06
1988年,于凤至晚年在美国别墅里的珍贵留影

1988年,于凤至晚年在美国别墅里的珍贵留影

视点历史
2024-06-15 18:11:58
2024-06-16 06:52:49
遇见科技君
遇见科技君
一个热爱分享的传统宅男
351文章数 121662关注度
往期回顾 全部

头条要闻

欧洲杯-23秒丢球破纪录 意大利2-1逆转阿尔巴尼亚

头条要闻

欧洲杯-23秒丢球破纪录 意大利2-1逆转阿尔巴尼亚

体育要闻

莱夫利,让困难为我让路

娱乐要闻

江宏杰秀儿女刺青,不怕刺激福原爱?

财经要闻

新情况!高层对人民币的态度180°转弯

科技要闻

TikTok开始找退路了?

汽车要闻

东风奕派eπ008售21.66万元 冰箱彩电都配齐

态度原创

艺术
健康
游戏
数码
公开课

艺术要闻

穿越时空的艺术:《马可·波罗》AI沉浸影片探索人类文明

晚餐不吃or吃七分饱,哪种更减肥?

魂师对决:SP唐昊返场抽取价值分析!真身幻金真是一个都少不了!

数码要闻

低至 5747 元,爱普生 CH-TW6280T 真 4K 投影仪京东大促

公开课

近视只是视力差?小心并发症

无障碍浏览 进入关怀版