• 大小: 11KB
    文件类型: .c
    金币: 1
    下载: 0 次
    发布日期: 2021-06-05
  • 语言: 其他
  • 标签: STM32  

资源简介

基于STM32的循迹小车主函数代码,主要是步进电机的控制,红外的控制,配置函数初始化等代码可以自行添加!

资源截图

代码片段和文件信息

/* Includes ------------------------------------------------------------------*/
#include “stm32f10x.h“ 
#include “StepperMotor.h“
#include “stm32f10x_exti.h“
#include 

/*
*左电机四引脚
*/ 

#define MT_LFT_A1 GPIO_Pin_6
#define MT_LFT_B1 GPIO_Pin_7
#define MT_LFT_A2 GPIO_Pin_9
#define MT_LFT_B2 GPIO_Pin_10
/*
*右电机四引脚
*/
#define MT_RGT_A1 GPIO_Pin_6
#define MT_RGT_B1 GPIO_Pin_7
#define MT_RGT_A2 GPIO_Pin_9
#define MT_RGT_B2 GPIO_Pin_10
/*
*左电机时序宏定义
*/
#define MT_LFT_OFF() GPIO_SetBits(GPIOAMT_LFT_A1|MT_LFT_B1|MT_LFT_A2|MT_LFT_B2)

#define MT_LFT_STEP1_SET() GPIO_SetBits(GPIOAMT_LFT_A1|MT_LFT_B1|MT_LFT_A2|MT_LFT_B2); \
                           GPIO_ResetBits(GPIOAMT_LFT_A1);
 
#define MT_LFT_STEP2_SET() GPIO_SetBits(GPIOAMT_LFT_A1|MT_LFT_B1|MT_LFT_A2|MT_LFT_B2); \
                           GPIO_ResetBits(GPIOAMT_LFT_A1|MT_LFT_B1);
 
#define MT_LFT_STEP3_SET() GPIO_SetBits(GPIOAMT_LFT_A1|MT_LFT_B1|MT_LFT_A2|MT_LFT_B2); \
                           GPIO_ResetBits(GPIOAMT_LFT_B1);
 
#define MT_LFT_STEP4_SET() GPIO_SetBits(GPIOAMT_LFT_A1|MT_LFT_B1|MT_LFT_A2|MT_LFT_B2); \
                           GPIO_ResetBits(GPIOAMT_LFT_B1|MT_LFT_A2);
 
#define MT_LFT_STEP5_SET() GPIO_SetBits(GPIOAMT_LFT_A1|MT_LFT_B1|MT_LFT_A2|MT_LFT_B2); \
                           GPIO_ResetBits(GPIOAMT_LFT_A2);
 
#define MT_LFT_STEP6_SET() GPIO_SetBits(GPIOAMT_LFT_A1|MT_LFT_B1|MT_LFT_A2|MT_LFT_B2); \
                           GPIO_ResetBits(GPIOAMT_LFT_A2|MT_LFT_B2);
 
#define MT_LFT_STEP7_SET() GPIO_SetBits(GPIOAMT_LFT_A1|MT_LFT_B1|MT_LFT_A2|MT_LFT_B2); \
                           GPIO_ResetBits(GPIOAMT_LFT_B2);
 
#define MT_LFT_STEP8_SET() GPIO_SetBits(GPIOAMT_LFT_A1|MT_LFT_B1|MT_LFT_A2|MT_LFT_B2); \
                           GPIO_ResetBits(GPIOAMT_LFT_B2|MT_LFT_A1);

/*
*右电机时序宏定义
*/
#define MT_RGT_OFF() GPIO_SetBits(GPIOCMT_RGT_A1|MT_RGT_B1|MT_RGT_A2|MT_RGT_B2)

#define MT_RGT_STEP1_SET() GPIO_SetBits(GPIOCMT_RGT_A1|MT_RGT_B1|MT_RGT_A2|MT_RGT_B2); \
                           GPIO_ResetBits(GPIOCMT_RGT_A1);
 
#define MT_RGT_STEP2_SET() GPIO_SetBits(GPIOCMT_RGT_A1|MT_RGT_B1|MT_RGT_A2|MT_RGT_B2); \
                           GPIO_ResetBits(GPIOCMT_RGT_A1|MT_RGT_B1);
 
#define MT_RGT_STEP3_SET() GPIO_SetBits(GPIOCMT_RGT_A1|MT_RGT_B1|MT_RGT_A2|MT_RGT_B2); \
                           GPIO_ResetBits(GPIOCMT_RGT_B1);
 
#define MT_RGT_STEP4_SET() GPIO_SetBits(GPIOCMT_RGT_A1|MT_RGT_B1|MT_RGT_A2|MT_RGT_B2); \
                           GPIO_ResetBits(GPIOCMT_RGT_B1|MT_RGT_A2);
 
#define MT_RGT_STEP5_SET() GPIO_SetBits(GPIOCMT_RGT_A1|MT_RGT_B1|MT_RGT_A2|MT_RGT_B2); \
                           GPIO_ResetBits(GPIOCMT_RGT_A2);
 
#define MT_RGT_STEP6_SET() GPIO_SetBits(GPIOCMT_RGT_A1|MT_RGT_B1|MT_RGT_A2|MT_RGT_B2); \
        

评论

共有 条评论