一、准备材料
核心板:STM32F407ZGT6
舵机:LD-1501MG数字舵机
控制器:24路PWM舵机控制器
二、HAL库配置
开启串口与控制器通信
三、Keil填写代码
1、Servo.c
#include "Servo.h"
#include "usart.h"
uint8_t Message[10]={0x55,0x55,0x08,0x03,0x01,0x01,0x00}; //帧头
/*舵机驱动函数
param:
@num :舵机号
@angle :占空比 —— 500~2500
*/
void Servo_Run(uint16_t num,uint16_t angle)
{
Message[7] = num;
Message[8] = angle % 256;
Message[9] = angle / 256;
HAL_UART_Transmit(&huart1, (uint8_t *)Message, 10, 1000);
}
2、main.c
/* USER CODE BEGIN 2 */
Servo_Run(1,500);
/* USER CODE END 2 */
四、源码提供
[STM32+HAL]LD-1501MG舵机二次开发指南