#include "motor.h" void Motor_Configuration(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); //使能GPIOA时钟 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | GPIO_Pin_4; //配置GPIO引脚 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出模式 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //GPIO速度50MHz GPIO_Init(GPIOA, &GPIO_InitStructure); //初始化GPIO } void Motor_LeftTurn(void) { LEFT_MOTOR_BACKWARD; //左电机后退 RIGHT_MOTOR_FORWARD; //右电机前进 } void Motor_RightTurn(void) { LEFT_MOTOR_FORWARD; //左电机前进 RIGHT_MOTOR_BACKWARD; //右电机后退 } void Motor_Straight(void) { LEFT_MOTOR_FORWARD; //左电机前进 RIGHT_MOTOR_FORWARD; //右电机前进 } void Motor_Stop(void) { LEFT_MOTOR_STOP; //左电机停止 RIGHT_MOTOR_STOP; //右电机停止 }基于这个写出motor.h
时间: 2024-04-28 20:19:32 浏览: 98
GPIO测试程序_GPIO输出_GPIO_STM32F103_gpio程序题_
#ifndef __MOTOR_H__
#define __MOTOR_H__
#include "stm32f10x.h"
#define LEFT_MOTOR_FORWARD GPIO_SetBits(GPIOA, GPIO_Pin_1)
#define LEFT_MOTOR_BACKWARD GPIO_ResetBits(GPIOA, GPIO_Pin_1)
#define LEFT_MOTOR_STOP GPIO_ResetBits(GPIOA, GPIO_Pin_1)
#define RIGHT_MOTOR_FORWARD GPIO_SetBits(GPIOA, GPIO_Pin_2)
#define RIGHT_MOTOR_BACKWARD GPIO_ResetBits(GPIOA, GPIO_Pin_2)
#define RIGHT_MOTOR_STOP GPIO_ResetBits(GPIOA, GPIO_Pin_2)
void Motor_Configuration(void);
void Motor_LeftTurn(void);
void Motor_RightTurn(void);
void Motor_Straight(void);
void Motor_Stop(void);
#endif /* __MOTOR_H__ */
阅读全文