// 初始化2号端口为PWM staticvoidmcpwm_example_gpio_initialize(void) { printf("initializing mcpwm servo control gpio......\n"); mcpwm_gpio_init(MCPWM_UNIT_0, MCPWM0A, 18); //Set GPIO 2 as PWM0A, to which servo is connected }
#define SERVO_MIN_PULSEWIDTH 1000 //Minimum pulse width in microsecond #define SERVO_MAX_PULSEWIDTH 2000 //Maximum pulse width in microsecond #define SERVO_MAX_DEGREE 90 //Maximum angle in degree upto which servo can rotate
需要修改一下,依据我的舵机参数,将其修改为
1 2 3
#define SERVO_MIN_PULSEWIDTH 500 //Minimum pulse width in microsecond #define SERVO_MAX_PULSEWIDTH 2500 //Maximum pulse width in microsecond #define SERVO_MAX_DEGREE 180 //Maximum angle in degree upto which servo can rotate
又因为我的板子没有引出18号引脚,所以还是修改为上篇文章中的2号引脚吧
1 2 3 4 5
staticvoidmcpwm_example_gpio_initialize(void) { printf("initializing mcpwm servo control gpio......\n"); mcpwm_gpio_init(MCPWM_UNIT_0, MCPWM0A, 18); //Set GPIO 18 as PWM0A, to which servo is connected }
改为
1 2 3 4 5 6
staticvoidmcpwm_example_gpio_initialize(void) { printf("initializing mcpwm servo control gpio......\n"); mcpwm_gpio_init(MCPWM_UNIT_0, MCPWM0A, 2); //Set GPIO 2 as PWM0A, to which servo is connected } 至此,代码就修改完成了。