如果没有遥控器的情况下,如何测试电机电调或者如何让电机转起来,新西达电调的测试是需要发送机,本文无需借助遥控器,而是使用编程MCU的方式,启动电机。。。并测试电调PWM占空比的上下区间。
以下是淘宝新西达主页介绍首次使用电调启动的步骤,是需要借助遥控器的。
1.CUBEMAX配置PWM输出(定时器3的PWM1(通道1)),定时器3的主频为240MHz,本工程配置PWM的频率为500HZ,因此预分频值设为240,重装载值设为2000。
2.配置串口,用于打印输出信息,便于调试
3.点击GENERATE CODE生成工程代码
4.工程代码添加一个函数void main_task_func(void *arg),在函数中测试电调电机
#include "tim.h"
void main_task_func(void *arg)
{
//开启PWM的通道1输出
HAL_TIM_PWM_Start(&htim3,TIM_CHANNEL_1);
uint8_t count = 4;
//这个循环目的是让电调启动,其实就是模拟遥控器将油门推到最大和最小的过程,循环4次为了保证使电调启动成功
while (count>0)
{
count--;
__HAL_TIM_SetCompare(&htim3,TIM_CHANNEL_1,1000);
vTaskDelay(1000);
__HAL_TIM_SetCompare(&htim3,TIM_CHANNEL_1,1215);
vTaskDelay(1000);
/* code */
}
//将占空比初始值设为1200,满占为2000,不断增加占空比,每次增加的5,并打印到屏幕,同时感受电机的转速,就大概知道占空比的上下限了
uint16_t pwm = 1200;
while(1)
{
__HAL_TIM_SetCompare(&htim3,TIM_CHANNEL_1,pwm);
pwm += 50;
if(pwm>=2000)
{
pwm = 1200;
}
printf("pwm: %d\r\n",pwm);
vTaskDelay(2000);
}
}
打印输出如下:
测试电机