diff --git a/.clang-format b/.clang-format index 14166ef..9eb5c34 100644 --- a/.clang-format +++ b/.clang-format @@ -34,8 +34,8 @@ AllowShortLoopsOnASingleLine: true AlwaysBreakAfterReturnType: None AlwaysBreakBeforeMultilineStrings: true AlwaysBreakTemplateDeclarations: Yes -BinPackArguments: false -BinPackParameters: false +BinPackArguments: true +BinPackParameters: true BitFieldColonSpacing: Both BreakBeforeBraces: Custom BraceWrapping: @@ -59,7 +59,7 @@ BreakConstructorInitializersBeforeComma: false BreakInheritanceList: AfterComma BreakBeforeTernaryOperators: true BreakStringLiterals: true -ColumnLimit: 132 +ColumnLimit: 100 CommentPragmas: "^ IWYU pragma:" CompactNamespaces: true ConstructorInitializerIndentWidth: 4 @@ -156,3 +156,4 @@ SpacesInSquareBrackets: false Standard: Auto TabWidth: 4 UseTab: Always + diff --git a/.clang-tidy b/.clang-tidy index 7238975..f27c521 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -1,4 +1,5 @@ -Checks: '-*, + +Checks: '-*, misc-throw-by-value-catch-by-reference, misc-misplaced-const, misc-unconventional-assign-operator, @@ -39,7 +40,7 @@ readability-deleted-default, readability-make-member-function-const, readability-misplaced-array-index, - readability-non-const-parameter, + readability-qualified-auto, readability-redundant-access-specifiers, readability-redundant-control-flow, @@ -156,9 +157,9 @@ WarningsAsErrors: '*' CheckOptions: - key: readability-identifier-naming.ClassCase - value: camelCase + value: CamelCase - key: readability-identifier-naming.EnumCase - value: camelBack + value: CamelCase - key: readability-identifier-naming.LocalVariableCase value: camelBack - key: readability-identifier-naming.StaticConstantCase @@ -171,16 +172,15 @@ CheckOptions: value: '' - key: readability-identifier-naming.ProtectedMemberPrefix value: '' - - key: readability-identifier-naming.GlobalVariablePrefix - value: g + - key: readability-identifier-naming.GlobalConstantCase - value: camelBack + value: UPPER_CASE - key: readability-identifier-naming.GlobalConstantPrefix value: '' - key: readability-identifier-naming.PublicMemberCase value: camelBack - key: readability-identifier-naming.MethodCase - value: camelCase + value: CamelCase - key: readability-identifier-naming.PrivateMethodPrefix value: '' - key: readability-identifier-naming.ProtectedMethodPrefix @@ -202,4 +202,11 @@ CheckOptions: - key: readability-identifier-naming.UsingCase value: CamelCase - key: readability-identifier-naming.GlobalFunctionCase - value: CamelCase \ No newline at end of file + value: CamelCase + value: Camel_Snake_Case + # - key: readability-identifier-naming.GlobalConstantPointerPrefix + # value: p_ + # - key: readability-identifier-naming.GlobalPointerPrefix + # value: p_ + - key: readability-identifier-naming.GlobalVariablePrefix + value: g_ diff --git a/Chassis/src/robot.c b/Chassis/src/robot.c index 8a50185..f04fb6a 100644 --- a/Chassis/src/robot.c +++ b/Chassis/src/robot.c @@ -19,11 +19,13 @@ void robotInit() { legInit(&robot->legL, LEGLEFT, motorL, motorLF, motorLB); legInit(&robot->legR, LEGRIGHT, motorR, motorRF, motorRB); legInit(&robot->legVir, LEGLEFT, NULL, NULL, NULL); - // TODO: 参数暂定 调节 + robot->yawpid = (PID *) malloc(sizeof(PID)); robot->rollpid = (PID *) malloc(sizeof(PID)); robot->splitpid = (PID *) malloc(sizeof(PID)); robot->L0pid = (PID *) malloc(sizeof(PID)); + + // TODO: 参数暂定 调节 pidInit(robot->yawpid, 1, 1, 1, 0, 0, PIDPOS); pidInit(robot->rollpid, 1, 1, 1, 0, 0, PIDPOS); pidInit(robot->splitpid, 1, 1, 1, 0, 0, PIDPOS); @@ -50,8 +52,6 @@ void updateState() { robot->legR.TWheelnow = robot->legR.wheel->currentRead * M3508CURRENTTOTORQUE; flyCheck(); - - } //---- diff --git a/Function/src/pid.c b/Function/src/pid.c index 36a93bf..afeddeb 100644 --- a/Function/src/pid.c +++ b/Function/src/pid.c @@ -66,6 +66,17 @@ float TposCompute(PID* pid, float input) { return pid->output; } +//---- +// @brief PID初始化,设置kp,ki,kd 选定pid模式 +// +// @param pid +// @param kp +// @param ki +// @param kd +// @param outputLimit +// @param accErrLimit +// @param mode +//---- void pidInit(PID* pid, float kp, float ki, float kd, float outputLimit, float accErrLimit, pidMode mode) { pid->kp = kp; pid->ki = ki; diff --git a/Main/inc/bluetooth.h b/Main/inc/bluetooth.h index 7d35bcd..bb551d2 100644 --- a/Main/inc/bluetooth.h +++ b/Main/inc/bluetooth.h @@ -4,11 +4,12 @@ // @brief 蓝牙通讯 // @version 1.0 // @date 2023-11-17 -// +// // @copyright Copyright (c) 2023 -// +// //---- #pragma once + #include #include #include "stm32f4xx.h" @@ -29,13 +30,12 @@ typedef struct { u8 txDataSize; bool gethead; -}BlueToothMsg; +} BlueToothMsg; -extern BlueToothMsg* bluetoothmsg; +extern BlueToothMsg *bluetoothmsg; void blueToothInit(); void blueToothReceive(u8 data); void blueToothDeal(); void blueToothClear(); -void blueToothSend(u8 id, void* data, u8 size); - +void blueToothSend(u8 id, void *data, u8 size); diff --git a/Main/inc/main.h b/Main/inc/main.h index 00bff64..8ab40d3 100644 --- a/Main/inc/main.h +++ b/Main/inc/main.h @@ -4,9 +4,9 @@ // @brief main函数,主程序 // @version 1.0 // @date 2023-11-17 -// +// // @copyright Copyright (c) 2023 -// +// //---- #pragma once @@ -19,6 +19,7 @@ #include "os_cfg.h" #include "os_cpu.h" #include "ucos_ii.h" +#include "masterparam.h" #define TASK_STK_SIZE 256 @@ -27,21 +28,21 @@ OS_STK taskStartStk[TASK_STK_SIZE]; OS_STK taskLedStk[TASK_STK_SIZE]; OS_STK taskBeepStk[TASK_STK_SIZE]; -OS_EVENT* beepShowSem; +OS_EVENT *beepShowSem; u8 beepShowErr; extern u8 beepShowErr; -extern OS_EVENT* beepShowSem; +extern OS_EVENT *beepShowSem; extern OS_STK taskStartStk[TASK_STK_SIZE]; #define START_TASK_PRIO 5 -static void taskStart(void* pdata); +static void taskStart(void *pdata); -#define LED_TASK_PRIO 12 -static void taskLed(void* pdata); +#define LED_TASK_PRIO 12 +static void taskLed(void *pdata); #define BEEP_TASK_PRIO 11 -static void taskBeep(void* pdata); +static void taskBeep(void *pdata); #define RUN_TASK_PRIO 6 -static void taskRun(void* pdata); \ No newline at end of file +static void taskRun(void *pdata); \ No newline at end of file diff --git a/Main/inc/controlparam.h b/Main/inc/masterparam.h similarity index 71% rename from Main/inc/controlparam.h rename to Main/inc/masterparam.h index 105e046..88e9b9e 100644 --- a/Main/inc/controlparam.h +++ b/Main/inc/masterparam.h @@ -10,6 +10,8 @@ //---- #pragma once + +#include #include "stm32f4xx.h" //---- @@ -35,3 +37,18 @@ typedef struct { bool begin; // 开始运行 bool stop; // 急停 打算做一个功能就是为了防止程序疯跑,再怎么说没有急停开关好用 }ControlParam; + +//---- +// @brief 主控参数 +// +//---- +typedef struct { + HandleParam handle; + ControlParam control; +}Master; + +extern Master master; + +void HandleParamInit(HandleParam* handleparam); +void ControlParamInit(ControlParam* controlparam); +void MasterInit(Master* master); diff --git a/Main/src/main.c b/Main/src/main.c index c5b4582..8a1fa52 100644 --- a/Main/src/main.c +++ b/Main/src/main.c @@ -13,7 +13,7 @@ int main(){ tim2Init(); tim3Init(); - // robotInit(); + robotInit(); OSInit(); OSTaskCreate(taskStart, (void*) 0, &taskStartStk[TASK_STK_SIZE - 1], START_TASK_PRIO); // 创建初始任务 @@ -62,6 +62,9 @@ static void taskRun(void* pdata) { pdata = pdata; while (1) { updateState(); + if(master.control.begin){ + robotRun(); + } OSTimeDly(100); } } diff --git a/Main/src/masterparam.c b/Main/src/masterparam.c new file mode 100644 index 0000000..1a80bff --- /dev/null +++ b/Main/src/masterparam.c @@ -0,0 +1,25 @@ +#include "masterparam.h" + +Master master; + +void HandleParamInit(HandleParam* handleparam) { + handleparam->forward = 0; + handleparam->backward = 0; + handleparam->left = 0; + handleparam->right = 0; + handleparam->up = 0; + handleparam->down = 0; + handleparam->tiltleft = 0; + handleparam->tiltright = 0; +} + +void ControlParamInit(ControlParam* controlparam) { + controlparam->begin = false; + controlparam->stop = true; +} + +void MasterInit(Master* master) { + HandleParamInit(&master->handle); + ControlParamInit(&master->control); +} + diff --git a/PRO/template.uvguix.belov b/PRO/template.uvguix.belov index e167a5e..f8a9a7b 100644 --- a/PRO/template.uvguix.belov +++ b/PRO/template.uvguix.belov @@ -93,8 +93,8 @@ 2 3 - -32000 - -32000 + -1 + -1 -1 @@ -110,8 +110,8 @@ 0 - 1903 - 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000017000000150000000100000030453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C4D6F746F725C7372635C746D6F746F722E630000000008746D6F746F722E6300000000C5D4F200FFFFFFFF31453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C436861737369735C7372635C726F626F742E630000000007726F626F742E6300000000FFDC7800FFFFFFFF32453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C46756E6374696F6E5C696E635C71756575652E68000000000771756575652E6800000000BECEA100FFFFFFFF33453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C4D61696E5C7372635C69727168616E646C65722E63000000000C69727168616E646C65722E6300000000F0A0A100FFFFFFFF30453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C48617264776172655C696E635C63616E2E68000000000563616E2E6800000000BCA8E100FFFFFFFF33453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C4D61696E5C696E635C69727168616E646C65722E68000000000C69727168616E646C65722E68000000009CC1B600FFFFFFFF30453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C48617264776172655C7372635C63616E2E63000000000563616E2E6300000000F7B88600FFFFFFFF33453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C46756E6374696F6E5C696E635C6D796D6174682E6800000000086D796D6174682E6800000000D9ADC200FFFFFFFF31453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C4D6F746F725C7372635C646A6D6F746F722E630000000009646A6D6F746F722E6300000000A5C2D700FFFFFFFF34453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C4D6F746F725C696E635C6D6F746F72706172616D2E68000000000C6D6F746F72706172616D2E6800000000B3A6BE00FFFFFFFF30453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C46756E6374696F6E5C696E635C7069642E6800000000057069642E6800000000EAD6A300FFFFFFFF2F453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C436861737369735C7372635C6C65672E6300000000056C65672E6300000000F6FA7D00FFFFFFFF33453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C46756E6374696F6E5C7372635C6D796D6174682E6300000000086D796D6174682E6300000000B5E99D00FFFFFFFF33443A5C536F6674776172655C6B65696C5C636F72655C41524D5C41524D434C414E475C696E636C7564655C737472696E672E680000000008737472696E672E68000000005FC3CF00FFFFFFFF33443A5C536F6674776172655C6B65696C5C636F72655C41524D5C41524D434C414E475C696E636C7564655C7374646C69622E6800000000087374646C69622E6800000000C1838300FFFFFFFF31453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C4D6F746F725C696E635C646A6D6F746F722E680000000009646A6D6F746F722E6800000000CACAD500FFFFFFFF32453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C46756E6374696F6E5C7372635C71756575652E63000000000771756575652E6300000000C5D4F200FFFFFFFF33453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C46756E6374696F6E5C7372635C766563746F722E630000000008766563746F722E6300000000FFDC7800FFFFFFFF2D453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C4D61696E5C7372635C6D61696E2E6300000000066D61696E2E6300000000BECEA100FFFFFFFF2D453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C4D61696E5C696E635C6D61696E2E6800000000066D61696E2E6800000000F0A0A100FFFFFFFF31453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C48617264776172655C7372635C626565702E630000000006626565702E6300000000BCA8E100FFFFFFFF32453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C4D61696E5C696E635C626C7565746F6F74682E68000000000B626C7565746F6F74682E68000000009CC1B600FFFFFFFF32453A5C707261676D615F646174615C6B65696C5C776865656C666F6F745C4D61696E5C7372635C626C7565746F6F74682E63000000000B626C7565746F6F74682E6300000000F7B88600FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000C400000066000000800700001F030000 + 2345 + 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000001B0000001A0000000100000035453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C4D6F746F725C7372635C746D6F746F722E630000000008746D6F746F722E6300000000C5D4F200FFFFFFFF36453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C436861737369735C7372635C726F626F742E630000000007726F626F742E6300000000FFDC7800FFFFFFFF37453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C46756E6374696F6E5C696E635C71756575652E68000000000771756575652E6800000000BECEA100FFFFFFFF38453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C4D61696E5C7372635C69727168616E646C65722E63000000000C69727168616E646C65722E6300000000F0A0A100FFFFFFFF35453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C48617264776172655C696E635C63616E2E68000000000563616E2E6800000000BCA8E100FFFFFFFF38453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C4D61696E5C696E635C69727168616E646C65722E68000000000C69727168616E646C65722E68000000009CC1B600FFFFFFFF35453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C48617264776172655C7372635C63616E2E63000000000563616E2E6300000000F7B88600FFFFFFFF38453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C46756E6374696F6E5C696E635C6D796D6174682E6800000000086D796D6174682E6800000000D9ADC200FFFFFFFF36453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C4D6F746F725C7372635C646A6D6F746F722E630000000009646A6D6F746F722E6300000000A5C2D700FFFFFFFF39453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C4D6F746F725C696E635C6D6F746F72706172616D2E68000000000C6D6F746F72706172616D2E6800000000B3A6BE00FFFFFFFF35453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C46756E6374696F6E5C696E635C7069642E6800000000057069642E6800000000EAD6A300FFFFFFFF34453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C436861737369735C7372635C6C65672E6300000000056C65672E6300000000F6FA7D00FFFFFFFF38453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C46756E6374696F6E5C7372635C6D796D6174682E6300000000086D796D6174682E6300000000B5E99D00FFFFFFFF33443A5C536F6674776172655C6B65696C5C636F72655C41524D5C41524D434C414E475C696E636C7564655C737472696E672E680000000008737472696E672E68000000005FC3CF00FFFFFFFF33443A5C536F6674776172655C6B65696C5C636F72655C41524D5C41524D434C414E475C696E636C7564655C7374646C69622E6800000000087374646C69622E6800000000C1838300FFFFFFFF36453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C4D6F746F725C696E635C646A6D6F746F722E680000000009646A6D6F746F722E6800000000CACAD500FFFFFFFF37453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C46756E6374696F6E5C7372635C71756575652E63000000000771756575652E6300000000C5D4F200FFFFFFFF38453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C46756E6374696F6E5C7372635C766563746F722E630000000008766563746F722E6300000000FFDC7800FFFFFFFF32453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C4D61696E5C7372635C6D61696E2E6300000000066D61696E2E6300000000BECEA100FFFFFFFF32453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C4D61696E5C696E635C6D61696E2E6800000000066D61696E2E6800000000F0A0A100FFFFFFFF36453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C48617264776172655C7372635C626565702E630000000006626565702E6300000000BCA8E100FFFFFFFF37453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C4D61696E5C696E635C626C7565746F6F74682E68000000000B626C7565746F6F74682E68000000009CC1B600FFFFFFFF37453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C4D61696E5C7372635C626C7565746F6F74682E63000000000B626C7565746F6F74682E6300000000F7B88600FFFFFFFF2C453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C726561646D652E6D640000000009726561646D652E6D6400000000D9ADC200FFFFFFFF39453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C4D61696E5C7372635C6D6173746572706172616D2E63000000000D6D6173746572706172616D2E6300000000A5C2D700FFFFFFFF39453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C4D61696E5C696E635C6D6173746572706172616D2E68000000000D6D6173746572706172616D2E6800000000B3A6BE00FFFFFFFF3C453A5C707261676D615F646174615C6B65696C5C636F64655C776865656C666F6F745C50524F5C4C697374696E67735C74656D706C6174652E6D6170000000000C74656D706C6174652E6D617000000000EAD6A300FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000C400000066000000800700001F030000 @@ -1806,7 +1806,7 @@ File 2840 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE80300000000000000000000000000000000000000000000000100000001000000960000000200205000000000146163747561746F7253657446697265506974636896000000000000001300146163747561746F7253657446697265506974636808546D6F746F7252580233450233431254434841535349534D4F544F5257535F49440F6465616C4163747561746F724D736710626F756E6442756666506F696E7473580764697341626C65066C656744697208726F746174696F6E024C3207696E697452756E03646F6720646F672D3E744E6F77202F20646F672D3E70686173654368616E676554696D65097068617365446966660870686173654E6F770A67657443757272656E740553504545440A5049444F70657261746500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000400160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE80300000000000000000000000000000000000000000000000100000001000000960000000200205000000000146163747561746F7253657446697265506974636896000000000000001300146163747561746F7253657446697265506974636808546D6F746F7252580233450233431254434841535349534D4F544F5257535F49440F6465616C4163747561746F724D736710626F756E6442756666506F696E7473580764697341626C65066C656744697208726F746174696F6E024C3207696E697452756E03646F6720646F672D3E744E6F77202F20646F672D3E70686173654368616E676554696D65097068617365446966660870686173654E6F770A67657443757272656E740553504545440A5049444F70657261746500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000400160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -1822,7 +1822,7 @@ Build 974 - 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000004001C0000000000000000000000000000000001000000010000000180D07F0000000002001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0000000000000000010000000000000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA00000000000000000000000000000000000000000000000001000000010000009600000003002050000000000750524F4A454354960000000000000001000750524F4A454354000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000000004E00000000000000000000000000000000010000000100000001807202000000000000530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 + 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000004001C0000000000000000000000000000000001000000010000000180D07F0000000002001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA00000000000000000000000000000000000000000000000001000000010000009600000003002050000000000750524F4A454354960000000000000001000750524F4A454354000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000000004E00000000000000000000000000000000010000000100000001807202000000000000530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000 583 @@ -3603,7 +3603,7 @@ 0 100 - 21 + 26 ..\Motor\src\tmotor.c 34 @@ -3615,9 +3615,9 @@ ..\Chassis\src\robot.c - 36 - 127 - 150 + 6 + 137 + 154 1 0 @@ -3750,7 +3750,7 @@ ..\Function\src\queue.c - 40 + 42 20 33 1 @@ -3768,9 +3768,9 @@ ..\Main\src\main.c - 1 - 1 - 3 + 0 + 38 + 71 1 0 @@ -3795,9 +3795,9 @@ ..\Main\inc\bluetooth.h - 14 + 0 9 - 32 + 15 1 0 @@ -3811,6 +3811,42 @@ 0 + + ..\readme.md + 0 + 1 + 1 + 0 + + 0 + + + ..\Main\src\masterparam.c + 0 + 1 + 21 + 1 + + 0 + + + ..\Main\inc\masterparam.h + 3 + 15 + 44 + 1 + + 0 + + + E:\pragma_data\keil\code\wheelfoot\PRO\Listings\template.map + 0 + 1 + 1 + 0 + + 0 + diff --git a/PRO/template.uvoptx b/PRO/template.uvoptx index e23cea2..7fb90f4 100644 --- a/PRO/template.uvoptx +++ b/PRO/template.uvoptx @@ -73,7 +73,7 @@ 0 - 1 + 0 0 1 @@ -213,7 +213,7 @@ MASTER - 1 + 0 0 0 0 @@ -253,6 +253,18 @@ 0 0 + + 1 + 4 + 1 + 0 + 0 + 0 + ..\Main\src\masterparam.c + masterparam.c + 0 + 0 + @@ -263,7 +275,7 @@ 0 2 - 4 + 5 1 0 0 @@ -275,7 +287,7 @@ 2 - 5 + 6 1 0 0 @@ -287,7 +299,7 @@ 2 - 6 + 7 1 0 0 @@ -299,7 +311,7 @@ 2 - 7 + 8 1 0 0 @@ -311,7 +323,7 @@ 2 - 8 + 9 1 0 0 @@ -331,7 +343,7 @@ 0 3 - 9 + 10 1 0 0 @@ -343,7 +355,7 @@ 3 - 10 + 11 1 0 0 @@ -355,7 +367,7 @@ 3 - 11 + 12 1 0 0 @@ -375,7 +387,7 @@ 0 4 - 12 + 13 1 0 0 @@ -395,7 +407,7 @@ 0 5 - 13 + 14 1 0 0 @@ -407,7 +419,7 @@ 5 - 14 + 15 1 0 0 @@ -419,7 +431,7 @@ 5 - 15 + 16 1 0 0 @@ -431,7 +443,7 @@ 5 - 16 + 17 1 0 0 @@ -451,7 +463,7 @@ 0 6 - 17 + 18 1 0 0 @@ -463,7 +475,7 @@ 6 - 18 + 19 1 0 0 @@ -475,7 +487,7 @@ 6 - 19 + 20 1 0 0 @@ -487,7 +499,7 @@ 6 - 20 + 21 1 0 0 @@ -499,7 +511,7 @@ 6 - 21 + 22 1 0 0 @@ -511,7 +523,7 @@ 6 - 22 + 23 1 0 0 @@ -523,7 +535,7 @@ 6 - 23 + 24 1 0 0 @@ -543,7 +555,7 @@ 0 7 - 24 + 25 1 0 0 @@ -555,7 +567,7 @@ 7 - 25 + 26 1 0 0 @@ -567,7 +579,7 @@ 7 - 26 + 27 1 0 0 @@ -579,7 +591,7 @@ 7 - 27 + 28 1 0 0 @@ -591,7 +603,7 @@ 7 - 28 + 29 1 0 0 @@ -603,7 +615,7 @@ 7 - 29 + 30 1 0 0 @@ -615,7 +627,7 @@ 7 - 30 + 31 1 0 0 @@ -627,7 +639,7 @@ 7 - 31 + 32 1 0 0 @@ -639,7 +651,7 @@ 7 - 32 + 33 1 0 0 @@ -651,7 +663,7 @@ 7 - 33 + 34 1 0 0 @@ -663,7 +675,7 @@ 7 - 34 + 35 1 0 0 @@ -675,7 +687,7 @@ 7 - 35 + 36 1 0 0 @@ -687,7 +699,7 @@ 7 - 36 + 37 1 0 0 @@ -699,7 +711,7 @@ 7 - 37 + 38 1 0 0 @@ -719,7 +731,7 @@ 0 8 - 38 + 39 1 0 0 @@ -731,7 +743,7 @@ 8 - 39 + 40 4 0 0 @@ -743,7 +755,7 @@ 8 - 40 + 41 5 0 0 @@ -755,7 +767,7 @@ 8 - 41 + 42 5 0 0 @@ -775,7 +787,7 @@ 0 9 - 42 + 43 2 0 0 @@ -795,7 +807,7 @@ 0 10 - 43 + 44 5 0 0 @@ -807,7 +819,7 @@ 10 - 44 + 45 5 0 0 @@ -827,7 +839,7 @@ 0 11 - 45 + 46 1 0 0 @@ -839,7 +851,7 @@ 11 - 46 + 47 1 0 0 @@ -851,7 +863,7 @@ 11 - 47 + 48 1 0 0 @@ -863,7 +875,7 @@ 11 - 48 + 49 1 0 0 @@ -875,7 +887,7 @@ 11 - 49 + 50 1 0 0 @@ -887,7 +899,7 @@ 11 - 50 + 51 1 0 0 @@ -899,7 +911,7 @@ 11 - 51 + 52 1 0 0 @@ -911,7 +923,7 @@ 11 - 52 + 53 1 0 0 @@ -923,7 +935,7 @@ 11 - 53 + 54 1 0 0 @@ -935,7 +947,7 @@ 11 - 54 + 55 1 0 0 @@ -947,7 +959,7 @@ 11 - 55 + 56 5 0 0 @@ -967,7 +979,7 @@ 0 12 - 56 + 57 5 0 0 @@ -979,7 +991,7 @@ 12 - 57 + 58 2 0 0 @@ -991,7 +1003,7 @@ 12 - 58 + 59 1 0 0 @@ -1003,7 +1015,7 @@ 12 - 59 + 60 1 0 0 @@ -1021,6 +1033,18 @@ 0 0 0 + + 13 + 61 + 5 + 0 + 0 + 0 + ..\readme.md + readme.md + 0 + 0 + diff --git a/PRO/template.uvprojx b/PRO/template.uvprojx index 6180484..6b69f40 100644 --- a/PRO/template.uvprojx +++ b/PRO/template.uvprojx @@ -399,6 +399,11 @@ 1 ..\Main\src\bluetooth.c + + masterparam.c + 1 + ..\Main\src\masterparam.c + @@ -738,6 +743,13 @@ README + + + readme.md + 5 + ..\readme.md + + @@ -754,6 +766,7 @@ template 1 + wheelfoot diff --git a/leg.DWG b/leg.DWG deleted file mode 100644 index e8e35b5..0000000 Binary files a/leg.DWG and /dev/null differ