论坛首页
任务活动
问答
论坛专题
登录
注册
花间一壶酒sd
+ 关注
粉丝
2
|
主题
101
|
回帖
1219
加好友
私信
帖子
主题
回复
评论
stm32直流电机PID控制hal库(Cubemx)
2023-11-13 10:41
ST MCU
78
2800
......
随后在control.c文件中进行编写:
注意主函数中原来的代码 在中断服务函数(在it.c)中只打印现在的脉冲数,并加入Control_function(); 函数 ...
PI控制速度 简单验证并调试 在user文件夹下创建control.h和control.c并放入keil文件中 在main.c文件中加入 ...
在rpm=encoder_count/13.0/10.0/4.06000;中 13为旋转一圈所产生的脉冲数,即脉冲数/转(Pulse Per Revolutio ...
为了减少误差,以及防止引入浮点数等问题,我建议在底层层面上都使用脉冲数。 下面我们通过编写相关函数来 ...
然后将线连接在编码器的输出口: (保证此时电机是正传)此时串口打印出来的数据可能是很大数据,也可能是 ...
......
主程序中保持不变,我们在it.c(中断文件),最下方找到void TIM3_IRQHandler(void) 函数我们将在这里写相关 ...
开启定时器以及编码器:
这里我们需要这个文件的上方加入#include 并在魔法棒里面包括微库:
......
用户代码编写 由于用到了usart输出为了方便起见我们加入微库中的printf函数,我们为他重定义一下 在usart.c ...
霍尔编码器输出说明 在本实验中由于霍尔编码器的输出的高电平为5v为了保护单片机我们这里使用一个及其简单 ...
串口发送配置 由于我们现在需要通过串口打印出相应的代码,所以我们加入usart ...
这里我们这样配置是为了每10ms(及100HZ)检测速度;并且要打开中断(NVIC)
定时器中断配置 我们还需再打开一个定时器用来计时间隔
霍尔编码器会输出两路方波信号,如果只在通道A的上升沿计数,那就是1倍频;通道A的上升、下降沿计数,那就 ...
如图所示我们打开一个新的定时器(因为stm32是不允许同一个定时器又用到pwm输出功能和编码器功能,所以开一 ...
编码器encouder配置
前一页
9
10
11
12
13
14
15
后一页
2
3
近期访客