第一集:《猴王出世》
This commit is contained in:
parent
120b90290f
commit
5bce20b00d
3
.vscode/settings.json
vendored
Normal file
3
.vscode/settings.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"C_Cpp.errorSquiggles": "disabled"
|
||||
}
|
||||
8197
MDK-ARM/JLinkLog.txt
8197
MDK-ARM/JLinkLog.txt
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@ -1098,6 +1098,30 @@
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>9</GroupNumber>
|
||||
<FileNumber>66</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\User\module\config.c</PathWithFileName>
|
||||
<FilenameWithoutPath>config.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>9</GroupNumber>
|
||||
<FileNumber>67</FileNumber>
|
||||
<FileType>5</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\User\module\config.h</PathWithFileName>
|
||||
<FilenameWithoutPath>config.h</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
</Group>
|
||||
|
||||
<Group>
|
||||
@ -1108,7 +1132,7 @@
|
||||
<RteFlg>0</RteFlg>
|
||||
<File>
|
||||
<GroupNumber>10</GroupNumber>
|
||||
<FileNumber>66</FileNumber>
|
||||
<FileNumber>68</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
@ -1120,7 +1144,7 @@
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>10</GroupNumber>
|
||||
<FileNumber>67</FileNumber>
|
||||
<FileNumber>69</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
@ -1132,7 +1156,7 @@
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>10</GroupNumber>
|
||||
<FileNumber>68</FileNumber>
|
||||
<FileNumber>70</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
@ -1144,7 +1168,7 @@
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>10</GroupNumber>
|
||||
<FileNumber>69</FileNumber>
|
||||
<FileNumber>71</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
@ -1156,7 +1180,7 @@
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>10</GroupNumber>
|
||||
<FileNumber>70</FileNumber>
|
||||
<FileNumber>72</FileNumber>
|
||||
<FileType>5</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
|
||||
@ -1378,6 +1378,16 @@
|
||||
<FileType>5</FileType>
|
||||
<FilePath>..\User\module\shoot_control.h</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>config.c</FileName>
|
||||
<FileType>1</FileType>
|
||||
<FilePath>..\User\module\config.c</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>config.h</FileName>
|
||||
<FileType>5</FileType>
|
||||
<FilePath>..\User\module\config.h</FilePath>
|
||||
</File>
|
||||
</Files>
|
||||
</Group>
|
||||
<Group>
|
||||
|
||||
Binary file not shown.
50
MDK-ARM/shoot/config.d
Normal file
50
MDK-ARM/shoot/config.d
Normal file
@ -0,0 +1,50 @@
|
||||
shoot/config.o: ..\User\module\config.c ..\User\module\config.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\stdint.h \
|
||||
..\User\component\pid.h ..\User\component\filter.h \
|
||||
..\User\component\user_math.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\float.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\math.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\stdbool.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\stddef.h \
|
||||
..\User\device\motor.h ..\User\device\device.h \
|
||||
..\User\device\motor_rm.h ..\User\bsp\can.h ..\Core\Inc\can.h \
|
||||
..\Core\Inc\main.h ..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal.h \
|
||||
..\Core\Inc\stm32f4xx_hal_conf.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_rcc.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_def.h \
|
||||
..\Drivers\CMSIS\Device\ST\STM32F4xx\Include\stm32f4xx.h \
|
||||
..\Drivers\CMSIS\Device\ST\STM32F4xx\Include\stm32f407xx.h \
|
||||
..\Drivers\CMSIS\Include\core_cm4.h \
|
||||
..\Drivers\CMSIS\Include\cmsis_version.h \
|
||||
..\Drivers\CMSIS\Include\cmsis_compiler.h \
|
||||
..\Drivers\CMSIS\Include\cmsis_armclang.h \
|
||||
..\Drivers\CMSIS\Include\mpu_armv7.h \
|
||||
..\Drivers\CMSIS\Device\ST\STM32F4xx\Include\system_stm32f4xx.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_rcc_ex.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_gpio.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_gpio_ex.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_exti.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_dma.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_dma_ex.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_cortex.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_can.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_flash.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_flash_ex.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_flash_ramfunc.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_pwr.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_pwr_ex.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_uart.h \
|
||||
..\User\bsp\bsp.h ..\User\bsp\mm.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\FreeRTOS.h \
|
||||
..\Core\Inc\FreeRTOSConfig.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\projdefs.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\portable.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\deprecated_definitions.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\portable\RVDS\ARM_CM4F\portmacro.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\mpu_wrappers.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\task.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h \
|
||||
..\User\module\shoot_control.h ..\Core\Inc\main.h
|
||||
BIN
MDK-ARM/shoot/config.o
Normal file
BIN
MDK-ARM/shoot/config.o
Normal file
Binary file not shown.
Binary file not shown.
@ -22,7 +22,7 @@ Dialog DLL: TCM.DLL V1.48.0.0
|
||||
|
||||
<h2>Project:</h2>
|
||||
D:\CUBEMX\shoot\MDK-ARM\shoot.uvprojx
|
||||
Project File Date: 09/25/2025
|
||||
Project File Date: 09/30/2025
|
||||
|
||||
<h2>Output:</h2>
|
||||
*** Using Compiler 'V6.16', folder: 'D:\cangming\ARM\ARMCLANG\Bin'
|
||||
@ -52,7 +52,7 @@ Package Vendor: Keil
|
||||
|
||||
* Component: ARM::CMSIS:CORE:5.4.0
|
||||
Include file: CMSIS\Core\Include\tz_context.h
|
||||
Build Time Elapsed: 00:00:01
|
||||
Build Time Elapsed: 00:00:00
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -48,6 +48,7 @@
|
||||
"shoot\filter.o"
|
||||
"shoot\pid.o"
|
||||
"shoot\shoot_control.o"
|
||||
"shoot\config.o"
|
||||
"shoot\init.o"
|
||||
"shoot\rc.o"
|
||||
"shoot\shoot_ctrl.o"
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -29,17 +29,14 @@ shoot/shoot_control.o: ..\User\module\shoot_control.c \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_pwr.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_pwr_ex.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_uart.h \
|
||||
..\User\component\at9s_pro_cmd.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\stdbool.h \
|
||||
..\User\device\at9s_pro.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h \
|
||||
..\User\component\pid.h ..\User\component\filter.h \
|
||||
..\User\component\user_math.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\float.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\math.h ..\User\device\device.h \
|
||||
..\Core\Inc\can.h ..\Core\Inc\main.h ..\User\component\pid.h \
|
||||
..\User\component\filter.h ..\User\device\motor_rm.h \
|
||||
..\User\device\motor.h ..\User\bsp\can.h ..\User\bsp\bsp.h \
|
||||
..\User\bsp\mm.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\math.h \
|
||||
..\User\device\motor_rm.h ..\User\device\motor.h \
|
||||
..\User\device\device.h ..\User\bsp\can.h ..\Core\Inc\can.h \
|
||||
..\Core\Inc\main.h ..\User\bsp\bsp.h ..\User\bsp\mm.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\FreeRTOS.h \
|
||||
..\Core\Inc\FreeRTOSConfig.h \
|
||||
@ -51,5 +48,4 @@ shoot/shoot_control.o: ..\User\module\shoot_control.c \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\task.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h \
|
||||
..\User\bsp\dwt.h ..\User\device\vofa.h ..\User\bsp\uart.h \
|
||||
..\Core\Inc\usart.h
|
||||
..\User\bsp\dwt.h
|
||||
|
||||
Binary file not shown.
@ -11,10 +11,12 @@ shoot/shoot_ctrl.o: ..\User\task\shoot_ctrl.c ..\User\task\user_task.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\mpu_wrappers.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\task.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h \
|
||||
..\User\device\motor_rm.h ..\User\device\motor.h \
|
||||
..\User\device\device.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\stdbool.h ..\User\bsp\can.h \
|
||||
..\Core\Inc\can.h ..\Core\Inc\main.h \
|
||||
..\User\component\at9s_pro_cmd.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\stdbool.h \
|
||||
..\User\device\at9s_pro.h ..\User\component\user_math.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\float.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\math.h ..\User\device\device.h \
|
||||
..\User\module\shoot_control.h ..\Core\Inc\main.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal.h \
|
||||
..\Core\Inc\stm32f4xx_hal_conf.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_rcc.h \
|
||||
@ -42,11 +44,10 @@ shoot/shoot_ctrl.o: ..\User\task\shoot_ctrl.c ..\User\task\user_task.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_pwr.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_pwr_ex.h \
|
||||
..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_uart.h \
|
||||
..\User\bsp\bsp.h ..\User\bsp\mm.h \
|
||||
..\User\component\pid.h ..\User\component\filter.h \
|
||||
..\User\device\motor_rm.h ..\User\device\motor.h ..\User\bsp\can.h \
|
||||
..\Core\Inc\can.h ..\Core\Inc\main.h ..\User\bsp\bsp.h \
|
||||
..\User\bsp\mm.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os.h \
|
||||
..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h \
|
||||
..\User\component\at9s_pro_cmd.h ..\User\device\at9s_pro.h \
|
||||
..\User\component\user_math.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\float.h \
|
||||
D:\cangming\ARM\ARMCLANG\Bin\..\include\math.h \
|
||||
..\User\module\shoot_control.h ..\Core\Inc\main.h ..\User\bsp\dwt.h
|
||||
..\User\module\config.h
|
||||
|
||||
Binary file not shown.
@ -1277,7 +1277,7 @@ I (D:\cangming\ARM\ARMCLANG\include\stdint.h)(0x6035A4A8)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\stddef.h)(0x6035A4A8)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\string.h)(0x6035A4A8)
|
||||
F (..\User\component\user_math.h)(0x68D3FFDB)()
|
||||
F (..\User\component\at9s_pro_cmd.c)(0x68D4BAA3)(-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 ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -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 ../User
-I./RTE/_shoot
-ID:/cangming/ARM/CMSIS/5.7.0/CMSIS/Core/Include
-ID:/cangming/keil/STM32F4xx_DFP/2.15.0/Drivers/CMSIS/Device/ST/STM32F4xx/Include
-D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx
-o shoot/at9s_pro_cmd.o -MD)
|
||||
F (..\User\component\at9s_pro_cmd.c)(0x68DAC603)(-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 ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -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 ../User
-I./RTE/_shoot
-ID:/cangming/ARM/CMSIS/5.7.0/CMSIS/Core/Include
-ID:/cangming/keil/STM32F4xx_DFP/2.15.0/Drivers/CMSIS/Device/ST/STM32F4xx/Include
-D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx
-o shoot/at9s_pro_cmd.o -MD)
|
||||
I (..\User\component\at9s_pro_cmd.h)(0x68D4B9F6)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\stdint.h)(0x6035A4A8)
|
||||
@ -1309,8 +1309,8 @@ I (D:\cangming\ARM\ARMCLANG\include\math.h)(0x6035A4A8)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\stddef.h)(0x6035A4A8)
|
||||
F (..\User\component\pid.h)(0x68D3FFDB)()
|
||||
F (..\User\module\shoot_control.c)(0x68D942C6)(-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 ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -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 ../User
-I./RTE/_shoot
-ID:/cangming/ARM/CMSIS/5.7.0/CMSIS/Core/Include
-ID:/cangming/keil/STM32F4xx_DFP/2.15.0/Drivers/CMSIS/Device/ST/STM32F4xx/Include
-D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx
-o shoot/shoot_control.o -MD)
|
||||
I (..\User\module\shoot_control.h)(0x68D4B42D)
|
||||
F (..\User\module\shoot_control.c)(0x68DAD521)(-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 ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -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 ../User
-I./RTE/_shoot
-ID:/cangming/ARM/CMSIS/5.7.0/CMSIS/Core/Include
-ID:/cangming/keil/STM32F4xx_DFP/2.15.0/Drivers/CMSIS/Device/ST/STM32F4xx/Include
-D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx
-o shoot/shoot_control.o -MD)
|
||||
I (..\User\module\shoot_control.h)(0x68DAD1CF)
|
||||
I (..\Core\Inc\main.h)(0x68D1384A)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal.h)(0x68AD823F)
|
||||
I (..\Core\Inc\stm32f4xx_hal_conf.h)(0x68D1384A)
|
||||
@ -1341,20 +1341,17 @@ I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_flash_ramfunc.h)(0x68AD823F
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_pwr.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_pwr_ex.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_uart.h)(0x68AD823F)
|
||||
I (..\User\component\at9s_pro_cmd.h)(0x68D4B9F6)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8)
|
||||
I (..\User\device\at9s_pro.h)(0x68CE6AC0)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68AD8208)
|
||||
I (..\User\component\pid.h)(0x68D3FFDB)
|
||||
I (..\User\component\filter.h)(0x68D3FFDB)
|
||||
I (..\User\component\user_math.h)(0x68D3FFDB)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\float.h)(0x6035A4A0)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\math.h)(0x6035A4A8)
|
||||
I (..\User\device\device.h)(0x68D400B4)
|
||||
I (..\Core\Inc\can.h)(0x68D13849)
|
||||
I (..\User\component\pid.h)(0x68D3FFDB)
|
||||
I (..\User\component\filter.h)(0x68D3FFDB)
|
||||
I (..\User\device\motor_rm.h)(0x68D3FFBB)
|
||||
I (..\User\device\motor.h)(0x68D3FFBB)
|
||||
I (..\User\device\device.h)(0x68D400B4)
|
||||
I (..\User\bsp\can.h)(0x68D3FFDB)
|
||||
I (..\Core\Inc\can.h)(0x68D13849)
|
||||
I (..\User\bsp\bsp.h)(0x68D3FFDB)
|
||||
I (..\User\bsp\mm.h)(0x68D3FFDB)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os.h)(0x68AD8208)
|
||||
@ -1367,11 +1364,67 @@ I (..\Middlewares\Third_Party\FreeRTOS\Source\portable\RVDS\ARM_CM4F\portmacro.h
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\mpu_wrappers.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\task.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68AD8208)
|
||||
I (..\User\bsp\dwt.h)(0x68D3FFDB)
|
||||
I (..\User\device\vofa.h)(0x68D3FFBB)
|
||||
I (..\User\bsp\uart.h)(0x68D3FFDB)
|
||||
I (..\Core\Inc\usart.h)(0x68D13849)
|
||||
F (..\User\module\shoot_control.h)(0x68D4B42D)()
|
||||
F (..\User\module\shoot_control.h)(0x68DAD1CF)()
|
||||
F (..\User\module\config.c)(0x68DADA5D)(-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 ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -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 ../User
-I./RTE/_shoot
-ID:/cangming/ARM/CMSIS/5.7.0/CMSIS/Core/Include
-ID:/cangming/keil/STM32F4xx_DFP/2.15.0/Drivers/CMSIS/Device/ST/STM32F4xx/Include
-D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx
-o shoot/config.o -MD)
|
||||
I (..\User\module\config.h)(0x68DABE70)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\stdint.h)(0x6035A4A8)
|
||||
I (..\User\component\pid.h)(0x68D3FFDB)
|
||||
I (..\User\component\filter.h)(0x68D3FFDB)
|
||||
I (..\User\component\user_math.h)(0x68D3FFDB)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\float.h)(0x6035A4A0)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\math.h)(0x6035A4A8)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\stddef.h)(0x6035A4A8)
|
||||
I (..\User\device\motor.h)(0x68D3FFBB)
|
||||
I (..\User\device\device.h)(0x68D400B4)
|
||||
I (..\User\device\motor_rm.h)(0x68D3FFBB)
|
||||
I (..\User\bsp\can.h)(0x68D3FFDB)
|
||||
I (..\Core\Inc\can.h)(0x68D13849)
|
||||
I (..\Core\Inc\main.h)(0x68D1384A)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal.h)(0x68AD823F)
|
||||
I (..\Core\Inc\stm32f4xx_hal_conf.h)(0x68D1384A)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_rcc.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_def.h)(0x68AD823F)
|
||||
I (..\Drivers\CMSIS\Device\ST\STM32F4xx\Include\stm32f4xx.h)(0x68AD823F)
|
||||
I (..\Drivers\CMSIS\Device\ST\STM32F4xx\Include\stm32f407xx.h)(0x68AD823F)
|
||||
I (..\Drivers\CMSIS\Include\core_cm4.h)(0x68AD823F)
|
||||
I (..\Drivers\CMSIS\Include\cmsis_version.h)(0x68AD823F)
|
||||
I (..\Drivers\CMSIS\Include\cmsis_compiler.h)(0x68AD823F)
|
||||
I (..\Drivers\CMSIS\Include\cmsis_armclang.h)(0x68AD823F)
|
||||
I (..\Drivers\CMSIS\Include\mpu_armv7.h)(0x68AD823F)
|
||||
I (..\Drivers\CMSIS\Device\ST\STM32F4xx\Include\system_stm32f4xx.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_rcc_ex.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_gpio.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_gpio_ex.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_exti.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_dma.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_dma_ex.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_cortex.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_can.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_flash.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_flash_ex.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_flash_ramfunc.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_pwr.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_pwr_ex.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_uart.h)(0x68AD823F)
|
||||
I (..\User\bsp\bsp.h)(0x68D3FFDB)
|
||||
I (..\User\bsp\mm.h)(0x68D3FFDB)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\FreeRTOS.h)(0x68AD8208)
|
||||
I (..\Core\Inc\FreeRTOSConfig.h)(0x68D13FA3)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\projdefs.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\portable.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\deprecated_definitions.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\portable\RVDS\ARM_CM4F\portmacro.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\mpu_wrappers.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\task.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68AD8208)
|
||||
I (..\User\module\shoot_control.h)(0x68DAD1CF)
|
||||
F (..\User\module\config.h)(0x68DABE70)()
|
||||
F (..\User\task\init.c)(0x68D4AE2D)(-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 ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -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 ../User
-I./RTE/_shoot
-ID:/cangming/ARM/CMSIS/5.7.0/CMSIS/Core/Include
-ID:/cangming/keil/STM32F4xx_DFP/2.15.0/Drivers/CMSIS/Device/ST/STM32F4xx/Include
-D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx
-o shoot/init.o -MD)
|
||||
I (..\User\task\user_task.h)(0x68D3E4B9)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68AD8208)
|
||||
@ -1414,7 +1467,7 @@ I (D:\cangming\ARM\ARMCLANG\include\math.h)(0x6035A4A8)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8)
|
||||
I (..\User\device\device.h)(0x68D400B4)
|
||||
I (..\User\component\at9s_pro_cmd.h)(0x68D4B9F6)
|
||||
F (..\User\task\shoot_ctrl.c)(0x68D79CA7)(-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 ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -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 ../User
-I./RTE/_shoot
-ID:/cangming/ARM/CMSIS/5.7.0/CMSIS/Core/Include
-ID:/cangming/keil/STM32F4xx_DFP/2.15.0/Drivers/CMSIS/Device/ST/STM32F4xx/Include
-D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx
-o shoot/shoot_ctrl.o -MD)
|
||||
F (..\User\task\shoot_ctrl.c)(0x68DAC248)(-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 ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -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 ../User
-I./RTE/_shoot
-ID:/cangming/ARM/CMSIS/5.7.0/CMSIS/Core/Include
-ID:/cangming/keil/STM32F4xx_DFP/2.15.0/Drivers/CMSIS/Device/ST/STM32F4xx/Include
-D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx
-o shoot/shoot_ctrl.o -MD)
|
||||
I (..\User\task\user_task.h)(0x68D3E4B9)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68AD8208)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\stdint.h)(0x6035A4A8)
|
||||
@ -1428,12 +1481,14 @@ I (..\Middlewares\Third_Party\FreeRTOS\Source\portable\RVDS\ARM_CM4F\portmacro.h
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\mpu_wrappers.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\task.h)(0x68AD8208)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h)(0x68AD8208)
|
||||
I (..\User\device\motor_rm.h)(0x68D3FFBB)
|
||||
I (..\User\device\motor.h)(0x68D3FFBB)
|
||||
I (..\User\device\device.h)(0x68D400B4)
|
||||
I (..\User\component\at9s_pro_cmd.h)(0x68D4B9F6)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8)
|
||||
I (..\User\bsp\can.h)(0x68D3FFDB)
|
||||
I (..\Core\Inc\can.h)(0x68D13849)
|
||||
I (..\User\device\at9s_pro.h)(0x68CE6AC0)
|
||||
I (..\User\component\user_math.h)(0x68D3FFDB)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\float.h)(0x6035A4A0)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\math.h)(0x6035A4A8)
|
||||
I (..\User\device\device.h)(0x68D400B4)
|
||||
I (..\User\module\shoot_control.h)(0x68DAD1CF)
|
||||
I (..\Core\Inc\main.h)(0x68D1384A)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal.h)(0x68AD823F)
|
||||
I (..\Core\Inc\stm32f4xx_hal_conf.h)(0x68D1384A)
|
||||
@ -1462,16 +1517,16 @@ I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_flash_ramfunc.h)(0x68AD823F
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_pwr.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_pwr_ex.h)(0x68AD823F)
|
||||
I (..\Drivers\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_uart.h)(0x68AD823F)
|
||||
I (..\User\component\pid.h)(0x68D3FFDB)
|
||||
I (..\User\component\filter.h)(0x68D3FFDB)
|
||||
I (..\User\device\motor_rm.h)(0x68D3FFBB)
|
||||
I (..\User\device\motor.h)(0x68D3FFBB)
|
||||
I (..\User\bsp\can.h)(0x68D3FFDB)
|
||||
I (..\Core\Inc\can.h)(0x68D13849)
|
||||
I (..\User\bsp\bsp.h)(0x68D3FFDB)
|
||||
I (..\User\bsp\mm.h)(0x68D3FFDB)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os.h)(0x68AD8208)
|
||||
I (..\User\component\at9s_pro_cmd.h)(0x68D4B9F6)
|
||||
I (..\User\device\at9s_pro.h)(0x68CE6AC0)
|
||||
I (..\User\component\user_math.h)(0x68D3FFDB)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\float.h)(0x6035A4A0)
|
||||
I (D:\cangming\ARM\ARMCLANG\include\math.h)(0x6035A4A8)
|
||||
I (..\User\module\shoot_control.h)(0x68D4B42D)
|
||||
I (..\User\bsp\dwt.h)(0x68D3FFDB)
|
||||
I (..\User\module\config.h)(0x68DABE70)
|
||||
F (..\User\task\user_task.c)(0x68D1407D)(-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 ../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I ../Drivers/CMSIS/Include -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 ../User
-I./RTE/_shoot
-ID:/cangming/ARM/CMSIS/5.7.0/CMSIS/Core/Include
-ID:/cangming/keil/STM32F4xx_DFP/2.15.0/Drivers/CMSIS/Device/ST/STM32F4xx/Include
-D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx
-o shoot/user_task.o -MD)
|
||||
I (..\User\task\user_task.h)(0x68D3E4B9)
|
||||
I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68AD8208)
|
||||
|
||||
@ -56,10 +56,10 @@ int8_t COMP_AT9S_CMD_ParseRc(const DEVICE_AT9S_t *rc, COMP_AT9S_CMD_t *at9s_cmd)
|
||||
if(rc->data.key_C == AT9S_CMD_SW_DOWN)at9s_cmd->ai = true;
|
||||
else at9s_cmd->ai = false;
|
||||
|
||||
if(rc->data.key_G == AT9S_CMD_SW_DOWN) at9s_cmd->shoot.ready = false;
|
||||
else if(rc->data.key_G == AT9S_CMD_SW_MID||rc->data.key_G == AT9S_CMD_SW_UP) at9s_cmd->shoot.ready = true;
|
||||
if(rc->data.key_C == AT9S_CMD_SW_DOWN) at9s_cmd->shoot.ready = false;
|
||||
else if(rc->data.key_C == AT9S_CMD_SW_MID||rc->data.key_C == AT9S_CMD_SW_UP) at9s_cmd->shoot.ready = true;
|
||||
|
||||
if(rc->data.key_G == AT9S_CMD_SW_UP)at9s_cmd->shoot.firecmd = true;
|
||||
if(rc->data.key_C == AT9S_CMD_SW_UP)at9s_cmd->shoot.firecmd = true;
|
||||
else at9s_cmd->shoot.firecmd = false;
|
||||
|
||||
at9s_cmd->online = rc->online;
|
||||
|
||||
94
User/module/config.c
Normal file
94
User/module/config.c
Normal file
@ -0,0 +1,94 @@
|
||||
/*
|
||||
* 配置相关
|
||||
*/
|
||||
|
||||
/* Includes ----------------------------------------------------------------- */
|
||||
#include "module/config.h"
|
||||
#include "bsp/can.h"
|
||||
|
||||
/* Private typedef ---------------------------------------------------------- */
|
||||
/* Private define ----------------------------------------------------------- */
|
||||
/* Private macro ------------------------------------------------------------ */
|
||||
/* Private variables -------------------------------------------------------- */
|
||||
|
||||
/* Exported variables ------------------------------------------------------- */
|
||||
|
||||
// 机器人参数配置
|
||||
Config_RobotParam_t robot_config = {
|
||||
|
||||
|
||||
|
||||
.shoot_param = {
|
||||
.trig_step_angle=M_2PI/8,
|
||||
.fric_motor_param[0] = {
|
||||
.can = BSP_CAN_2,
|
||||
.id = 0x201,
|
||||
.module = MOTOR_M3508,
|
||||
.reverse = false,
|
||||
.gear=false,
|
||||
},
|
||||
.fric_motor_param[1] = {
|
||||
.can = BSP_CAN_2,
|
||||
.id = 0x202,
|
||||
.module = MOTOR_M3508,
|
||||
.reverse = true,
|
||||
.gear=false,
|
||||
},
|
||||
.trig_motor_param = {
|
||||
.can = BSP_CAN_2,
|
||||
.id = 0x203,
|
||||
.module = MOTOR_M2006,
|
||||
.reverse = false,
|
||||
.gear=true,
|
||||
},
|
||||
.fric_follow = {
|
||||
.k=1.0f,
|
||||
.p=1.8f,
|
||||
.i=0.0f,
|
||||
.d=0.0f,
|
||||
.i_limit=0.0f,
|
||||
.out_limit=0.9f,
|
||||
.d_cutoff_freq=30.0f,
|
||||
.range=-1.0f,
|
||||
},
|
||||
.fric_err = {
|
||||
.k=1.0f,
|
||||
.p=4.0f,
|
||||
.i=0.4f,
|
||||
.d=0.04f,
|
||||
.i_limit=0.25f,
|
||||
.out_limit=0.25f,
|
||||
.d_cutoff_freq=40.0f,
|
||||
.range=-1.0f,
|
||||
},
|
||||
.trig = {
|
||||
.k=1.0f,
|
||||
.p=1.2f,
|
||||
.i=0.0f,
|
||||
.d=0.05f,
|
||||
.i_limit=0.2f,
|
||||
.out_limit=0.9f,
|
||||
.d_cutoff_freq=30.0f,
|
||||
.range=-1.0f,
|
||||
},
|
||||
.filter.fric = {
|
||||
.in = 30.0f,
|
||||
.out = 30.0f,
|
||||
},
|
||||
.filter.trig = {
|
||||
.in = 30.0f,
|
||||
.out = 30.0f,
|
||||
},
|
||||
}
|
||||
};
|
||||
|
||||
/* Private function prototypes ---------------------------------------------- */
|
||||
/* Exported functions ------------------------------------------------------- */
|
||||
|
||||
/**
|
||||
* @brief 获取机器人配置参数
|
||||
* @return 机器人配置参数指针
|
||||
*/
|
||||
Config_RobotParam_t* Config_GetRobotParam(void) {
|
||||
return &robot_config;
|
||||
}
|
||||
31
User/module/config.h
Normal file
31
User/module/config.h
Normal file
@ -0,0 +1,31 @@
|
||||
/*
|
||||
* 配置相关
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <stdint.h>
|
||||
#include "component/pid.h"
|
||||
#include "device/motor.h"
|
||||
#include "device/motor_rm.h"
|
||||
#include "module/shoot_control.h"
|
||||
|
||||
typedef struct {
|
||||
Shoot_Params_t shoot_param;
|
||||
} Config_RobotParam_t;
|
||||
|
||||
/* Exported functions prototypes -------------------------------------------- */
|
||||
|
||||
/**
|
||||
* @brief 获取机器人配置参数
|
||||
* @return 机器人配置参数指针
|
||||
*/
|
||||
Config_RobotParam_t* Config_GetRobotParam(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
@ -2,42 +2,13 @@
|
||||
#include "shoot_control.h"
|
||||
|
||||
#include "can.h"
|
||||
#include "component/pid.h"
|
||||
#include "component/filter.h"
|
||||
#include "component/at9s_pro_cmd.h"
|
||||
#include "device/motor_rm.h"
|
||||
#include <math.h>
|
||||
#include "bsp/dwt.h"
|
||||
#include "device/vofa.h"
|
||||
#define MAX_RPM_3508 7000.0f
|
||||
|
||||
uint32_t shoot_ctrl_cnt_last;
|
||||
float shoot_ctrl_dt;
|
||||
bool last_firecmd=false;
|
||||
//要一个函数实现任意几个电机达到同样目标转速
|
||||
KPID_t pid_shoot_3508_rpm[2];
|
||||
KPID_Params_t pid_shoot_3508_rpm_params ={1.0f, 1.8f, 0.0f, 0.0f, 0.0f, 0.9f ,0.0f,-1.0};
|
||||
|
||||
KPID_t pid_shoot_3508_errrpm[2];
|
||||
KPID_Params_t pid_shoot_3508_errrpm_params ={1.0f, 4.0f, 0.40f, 0.04f, 0.25f, 0.25f ,40.0f,-1.0};
|
||||
|
||||
KPID_t pid_shoot_3508_stop[2];
|
||||
KPID_Params_t pid_shoot_3508_stop_params ={1, 1.2f, 0.5f, 0.01f, 0.0f, 0.0f ,0.0f,-1.0};
|
||||
|
||||
static LowPassFilter2p_t spd_lpf[2];
|
||||
static LowPassFilter2p_t out_lpf[2];
|
||||
|
||||
typedef enum {
|
||||
SHOOT_STATE_IDLE = 0, // 熄火
|
||||
SHOOT_STATE_READY, // 准备射击
|
||||
SHOOT_STATE_FIRE // 射击
|
||||
} ShootState_t;
|
||||
|
||||
ShootState_t shoot_state = SHOOT_STATE_IDLE;
|
||||
|
||||
//状态机 熄火-准备射击-射击
|
||||
MOTOR_RM_Param_t shoot_motor_param[2];
|
||||
MOTOR_RM_t* shoot_motor_feedback[2];
|
||||
|
||||
|
||||
static inline void ScaleSumTo1(float *a, float *b) {
|
||||
float sum = *a + *b;
|
||||
@ -48,139 +19,145 @@ static inline void ScaleSumTo1(float *a, float *b) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void shoot_motor_Init(float freq)
|
||||
{
|
||||
// VOFA_init(VOFA_PROTOCOL_JUSTFLOAT);
|
||||
DWT_Init(168);
|
||||
BSP_CAN_Init();
|
||||
shoot_motor_param[0].can=BSP_CAN_2;
|
||||
shoot_motor_param[0].id=0x201;
|
||||
shoot_motor_param[0].module=MOTOR_M3508;
|
||||
shoot_motor_param[0].reverse=false;
|
||||
shoot_motor_param[0].gear=false;
|
||||
MOTOR_RM_Register(&shoot_motor_param[0]);
|
||||
shoot_motor_param[1].can=BSP_CAN_2;
|
||||
shoot_motor_param[1].id=0x202;
|
||||
shoot_motor_param[1].module=MOTOR_M3508;
|
||||
shoot_motor_param[1].reverse=true;
|
||||
shoot_motor_param[1].gear=false;
|
||||
MOTOR_RM_Register(&shoot_motor_param[1]);
|
||||
for(int i=0;i<2;i++)
|
||||
{
|
||||
PID_Init(&pid_shoot_3508_rpm[i], KPID_MODE_CALC_D, freq,&pid_shoot_3508_rpm_params);
|
||||
PID_Init(&pid_shoot_3508_errrpm[i], KPID_MODE_CALC_D, freq,&pid_shoot_3508_errrpm_params);
|
||||
PID_Init(&pid_shoot_3508_stop[i], KPID_MODE_CALC_D, freq,&pid_shoot_3508_stop_params);
|
||||
LowPassFilter2p_Init(&spd_lpf[i], 1000.0f, 30.0f);
|
||||
LowPassFilter2p_Init(&out_lpf[i], 1000.0f, 30.0f);
|
||||
}
|
||||
|
||||
}
|
||||
float target_rpm=1000.0f;
|
||||
float shoot_out[2]={0,0};
|
||||
float shoot_errout[2];
|
||||
float shoot_errlpfout[2];
|
||||
float filtered_rpm[2];
|
||||
|
||||
float errtosee;
|
||||
void shoot_control(COMP_AT9S_CMD_t *rc)
|
||||
int8_t Shoot_Init(shoot_t *c, Shoot_Params_t *param, float target_freq)
|
||||
{
|
||||
MOTOR_RM_UpdateAll();
|
||||
errtosee = shoot_motor_feedback[0]->feedback.rotor_speed - shoot_motor_feedback[1]->feedback.rotor_speed;
|
||||
if(rc->online)
|
||||
{
|
||||
float rel_rpm[2];
|
||||
for(int i=0;i<2;i++)
|
||||
{
|
||||
if (c == NULL || param == NULL || target_freq <= 0.0f) {
|
||||
return -1; // 参数错误
|
||||
}
|
||||
c->param=param;
|
||||
|
||||
filtered_rpm[i] = LowPassFilter2p_Apply(&spd_lpf[i], shoot_motor_feedback[i]->feedback.rotor_speed);
|
||||
rel_rpm[i]=filtered_rpm[i]/MAX_RPM_3508;
|
||||
if(rel_rpm[i]>1.0f)rel_rpm[i]=1.0f;
|
||||
if(rel_rpm[i]<-1.0f)rel_rpm[i]=-1.0f;
|
||||
DWT_Init(168);
|
||||
BSP_CAN_Init();
|
||||
for(int i=0;i<SHOOT_FRIC_NUM;i++){
|
||||
MOTOR_RM_Register(¶m->fric_motor_param[i]);
|
||||
PID_Init(&c->pid.fric_follow[i], KPID_MODE_CALC_D, target_freq,¶m->fric_follow);
|
||||
LowPassFilter2p_Init(&c->filter.fric.in[i], target_freq, c->param->filter.fric.in);
|
||||
LowPassFilter2p_Init(&c->filter.fric.out[i], target_freq, c->param->filter.fric.out);
|
||||
}
|
||||
MOTOR_RM_Register(¶m->trig_motor_param);
|
||||
PID_Init(&c->pid.trig, KPID_MODE_CALC_D, target_freq,¶m->trig);
|
||||
|
||||
LowPassFilter2p_Init(&c->filter.trig.in, target_freq, c->param->filter.trig.in);
|
||||
LowPassFilter2p_Init(&c->filter.trig.out, target_freq, c->param->filter.trig.out);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int8_t Chassis_UpdateFeedback(shoot_t *c)
|
||||
{
|
||||
if (c == NULL) {
|
||||
return -1; // 参数错误
|
||||
}
|
||||
|
||||
float rpm_sum=0.0f;
|
||||
for(int i = 0; i < SHOOT_FRIC_NUM; i++) {
|
||||
MOTOR_RM_Update(&c->param->fric_motor_param[i]);
|
||||
MOTOR_RM_t *motor_fed = MOTOR_RM_GetMotor(&c->param->fric_motor_param[i]);
|
||||
if(motor_fed!=NULL)
|
||||
{
|
||||
c->feedback.fric[i]=motor_fed->motor.feedback;
|
||||
}
|
||||
c->feedback.fil_fric_rpm[i] = LowPassFilter2p_Apply(&c->filter.fric.in[i], c->feedback.fric[i].rotor_speed);
|
||||
c->feedback.fric_rpm[i] = c->feedback.fil_fric_rpm[i] / MAX_FRIC_RPM;
|
||||
if(c->feedback.fric_rpm[i]>1.0f)c->feedback.fric_rpm[i]=1.0f;
|
||||
if(c->feedback.fric_rpm[i]<-1.0f)c->feedback.fric_rpm[i]=-1.0f;
|
||||
rpm_sum+=c->feedback.fric_rpm[i];
|
||||
}
|
||||
c->feedback.fric_avgrpm=rpm_sum/SHOOT_FRIC_NUM;
|
||||
MOTOR_RM_Update(&c->param->trig_motor_param);
|
||||
c->feedback.trig = MOTOR_RM_GetMotor(&c->param->trig_motor_param);
|
||||
//
|
||||
c->feedback.fil_trig_rpm = LowPassFilter2p_Apply(&c->filter.trig.in, c->feedback.trig->feedback.rotor_speed);
|
||||
c->feedback.trig_rpm = c->feedback.trig->feedback.rotor_speed / MAX_TRIG_RPM;
|
||||
if(c->feedback.trig_rpm>1.0f)c->feedback.trig_rpm=1.0f; //如果单环效果好就删
|
||||
if(c->feedback.trig_rpm<-1.0f)c->feedback.trig_rpm=-1.0f;
|
||||
//
|
||||
c->errtosee = c->feedback.fric[0].rotor_speed - c->feedback.fric[1].rotor_speed;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int8_t Shoot_Control(shoot_t *c, const Shoot_CMD_t *cmd)
|
||||
{
|
||||
if (c == NULL || cmd == NULL) {
|
||||
return -1; // 参数错误
|
||||
}
|
||||
c->dt = DWT_GetDeltaT(&c->lask_wakeup);
|
||||
// c->running_state = cmd->state;
|
||||
c->online = cmd->online;
|
||||
if(!c->online /*|| c->mode==SHOOT_MODE_SAFE*/){
|
||||
for(int i=0;i<SHOOT_FRIC_NUM;i++)
|
||||
{
|
||||
MOTOR_RM_Relax(&c->param->fric_motor_param[i]);
|
||||
}
|
||||
float err_out[2];
|
||||
double rpm_avg;
|
||||
switch(shoot_state)
|
||||
MOTOR_RM_Relax(&c->param->trig_motor_param);
|
||||
}
|
||||
else{
|
||||
switch(c->running_state)
|
||||
{
|
||||
case SHOOT_STATE_IDLE:
|
||||
|
||||
//位置闭写成环
|
||||
for(int i=0;i<2;i++)
|
||||
case SHOOT_STATE_IDLE:/*熄火等待*/
|
||||
for(int i=0;i<SHOOT_FRIC_NUM;i++)
|
||||
{
|
||||
PID_ResetIntegral(&pid_shoot_3508_errrpm[i]);
|
||||
MOTOR_RM_Relax(&shoot_motor_param[i]);
|
||||
PID_ResetIntegral(&c->pid.fric_follow[i]);
|
||||
c->output.out_follow[i]=PID_Calc(&c->pid.fric_follow[i],0.0f,c->feedback.fric_rpm[i],0,c->dt);
|
||||
c->output.out_fric[i]=c->output.out_follow[i];
|
||||
c->output.lpfout_fric[i] = LowPassFilter2p_Apply(&c->filter.fric.out[i], c->output.out_fric[i]);
|
||||
MOTOR_RM_SetOutput(&c->param->fric_motor_param[i], c->output.lpfout_fric[i]);
|
||||
}
|
||||
|
||||
if(rc->shoot.ready)
|
||||
{
|
||||
shoot_state=SHOOT_STATE_READY;
|
||||
}
|
||||
break;
|
||||
case SHOOT_STATE_READY:
|
||||
|
||||
for(int i=0;i<2;i++)
|
||||
{
|
||||
shoot_motor_feedback[i] = MOTOR_RM_GetMotor(&shoot_motor_param[i]);
|
||||
shoot_ctrl_dt=DWT_GetDeltaT(&shoot_ctrl_cnt_last);
|
||||
shoot_out[i]=PID_Calc(&pid_shoot_3508_rpm[i],target_rpm/MAX_RPM_3508,rel_rpm[i],0,shoot_ctrl_dt);
|
||||
for(int i=0;i<2;i++){
|
||||
rpm_avg=(rel_rpm[0]+rel_rpm[1])/2.0f;
|
||||
c->output.out_trig=PID_Calc(&c->pid.trig,c->target_variable.target_angle,c->feedback.trig->gearbox_total_angle,0,c->dt);
|
||||
MOTOR_RM_SetOutput(&c->param->trig_motor_param, c->output.out_trig);
|
||||
if(cmd->ready)
|
||||
{
|
||||
c->running_state=SHOOT_STATE_READY;
|
||||
}
|
||||
shoot_errout[i]=PID_Calc(&pid_shoot_3508_errrpm[i],rpm_avg,rel_rpm[i],0,shoot_ctrl_dt);
|
||||
/*若输出和大于1,按比例缩放,写成math里的函数*/
|
||||
shoot_errlpfout[i] = LowPassFilter2p_Apply(&out_lpf[i], shoot_errout[i]);
|
||||
ScaleSumTo1(&shoot_out[i], &shoot_errlpfout[i]);
|
||||
err_out[i] = shoot_out[i] + shoot_errout[i];
|
||||
// err_out[i] = LowPassFilter2p_Apply(&out_lpf[i], err_out[i]);
|
||||
MOTOR_RM_SetOutput(&shoot_motor_param[i], err_out[i]);
|
||||
}
|
||||
if(!rc->shoot.ready)
|
||||
{
|
||||
shoot_state=SHOOT_STATE_IDLE;
|
||||
}
|
||||
else if(last_firecmd==false&&rc->shoot.firecmd==true)//可以加一个到达目标速度的判断
|
||||
{
|
||||
shoot_state=SHOOT_STATE_FIRE;
|
||||
break;
|
||||
case SHOOT_STATE_READY:/*准备射击*/
|
||||
for(int i=0;i<SHOOT_FRIC_NUM;i++)
|
||||
{ /* 计算跟随输出->计算修正输出->加和、滤波、输出 */
|
||||
c->output.out_follow[i]=PID_Calc(&c->pid.fric_follow[i],c->target_variable.target_rpm/MAX_FRIC_RPM,c->feedback.fric_rpm[i],0,c->dt);
|
||||
c->output.out_err[i]=PID_Calc(&c->pid.fric_err[i],c->feedback.fric_avgrpm,c->feedback.fric_rpm[i],0,c->dt);
|
||||
ScaleSumTo1(&c->output.out_follow[i], &c->output.out_err[i]);
|
||||
c->output.out_fric[i]=c->output.out_follow[i]+c->output.out_err[i];
|
||||
c->output.lpfout_fric[i] = LowPassFilter2p_Apply(&c->filter.fric.out[i], c->output.out_fric[i]);
|
||||
MOTOR_RM_SetOutput(&c->param->fric_motor_param[i], c->output.lpfout_fric[i]);
|
||||
}
|
||||
c->output.out_trig=PID_Calc(&c->pid.trig,c->target_variable.target_angle,c->feedback.trig->gearbox_total_angle,0,c->dt);
|
||||
MOTOR_RM_SetOutput(&c->param->trig_motor_param, c->output.out_trig);
|
||||
if(!cmd->ready)
|
||||
{
|
||||
c->running_state=SHOOT_STATE_IDLE;
|
||||
}
|
||||
else if(cmd->last_firecmd==false&&cmd->firecmd==true)//可以加一个到达目标速度的判断
|
||||
{
|
||||
c->running_state=SHOOT_STATE_FIRE;
|
||||
c->target_variable.target_angle+=c->param->trig_step_angle;
|
||||
}
|
||||
break;
|
||||
case SHOOT_STATE_FIRE:
|
||||
for(int i=0;i<2;i++)
|
||||
// c->target_variable.target_angle+=c->param->trig_step_angle;
|
||||
for(int i=0;i<SHOOT_FRIC_NUM;i++)
|
||||
{
|
||||
shoot_motor_feedback[i] = MOTOR_RM_GetMotor(&shoot_motor_param[i]);
|
||||
shoot_ctrl_dt=DWT_GetDeltaT(&shoot_ctrl_cnt_last);
|
||||
shoot_out[i]=PID_Calc(&pid_shoot_3508_rpm[i],target_rpm/MAX_RPM_3508,rel_rpm[i],0,shoot_ctrl_dt);
|
||||
for(int i=0;i<2;i++){
|
||||
rpm_avg=(rel_rpm[0]+rel_rpm[1])/2.0f;
|
||||
}
|
||||
shoot_errout[i]=PID_Calc(&pid_shoot_3508_errrpm[i],rpm_avg,rel_rpm[i],0,shoot_ctrl_dt);
|
||||
/*若输出和大于1,按比例缩放,写成math里的函数*/
|
||||
ScaleSumTo1(&shoot_out[i], &shoot_errout[i]);
|
||||
err_out[i] = shoot_out[i];
|
||||
MOTOR_RM_SetOutput(&shoot_motor_param[i], err_out[i]);
|
||||
c->output.out_follow[i]=PID_Calc(&c->pid.fric_follow[i],c->target_variable.target_rpm/MAX_FRIC_RPM,c->feedback.fric_rpm[i],0,c->dt);
|
||||
c->output.out_err[i]=PID_Calc(&c->pid.fric_err[i],c->feedback.fric_avgrpm,c->feedback.fric_rpm[i],0,c->dt);
|
||||
ScaleSumTo1(&c->output.out_follow[i], &c->output.out_err[i]);
|
||||
c->output.out_fric[i]=c->output.out_follow[i]+c->output.out_err[i];
|
||||
c->output.lpfout_fric[i] = LowPassFilter2p_Apply(&c->filter.fric.out[i], c->output.out_fric[i]);
|
||||
MOTOR_RM_SetOutput(&c->param->fric_motor_param[i], c->output.lpfout_fric[i]);
|
||||
}
|
||||
|
||||
shoot_state=SHOOT_STATE_READY;
|
||||
|
||||
c->output.out_trig=PID_Calc(&c->pid.trig,c->target_variable.target_angle,c->feedback.trig->gearbox_total_angle,0,c->dt);
|
||||
MOTOR_RM_SetOutput(&c->param->trig_motor_param, c->output.out_trig);
|
||||
if(!cmd->firecmd)
|
||||
{
|
||||
c->running_state=SHOOT_STATE_READY;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
shoot_state=SHOOT_STATE_IDLE;
|
||||
c->running_state=SHOOT_STATE_IDLE;
|
||||
break;
|
||||
}
|
||||
last_firecmd=rc->shoot.firecmd;
|
||||
|
||||
|
||||
|
||||
}else{
|
||||
shoot_state=SHOOT_STATE_IDLE;
|
||||
|
||||
for(int i=0;i<2;i++)
|
||||
{
|
||||
PID_Reset(&pid_shoot_3508_rpm[i]);
|
||||
PID_Reset(&pid_shoot_3508_stop[i]);
|
||||
MOTOR_RM_Relax(&shoot_motor_param[0]);
|
||||
}
|
||||
}
|
||||
MOTOR_RM_Ctrl(&shoot_motor_param[0]);
|
||||
MOTOR_RM_Ctrl(&c->param->fric_motor_param[0]);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@ -188,3 +165,5 @@ void shoot_control(COMP_AT9S_CMD_t *rc)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,11 +1,187 @@
|
||||
/*
|
||||
* far蛇模组
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifndef SHOOT_CONTROL_H
|
||||
#define SHOOT_CONTROL_H
|
||||
#include "main.h"
|
||||
#include "component/at9s_pro_cmd.h"
|
||||
void shoot_motor_Init(float freq);
|
||||
void shoot_control(COMP_AT9S_CMD_t *rc);
|
||||
#include <stdbool.h>
|
||||
#include "component/pid.h"
|
||||
#include "device/motor_rm.h"
|
||||
|
||||
|
||||
/* Exported constants ------------------------------------------------------- */
|
||||
#define SHOOT_OK (0) /* 运行正常 */
|
||||
#define SHOOT_ERR (-1) /* 运行时发现了其他错误 */
|
||||
#define SHOOT_ERR_NULL (-2) /* 运行时发现NULL指针 */
|
||||
#define SHOOT_ERR_MODE (-3) /* 运行时配置了错误的CMD_ChassisMode_t */
|
||||
#define SHOOT_ERR_TYPE (-4) /* 运行时配置了错误的Chassis_Type_t */
|
||||
|
||||
#define SHOOT_FRIC_NUM (2) /* 摩擦轮数量 */
|
||||
#define MAX_FRIC_RPM 7000.0f
|
||||
#define MAX_TRIG_RPM 1000.0f
|
||||
/* Exported macro ----------------------------------------------------------- */
|
||||
/* Exported types ----------------------------------------------------------- */
|
||||
|
||||
typedef enum {
|
||||
SHOOT_STATE_IDLE = 0, // 熄火
|
||||
SHOOT_STATE_READY, // 准备射击
|
||||
SHOOT_STATE_FIRE // 射击
|
||||
} Shoot_State_t;
|
||||
|
||||
typedef enum {
|
||||
SHOOT_MODE_SAFE = 0, // 安全模式
|
||||
SHOOT_MODE_SINGLE, // 单发模式
|
||||
SHOOT_MODE_BURST, // 多发模式
|
||||
SHOOT_MODE_CONTINUE // 连发模式
|
||||
} Shoot_Mode_t;
|
||||
typedef struct {
|
||||
bool online;
|
||||
|
||||
bool ready; /* 准备射击 */
|
||||
bool firecmd; /* 射击指令 */
|
||||
|
||||
bool last_firecmd;
|
||||
|
||||
} Shoot_CMD_t;
|
||||
typedef struct {
|
||||
MOTOR_Feedback_t fric[SHOOT_FRIC_NUM]; /* 摩擦轮电机反馈 */
|
||||
MOTOR_RM_t *trig; /* 拨弹电机反馈 */
|
||||
|
||||
float fil_fric_rpm[SHOOT_FRIC_NUM]; /* 滤波后的摩擦轮转速 */
|
||||
float fil_trig_rpm; /* 滤波后的拨弹电机转速*/
|
||||
|
||||
float fric_rpm[SHOOT_FRIC_NUM]; /* 归一化摩擦轮转速 */
|
||||
float fric_avgrpm; /* 归一化摩擦轮平均转速*/
|
||||
float trig_rpm; /* 归一化拨弹电机转速*/
|
||||
|
||||
}Shoot_Feedback_t;
|
||||
|
||||
typedef struct {
|
||||
float out_follow[SHOOT_FRIC_NUM];
|
||||
float out_err[SHOOT_FRIC_NUM];
|
||||
float out_fric[SHOOT_FRIC_NUM];
|
||||
float lpfout_fric[SHOOT_FRIC_NUM];
|
||||
|
||||
|
||||
float out_trig;
|
||||
float lpfout_trig;
|
||||
}Shoot_Output_t;
|
||||
|
||||
|
||||
/* 底盘参数的结构体,包含所有初始化用的参数,通常是const,存好几组 */
|
||||
typedef struct {
|
||||
float trig_step_angle; /* 每次拨弹电机转动的角度 */
|
||||
|
||||
MOTOR_RM_Param_t fric_motor_param[SHOOT_FRIC_NUM];
|
||||
MOTOR_RM_Param_t trig_motor_param;
|
||||
|
||||
|
||||
KPID_Params_t fric_follow; /* 摩擦轮电机PID控制参数,用于跟随目标速度 */
|
||||
KPID_Params_t fric_err; /* 摩擦轮电机PID控制参数,用于消除转速误差 */
|
||||
KPID_Params_t trig; /* 拨弹电机PID控制参数 */
|
||||
|
||||
|
||||
/* 低通滤波器截止频率 */
|
||||
struct {
|
||||
struct{
|
||||
float in; /* 反馈值滤波器 */
|
||||
float out; /* 输出值滤波器 */
|
||||
}fric;
|
||||
struct{
|
||||
float in; /* 反馈值滤波器 */
|
||||
float out; /* 输出值滤波器 */
|
||||
}trig;
|
||||
} filter;
|
||||
} Shoot_Params_t;
|
||||
|
||||
/*
|
||||
* 运行的主结构体,所有这个文件里的函数都在操作这个结构体
|
||||
* 包含了初始化参数,中间变量,输出变量
|
||||
*/
|
||||
typedef struct {
|
||||
bool online;
|
||||
|
||||
uint32_t lask_wakeup;
|
||||
float dt;
|
||||
|
||||
Shoot_Params_t *param; /* */
|
||||
/* 模块通用 */
|
||||
Shoot_State_t running_state; /* 运行状态机 */
|
||||
Shoot_Mode_t mode;
|
||||
/* 反馈信息 */
|
||||
Shoot_Feedback_t feedback;
|
||||
/* 控制信息*/
|
||||
Shoot_Output_t output;
|
||||
/* 目标控制量 */
|
||||
struct {
|
||||
float target_rpm; /* 目标摩擦轮转速 */
|
||||
float target_angle; /* 目标拨弹位置 */
|
||||
}target_variable;
|
||||
|
||||
/* 反馈控制用的PID */
|
||||
struct {
|
||||
KPID_t fric_follow[SHOOT_FRIC_NUM]; /* */
|
||||
KPID_t fric_err[SHOOT_FRIC_NUM]; /* */
|
||||
KPID_t trig;
|
||||
} pid;
|
||||
|
||||
/* 滤波器 */
|
||||
struct {
|
||||
struct{
|
||||
LowPassFilter2p_t in[SHOOT_FRIC_NUM]; /* 反馈值滤波器 */
|
||||
LowPassFilter2p_t out[SHOOT_FRIC_NUM]; /* 输出值滤波器 */
|
||||
}fric;
|
||||
struct{
|
||||
LowPassFilter2p_t in; /* 反馈值滤波器 */
|
||||
LowPassFilter2p_t out; /* 输出值滤波器 */
|
||||
}trig;
|
||||
} filter;
|
||||
|
||||
float errtosee; /*调试用*/
|
||||
|
||||
} shoot_t;
|
||||
|
||||
/* Exported functions prototypes -------------------------------------------- */
|
||||
|
||||
/**
|
||||
* \brief 初始化发射
|
||||
*
|
||||
* \param c 包含发射数据的结构体
|
||||
* \param param 包含发射参数的结构体指针
|
||||
* \param target_freq 任务预期的运行频率
|
||||
*
|
||||
* \return 函数运行结果
|
||||
*/
|
||||
int8_t Shoot_Init(shoot_t *c, Shoot_Params_t *param, float target_freq);
|
||||
|
||||
/**
|
||||
* \brief 更新反馈
|
||||
*
|
||||
* \param c 包含发射数据的结构体
|
||||
*
|
||||
* \return 函数运行结果
|
||||
*/
|
||||
int8_t Chassis_UpdateFeedback(shoot_t *c);
|
||||
|
||||
/**
|
||||
* \brief 初始化发射
|
||||
*
|
||||
* \param c 包含发射数据的结构体
|
||||
* \param cmd 包含发射命令的结构体
|
||||
*
|
||||
* \return 函数运行结果
|
||||
*/
|
||||
int8_t Shoot_Control(shoot_t *c, const Shoot_CMD_t *cmd);
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
@ -6,11 +6,10 @@
|
||||
/* Includes ----------------------------------------------------------------- */
|
||||
#include "task/user_task.h"
|
||||
/* USER INCLUDE BEGIN */
|
||||
#include "device/motor_rm.h"
|
||||
#include "device/motor.h"
|
||||
|
||||
#include "component/at9s_pro_cmd.h"
|
||||
#include "module/shoot_control.h"
|
||||
#include "bsp/dwt.h"
|
||||
#include "module/config.h"
|
||||
/* USER INCLUDE END */
|
||||
|
||||
/* Private typedef ---------------------------------------------------------- */
|
||||
@ -18,6 +17,8 @@
|
||||
/* Private macro ------------------------------------------------------------ */
|
||||
/* Private variables -------------------------------------------------------- */
|
||||
COMP_AT9S_CMD_t shoot_ctrl_cmd_rc;
|
||||
shoot_t shoot_c;
|
||||
Shoot_CMD_t shoot_cmd;
|
||||
/* USER STRUCT BEGIN */
|
||||
|
||||
/* USER STRUCT END */
|
||||
@ -35,14 +36,18 @@ void Task_shoot_ctrl(void *argument) {
|
||||
|
||||
uint32_t tick = osKernelGetTickCount(); /* 控制任务运行频率的计时 */
|
||||
/* USER CODE INIT BEGIN */
|
||||
shoot_motor_Init(SHOOT_CTRL_FREQ);
|
||||
Shoot_Init(&shoot_c,&Config_GetRobotParam()->shoot_param,SHOOT_CTRL_FREQ);
|
||||
/* USER CODE INIT END */
|
||||
|
||||
while (1) {
|
||||
tick += delay_tick; /* 计算下一个唤醒时刻 */
|
||||
/* USER CODE BEGIN */
|
||||
osMessageQueueGet(task_runtime.msgq.shoot.rc_cmd, &shoot_ctrl_cmd_rc, NULL, 0);
|
||||
shoot_control(&shoot_ctrl_cmd_rc);
|
||||
shoot_cmd.ready=shoot_ctrl_cmd_rc.shoot.ready;
|
||||
shoot_cmd.firecmd=shoot_ctrl_cmd_rc.shoot.firecmd;
|
||||
shoot_cmd.online=shoot_ctrl_cmd_rc.online;
|
||||
Chassis_UpdateFeedback(&shoot_c);
|
||||
Shoot_Control(&shoot_c,&shoot_cmd);
|
||||
/* USER CODE END */
|
||||
osDelayUntil(tick); /* 运行结束,等待下一次唤醒 */
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user