diff --git a/MDK-ARM/referee.uvguix.yunha b/MDK-ARM/referee.uvguix.yunha index 188229a..79048bf 100644 --- a/MDK-ARM/referee.uvguix.yunha +++ b/MDK-ARM/referee.uvguix.yunha @@ -6,7 +6,7 @@
### uVision Project, (C) Keil Software
- D:\yunha\git\RM\referee\User\module\cmd + D:\yunha\git\RM\referee\User\task @@ -110,8 +110,8 @@ 0 - 302 - 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000002000000010000000100000027443A5C79756E68615C6769745C524D5C726566657265655C557365725C7461736B5C636D642E630000000005636D642E6300000000C5D4F200FFFFFFFF2D443A5C79756E68615C6769745C524D5C726566657265655C557365725C6D6F64756C655C636D645C636D642E630000000005636D642E6300000000FFDC7800FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000B800000066000000A00500009F020000 + 776 + 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000008000000070000000100000027443A5C79756E68615C6769745C524D5C726566657265655C557365725C7461736B5C636D642E630000000005636D642E6300000000C5D4F200FFFFFFFF2D443A5C79756E68615C6769745C524D5C726566657265655C557365725C6D6F64756C655C636D645C636D642E630000000005636D642E6300000000FFDC7800FFFFFFFF2D443A5C79756E68615C6769745C524D5C726566657265655C557365725C6465766963655C726566657265652E630000000009726566657265652E6300000000BECEA100FFFFFFFF36443A5C79756E68615C6769745C524D5C726566657265655C557365725C6D6F64756C655C636D645C636D645F6265686176696F722E63000000000E636D645F6265686176696F722E6300000000F0A0A100FFFFFFFF35443A5C79756E68615C6769745C524D5C726566657265655C557365725C6D6F64756C655C636D645C636D645F6578616D706C652E63000000000D636D645F6578616D706C652E6300000000BCA8E100FFFFFFFF28443A5C79756E68615C6769745C524D5C726566657265655C557365725C7461736B5C696E69742E630000000006696E69742E63000000009CC1B600FFFFFFFF35443A5C79756E68615C6769745C524D5C726566657265655C557365725C6D6F64756C655C636D645C636D645F616461707465722E68000000000D636D645F616461707465722E6800000000F7B88600FFFFFFFF35443A5C79756E68615C6769745C524D5C726566657265655C557365725C6D6F64756C655C636D645C636D645F616461707465722E63000000000D636D645F616461707465722E6300000000D9ADC200FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000B800000066000000A00500009F020000 @@ -1805,8 +1805,8 @@ 59392 File - 2914 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000001055495F4155544F5F41494D5F53544F50960000000000000012001055495F4155544F5F41494D5F53544F500E434D445F55495F4E4F5448494E470455495F740E5261646465725F4449525F52706D0D576865656C5F4449525F52706D0B6D6F746F726F66667365740E434841535349535F4D4F44455F740E576865656C5F4449525B695D2D3E0F5261646465725F4449525B695D2D3E0D576865656C5F4449525F6F75740E5261646465725F4449525F6F75740D54656C6573636F70655F6F757413726F746F72363032305F6A69657375616E5F3213726F746F72333530385F6A69657375616E5F3213726F746F72333530385F6A69657375616E5F3113726F746F72363032305F6A69657375616E5F3112726F746F72333530385F6A69657375616E321643414E5F4341505F5354415455535F4F46464C494E45000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + 2928 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000000004000000000000000000000000000000000100000001000000018022E100000000000005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000000460000000000000000000000000000000001000000010000000180FE880000000000004500000000000000000000000000000000010000000100000001800B810000000000001300000000000000000000000000000000010000000100000001800C810000000000001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000001055495F4155544F5F41494D5F53544F509600000000000000130009636D645F65743136731055495F4155544F5F41494D5F53544F500E434D445F55495F4E4F5448494E470455495F740E5261646465725F4449525F52706D0D576865656C5F4449525F52706D0B6D6F746F726F66667365740E434841535349535F4D4F44455F740E576865656C5F4449525B695D2D3E0F5261646465725F4449525B695D2D3E0D576865656C5F4449525F6F75740E5261646465725F4449525F6F75740D54656C6573636F70655F6F757413726F746F72363032305F6A69657375616E5F3213726F746F72333530385F6A69657375616E5F3213726F746F72333530385F6A69657375616E5F3113726F746F72363032305F6A69657375616E5F3112726F746F72333530385F6A69657375616E321643414E5F4341505F5354415455535F4F46464C494E4500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -3603,12 +3603,12 @@ 0 100 - 1 + 7 ..\User\task\cmd.c - 23 - 1 - 23 + 17 + 31 + 32 1 0 @@ -3616,12 +3616,66 @@ ..\User\module\cmd\cmd.c 0 + 70 + 1 + 1 + + 0 + + + ..\User\device\referee.c + 0 + 28 + 1 + 1 + + 0 + + + ..\User\module\cmd\cmd_behavior.c + 0 1 1 1 0 + + ..\User\module\cmd\cmd_example.c + 0 + 1 + 1 + 1 + + 0 + + + ..\User\task\init.c + 25 + 43 + 12 + 1 + + 0 + + + ..\User\module\cmd\cmd_adapter.h + 36 + 79 + 94 + 1 + + 0 + + + ..\User\module\cmd\cmd_adapter.c + 18 + 105 + 204 + 1 + + 0 + diff --git a/MDK-ARM/referee.uvoptx b/MDK-ARM/referee.uvoptx index 3c812be..a10f61e 100644 --- a/MDK-ARM/referee.uvoptx +++ b/MDK-ARM/referee.uvoptx @@ -892,7 +892,7 @@ component - 1 + 0 0 0 0 @@ -1267,8 +1267,8 @@ 0 0 0 - ..\User\task\cmd.c - cmd.c + ..\User\task\gimbal_ctrl.c + gimbal_ctrl.c 0 0 @@ -1279,8 +1279,8 @@ 0 0 0 - ..\User\task\gimbal_ctrl.c - gimbal_ctrl.c + ..\User\task\cmd.c + cmd.c 0 0 diff --git a/MDK-ARM/referee.uvprojx b/MDK-ARM/referee.uvprojx index 101b4c0..9307b93 100644 --- a/MDK-ARM/referee.uvprojx +++ b/MDK-ARM/referee.uvprojx @@ -982,16 +982,16 @@ 1 ..\User\task\referee.c - - cmd.c - 1 - ..\User\task\cmd.c - gimbal_ctrl.c 1 ..\User\task\gimbal_ctrl.c + + cmd.c + 1 + ..\User\task\cmd.c + shoot_ctrl.c 1 diff --git a/MDK-ARM/referee/cmd_1.o b/MDK-ARM/referee/cmd_1.o index 59b0ba8..3e1fd5a 100644 Binary files a/MDK-ARM/referee/cmd_1.o and b/MDK-ARM/referee/cmd_1.o differ diff --git a/MDK-ARM/referee/cmd_behavior.o b/MDK-ARM/referee/cmd_behavior.o index 5b39baa..f979ff4 100644 Binary files a/MDK-ARM/referee/cmd_behavior.o and b/MDK-ARM/referee/cmd_behavior.o differ diff --git a/MDK-ARM/referee/config.o b/MDK-ARM/referee/config.o new file mode 100644 index 0000000..a89c5ba Binary files /dev/null and b/MDK-ARM/referee/config.o differ diff --git a/MDK-ARM/referee/init.o b/MDK-ARM/referee/init.o new file mode 100644 index 0000000..c39a289 Binary files /dev/null and b/MDK-ARM/referee/init.o differ diff --git a/MDK-ARM/referee/referee.build_log.htm b/MDK-ARM/referee/referee.build_log.htm index c99fd5e..811db5b 100644 --- a/MDK-ARM/referee/referee.build_log.htm +++ b/MDK-ARM/referee/referee.build_log.htm @@ -37,90 +37,14 @@ Note: source file '..\User\task\et16s.c' - object file renamed from 'referee\et1 Note: source file '..\User\task\referee.c' - object file renamed from 'referee\referee.o' to 'referee\referee_1.o'. Note: source file '..\User\task\cmd.c' - object file renamed from 'referee\cmd.o' to 'referee\cmd_1.o'. Note: source file '..\User\module\cmd\cmd.c' - object file renamed from 'referee\cmd.o' to 'referee\cmd_1.o'. -../User/task/init.c(15): warning: In file included from... -../User\device/referee.h(632): error: unknown type name 'CMD_Screen_t' - const CMD_Screen_t *screen; - ^ -../User\device/referee.h(715): error: unknown type name 'CMD_Screen_t' - const CMD_Screen_t *screen); - ^ -../User\device/referee.h(728): error: unknown type name 'CMD_UI_t' -uint8_t Referee_PraseCmd(Referee_UI_t *ref_ui, CMD_UI_t cmd); - ^ -../User/task/init.c(72): error: use of undeclared identifier 'CMD_UI_t'; did you mean 'CMD_Init'? - task_runtime.msgq.cmd.referee =osMessageQueueNew(6u, sizeof(CMD_UI_t), NULL); - ^~~~~~~~ - CMD_Init -../User\module/cmd/cmd.h(128): note: 'CMD_Init' declared here -int8_t CMD_Init(CMD_t *ctx, CMD_Config_t *config); - ^ -4 errors generated. -compiling init.c... -../User/device/referee.c(14): warning: In file included from... -../User\device\referee.h(632): error: unknown type name 'CMD_Screen_t' - const CMD_Screen_t *screen; - ^ -../User\device\referee.h(715): error: unknown type name 'CMD_Screen_t' - const CMD_Screen_t *screen); - ^ -../User\device\referee.h(728): error: unknown type name 'CMD_UI_t' -uint8_t Referee_PraseCmd(Referee_UI_t *ref_ui, CMD_UI_t cmd); - ^ -../User/device/referee.c(64): error: unknown type name 'CMD_Screen_t' - const CMD_Screen_t *screen) { - ^ -../User/device/referee.c(570): error: unknown type name 'CMD_UI_t' -uint8_t Referee_PraseCmd(Referee_UI_t *ref_ui, CMD_UI_t cmd) { - ^ -../User/device/referee.c(573): error: use of undeclared identifier 'UI_NOTHING' - case UI_NOTHING: - ^ -../User/device/referee.c(590): error: use of undeclared identifier 'UI_AUTO_AIM_START' - case UI_AUTO_AIM_START: - ^ -../User/device/referee.c(597): error: use of undeclared identifier 'UI_AUTO_AIM_STOP' - case UI_AUTO_AIM_STOP: - ^ -8 errors generated. -compiling referee.c... -compiling cmd_adapter.c... -../User/module/cmd/cmd.c(118): warning: implicit conversion from enumeration type 'CHASSIS_ATTITUDE_MODE_t' to different enumeration type 'Chassis_Mode_t' [-Wenum-conversion] - ctx->output.chassis.cmd.mode = STOP_MODE; - ~ ^~~~~~~~~ -1 warning generated. -compiling cmd.c... -compiling cmd_example.c... -../User/module/config.c(330): error: field designator 'screen' does not refer to any field in type 'CMD_Config_t' - .screen={ - ^ -1 error generated. -compiling config.c... -../User/task/referee.c(9): warning: In file included from... -../User\device/referee.h(632): error: unknown type name 'CMD_Screen_t' - const CMD_Screen_t *screen; - ^ -../User\device/referee.h(715): error: unknown type name 'CMD_Screen_t' - const CMD_Screen_t *screen); - ^ -../User\device/referee.h(728): error: unknown type name 'CMD_UI_t' -uint8_t Referee_PraseCmd(Referee_UI_t *ref_ui, CMD_UI_t cmd); - ^ -../User/task/referee.c(20): error: unknown type name 'CMD_UI_t' -CMD_UI_t ref_cmd; -^ -../User/task/referee.c(54): error: no member named 'screen' in 'CMD_Config_t' - Referee_Init(&ref, &ui,&Config_GetRobotParam()->cmd_param.screen); - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ -5 errors generated. -compiling referee.c... -compiling cmd_behavior.c... -../User/module/cmd/cmd.c(118): warning: implicit conversion from enumeration type 'CHASSIS_ATTITUDE_MODE_t' to different enumeration type 'Chassis_Mode_t' [-Wenum-conversion] - ctx->output.chassis.cmd.mode = STOP_MODE; - ~ ^~~~~~~~~ -1 warning generated. -compiling cmd.c... -compiling shoot.c... -"referee\referee.axf" - 18 Error(s), 2 Warning(s). +linking... +referee\referee.axf: Warning: L6304W: Duplicate input file referee\cmd_1.o ignored. +referee\referee.axf: Error: L6218E: Undefined symbol Task_cmd (referred from init.o). +referee\referee.axf: Error: L6218E: Undefined symbol cmd_et16s (referred from cmd_adapter.o). +Not enough information to list image symbols. +Not enough information to list load addresses in the image map. +Finished: 2 information, 1 warning and 2 error messages. +"referee\referee.axf" - 2 Error(s), 1 Warning(s).

Software Packages used:

@@ -145,7 +69,7 @@ Package Vendor: Keil * Component: ARM::CMSIS:CORE:5.4.0 Include file: CMSIS\Core\Include\tz_context.h Target not created. -Build Time Elapsed: 00:00:03 +Build Time Elapsed: 00:00:02 diff --git a/MDK-ARM/referee/referee.lnp b/MDK-ARM/referee/referee.lnp index 59b1018..be12424 100644 --- a/MDK-ARM/referee/referee.lnp +++ b/MDK-ARM/referee/referee.lnp @@ -80,8 +80,8 @@ "referee\vofa_1.o" "referee\et16s_1.o" "referee\referee_1.o" -"referee\cmd_1.o" "referee\gimbal_ctrl.o" +"referee\cmd_1.o" "referee\shoot_ctrl.o" "referee\chassis_ctrl.o" "referee\user_task.o" @@ -90,6 +90,10 @@ "referee\chassis.o" "referee\gimbal.o" "referee\shoot.o" +"referee\cmd_1.o" +"referee\cmd_adapter.o" +"referee\cmd_behavior.o" +"referee\cmd_example.o" --strict --scatter "referee\referee.sct" --summary_stderr --info summarysizes --map --load_addr_map_info --xref --callgraph --symbols --info sizes --info totals --info unused --info veneers diff --git a/MDK-ARM/referee/referee.map b/MDK-ARM/referee/referee.map index 04fd128..597982b 100644 --- a/MDK-ARM/referee/referee.map +++ b/MDK-ARM/referee/referee.map @@ -4406,24 +4406,6 @@ Section Cross References referee_1.o(.text.Task_referee) refers to referee.o(.text.Referee_UIRefresh) for Referee_UIRefresh referee_1.o(.text.Task_referee) refers to referee.o(.text.Referee_PraseCmd) for Referee_PraseCmd referee_1.o(.ARM.exidx.text.Task_referee) refers to referee_1.o(.text.Task_referee) for [Anonymous Symbol] - cmd_1.o(.text.Task_cmd) refers to cmsis_os2.o(.text.osKernelGetTickFreq) for osKernelGetTickFreq - cmd_1.o(.text.Task_cmd) refers to dflt_clz.o(x$fpl$dfltu) for __aeabi_ui2d - cmd_1.o(.text.Task_cmd) refers to ddiv.o(x$fpl$ddiv) for __aeabi_ddiv - cmd_1.o(.text.Task_cmd) refers to dfixu.o(x$fpl$dfixu) for __aeabi_d2uiz - cmd_1.o(.text.Task_cmd) refers to cmsis_os2.o(.text.osDelay) for osDelay - cmd_1.o(.text.Task_cmd) refers to cmsis_os2.o(.text.osKernelGetTickCount) for osKernelGetTickCount - cmd_1.o(.text.Task_cmd) refers to config.o(.text.Config_GetRobotParam) for Config_GetRobotParam - cmd_1.o(.text.Task_cmd) refers to cmd_1.o(.bss.cmd) for cmd - cmd_1.o(.text.Task_cmd) refers to user_task.o(.bss.task_runtime) for task_runtime - cmd_1.o(.text.Task_cmd) refers to cmd_1.o(.bss.cmd_for_chassis) for cmd_for_chassis - cmd_1.o(.text.Task_cmd) refers to cmd_1.o(.bss.cmd_for_gimbal) for cmd_for_gimbal - cmd_1.o(.text.Task_cmd) refers to cmd_1.o(.bss.cmd_for_shoot) for cmd_for_shoot - cmd_1.o(.text.Task_cmd) refers to cmd_1.o(.bss.cmd_et16s) for cmd_et16s - cmd_1.o(.text.Task_cmd) refers to cmsis_os2.o(.text.osMessageQueueGet) for osMessageQueueGet - cmd_1.o(.text.Task_cmd) refers to cmsis_os2.o(.text.osMessageQueueReset) for osMessageQueueReset - cmd_1.o(.text.Task_cmd) refers to cmsis_os2.o(.text.osMessageQueuePut) for osMessageQueuePut - cmd_1.o(.text.Task_cmd) refers to cmsis_os2.o(.text.osDelayUntil) for osDelayUntil - cmd_1.o(.ARM.exidx.text.Task_cmd) refers to cmd_1.o(.text.Task_cmd) for [Anonymous Symbol] gimbal_ctrl.o(.text.Task_gimbal_ctrl) refers to cmsis_os2.o(.text.osKernelGetTickFreq) for osKernelGetTickFreq gimbal_ctrl.o(.text.Task_gimbal_ctrl) refers to dflt_clz.o(x$fpl$dfltu) for __aeabi_ui2d gimbal_ctrl.o(.text.Task_gimbal_ctrl) refers to ddiv.o(x$fpl$ddiv) for __aeabi_ddiv @@ -4432,6 +4414,39 @@ Section Cross References gimbal_ctrl.o(.text.Task_gimbal_ctrl) refers to cmsis_os2.o(.text.osKernelGetTickCount) for osKernelGetTickCount gimbal_ctrl.o(.text.Task_gimbal_ctrl) refers to cmsis_os2.o(.text.osDelayUntil) for osDelayUntil gimbal_ctrl.o(.ARM.exidx.text.Task_gimbal_ctrl) refers to gimbal_ctrl.o(.text.Task_gimbal_ctrl) for [Anonymous Symbol] + cmd_1.o(.text.CMD_Init) refers to rt_memclr_w.o(.text) for __aeabi_memclr4 + cmd_1.o(.text.CMD_Init) refers to cmd_adapter.o(.text.CMD_Adapter_InitAll) for CMD_Adapter_InitAll + cmd_1.o(.text.CMD_Init) refers to cmd_behavior.o(.text.CMD_Behavior_Init) for CMD_Behavior_Init + cmd_1.o(.ARM.exidx.text.CMD_Init) refers to cmd_1.o(.text.CMD_Init) for [Anonymous Symbol] + cmd_1.o(.text.CMD_UpdateInput) refers to cmd_adapter.o(.text.CMD_Adapter_GetInput) for CMD_Adapter_GetInput + cmd_1.o(.ARM.exidx.text.CMD_UpdateInput) refers to cmd_1.o(.text.CMD_UpdateInput) for [Anonymous Symbol] + cmd_1.o(.ARM.exidx.text.CMD_RC_BuildChassisCmd) refers to cmd_1.o(.text.CMD_RC_BuildChassisCmd) for [Anonymous Symbol] + cmd_1.o(.ARM.exidx.text.CMD_RC_BuildGimbalCmd) refers to cmd_1.o(.text.CMD_RC_BuildGimbalCmd) for [Anonymous Symbol] + cmd_1.o(.ARM.exidx.text.CMD_RC_BuildShootCmd) refers to cmd_1.o(.text.CMD_RC_BuildShootCmd) for [Anonymous Symbol] + cmd_1.o(.text.CMD_PC_BuildChassisCmd) refers to cmd_behavior.o(.text.CMD_Behavior_ProcessAll) for CMD_Behavior_ProcessAll + cmd_1.o(.ARM.exidx.text.CMD_PC_BuildChassisCmd) refers to cmd_1.o(.text.CMD_PC_BuildChassisCmd) for [Anonymous Symbol] + cmd_1.o(.text.CMD_PC_BuildGimbalCmd) refers to cmd_behavior.o(.text.CMD_Behavior_ProcessAll) for CMD_Behavior_ProcessAll + cmd_1.o(.ARM.exidx.text.CMD_PC_BuildGimbalCmd) refers to cmd_1.o(.text.CMD_PC_BuildGimbalCmd) for [Anonymous Symbol] + cmd_1.o(.text.CMD_PC_BuildShootCmd) refers to cmd_behavior.o(.text.CMD_Behavior_ProcessAll) for CMD_Behavior_ProcessAll + cmd_1.o(.ARM.exidx.text.CMD_PC_BuildShootCmd) refers to cmd_1.o(.text.CMD_PC_BuildShootCmd) for [Anonymous Symbol] + cmd_1.o(.text.CMD_Arbitrate) refers to cmd_behavior.o(.text.CMD_Behavior_ProcessAll) for CMD_Behavior_ProcessAll + cmd_1.o(.ARM.exidx.text.CMD_Arbitrate) refers to cmd_1.o(.text.CMD_Arbitrate) for [Anonymous Symbol] + cmd_1.o(.text.CMD_GenerateCommands) refers to time.o(.text.BSP_TIME_Get_us) for BSP_TIME_Get_us + cmd_1.o(.text.CMD_GenerateCommands) refers to ffltll_clz.o(x$fpl$ffltll) for __aeabi_ul2f + cmd_1.o(.text.CMD_GenerateCommands) refers to cmd_1.o(.text.CMD_SetOfflineMode) for CMD_SetOfflineMode + cmd_1.o(.text.CMD_GenerateCommands) refers to cmd_1.o(.data.sourceHandlers) for sourceHandlers + cmd_1.o(.ARM.exidx.text.CMD_GenerateCommands) refers to cmd_1.o(.text.CMD_GenerateCommands) for [Anonymous Symbol] + cmd_1.o(.ARM.exidx.text.CMD_SetOfflineMode) refers to cmd_1.o(.text.CMD_SetOfflineMode) for [Anonymous Symbol] + cmd_1.o(.text.CMD_Update) refers to cmd_1.o(.text.CMD_UpdateInput) for CMD_UpdateInput + cmd_1.o(.text.CMD_Update) refers to cmd_1.o(.text.CMD_Arbitrate) for CMD_Arbitrate + cmd_1.o(.text.CMD_Update) refers to cmd_1.o(.text.CMD_GenerateCommands) for CMD_GenerateCommands + cmd_1.o(.ARM.exidx.text.CMD_Update) refers to cmd_1.o(.text.CMD_Update) for [Anonymous Symbol] + cmd_1.o(.data.sourceHandlers) refers to cmd_1.o(.text.CMD_RC_BuildChassisCmd) for CMD_RC_BuildChassisCmd + cmd_1.o(.data.sourceHandlers) refers to cmd_1.o(.text.CMD_RC_BuildGimbalCmd) for CMD_RC_BuildGimbalCmd + cmd_1.o(.data.sourceHandlers) refers to cmd_1.o(.text.CMD_RC_BuildShootCmd) for CMD_RC_BuildShootCmd + cmd_1.o(.data.sourceHandlers) refers to cmd_1.o(.text.CMD_PC_BuildChassisCmd) for CMD_PC_BuildChassisCmd + cmd_1.o(.data.sourceHandlers) refers to cmd_1.o(.text.CMD_PC_BuildGimbalCmd) for CMD_PC_BuildGimbalCmd + cmd_1.o(.data.sourceHandlers) refers to cmd_1.o(.text.CMD_PC_BuildShootCmd) for CMD_PC_BuildShootCmd shoot_ctrl.o(.text.Task_shoot_ctrl) refers to cmsis_os2.o(.text.osKernelGetTickFreq) for osKernelGetTickFreq shoot_ctrl.o(.text.Task_shoot_ctrl) refers to dflt_clz.o(x$fpl$dfltu) for __aeabi_ui2d shoot_ctrl.o(.text.Task_shoot_ctrl) refers to ddiv.o(x$fpl$ddiv) for __aeabi_ddiv @@ -4474,7 +4489,6 @@ Section Cross References init.o(.text.Task_Init) refers to user_task.o(.rodata.attr_ai) for attr_ai init.o(.text.Task_Init) refers to et16s_1.o(.text.Task_et16s) for Task_et16s init.o(.text.Task_Init) refers to user_task.o(.rodata.attr_et16s) for attr_et16s - init.o(.text.Task_Init) refers to cmd_1.o(.text.Task_cmd) for Task_cmd init.o(.text.Task_Init) refers to user_task.o(.rodata.attr_cmd) for attr_cmd init.o(.text.Task_Init) refers to shoot_ctrl.o(.text.Task_shoot_ctrl) for Task_shoot_ctrl init.o(.text.Task_Init) refers to user_task.o(.rodata.attr_shoot_ctrl) for attr_shoot_ctrl @@ -4615,6 +4629,53 @@ Section Cross References shoot.o(.text.Shoot_Control) refers to shoot.o(.text.Shoot_CaluTargetRPM) for Shoot_CaluTargetRPM shoot.o(.text.Shoot_Control) refers to shoot.o(.text.Shoot_JamDetectionFSM) for Shoot_JamDetectionFSM shoot.o(.ARM.exidx.text.Shoot_Control) refers to shoot.o(.text.Shoot_Control) for [Anonymous Symbol] + cmd_adapter.o(.text.CMD_ET16s_Init) refers to et16s.o(.text.REMOTE_Init) for REMOTE_Init + cmd_adapter.o(.ARM.exidx.text.CMD_ET16s_Init) refers to cmd_adapter.o(.text.CMD_ET16s_Init) for [Anonymous Symbol] + cmd_adapter.o(.ARM.exidx.text.CMD_ET16s_GetInput) refers to cmd_adapter.o(.text.CMD_ET16s_GetInput) for [Anonymous Symbol] + cmd_adapter.o(.ARM.exidx.text.CMD_ET16s_IsOnline) refers to cmd_adapter.o(.text.CMD_ET16s_IsOnline) for [Anonymous Symbol] + cmd_adapter.o(.text.CMD_Adapter_Register) refers to cmd_adapter.o(.bss.g_adapters) for g_adapters + cmd_adapter.o(.ARM.exidx.text.CMD_Adapter_Register) refers to cmd_adapter.o(.text.CMD_Adapter_Register) for [Anonymous Symbol] + cmd_adapter.o(.text.CMD_Adapter_InitAll) refers to cmd_adapter.o(.data.g_adapter_ET16s) for g_adapter_ET16s + cmd_adapter.o(.text.CMD_Adapter_InitAll) refers to cmd_adapter.o(.text.CMD_Adapter_Register) for CMD_Adapter_Register + cmd_adapter.o(.text.CMD_Adapter_InitAll) refers to cmd_adapter.o(.bss.g_adapters) for g_adapters + cmd_adapter.o(.ARM.exidx.text.CMD_Adapter_InitAll) refers to cmd_adapter.o(.text.CMD_Adapter_InitAll) for [Anonymous Symbol] + cmd_adapter.o(.text.CMD_Adapter_GetInput) refers to cmd_adapter.o(.bss.g_adapters) for g_adapters + cmd_adapter.o(.ARM.exidx.text.CMD_Adapter_GetInput) refers to cmd_adapter.o(.text.CMD_Adapter_GetInput) for [Anonymous Symbol] + cmd_adapter.o(.text.CMD_Adapter_IsOnline) refers to cmd_adapter.o(.bss.g_adapters) for g_adapters + cmd_adapter.o(.ARM.exidx.text.CMD_Adapter_IsOnline) refers to cmd_adapter.o(.text.CMD_Adapter_IsOnline) for [Anonymous Symbol] + cmd_adapter.o(.data.g_adapter_ET16s) refers to cmd_adapter.o(.rodata.str1.1) for [Anonymous Symbol] + cmd_adapter.o(.data.g_adapter_ET16s) refers to cmd_adapter.o(.text.CMD_ET16s_Init) for CMD_ET16s_Init + cmd_adapter.o(.data.g_adapter_ET16s) refers to cmd_adapter.o(.text.CMD_ET16s_GetInput) for CMD_ET16s_GetInput + cmd_adapter.o(.data.g_adapter_ET16s) refers to cmd_adapter.o(.text.CMD_ET16s_IsOnline) for CMD_ET16s_IsOnline + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_FORE) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_FORE) for [Anonymous Symbol] + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_BACK) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_BACK) for [Anonymous Symbol] + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_LEFT) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_LEFT) for [Anonymous Symbol] + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_RIGHT) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_RIGHT) for [Anonymous Symbol] + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_ACCELERATE) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_ACCELERATE) for [Anonymous Symbol] + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_DECELERATE) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_DECELERATE) for [Anonymous Symbol] + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_FIRE) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_FIRE) for [Anonymous Symbol] + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_FIRE_MODE) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_FIRE_MODE) for [Anonymous Symbol] + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_ROTOR) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_ROTOR) for [Anonymous Symbol] + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_AUTOAIM) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_AUTOAIM) for [Anonymous Symbol] + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_CHECKSOURCERCPC) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_CHECKSOURCERCPC) for [Anonymous Symbol] + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Init) refers to cmd_behavior.o(.text.CMD_Behavior_Init) for [Anonymous Symbol] + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_IsTriggered) refers to cmd_behavior.o(.text.CMD_Behavior_IsTriggered) for [Anonymous Symbol] + cmd_behavior.o(.text.CMD_Behavior_ProcessAll) refers to cmd_behavior.o(.rodata.g_behavior_configs) for g_behavior_configs + cmd_behavior.o(.text.CMD_Behavior_ProcessAll) refers to cmd_behavior.o(.text.CMD_Behavior_IsTriggered) for CMD_Behavior_IsTriggered + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_ProcessAll) refers to cmd_behavior.o(.text.CMD_Behavior_ProcessAll) for [Anonymous Symbol] + cmd_behavior.o(.text.CMD_Behavior_GetConfig) refers to cmd_behavior.o(.rodata.g_behavior_configs) for g_behavior_configs + cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_GetConfig) refers to cmd_behavior.o(.text.CMD_Behavior_GetConfig) for [Anonymous Symbol] + cmd_behavior.o(.rodata.g_behavior_configs) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_FORE) for CMD_Behavior_Handle_FORE + cmd_behavior.o(.rodata.g_behavior_configs) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_BACK) for CMD_Behavior_Handle_BACK + cmd_behavior.o(.rodata.g_behavior_configs) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_LEFT) for CMD_Behavior_Handle_LEFT + cmd_behavior.o(.rodata.g_behavior_configs) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_RIGHT) for CMD_Behavior_Handle_RIGHT + cmd_behavior.o(.rodata.g_behavior_configs) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_ACCELERATE) for CMD_Behavior_Handle_ACCELERATE + cmd_behavior.o(.rodata.g_behavior_configs) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_DECELERATE) for CMD_Behavior_Handle_DECELERATE + cmd_behavior.o(.rodata.g_behavior_configs) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_FIRE) for CMD_Behavior_Handle_FIRE + cmd_behavior.o(.rodata.g_behavior_configs) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_FIRE_MODE) for CMD_Behavior_Handle_FIRE_MODE + cmd_behavior.o(.rodata.g_behavior_configs) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_ROTOR) for CMD_Behavior_Handle_ROTOR + cmd_behavior.o(.rodata.g_behavior_configs) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_AUTOAIM) for CMD_Behavior_Handle_AUTOAIM + cmd_behavior.o(.rodata.g_behavior_configs) refers to cmd_behavior.o(.text.CMD_Behavior_Handle_CHECKSOURCERCPC) for CMD_Behavior_Handle_CHECKSOURCERCPC __2sprintf.o(.text) refers to _printf_char_common.o(.text) for _printf_char_common __2sprintf.o(.text) refers to _sputc.o(.text) for _sputc __2snprintf.o(.text) refers to _printf_char_common.o(.text) for _printf_char_common @@ -7268,10 +7329,34 @@ Removing Unused input sections from the image. Removing et16s_1.o(.ARM.exidx.text.Task_et16s), (8 bytes). Removing referee_1.o(.text), (0 bytes). Removing referee_1.o(.ARM.exidx.text.Task_referee), (8 bytes). - Removing cmd_1.o(.text), (0 bytes). - Removing cmd_1.o(.ARM.exidx.text.Task_cmd), (8 bytes). Removing gimbal_ctrl.o(.text), (0 bytes). Removing gimbal_ctrl.o(.ARM.exidx.text.Task_gimbal_ctrl), (8 bytes). + Removing cmd_1.o(.text), (0 bytes). + Removing cmd_1.o(.text.CMD_Init), (40 bytes). + Removing cmd_1.o(.ARM.exidx.text.CMD_Init), (8 bytes). + Removing cmd_1.o(.text.CMD_UpdateInput), (104 bytes). + Removing cmd_1.o(.ARM.exidx.text.CMD_UpdateInput), (8 bytes). + Removing cmd_1.o(.text.CMD_RC_BuildChassisCmd), (82 bytes). + Removing cmd_1.o(.ARM.exidx.text.CMD_RC_BuildChassisCmd), (8 bytes). + Removing cmd_1.o(.text.CMD_RC_BuildGimbalCmd), (72 bytes). + Removing cmd_1.o(.ARM.exidx.text.CMD_RC_BuildGimbalCmd), (8 bytes). + Removing cmd_1.o(.text.CMD_RC_BuildShootCmd), (138 bytes). + Removing cmd_1.o(.ARM.exidx.text.CMD_RC_BuildShootCmd), (8 bytes). + Removing cmd_1.o(.text.CMD_PC_BuildChassisCmd), (42 bytes). + Removing cmd_1.o(.ARM.exidx.text.CMD_PC_BuildChassisCmd), (8 bytes). + Removing cmd_1.o(.text.CMD_PC_BuildGimbalCmd), (104 bytes). + Removing cmd_1.o(.ARM.exidx.text.CMD_PC_BuildGimbalCmd), (8 bytes). + Removing cmd_1.o(.text.CMD_PC_BuildShootCmd), (44 bytes). + Removing cmd_1.o(.ARM.exidx.text.CMD_PC_BuildShootCmd), (8 bytes). + Removing cmd_1.o(.text.CMD_Arbitrate), (100 bytes). + Removing cmd_1.o(.ARM.exidx.text.CMD_Arbitrate), (8 bytes). + Removing cmd_1.o(.text.CMD_GenerateCommands), (152 bytes). + Removing cmd_1.o(.ARM.exidx.text.CMD_GenerateCommands), (8 bytes). + Removing cmd_1.o(.text.CMD_SetOfflineMode), (18 bytes). + Removing cmd_1.o(.ARM.exidx.text.CMD_SetOfflineMode), (8 bytes). + Removing cmd_1.o(.text.CMD_Update), (28 bytes). + Removing cmd_1.o(.ARM.exidx.text.CMD_Update), (8 bytes). + Removing cmd_1.o(.data.sourceHandlers), (64 bytes). Removing shoot_ctrl.o(.text), (0 bytes). Removing shoot_ctrl.o(.ARM.exidx.text.Task_shoot_ctrl), (8 bytes). Removing chassis_ctrl.o(.text), (0 bytes). @@ -7351,5 +7436,56 @@ Removing Unused input sections from the image. Removing shoot.o(.ARM.exidx.text.Shoot_Control), (8 bytes). Removing shoot.o(.bss.Shoot_RunningFSM.pos), (4 bytes). Removing shoot.o(.bss.last_firecmd), (1 bytes). + Removing cmd_adapter.o(.text), (0 bytes). + Removing cmd_adapter.o(.text.CMD_ET16s_Init), (8 bytes). + Removing cmd_adapter.o(.ARM.exidx.text.CMD_ET16s_Init), (8 bytes). + Removing cmd_adapter.o(.text.CMD_ET16s_GetInput), (244 bytes). + Removing cmd_adapter.o(.ARM.exidx.text.CMD_ET16s_GetInput), (8 bytes). + Removing cmd_adapter.o(.text.CMD_ET16s_IsOnline), (6 bytes). + Removing cmd_adapter.o(.ARM.exidx.text.CMD_ET16s_IsOnline), (8 bytes). + Removing cmd_adapter.o(.text.CMD_Adapter_Register), (32 bytes). + Removing cmd_adapter.o(.ARM.exidx.text.CMD_Adapter_Register), (8 bytes). + Removing cmd_adapter.o(.text.CMD_Adapter_InitAll), (58 bytes). + Removing cmd_adapter.o(.ARM.exidx.text.CMD_Adapter_InitAll), (8 bytes). + Removing cmd_adapter.o(.text.CMD_Adapter_GetInput), (52 bytes). + Removing cmd_adapter.o(.ARM.exidx.text.CMD_Adapter_GetInput), (8 bytes). + Removing cmd_adapter.o(.text.CMD_Adapter_IsOnline), (34 bytes). + Removing cmd_adapter.o(.ARM.exidx.text.CMD_Adapter_IsOnline), (8 bytes). + Removing cmd_adapter.o(.bss.g_adapters), (16 bytes). + Removing cmd_adapter.o(.data.g_adapter_ET16s), (24 bytes). + Removing cmd_adapter.o(.rodata.str1.1), (6 bytes). + Removing cmd_behavior.o(.text), (0 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_Handle_FORE), (24 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_FORE), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_Handle_BACK), (24 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_BACK), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_Handle_LEFT), (24 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_LEFT), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_Handle_RIGHT), (24 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_RIGHT), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_Handle_ACCELERATE), (36 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_ACCELERATE), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_Handle_DECELERATE), (36 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_DECELERATE), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_Handle_FIRE), (12 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_FIRE), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_Handle_FIRE_MODE), (20 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_FIRE_MODE), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_Handle_ROTOR), (18 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_ROTOR), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_Handle_AUTOAIM), (4 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_AUTOAIM), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_Handle_CHECKSOURCERCPC), (36 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Handle_CHECKSOURCERCPC), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_Init), (4 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_Init), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_IsTriggered), (204 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_IsTriggered), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_ProcessAll), (82 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_ProcessAll), (8 bytes). + Removing cmd_behavior.o(.text.CMD_Behavior_GetConfig), (34 bytes). + Removing cmd_behavior.o(.ARM.exidx.text.CMD_Behavior_GetConfig), (8 bytes). + Removing cmd_behavior.o(.rodata.g_behavior_configs), (176 bytes). + Removing cmd_example.o(.text), (0 bytes). -2273 unused section(s) (total 99175 bytes) removed from the image. +2348 unused section(s) (total 101665 bytes) removed from the image. diff --git a/MDK-ARM/referee/referee.o b/MDK-ARM/referee/referee.o new file mode 100644 index 0000000..3fa9838 Binary files /dev/null and b/MDK-ARM/referee/referee.o differ diff --git a/MDK-ARM/referee/referee_1.o b/MDK-ARM/referee/referee_1.o new file mode 100644 index 0000000..a730bdc Binary files /dev/null and b/MDK-ARM/referee/referee_1.o differ diff --git a/MDK-ARM/referee/referee_referee.dep b/MDK-ARM/referee/referee_referee.dep index 8ff0ae3..11d0674 100644 --- a/MDK-ARM/referee/referee_referee.dep +++ b/MDK-ARM/referee/referee_referee.dep @@ -2234,9 +2234,9 @@ I (..\User\component\crc8.h)(0x69A99243) I (..\User\device\referee.h)(0x69A93050) I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68B055DB) I (..\User\component\ui.h)(0x69A99243) -I (..\User\module\cmd\cmd.h)(0x6986AEE1) +I (..\User\module\cmd\cmd.h)(0x69A938D4) I (..\User\module\cmd\cmd_types.h)(0x69710063) -I (..\User\module\cmd\cmd_adapter.h)(0x697249FA) +I (..\User\module\cmd\cmd_adapter.h)(0x69A99531) I (..\User\device\ET16s.h)(0x69735766) I (..\User\module\cmd\cmd_behavior.h)(0x695FA70F) I (..\User\module\chassis.h)(0x69A92EFD) @@ -2410,9 +2410,9 @@ I (..\User\component\user_math.h)(0x69A99243) I (D:\Keil_v5\ARM\ARMCLANG\include\float.h)(0x6035A4A0) I (D:\Keil_v5\ARM\ARMCLANG\include\math.h)(0x6035A4A8) I (..\User\device\device.h)(0x69A99244) -I (..\User\module\cmd\cmd.h)(0x6986AEE1) +I (..\User\module\cmd\cmd.h)(0x69A938D4) I (..\User\module\cmd\cmd_types.h)(0x69710063) -I (..\User\module\cmd\cmd_adapter.h)(0x697249FA) +I (..\User\module\cmd\cmd_adapter.h)(0x69A99531) I (..\User\device\ET16s.h)(0x69735766) I (..\User\module\cmd\cmd_behavior.h)(0x695FA70F) I (..\User\module\chassis.h)(0x69A92EFD) @@ -2465,12 +2465,26 @@ I (..\User\module\gimbal.h)(0x6975DF62) I (..\User\device\motor_dm.h)(0x69A99243) I (..\User\module\shoot.h)(0x6968CB81) I (..\User\module\config.h)(0x69A92D4B) +F (..\User\task\gimbal_ctrl.c)(0x69A9928C)(-xc -std=c99 --target=arm-arm-none-eabi -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-3 -O1 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Middlewares/Third_Party/FreeRTOS/Source/include -I ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I ../Middlewares/Third_Party/FreeRTOS/Source/portable/RVDS/ARM_CM4F -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../User -I ../User/bsp -I ../User/component -I ../User/device -I ../User/module -I ../User/task -I ../User/module/cmd -I./RTE/_referee -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o referee/gimbal_ctrl.o -MD) +I (..\User\task\user_task.h)(0x69A9928C) +I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68B055DB) +I (D:\Keil_v5\ARM\ARMCLANG\include\stdint.h)(0x6035A4A8) +I (D:\Keil_v5\ARM\ARMCLANG\include\stddef.h)(0x6035A4A8) +I (..\Middlewares\Third_Party\FreeRTOS\Source\include\FreeRTOS.h)(0x68B055DB) +I (..\Core\Inc\FreeRTOSConfig.h)(0x69A907C2) +I (..\Middlewares\Third_Party\FreeRTOS\Source\include\projdefs.h)(0x68B055DB) +I (..\Middlewares\Third_Party\FreeRTOS\Source\include\portable.h)(0x68B055DB) +I (..\Middlewares\Third_Party\FreeRTOS\Source\include\deprecated_definitions.h)(0x68B055DB) +I (..\Middlewares\Third_Party\FreeRTOS\Source\portable\RVDS\ARM_CM4F\portmacro.h)(0x68B055DB) +I (..\Middlewares\Third_Party\FreeRTOS\Source\include\mpu_wrappers.h)(0x68B055DB) +I (..\Middlewares\Third_Party\FreeRTOS\Source\include\task.h)(0x68B055DB) +I (..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h)(0x68B055DB) F (..\User\task\cmd.c)(0x69A9965B)(-xc -std=c99 --target=arm-arm-none-eabi -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-3 -O1 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Middlewares/Third_Party/FreeRTOS/Source/include -I ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I ../Middlewares/Third_Party/FreeRTOS/Source/portable/RVDS/ARM_CM4F -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../User -I ../User/bsp -I ../User/component -I ../User/device -I ../User/module -I ../User/task -I ../User/module/cmd -I./RTE/_referee -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o referee/cmd_1.o -MD) -I (..\User\module\cmd\cmd.h)(0x6986AEE1) +I (..\User\module\cmd\cmd.h)(0x69A938D4) I (..\User\module\cmd\cmd_types.h)(0x69710063) I (D:\Keil_v5\ARM\ARMCLANG\include\stdint.h)(0x6035A4A8) I (D:\Keil_v5\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8) -I (..\User\module\cmd\cmd_adapter.h)(0x697249FA) +I (..\User\module\cmd\cmd_adapter.h)(0x69A99531) I (..\User\device\ET16s.h)(0x69735766) I (..\User\device\device.h)(0x69A99244) I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68B055DB) @@ -2539,20 +2553,6 @@ I (..\User\device\motor_dm.h)(0x69A99243) I (..\User\module\shoot.h)(0x6968CB81) I (..\User\bsp\time.h)(0x69A99243) I (D:\Keil_v5\ARM\ARMCLANG\include\string.h)(0x6035A4A8) -F (..\User\task\gimbal_ctrl.c)(0x69A9928C)(-xc -std=c99 --target=arm-arm-none-eabi -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-3 -O1 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Middlewares/Third_Party/FreeRTOS/Source/include -I ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I ../Middlewares/Third_Party/FreeRTOS/Source/portable/RVDS/ARM_CM4F -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../User -I ../User/bsp -I ../User/component -I ../User/device -I ../User/module -I ../User/task -I ../User/module/cmd -I./RTE/_referee -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o referee/gimbal_ctrl.o -MD) -I (..\User\task\user_task.h)(0x69A9928C) -I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68B055DB) -I (D:\Keil_v5\ARM\ARMCLANG\include\stdint.h)(0x6035A4A8) -I (D:\Keil_v5\ARM\ARMCLANG\include\stddef.h)(0x6035A4A8) -I (..\Middlewares\Third_Party\FreeRTOS\Source\include\FreeRTOS.h)(0x68B055DB) -I (..\Core\Inc\FreeRTOSConfig.h)(0x69A907C2) -I (..\Middlewares\Third_Party\FreeRTOS\Source\include\projdefs.h)(0x68B055DB) -I (..\Middlewares\Third_Party\FreeRTOS\Source\include\portable.h)(0x68B055DB) -I (..\Middlewares\Third_Party\FreeRTOS\Source\include\deprecated_definitions.h)(0x68B055DB) -I (..\Middlewares\Third_Party\FreeRTOS\Source\portable\RVDS\ARM_CM4F\portmacro.h)(0x68B055DB) -I (..\Middlewares\Third_Party\FreeRTOS\Source\include\mpu_wrappers.h)(0x68B055DB) -I (..\Middlewares\Third_Party\FreeRTOS\Source\include\task.h)(0x68B055DB) -I (..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h)(0x68B055DB) F (..\User\task\shoot_ctrl.c)(0x69A9928C)(-xc -std=c99 --target=arm-arm-none-eabi -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-3 -O1 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Middlewares/Third_Party/FreeRTOS/Source/include -I ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I ../Middlewares/Third_Party/FreeRTOS/Source/portable/RVDS/ARM_CM4F -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../User -I ../User/bsp -I ../User/component -I ../User/device -I ../User/module -I ../User/task -I ../User/module/cmd -I./RTE/_referee -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o referee/shoot_ctrl.o -MD) I (..\User\task\user_task.h)(0x69A9928C) I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68B055DB) @@ -2668,9 +2668,9 @@ I (..\User\device\et16s.h)(0x69735766) I (..\User\device\referee.h)(0x69A93050) I (..\User\component\ui.h)(0x69A99243) I (D:\Keil_v5\ARM\ARMCLANG\include\string.h)(0x6035A4A8) -I (..\User\module\cmd\cmd.h)(0x6986AEE1) +I (..\User\module\cmd\cmd.h)(0x69A938D4) I (..\User\module\cmd\cmd_types.h)(0x69710063) -I (..\User\module\cmd\cmd_adapter.h)(0x697249FA) +I (..\User\module\cmd\cmd_adapter.h)(0x69A99531) I (..\User\module\cmd\cmd_behavior.h)(0x695FA70F) I (..\User\module\config.h)(0x69A92D4B) F (..\User\module\config.c)(0x69A91CD0)(-xc -std=c99 --target=arm-arm-none-eabi -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-3 -O1 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Middlewares/Third_Party/FreeRTOS/Source/include -I ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I ../Middlewares/Third_Party/FreeRTOS/Source/portable/RVDS/ARM_CM4F -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../User -I ../User/bsp -I ../User/component -I ../User/device -I ../User/module -I ../User/task -I ../User/module/cmd -I./RTE/_referee -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o referee/config.o -MD) @@ -2741,9 +2741,9 @@ I (..\User\module\shoot.h)(0x6968CB81) I (..\User\module\chassis.h)(0x69A92EFD) I (..\User\module\struct_typedef.h)(0x68DBD148) I (..\User\device\bmi088.h)(0x69A99243) -I (..\User\module\cmd\cmd.h)(0x6986AEE1) +I (..\User\module\cmd\cmd.h)(0x69A938D4) I (..\User\module\cmd\cmd_types.h)(0x69710063) -I (..\User\module\cmd\cmd_adapter.h)(0x697249FA) +I (..\User\module\cmd\cmd_adapter.h)(0x69A99531) I (..\User\device\ET16s.h)(0x69735766) I (..\User\module\cmd\cmd_behavior.h)(0x695FA70F) F (..\User\module\chassis.c)(0x69A7CCB1)(-xc -std=c99 --target=arm-arm-none-eabi -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-3 -O1 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Middlewares/Third_Party/FreeRTOS/Source/include -I ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I ../Middlewares/Third_Party/FreeRTOS/Source/portable/RVDS/ARM_CM4F -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../User -I ../User/bsp -I ../User/component -I ../User/device -I ../User/module -I ../User/task -I ../User/module/cmd -I./RTE/_referee -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o referee/chassis.o -MD) @@ -2939,9 +2939,9 @@ I (..\Middlewares\Third_Party\FreeRTOS\Source\include\task.h)(0x68B055DB) I (..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h)(0x68B055DB) I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68B055DB) I (..\User\bsp\time.h)(0x69A99243) -I (..\User\module\cmd\cmd.h)(0x6986AEE1) +I (..\User\module\cmd\cmd.h)(0x69A938D4) I (..\User\module\cmd\cmd_types.h)(0x69710063) -I (..\User\module\cmd\cmd_adapter.h)(0x697249FA) +I (..\User\module\cmd\cmd_adapter.h)(0x69A99531) I (..\User\device\ET16s.h)(0x69735766) I (..\User\module\cmd\cmd_behavior.h)(0x695FA70F) I (..\User\module\chassis.h)(0x69A92EFD) @@ -2951,11 +2951,11 @@ I (..\User\device\bmi088.h)(0x69A99243) I (..\User\module\gimbal.h)(0x6975DF62) I (..\User\device\motor_dm.h)(0x69A99243) F (..\User\module\cmd\cmd.c)(0x6989CACD)(-xc -std=c99 --target=arm-arm-none-eabi -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-3 -O1 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Middlewares/Third_Party/FreeRTOS/Source/include -I ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I ../Middlewares/Third_Party/FreeRTOS/Source/portable/RVDS/ARM_CM4F -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../User -I ../User/bsp -I ../User/component -I ../User/device -I ../User/module -I ../User/task -I ../User/module/cmd -I./RTE/_referee -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o referee/cmd_1.o -MD) -I (..\User\module\cmd\cmd.h)(0x6986AEE1) +I (..\User\module\cmd\cmd.h)(0x69A938D4) I (..\User\module\cmd\cmd_types.h)(0x69710063) I (D:\Keil_v5\ARM\ARMCLANG\include\stdint.h)(0x6035A4A8) I (D:\Keil_v5\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8) -I (..\User\module\cmd\cmd_adapter.h)(0x697249FA) +I (..\User\module\cmd\cmd_adapter.h)(0x69A99531) I (..\User\device\ET16s.h)(0x69735766) I (..\User\device\device.h)(0x69A99244) I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68B055DB) @@ -3024,8 +3024,8 @@ I (..\User\device\motor_dm.h)(0x69A99243) I (..\User\module\shoot.h)(0x6968CB81) I (..\User\bsp\time.h)(0x69A99243) I (D:\Keil_v5\ARM\ARMCLANG\include\string.h)(0x6035A4A8) -F (..\User\module\cmd\cmd_adapter.c)(0x69724A11)(-xc -std=c99 --target=arm-arm-none-eabi -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-3 -O1 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Middlewares/Third_Party/FreeRTOS/Source/include -I ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I ../Middlewares/Third_Party/FreeRTOS/Source/portable/RVDS/ARM_CM4F -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../User -I ../User/bsp -I ../User/component -I ../User/device -I ../User/module -I ../User/task -I ../User/module/cmd -I./RTE/_referee -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o referee/cmd_adapter.o -MD) -I (..\User\module\cmd\cmd_adapter.h)(0x697249FA) +F (..\User\module\cmd\cmd_adapter.c)(0x69A993D1)(-xc -std=c99 --target=arm-arm-none-eabi -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-3 -O1 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Middlewares/Third_Party/FreeRTOS/Source/include -I ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I ../Middlewares/Third_Party/FreeRTOS/Source/portable/RVDS/ARM_CM4F -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../User -I ../User/bsp -I ../User/component -I ../User/device -I ../User/module -I ../User/task -I ../User/module/cmd -I./RTE/_referee -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o referee/cmd_adapter.o -MD) +I (..\User\module\cmd\cmd_adapter.h)(0x69A99531) I (..\User\module\cmd\cmd_types.h)(0x69710063) I (D:\Keil_v5\ARM\ARMCLANG\include\stdint.h)(0x6035A4A8) I (D:\Keil_v5\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8) @@ -3039,8 +3039,8 @@ I (..\User\module\cmd\cmd_behavior.h)(0x695FA70F) I (..\User\module\cmd\cmd_types.h)(0x69710063) I (D:\Keil_v5\ARM\ARMCLANG\include\stdint.h)(0x6035A4A8) I (D:\Keil_v5\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8) -I (..\User\module\cmd\cmd.h)(0x6986AEE1) -I (..\User\module\cmd\cmd_adapter.h)(0x697249FA) +I (..\User\module\cmd\cmd.h)(0x69A938D4) +I (..\User\module\cmd\cmd_adapter.h)(0x69A99531) I (..\User\device\ET16s.h)(0x69735766) I (..\User\device\device.h)(0x69A99244) I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68B055DB) @@ -3107,12 +3107,12 @@ I (..\User\module\gimbal.h)(0x6975DF62) I (..\User\device\motor_dm.h)(0x69A99243) I (..\User\module\shoot.h)(0x6968CB81) I (D:\Keil_v5\ARM\ARMCLANG\include\string.h)(0x6035A4A8) -F (..\User\module\cmd\cmd_example.c)(0x695FA70F)(-xc -std=c99 --target=arm-arm-none-eabi -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-3 -O1 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Middlewares/Third_Party/FreeRTOS/Source/include -I ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I ../Middlewares/Third_Party/FreeRTOS/Source/portable/RVDS/ARM_CM4F -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../User -I ../User/bsp -I ../User/component -I ../User/device -I ../User/module -I ../User/task -I ../User/module/cmd -I./RTE/_referee -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o referee/cmd_example.o -MD) -I (..\User\module\cmd\cmd.h)(0x6986AEE1) +F (..\User\module\cmd\cmd_example.c)(0x69A8FEC4)(-xc -std=c99 --target=arm-arm-none-eabi -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -c -fno-rtti -funsigned-char -fshort-enums -fshort-wchar -gdwarf-3 -O1 -ffunction-sections -Wno-packed -Wno-missing-variable-declarations -Wno-missing-prototypes -Wno-missing-noreturn -Wno-sign-conversion -Wno-nonportable-include-path -Wno-reserved-id-macro -Wno-unused-macros -Wno-documentation-unknown-command -Wno-documentation -Wno-license-management -Wno-parentheses-equality -I ../Core/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc -I ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I ../Middlewares/Third_Party/FreeRTOS/Source/include -I ../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I ../Middlewares/Third_Party/FreeRTOS/Source/portable/RVDS/ARM_CM4F -I ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -I ../User -I ../User/bsp -I ../User/component -I ../User/device -I ../User/module -I ../User/task -I ../User/module/cmd -I./RTE/_referee -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o referee/cmd_example.o -MD) +I (..\User\module\cmd\cmd.h)(0x69A938D4) I (..\User\module\cmd\cmd_types.h)(0x69710063) I (D:\Keil_v5\ARM\ARMCLANG\include\stdint.h)(0x6035A4A8) I (D:\Keil_v5\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8) -I (..\User\module\cmd\cmd_adapter.h)(0x697249FA) +I (..\User\module\cmd\cmd_adapter.h)(0x69A99531) I (..\User\device\ET16s.h)(0x69735766) I (..\User\device\device.h)(0x69A99244) I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68B055DB) diff --git a/User/component/cmd.c b/User/component/cmd.c deleted file mode 100644 index 1effe69..0000000 --- a/User/component/cmd.c +++ /dev/null @@ -1,387 +0,0 @@ -/* - 控制命令 -*/ - -#include "cmd.h" - -#include - -/* USER INCLUDE BEGIN */ - -/* USER INCLUDE END */ - -/* USER DEFINE BEGIN */ - -/* USER DEFINE END */ - -/** - * @brief 行为转换为对应按键 - * - * @param cmd 主结构体 - * @param behavior 行为 - * @return uint16_t 行为对应的按键 - */ -static inline CMD_KeyValue_t CMD_BehaviorToKey(CMD_t *cmd, - CMD_Behavior_t behavior) { - return cmd->param->map.key_map[behavior].key; -} - -static inline CMD_ActiveType_t CMD_BehaviorToActive(CMD_t *cmd, - CMD_Behavior_t behavior) { - return cmd->param->map.key_map[behavior].active; -} - -/** - * @brief 检查按键是否按下 - * - * @param rc 遥控器数据 - * @param key 按键名称 - * @param stateful 是否为状态切换按键 - * @return true 按下 - * @return false 未按下 - */ -static bool CMD_KeyPressedRc(const CMD_RC_t *rc, CMD_KeyValue_t key) { - /* 按下按键为鼠标左、右键 */ - if (key == CMD_L_CLICK) { - return rc->mouse.l_click; - } - if (key == CMD_R_CLICK) { - return rc->mouse.r_click; - } - return rc->key & (1u << key); -} - -static bool CMD_BehaviorOccurredRc(const CMD_RC_t *rc, CMD_t *cmd, - CMD_Behavior_t behavior) { - CMD_KeyValue_t key = CMD_BehaviorToKey(cmd, behavior); - CMD_ActiveType_t active = CMD_BehaviorToActive(cmd, behavior); - - bool now_key_pressed, last_key_pressed; - - /* 按下按键为鼠标左、右键 */ - if (key == CMD_L_CLICK) { - now_key_pressed = rc->mouse.l_click; - last_key_pressed = cmd->mouse_last.l_click; - } else if (key == CMD_R_CLICK) { - now_key_pressed = rc->mouse.r_click; - last_key_pressed = cmd->mouse_last.r_click; - } else { - now_key_pressed = rc->key & (1u << key); - last_key_pressed = cmd->key_last & (1u << key); - } - - switch (active) { - case CMD_ACTIVE_PRESSING: - return now_key_pressed && !last_key_pressed; - case CMD_ACTIVE_RASING: - return !now_key_pressed && last_key_pressed; - case CMD_ACTIVE_PRESSED: - return now_key_pressed; - } -} - -/** - * @brief 解析pc行为逻辑 - * - * @param rc 遥控器数据 - * @param cmd 主结构体 - * @param dt_sec 两次解析的间隔 - */ -static void CMD_PcLogic(const CMD_RC_t *rc, CMD_t *cmd, float dt_sec) { - cmd->gimbal.mode = GIMBAL_MODE_ABSOLUTE; - - /* 云台设置为鼠标控制欧拉角的变化,底盘的控制向量设置为零 */ - cmd->gimbal.delta_eulr.yaw = - (float)rc->mouse.x * dt_sec * cmd->param->sens_mouse; - cmd->gimbal.delta_eulr.pit = - (float)(-rc->mouse.y) * dt_sec * cmd->param->sens_mouse; - cmd->chassis.ctrl_vec.vx = cmd->chassis.ctrl_vec.vy = 0.0f; - cmd->shoot.reverse_trig = false; - - /* 按键行为映射相关逻辑 */ - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_FORE)) { - cmd->chassis.ctrl_vec.vy += cmd->param->move.move_sense; - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_BACK)) { - cmd->chassis.ctrl_vec.vy -= cmd->param->move.move_sense; - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_LEFT)) { - cmd->chassis.ctrl_vec.vx -= cmd->param->move.move_sense; - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_RIGHT)) { - cmd->chassis.ctrl_vec.vx += cmd->param->move.move_sense; - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_ACCELERATE)) { - cmd->chassis.ctrl_vec.vx *= cmd->param->move.move_fast_sense; - cmd->chassis.ctrl_vec.vy *= cmd->param->move.move_fast_sense; - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_DECELEBRATE)) { - cmd->chassis.ctrl_vec.vx *= cmd->param->move.move_slow_sense; - cmd->chassis.ctrl_vec.vy *= cmd->param->move.move_slow_sense; - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_FIRE)) { - /* 切换至开火模式,设置相应的射击频率和弹丸初速度 */ - cmd->shoot.mode = SHOOT_MODE_LOADED; - cmd->shoot.fire = true; - } else { - /* 切换至准备模式,停止射击 */ - cmd->shoot.mode = SHOOT_MODE_LOADED; - cmd->shoot.fire = false; - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_FIRE_MODE)) { - /* 每按一次依次切换开火下一个模式 */ - cmd->shoot.fire_mode++; - cmd->shoot.fire_mode %= FIRE_MODE_NUM; - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_ROTOR)) { - /* 切换到小陀螺模式 */ - cmd->chassis.mode = CHASSIS_MODE_ROTOR; - cmd->chassis.mode_rotor = ROTOR_MODE_RAND; - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_OPENCOVER)) { - /* 每按一次开、关弹舱盖 */ - cmd->shoot.cover_open = !cmd->shoot.cover_open; - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_BUFF)) { - if (cmd->ai_status == AI_STATUS_HITSWITCH) { - /* 停止ai的打符模式,停用host控制 */ - CMD_RefereeAdd(&(cmd->referee), CMD_UI_HIT_SWITCH_STOP); - cmd->host_overwrite = false; - cmd->ai_status = AI_STATUS_STOP; - } else if (cmd->ai_status == AI_STATUS_AUTOAIM) { - /* 自瞄模式中切换失败提醒 */ - } else { - /* ai切换至打符模式,启用host控制 */ - CMD_RefereeAdd(&(cmd->referee), CMD_UI_HIT_SWITCH_START); - cmd->ai_status = AI_STATUS_HITSWITCH; - cmd->host_overwrite = true; - } - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_AUTOAIM)) { - if (cmd->ai_status == AI_STATUS_AUTOAIM) { - /* 停止ai的自瞄模式,停用host控制 */ - cmd->host_overwrite = false; - cmd->ai_status = AI_STATUS_STOP; - CMD_RefereeAdd(&(cmd->referee), CMD_UI_AUTO_AIM_STOP); - } else { - /* ai切换至自瞄模式,启用host控制 */ - cmd->ai_status = AI_STATUS_AUTOAIM; - cmd->host_overwrite = true; - CMD_RefereeAdd(&(cmd->referee), CMD_UI_AUTO_AIM_START); - } - } else { - cmd->host_overwrite = false; - // TODO: 修复逻辑 - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_REVTRIG)) { - /* 按下拨弹反转 */ - cmd->shoot.reverse_trig = true; - } - if (CMD_BehaviorOccurredRc(rc, cmd, CMD_BEHAVIOR_FOLLOWGIMBAL35)) { - cmd->chassis.mode = CHASSIS_MODE_FOLLOW_GIMBAL_35; - } - /* 保存当前按下的键位状态 */ - cmd->key_last = rc->key; - memcpy(&(cmd->mouse_last), &(rc->mouse), sizeof(cmd->mouse_last)); -} - -/** - * @brief 解析rc行为逻辑 - * - * @param rc 遥控器数据 - * @param cmd 主结构体 - * @param dt_sec 两次解析的间隔 - */ -static void CMD_RcLogic(const CMD_RC_t *rc, CMD_t *cmd, float dt_sec) { - switch (rc->sw_l) { - /* 左拨杆相应行为选择和解析 */ - case CMD_SW_UP: - cmd->chassis.mode = CHASSIS_MODE_BREAK; - break; - - case CMD_SW_MID: - cmd->chassis.mode = CHASSIS_MODE_FOLLOW_GIMBAL; - break; - - case CMD_SW_DOWN: - cmd->chassis.mode = CHASSIS_MODE_ROTOR; - cmd->chassis.mode_rotor = ROTOR_MODE_CW; - break; - - case CMD_SW_ERR: - cmd->chassis.mode = CHASSIS_MODE_RELAX; - break; - } - switch (rc->sw_r) { - /* 右拨杆相应行为选择和解析*/ - case CMD_SW_UP: - cmd->gimbal.mode = GIMBAL_MODE_ABSOLUTE; - cmd->shoot.mode = SHOOT_MODE_SAFE; - break; - - case CMD_SW_MID: - cmd->gimbal.mode = GIMBAL_MODE_ABSOLUTE; - cmd->shoot.fire = false; - cmd->shoot.mode = SHOOT_MODE_LOADED; - break; - - case CMD_SW_DOWN: - cmd->gimbal.mode = GIMBAL_MODE_ABSOLUTE; - cmd->shoot.mode = SHOOT_MODE_LOADED; - cmd->shoot.fire_mode = FIRE_MODE_SINGLE; - cmd->shoot.fire = true; - break; - /* - case CMD_SW_UP: - cmd->gimbal.mode = GIMBAL_MODE_RELAX; - cmd->shoot.mode = SHOOT_MODE_SAFE; - break; - - case CMD_SW_MID: - cmd->gimbal.mode = GIMBAL_MODE_RELAX; - cmd->shoot.fire = false; - cmd->shoot.mode = SHOOT_MODE_LOADED; - break; - - case CMD_SW_DOWN: - cmd->gimbal.mode = GIMBAL_MODE_RELAX; - cmd->shoot.mode = SHOOT_MODE_LOADED; - cmd->shoot.fire_mode = FIRE_MODE_SINGLE; - cmd->shoot.fire = true; - break; - */ - case CMD_SW_ERR: - cmd->gimbal.mode = GIMBAL_MODE_RELAX; - cmd->shoot.mode = SHOOT_MODE_RELAX; - } - /* 将操纵杆的对应值转换为底盘的控制向量和云台变化的欧拉角 */ - cmd->chassis.ctrl_vec.vx = rc->ch_l_x; - cmd->chassis.ctrl_vec.vy = rc->ch_l_y; - cmd->gimbal.delta_eulr.yaw = rc->ch_r_x * dt_sec * cmd->param->sens_rc; - cmd->gimbal.delta_eulr.pit = rc->ch_r_y * dt_sec * cmd->param->sens_rc; -} - -/** - * @brief rc失控时机器人恢复放松模式 - * - * @param cmd 主结构体 - */ -static void CMD_RcLostLogic(CMD_t *cmd) { - /* 机器人底盘、云台、射击运行模式恢复至放松模式 */ - cmd->chassis.mode = CHASSIS_MODE_RELAX; - cmd->gimbal.mode = GIMBAL_MODE_RELAX; - cmd->shoot.mode = SHOOT_MODE_RELAX; -} - -/** - * @brief 初始化命令解析 - * - * @param cmd 主结构体 - * @param param 参数 - * @return int8_t 0对应没有错误 - */ -int8_t CMD_Init(CMD_t *cmd, const CMD_Params_t *param) { - /* 指针检测 */ - if (cmd == NULL) return -1; - if (param == NULL) return -1; - - /* 设置机器人的命令参数,初始化控制方式为rc控制 */ - cmd->pc_ctrl = false; - cmd->param = param; - - return 0; -} - -/** - * @brief 检查是否启用上位机控制指令覆盖 - * - * @param cmd 主结构体 - * @return true 启用 - * @return false 不启用 - */ -inline bool CMD_CheckHostOverwrite(CMD_t *cmd) { return cmd->host_overwrite; } - -/** - * @brief 解析命令 - * - * @param rc 遥控器数据 - * @param cmd 命令 - * @param dt_sec 两次解析的间隔 - * @return int8_t 0对应没有错误 - */ -int8_t CMD_ParseRc(CMD_RC_t *rc, CMD_t *cmd, float dt_sec) { - /* 指针检测 */ - if (rc == NULL) return -1; - if (cmd == NULL) return -1; - - /* 在pc控制和rc控制间切换 */ - if (CMD_KeyPressedRc(rc, CMD_KEY_SHIFT) && - CMD_KeyPressedRc(rc, CMD_KEY_CTRL) && CMD_KeyPressedRc(rc, CMD_KEY_Q)) - cmd->pc_ctrl = true; - - if (CMD_KeyPressedRc(rc, CMD_KEY_SHIFT) && - CMD_KeyPressedRc(rc, CMD_KEY_CTRL) && CMD_KeyPressedRc(rc, CMD_KEY_E)) - cmd->pc_ctrl = false; - /*c当rc丢控时,恢复机器人至默认状态 */ - if ((rc->sw_l == CMD_SW_ERR) || (rc->sw_r == CMD_SW_ERR)) { - CMD_RcLostLogic(cmd); - } else { - if (cmd->pc_ctrl) { - CMD_PcLogic(rc, cmd, dt_sec); - } else { - CMD_RcLogic(rc, cmd, dt_sec); - } - } - return 0; -} - -/** - * @brief 解析上位机命令 - * - * @param host host数据 - * @param cmd 命令 - * @param dt_sec 两次解析的间隔 - * @return int8_t 0对应没有错误 - */ -int8_t CMD_ParseHost(const CMD_Host_t *host, CMD_t *cmd, float dt_sec) { - (void)dt_sec; /* 未使用dt_sec,消除警告 */ - /* 指针检测 */ - if (host == NULL) return -1; - if (cmd == NULL) return -1; - - /* 云台欧拉角设置为host相应的变化的欧拉角 */ - cmd->gimbal.delta_eulr.yaw = host->gimbal_delta.yaw; - cmd->gimbal.delta_eulr.pit = host->gimbal_delta.pit; - - /* host射击命令,设置不同的射击频率和弹丸初速度 */ - if (host->fire) { - cmd->shoot.mode = SHOOT_MODE_LOADED; - cmd->shoot.fire = true; - } else { - cmd->shoot.mode = SHOOT_MODE_SAFE; - } - return 0; -} - -/** - * @brief 添加向Referee发送的命令 - * - * @param ref 命令队列 - * @param cmd 要添加的命令 - * @return int8_t 0对应没有错误 - */ -int8_t CMD_RefereeAdd(CMD_RefereeCmd_t *ref, CMD_UI_t cmd) { - /* 指针检测 */ - if (ref == NULL) return -1; - /* 越界检测 */ - if (ref->counter >= CMD_REFEREE_MAX_NUM || ref->counter < 0) return -1; - - /* 添加机器人当前行为状态到画图的命令队列中 */ - ref->cmd[ref->counter] = cmd; - ref->counter++; - return 0; -} - -/* USER FUNCTION BEGIN */ - -/* USER FUNCTION END */ diff --git a/User/component/cmd.h b/User/component/cmd.h deleted file mode 100644 index df84538..0000000 --- a/User/component/cmd.h +++ /dev/null @@ -1,318 +0,0 @@ -/* - 控制命令 -*/ - -#pragma once - -#ifdef __cplusplus -extern "C" { -#endif - -#include -#include - -#include "component/ahrs.h" - -/* USER INCLUDE BEGIN */ - -/* USER INCLUDE END */ - -#define CMD_REFEREE_MAX_NUM (3) /* Lines 16 omitted */ - -/* USER DEFINE BEGIN */ - -/* USER DEFINE END */ - -/* 机器人型号 */ -typedef enum { - ROBOT_MODEL_INFANTRY = 0, /* 步兵机器人 */ - ROBOT_MODEL_HERO, /* 英雄机器人 */ - ROBOT_MODEL_ENGINEER, /* 工程机器人 */ - ROBOT_MODEL_DRONE, /* 空中机器人 */ - ROBOT_MODEL_SENTRY, /* 哨兵机器人 */ - ROBOT_MODEL_NUM, /* 型号数量 */ -} CMD_RobotModel_t; - -/* 底盘运行模式 */ -typedef enum { - CHASSIS_MODE_RELAX, /* 放松模式,电机不输出。一般情况底盘初始化之后的模式 */ - CHASSIS_MODE_BREAK, /* 刹车模式,电机闭环控制保持静止。用于机器人停止状态 */ - CHASSIS_MODE_FOLLOW_GIMBAL, /* 通过闭环控制使车头方向跟随云台 */ - CHASSIS_MODE_FOLLOW_GIMBAL_35, /* 通过闭环控制使车头方向35度跟随云台 */ - CHASSIS_MODE_ROTOR, /* 小陀螺模式,通过闭环控制使底盘不停旋转 */ - CHASSIS_MODE_INDENPENDENT, /* 独立模式。底盘运行不受云台影响 */ - CHASSIS_MODE_OPEN, /* 开环模式。底盘运行不受PID控制,直接输出到电机 */ -} CMD_ChassisMode_t; - -/* 云台运行模式 */ -typedef enum { - GIMBAL_MODE_RELAX, /* 放松模式,电机不输出。一般情况云台初始化之后的模式 */ - GIMBAL_MODE_ABSOLUTE, /* 绝对坐标系控制,控制在空间内的绝对姿态 */ - GIMBAL_MODE_RELATIVE, /* 相对坐标系控制,控制相对于底盘的姿态 */ -} CMD_GimbalMode_t; - -/* 射击运行模式 */ -typedef enum { - SHOOT_MODE_RELAX, /* 放松模式,电机不输出 */ - SHOOT_MODE_SAFE, /* 保险模式,电机闭环控制保持静止 */ - SHOOT_MODE_LOADED, /* 上膛模式,摩擦轮开启。随时准备开火 */ -} CMD_ShootMode_t; - -typedef enum { - FIRE_MODE_SINGLE, /* 单发开火模式 */ - FIRE_MODE_BURST, /* N连发开火模式 */ - FIRE_MODE_CONT, /* 持续开火模式 */ - FIRE_MODE_NUM, -} CMD_FireMode_t; - -/* 小陀螺转动模式 */ -typedef enum { - ROTOR_MODE_CW, /* 顺时针转动 */ - ROTOR_MODE_CCW, /* 逆时针转动 */ - ROTOR_MODE_RAND, /* 随机转动 */ -} CMD_RotorMode_t; - -/* 底盘控制命令 */ -typedef struct { - CMD_ChassisMode_t mode; /* 底盘运行模式 */ - CMD_RotorMode_t mode_rotor; /* 小陀螺转动模式 */ - MoveVector_t ctrl_vec; /* 底盘控制向量 */ -} CMD_ChassisCmd_t; - -/* 云台控制命令 */ -typedef struct { - CMD_GimbalMode_t mode; /* 云台运行模式 */ - AHRS_Eulr_t delta_eulr; /* 欧拉角变化角度 */ -} CMD_GimbalCmd_t; - -/* 射击控制命令 */ -typedef struct { - CMD_ShootMode_t mode; /* 射击运行模式 */ - CMD_FireMode_t fire_mode; /* 开火模式 */ - bool fire; /*开火*/ - bool cover_open; /* 弹舱盖开关 */ - bool reverse_trig; /* 拨弹电机状态 */ -} CMD_ShootCmd_t; - -/* 拨杆位置 */ -typedef enum { - CMD_SW_ERR = 0, - CMD_SW_UP = 1, - CMD_SW_MID = 3, - CMD_SW_DOWN = 2, -} CMD_SwitchPos_t; - -/* 键盘按键值 */ -typedef enum { - CMD_KEY_W = 0, - CMD_KEY_S, - CMD_KEY_A, - CMD_KEY_D, - CMD_KEY_SHIFT, - CMD_KEY_CTRL, - CMD_KEY_Q, - CMD_KEY_E, - CMD_KEY_R, - CMD_KEY_F, - CMD_KEY_G, - CMD_KEY_Z, - CMD_KEY_X, - CMD_KEY_C, - CMD_KEY_V, - CMD_KEY_B, - CMD_L_CLICK, - CMD_R_CLICK, - CMD_KEY_NUM, -} CMD_KeyValue_t; - -/* 行为值序列 */ -typedef enum { - CMD_BEHAVIOR_FORE = 0, /* 向前 */ - CMD_BEHAVIOR_BACK, /* 向后 */ - CMD_BEHAVIOR_LEFT, /* 向左 */ - CMD_BEHAVIOR_RIGHT, /* 向右 */ - CMD_BEHAVIOR_ACCELERATE, /* 加速 */ - CMD_BEHAVIOR_DECELEBRATE, /* 减速 */ - CMD_BEHAVIOR_FIRE, /* 开火 */ - CMD_BEHAVIOR_FIRE_MODE, /* 切换开火模式 */ - CMD_BEHAVIOR_BUFF, /* 打符模式 */ - CMD_BEHAVIOR_AUTOAIM, /* 自瞄模式 */ - CMD_BEHAVIOR_OPENCOVER, /* 弹舱盖开关 */ - CMD_BEHAVIOR_ROTOR, /* 小陀螺模式 */ - CMD_BEHAVIOR_REVTRIG, /* 反转拨弹 */ - CMD_BEHAVIOR_FOLLOWGIMBAL35, /* 跟随云台呈35度 */ - CMD_BEHAVIOR_NUM, -} CMD_Behavior_t; - -typedef enum { - CMD_ACTIVE_PRESSING, /* 按下时触发 */ - CMD_ACTIVE_RASING, /* 抬起时触发 */ - CMD_ACTIVE_PRESSED, /* 按住时触发 */ -} CMD_ActiveType_t; - -typedef struct { - CMD_ActiveType_t active; - CMD_KeyValue_t key; -} CMD_KeyMapItem_t; - -/* 行为映射的对应按键数组 */ -typedef struct { - CMD_KeyMapItem_t key_map[CMD_BEHAVIOR_NUM]; -} CMD_KeyMap_Params_t; - -/* 位移灵敏度参数 */ -typedef struct { - float move_sense; /* 移动灵敏度 */ - float move_fast_sense; /* 加速灵敏度 */ - float move_slow_sense; /* 减速灵敏度 */ -} CMD_Move_Params_t; - -typedef struct { - uint16_t width; - uint16_t height; -} CMD_Screen_t; - -/* 命令参数 */ -typedef struct { - float sens_mouse; /* 鼠标灵敏度 */ - float sens_rc; /* 遥控器摇杆灵敏度 */ - CMD_KeyMap_Params_t map; /* 按键映射行为命令 */ - CMD_Move_Params_t move; /* 位移灵敏度参数 */ - CMD_Screen_t screen; /* 屏幕分辨率参数 */ -} CMD_Params_t; - -/* AI行为状态 */ -typedef enum { - AI_STATUS_STOP, /* 停止状态 */ - AI_STATUS_AUTOAIM, /* 自瞄状态 */ - AI_STATUS_HITSWITCH, /* 打符状态 */ - AI_STATUS_AUTOMATIC /* 自动状态 */ -} CMD_AI_Status_t; - -/* UI所用行为状态 */ -typedef enum { - CMD_UI_NOTHING, /* 当前无状态 */ - CMD_UI_AUTO_AIM_START, /* 自瞄状态开启 */ - CMD_UI_AUTO_AIM_STOP, /* 自瞄状态关闭 */ - CMD_UI_HIT_SWITCH_START, /* 打符状态开启 */ - CMD_UI_HIT_SWITCH_STOP /* 打符状态关闭 */ -} CMD_UI_t; - -/*裁判系统发送的命令*/ -typedef struct { - CMD_UI_t cmd[CMD_REFEREE_MAX_NUM]; /* 命令数组 */ - uint8_t counter; /* 命令计数 */ -} CMD_RefereeCmd_t; - -typedef struct { - bool pc_ctrl; /* 是否使用键鼠控制 */ - bool host_overwrite; /* 是否Host控制 */ - uint16_t key_last; /* 上次按键键值 */ - - struct { - int16_t x; - int16_t y; - int16_t z; - bool l_click; /* 左键 */ - bool r_click; /* 右键 */ - } mouse_last; /* 鼠标值 */ - - CMD_AI_Status_t ai_status; /* AI状态 */ - - const CMD_Params_t *param; /* 命令参数 */ - - CMD_ChassisCmd_t chassis; /* 底盘控制命令 */ - CMD_GimbalCmd_t gimbal; /* 云台控制命令 */ - CMD_ShootCmd_t shoot; /* 射击控制命令 */ - CMD_RefereeCmd_t referee; /* 裁判系统发送命令 */ -} CMD_t; - -typedef struct { - float ch_l_x; /* 遥控器左侧摇杆横轴值,上为正 */ - float ch_l_y; /* 遥控器左侧摇杆纵轴值,右为正 */ - float ch_r_x; /* 遥控器右侧摇杆横轴值,上为正 */ - float ch_r_y; /* 遥控器右侧摇杆纵轴值,右为正 */ - - float ch_res; /* 第五通道值 */ - - CMD_SwitchPos_t sw_r; /* 右侧拨杆位置 */ - CMD_SwitchPos_t sw_l; /* 左侧拨杆位置 */ - - struct { - int16_t x; - int16_t y; - int16_t z; - bool l_click; /* 左键 */ - bool r_click; /* 右键 */ - } mouse; /* 鼠标值 */ - - uint16_t key; /* 按键值 */ - - uint16_t res; /* 保留,未启用 */ -} CMD_RC_t; - -typedef struct { - AHRS_Eulr_t gimbal_delta; /* 欧拉角的变化量 */ - - struct { - float vx; /* x轴移动速度 */ - float vy; /* y轴移动速度 */ - float wz; /* z轴转动速度 */ - } chassis_move_vec; /* 底盘移动向量 */ - - bool fire; /* 开火状态 */ -} CMD_Host_t; - -/** - * @brief 解析行为命令 - * - * @param rc 遥控器数据 - * @param cmd 主结构体 - */ -int8_t CMD_Init(CMD_t *cmd, const CMD_Params_t *param); - -/** - * @brief 检查是否启用上位机控制指令覆盖 - * - * @param cmd 主结构体 - * @return true 启用 - * @return false 不启用 - */ -bool CMD_CheckHostOverwrite(CMD_t *cmd); - -/** - * @brief 解析命令 - * - * @param rc 遥控器数据 - * @param cmd 命令 - * @param dt_sec 两次解析的间隔 - * @return int8_t 0对应没有错误 - */ -int8_t CMD_ParseRc(CMD_RC_t *rc, CMD_t *cmd, float dt_sec); - -/** - * @brief 解析上位机命令 - * - * @param host host数据 - * @param cmd 命令 - * @param dt_sec 两次解析的间隔 - * @return int8_t 0对应没有错误 - */ -int8_t CMD_ParseHost(const CMD_Host_t *host, CMD_t *cmd, float dt_sec); - -/** - * @brief 添加向Referee发送的命令 - * - * @param ref 命令队列 - * @param cmd 要添加的命令 - * @return int8_t 0对应没有错误 - */ -int8_t CMD_RefereeAdd(CMD_RefereeCmd_t *ref, CMD_UI_t cmd); - -/* USER FUNCTION BEGIN */ - -/* USER FUNCTION END */ - -#ifdef __cplusplus -} -#endif diff --git a/User/module/cmd/cmd.h b/User/module/cmd/cmd.h index 5f48d6d..44fb93e 100644 --- a/User/module/cmd/cmd.h +++ b/User/module/cmd/cmd.h @@ -42,6 +42,24 @@ typedef struct { /* 配置结构 */ /* ========================================================================== */ +/* AI行为状态 */ +typedef enum { + AI_STATUS_STOP, /* 停止状态 */ + AI_STATUS_AUTOAIM, /* 自瞄状态 */ + AI_STATUS_HITSWITCH, /* 打符状态 */ + AI_STATUS_AUTOMATIC /* 自动状态 */ +} CMD_AI_Status_t; + +/* UI所用行为状态 */ +typedef enum { + UI_NOTHING, /* 当前无状态 */ + UI_AUTO_AIM_START, /* 自瞄状态开启 */ + UI_AUTO_AIM_STOP, /* 自瞄状态关闭 */ + UI_HIT_SWITCH_START, /* 打符状态开启 */ + UI_HIT_SWITCH_STOP /* 打符状态关闭 */ +} CMD_UI_t; + + /* 灵敏度配置 */ typedef struct { float mouse_sens; /* 鼠标灵敏度 */ @@ -49,6 +67,11 @@ typedef struct { float move_fast_mult; /* 快速移动倍率 */ float move_slow_mult; /* 慢速移动倍率 */ } CMD_Sensitivity_t; +/* 分辨率配置 */ +typedef struct { + uint16_t width; + uint16_t height; +} CMD_Screen_t; /* RC模式映射配置 - 定义开关位置到模式的映射 */ typedef struct { @@ -76,7 +99,8 @@ typedef struct { /* 灵敏度设置 */ CMD_Sensitivity_t sensitivity; - + /* 分辨率设置 */ + CMD_Screen_t screen; /* RC模式映射 */ CMD_RCModeMap_t rc_mode_map; diff --git a/User/module/cmd/cmd_example.c b/User/module/cmd/cmd_example.c index 476c32e..b694cee 100644 --- a/User/module/cmd/cmd_example.c +++ b/User/module/cmd/cmd_example.c @@ -3,7 +3,7 @@ * * 本文件展示如何配置和使用新的CMD模块 */ -#include "cmd.h" +#include "module/cmd/cmd.h" /* ========================================================================== */ /* config示例 */