Initial commit
This commit is contained in:
106
lib/buffer/buffer.h
Normal file
106
lib/buffer/buffer.h
Normal file
@@ -0,0 +1,106 @@
|
||||
/**
|
||||
***************************************************************************************
|
||||
* @file buffer.cpp
|
||||
* @author lijihu
|
||||
* @version V1.0.0
|
||||
* @date 2025/05/10
|
||||
* @brief 实现缓冲器功能
|
||||
*缓冲器说明
|
||||
光感:遮挡1,不遮挡0;
|
||||
耗材开关:有耗材0,无耗材1;
|
||||
按键:按下0,松开1;
|
||||
|
||||
引脚:
|
||||
HALL1 --> PB2 (光感3)
|
||||
HALL2 --> PB3 (光感2)
|
||||
HALL3 --> PB4 (光感1)
|
||||
ENDSTOP_3 --> PB7(耗材开关)
|
||||
KEY1 --> PB13(后退)
|
||||
KEY2 --> PB12(前进)
|
||||
*
|
||||
* @note
|
||||
***************************************************************************************
|
||||
* 版权声明 COPYRIGHT 2024 xxx@126.com
|
||||
***************************************************************************************
|
||||
**/
|
||||
|
||||
#ifndef __BUFFER_H__
|
||||
#define __BUFFER_H__
|
||||
|
||||
#include <TMCStepper.h>
|
||||
#include <Arduino.h>
|
||||
#include <EEPROM.h>
|
||||
|
||||
#define HALL1 PB2 //光感3
|
||||
#define HALL2 PB3 //光感2
|
||||
#define HALL3 PB4 //光感1
|
||||
|
||||
#define ENDSTOP_3 PB7 //耗材开关
|
||||
|
||||
#define KEY1 PB13 //后退
|
||||
#define KEY2 PB12 //前进
|
||||
|
||||
#define EN_PIN PA6 //使能
|
||||
#define DIR_PIN PA7 //方向
|
||||
#define STEP_PIN PC13 //步
|
||||
#define UART PB1 //软串口
|
||||
|
||||
#define DUANLIAO PB15 //断料
|
||||
#define ERR_LED PA15 //指示灯
|
||||
#define START_LED PA8 //指示灯
|
||||
|
||||
#define DRIVER_ADDRESS 0b00 // TMC Driver address according to MS1 and MS2
|
||||
#define R_SENSE 0.11f // Match to your driver
|
||||
|
||||
#define SPEED 300 //转速(单位:r/min)
|
||||
#define Move_Divide_NUM ((int32_t)(64)) //(每步柔性件控制细分量)
|
||||
#define VACTRUAL_VALUE (uint32_t)(SPEED*Move_Divide_NUM*200/60/0.715) //VACTUAL寄存器值
|
||||
|
||||
#define STOP 0 //停止
|
||||
#define I_CURRENT (600) //电流
|
||||
#define WRITE_EN_PIN(x) digitalWrite(EN_PIN,x)//使能EN引脚
|
||||
#define FORWARD 1//耗材方向
|
||||
#define BACK 0
|
||||
|
||||
#define DEBUG 0
|
||||
|
||||
//定义结构体存储缓冲器中各传感器的的状态
|
||||
typedef struct Buffer
|
||||
{
|
||||
//buffer1
|
||||
bool buffer1_pos1_sensor_state;
|
||||
bool buffer1_pos2_sensor_state;
|
||||
bool buffer1_pos3_sensor_state;
|
||||
bool buffer1_material_swtich_state;
|
||||
bool key1;
|
||||
bool key2;
|
||||
|
||||
}Buffer;
|
||||
|
||||
//电机状态控制枚举
|
||||
typedef enum
|
||||
{
|
||||
Forward=0,//向前
|
||||
Stop, //停止
|
||||
Back //后退
|
||||
}Motor_State;
|
||||
|
||||
extern void buffer_sensor_init();
|
||||
extern void buffer_motor_init();
|
||||
|
||||
extern void read_sensor_state(void);
|
||||
extern void motor_control(void);
|
||||
|
||||
extern void buffer_init();
|
||||
extern void buffer_loop(void);
|
||||
extern void timer_it_callback();
|
||||
extern void buffer_debug(void);
|
||||
|
||||
extern bool is_error;
|
||||
extern uint32_t front_time;//前进时间
|
||||
extern uint32_t timeout;
|
||||
extern bool is_front;
|
||||
extern TMC2209Stepper driver;
|
||||
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user