📄 encoder.h
字号:
#ifndef Encoder_H
#define Encoder_H
//------------------ C API for Encoder routines ---------------------
#define Nang_S 8 // Nang must satisfy 64 <= 2^Nang < CntsPerRev
#define Nang_W 9
#define Nvel 8 // Nvel must be in range -8 <= 15-Nvel <= +7
typedef struct{
short qSteerMechAng; // 方向盘转子机械转角 in 1.15 format
short qKang_S; // 方向盘比例常量: Count to Angle scaling
short iSteerCntsPerWheel90Degree; // 常量: 轮子旋转90度,方向盘编码器每转的计数值
short qWheelMechAng; // 转向轮机械转角 in 1.15 format
short qKang_W; // 转向轮比例常量: Count to Angle scaling
short iMotorCntsPerRev; // 常量: 电机编码器每转的计数值
short qMotorVelMech; // 转子机械旋转速度 in 1.15
short qKvel; //常量: Count to velocity scaling
short iIrpPerCalc; //常量: Timer interrupts per speed calc
//private
short iVelCntDwn; // Countdown to next speed calc
short iPrevCnt; // Last encoder value
short iAccumCnt; // Accumulating cnts
short iDeltaCnt; //
short iSteerCnt; //
short iIndexCnt; //电机轴圈数计数
short qKang_Pos; //对POSCNT进行角度换算的比例系数(1.15)
short qKang_Indx; //对Indx进行角度换算的比例系数(1.15)
}tEncoderParm;
EXTERN tEncoderParm EncoderParm;
void InitCalcVel(void);
bool InitEncoderScaling(void);
void InitCalcAng(void);
void CalcAngIrp(void);
void CalcAng(void);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -