12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- //===================================修改记录=================================//
- //2020.05.12 17:28 LXZ
- // 1、增加获取回零信号管脚的接口
- // 2、增加修改硬件频率的接口
- //2020.05.18 15:14 LXZ
- // 1、增加设置编码器回零的接口
- //============================================================================//
- #ifndef __AXIS_MOTION_CONFIG_H__
- #define __AXIS_MOTION_CONFIG_H__
- #include "board.h"
- #define HW_PWM_CLK 6000000
- #define AXIS_LOCATION_SMOOTH 20 //定位接口平滑度
- #define AXIS_USING_FLOAT //使用浮点运算功能
- //#define AXIS_USING_DEBUG //使用调试
- #define AXIS_IGNORE_REPEAT_STEP //去除重复步
- #define AXIS_USING_ACC_TABLE_ONLY //使用加速表同时当减速表来减少内存,使能该选项将会减少内存占用,
- //但是减时间设置将无效化
- #define AXIS_MAX_ACCDEC_STEP 1 //加减速表的缓冲大小
- #define AXIS_PP_TASK_NUMBER 5 //任务缓冲个数
- #define AXIS_CALC_ROUND(reg) 0
- //任务数量必须大于1,不然就没有作用
- #if defined(AXIS_PP_TASK_NUMBER) && (AXIS_PP_TASK_NUMBER < 1)
- #error "axis tasks data buffer number must bigger 1!"
- #endif
- #define AXIS_ACC_REG_TABLE(axis) axis->acc_reg_table
- #define AXIS_ACC_NUMBER_TABLE(axis) axis->acc_number_table
- #ifndef AXIS_USING_ACC_TABLE_ONLY
- #define AXIS_DEC_REG_TABLE(axis) axis->dec_reg_table
- #define AXIS_DEC_NUMBER_TABLE(axis) axis->dec_number_table
- #else
- #define AXIS_DEC_REG_TABLE(axis) axis->acc_reg_table
- #define AXIS_DEC_NUMBER_TABLE(axis) axis->acc_number_table
- #endif
- #define AXIS_ON(axis) HW_PWM_ON(axis->axis_no)
- #define AXIS_OFF(axis) HW_PWM_OFF(axis->axis_no)
- #define AXIS_IS_ON(aixs) HW_PWM_IS_ON(axis->axis_no)
- #define AXIS_UPDATE_PERION(axis,period) HW_PWM_UPDATE_PERIOD(axis->axis_no,period)
- #define AXIS_SET_PERION(axis,period) HW_PWM_SET_PERIOD(axis->axis_no,period)
- #define AXIS_SET_DIR(axis,dir) HW_PWM_SET_DIR(axis->axis_no,dir)
- #define AXIS_SET_EN(aixs, sta) hw_pwm_set_enable(axis->axis_no,sta)
- #define AXIS_GET_HOME_SGN(axis) ((*(axis->home_sgn_register) & axis->home_sgn_mask) == axis->home_sgn_level)
- #define AXIS_GET_HOME_ENCODER_SGN(axis) ((*(axis->home_encoder_sgn_register) & axis->home_encoder_sgn_mask) == axis->home_encoder_sgn_level)
- #define AXIS_SET_CLOCK(axis,clock) hw_pwm_set_clock(axis->axis_no,clock)
- #endif
|