260 lines
4.4 KiB
C
260 lines
4.4 KiB
C
|
|
|
|||
|
|
|
|||
|
|
#ifndef __DRIVERPARAS_H__
|
|||
|
|
#define __DRIVERPARAS_H__
|
|||
|
|
|
|||
|
|
#include "config.h"
|
|||
|
|
|
|||
|
|
#define DRIVER_PARA_ST 0
|
|||
|
|
#define DRIVER_PARA_NOR 1
|
|||
|
|
|
|||
|
|
#ifndef DRIVER_PARA
|
|||
|
|
#define DRIVER_PARA DRIVER_PARA_NOR
|
|||
|
|
#endif
|
|||
|
|
|
|||
|
|
|
|||
|
|
#if (DRIVERS_NUM > 0)
|
|||
|
|
|
|||
|
|
#if (DRIVER_PARA == DRIVER_PARA_NOR)
|
|||
|
|
#include "norparas.h"
|
|||
|
|
#define DRV_PARA_NUMS PARA_NUM_PER_BLK
|
|||
|
|
#define DRV_PARA_STR_LEN PARA_STR_LEN
|
|||
|
|
#else
|
|||
|
|
|
|||
|
|
#define DRV_PARA_NUMS 64
|
|||
|
|
#define DRV_PARA_STR_LEN 30
|
|||
|
|
|
|||
|
|
#endif
|
|||
|
|
|
|||
|
|
|
|||
|
|
#define CTRLMODE_OPEN 0
|
|||
|
|
#define CTRLMODE_CLOSE 1
|
|||
|
|
|
|||
|
|
typedef struct
|
|||
|
|
{
|
|||
|
|
// 0
|
|||
|
|
int closeCtrlMode; // <20><><EFBFBD>ջ<EFBFBD>ģʽ
|
|||
|
|
int cmdSource; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ, 0 <20>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD>; 1, <20>ⲿ<EFBFBD><E2B2BF><EFBFBD><EFBFBD>;
|
|||
|
|
int stepPerCircle; // ÿȦ<C3BF><C8A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
// 3
|
|||
|
|
int openRunCircle; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD>
|
|||
|
|
int openLockCircle; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
int openMaxOffset; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
// 6
|
|||
|
|
s32 maxSpeed; // <20><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><>λ: <20>ɿ<EFBFBD>λ<EFBFBD>ø<EFBFBD><C3B8><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
// 7
|
|||
|
|
int closeAdjust; // <20>ջ<EFBFBD><D5BB>ų<EFBFBD><C5B3><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
int closeCircle; // <20>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
// 9
|
|||
|
|
int maxAdvance; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD><C6AB>
|
|||
|
|
|
|||
|
|
// 10
|
|||
|
|
// <20>ջ<EFBFBD>λ<EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD>pid
|
|||
|
|
int kp; // λ<>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Χ(0--1000), Ĭ<><C4AC> 500
|
|||
|
|
int ki; // λ<>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Χ(0--1000), Ĭ<><C4AC> 20
|
|||
|
|
int kd; // λ<>û<EFBFBD><EFBFBD><CEA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Χ(0--1000), Ĭ<><C4AC> 800
|
|||
|
|
|
|||
|
|
// 13
|
|||
|
|
int ecdAdjust; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
// 14
|
|||
|
|
u32 startPPS; // <20><><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
|
|||
|
|
u32 runPPS; // <20><><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
|
|||
|
|
u32 addPPSS; // <20><><EFBFBD>ٶ<EFBFBD>
|
|||
|
|
u32 brkPPSS; // ɲ<><C9B2><EFBFBD>ٶ<EFBFBD>
|
|||
|
|
|
|||
|
|
// 18
|
|||
|
|
u32 numerator; // <20><><EFBFBD>ӳ<EFBFBD><D3B3>ַ<EFBFBD><D6B7><EFBFBD>
|
|||
|
|
u32 denominator; // <20><><EFBFBD>ӳ<EFBFBD><D3B3>ַ<EFBFBD>ĸ
|
|||
|
|
|
|||
|
|
// 20
|
|||
|
|
u32 basecircle; // <20>ջ<EFBFBD><D5BB><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
// 21
|
|||
|
|
u32 rev[DRV_PARA_NUMS-21];
|
|||
|
|
}DriverPara;
|
|||
|
|
|
|||
|
|
#ifdef _IN_DRIVERPARAS_C
|
|||
|
|
|
|||
|
|
// Ĭ<>ϲ<EFBFBD><CFB2><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
static const u32 g_defDriverParaList[DRV_PARA_NUMS][3] =
|
|||
|
|
{
|
|||
|
|
// <09><>С <09><><EFBFBD><EFBFBD> Ĭ<><C4AC>
|
|||
|
|
// 0
|
|||
|
|
{0, 1, 0 } , // int closeCtrlMode; // <20><><EFBFBD>ջ<EFBFBD>ģʽ
|
|||
|
|
{0, 1, 0 } , // int cmdSource; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ, 0 <20>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD>; 1, <20>ⲿ<EFBFBD><E2B2BF><EFBFBD><EFBFBD>;
|
|||
|
|
{100, 204800, 4000} , // int stepPerCircle; // ÿȦ<C3BF><C8A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
// 3
|
|||
|
|
{1, 320, 200 } , // int openRunCircle; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD>
|
|||
|
|
{0, 320, 0 } , // int openLockCircle; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
{1, 1000, 200 } , // int openMaxOffset; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
// 6
|
|||
|
|
{1, 10000, 4000} , // s32 maxSpeed; // <20><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><>λ: <20>ɿ<EFBFBD>λ<EFBFBD>ø<EFBFBD><C3B8><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
// 7
|
|||
|
|
{0, 0, 0 } , // int closeAdjust; // <20>ջ<EFBFBD><D5BB>ų<EFBFBD><C5B3><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
{1, 1000, 100 } , // int closeCircle; // <20>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
{1, 1200, 1200} , // int maxAdvance; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD><C6AB>
|
|||
|
|
|
|||
|
|
// 10
|
|||
|
|
// <20>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>pid
|
|||
|
|
{0, 1000, 400 } , // int kp; // λ<>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Χ(0--1000), Ĭ<><C4AC> 400
|
|||
|
|
{0, 1000, 20 } , // int ki; // λ<>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Χ(0--1000), Ĭ<><C4AC> 20
|
|||
|
|
{0, 1000, 800 } , // int kd; // λ<>û<EFBFBD><EFBFBD><CEA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>Χ(0--1000), Ĭ<><C4AC> 800
|
|||
|
|
|
|||
|
|
// 13
|
|||
|
|
{0, 0, 0 } , // int ecdAdjust; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
// 14
|
|||
|
|
{1, 10000, 1000 } , // u32 startPPS; // <20><><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
|
|||
|
|
{1, 200000, 40000 } , // u32 runPPS; // <20><><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
|
|||
|
|
{1, 40000, 100 } , // u32 addPPSS; // <20><><EFBFBD>ٶ<EFBFBD>
|
|||
|
|
{1, 40000, 10000 } , // u32 brkPPSS; // ɲ<><C9B2><EFBFBD>ٶ<EFBFBD>
|
|||
|
|
|
|||
|
|
// 18
|
|||
|
|
{100, 204800, 4000} , // u32 numerator; // <20><><EFBFBD>ӳ<EFBFBD><D3B3>ַ<EFBFBD><D6B7><EFBFBD>
|
|||
|
|
{1, 204800, 1 } , // u32 denominator; // <20><><EFBFBD>ӳ<EFBFBD><D3B3>ַ<EFBFBD>ĸ
|
|||
|
|
|
|||
|
|
// 20
|
|||
|
|
{0, 50, 0 }, // <20>ջ<EFBFBD><D5BB><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD>
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
|
|||
|
|
// 32
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
{0, 0, 0 },
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
static const char g_driverParaStrList[DRV_PARA_NUMS][DRV_PARA_STR_LEN] =
|
|||
|
|
{
|
|||
|
|
"<EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD>ģʽ; 0<><30><EFBFBD><EFBFBD>; 1, <20>ջ<EFBFBD>;",
|
|||
|
|
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ, 0 <20>ڲ<EFBFBD>; 1, <20>ⲿ;",
|
|||
|
|
"ÿȦ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
|
|||
|
|
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><EFBFBD><EFBFBD>",
|
|||
|
|
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
|
|||
|
|
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD><EFBFBD>",
|
|||
|
|
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
|
|||
|
|
"<EFBFBD>ջ<EFBFBD><EFBFBD>ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
|
|||
|
|
"<EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
|
|||
|
|
"<EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD><EFBFBD>",
|
|||
|
|
"λ<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(0--1000)",
|
|||
|
|
"λ<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(0--1000)",
|
|||
|
|
"λ<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(0--1000)",
|
|||
|
|
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><EFBFBD>0",
|
|||
|
|
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>",
|
|||
|
|
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>",
|
|||
|
|
"<EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>",
|
|||
|
|
"ɲ<EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>",
|
|||
|
|
"<EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD>",
|
|||
|
|
"<EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD><EFBFBD>ַ<EFBFBD>ĸ",
|
|||
|
|
|
|||
|
|
// 20
|
|||
|
|
"<EFBFBD>ջ<EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(0-50)",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
// 32
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
"",
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
#endif
|
|||
|
|
|
|||
|
|
//-----------------------
|
|||
|
|
|
|||
|
|
void InitDriverParas(void);
|
|||
|
|
|
|||
|
|
DriverPara * GetDriverParas(int didx);
|
|||
|
|
void SaveDriverParas(int didx);
|
|||
|
|
|
|||
|
|
const char * GetDriverParaName(int pidx);
|
|||
|
|
|
|||
|
|
//-----------------------
|
|||
|
|
|
|||
|
|
#endif
|
|||
|
|
|
|||
|
|
//-----------------------
|
|||
|
|
|
|||
|
|
#endif
|