Compare commits
5 Commits
Author | SHA1 | Date | |
---|---|---|---|
123d6afefb | |||
b9f733f116 | |||
ced203a924 | |||
b15da29a16 | |||
2162c27f22 |
108
MDK-ARM/.vscode/c_cpp_properties.json
vendored
108
MDK-ARM/.vscode/c_cpp_properties.json
vendored
@ -307,6 +307,114 @@
|
||||
"__vfp_status(x,y)=0"
|
||||
],
|
||||
"intelliSenseMode": "${default}"
|
||||
},
|
||||
{
|
||||
"name": "R2_CHASSIS",
|
||||
"includePath": [
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Core\\Inc",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Drivers\\STM32F4xx_HAL_Driver\\Inc",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Drivers\\STM32F4xx_HAL_Driver\\Inc\\Legacy",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Middlewares\\Third_Party\\FreeRTOS\\Source\\include",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Middlewares\\Third_Party\\FreeRTOS\\Source\\CMSIS_RTOS_V2",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Middlewares\\Third_Party\\FreeRTOS\\Source\\portable\\RVDS\\ARM_CM4F",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Drivers\\CMSIS\\Device\\ST\\STM32F4xx\\Include",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Drivers\\CMSIS\\Include",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\User",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\User\\bsp",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\User\\device",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\User\\task",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\User\\Algorithm",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\User\\Module",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\MDK-ARM",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\USB_DEVICE\\App",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\USB_DEVICE\\Target",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Middlewares\\ST\\STM32_USB_Device_Library\\Core\\Inc",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Middlewares\\ST\\STM32_USB_Device_Library\\Class\\CDC\\Inc",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Drivers\\CMSIS\\Lib\\ARM",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Core\\Src",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Drivers\\STM32F4xx_HAL_Driver\\Src",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Middlewares\\Third_Party\\FreeRTOS\\Source",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Middlewares\\Third_Party\\FreeRTOS\\Source\\portable\\MemMang",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Middlewares\\ST\\STM32_USB_Device_Library\\Core\\Src",
|
||||
"d:\\Desktop\\r2\\R2_CHASSIS\\Middlewares\\ST\\STM32_USB_Device_Library\\Class\\CDC\\Src"
|
||||
],
|
||||
"defines": [
|
||||
"USE_HAL_DRIVER",
|
||||
"STM32F407xx",
|
||||
"__CC_ARM",
|
||||
"__arm__",
|
||||
"__align(x)=",
|
||||
"__ALIGNOF__(x)=",
|
||||
"__alignof__(x)=",
|
||||
"__asm(x)=",
|
||||
"__forceinline=",
|
||||
"__restrict=",
|
||||
"__global_reg(n)=",
|
||||
"__inline=",
|
||||
"__int64=long long",
|
||||
"__INTADDR__(expr)=0",
|
||||
"__irq=",
|
||||
"__packed=",
|
||||
"__pure=",
|
||||
"__smc(n)=",
|
||||
"__svc(n)=",
|
||||
"__svc_indirect(n)=",
|
||||
"__svc_indirect_r7(n)=",
|
||||
"__value_in_regs=",
|
||||
"__weak=",
|
||||
"__writeonly=",
|
||||
"__declspec(x)=",
|
||||
"__attribute__(x)=",
|
||||
"__nonnull__(x)=",
|
||||
"__register=",
|
||||
"__breakpoint(x)=",
|
||||
"__cdp(x,y,z)=",
|
||||
"__clrex()=",
|
||||
"__clz(x)=0U",
|
||||
"__current_pc()=0U",
|
||||
"__current_sp()=0U",
|
||||
"__disable_fiq()=",
|
||||
"__disable_irq()=",
|
||||
"__dmb(x)=",
|
||||
"__dsb(x)=",
|
||||
"__enable_fiq()=",
|
||||
"__enable_irq()=",
|
||||
"__fabs(x)=0.0",
|
||||
"__fabsf(x)=0.0f",
|
||||
"__force_loads()=",
|
||||
"__force_stores()=",
|
||||
"__isb(x)=",
|
||||
"__ldrex(x)=0U",
|
||||
"__ldrexd(x)=0U",
|
||||
"__ldrt(x)=0U",
|
||||
"__memory_changed()=",
|
||||
"__nop()=",
|
||||
"__pld(...)=",
|
||||
"__pli(...)=",
|
||||
"__qadd(x,y)=0",
|
||||
"__qdbl(x)=0",
|
||||
"__qsub(x,y)=0",
|
||||
"__rbit(x)=0U",
|
||||
"__rev(x)=0U",
|
||||
"__return_address()=0U",
|
||||
"__ror(x,y)=0U",
|
||||
"__schedule_barrier()=",
|
||||
"__semihost(x,y)=0",
|
||||
"__sev()=",
|
||||
"__sqrt(x)=0.0",
|
||||
"__sqrtf(x)=0.0f",
|
||||
"__ssat(x,y)=0",
|
||||
"__strex(x,y)=0U",
|
||||
"__strexd(x,y)=0",
|
||||
"__strt(x,y)=",
|
||||
"__swp(x,y)=0U",
|
||||
"__usat(x,y)=0U",
|
||||
"__wfe()=",
|
||||
"__wfi()=",
|
||||
"__yield()=",
|
||||
"__vfp_status(x,y)=0"
|
||||
],
|
||||
"intelliSenseMode": "${default}"
|
||||
}
|
||||
],
|
||||
"version": 4
|
||||
|
2
MDK-ARM/.vscode/keil-assistant.log
vendored
2
MDK-ARM/.vscode/keil-assistant.log
vendored
@ -449,3 +449,5 @@
|
||||
|
||||
[info] Log at : 2025/1/13|22:53:23|GMT+0800
|
||||
|
||||
[info] Log at : 2025/3/28|21:46:16|GMT+0800
|
||||
|
||||
|
@ -1,736 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
|
||||
<ProjectOpt xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_optx.xsd">
|
||||
|
||||
<SchemaVersion>1.0</SchemaVersion>
|
||||
|
||||
<Header>### uVision Project, (C) Keil Software</Header>
|
||||
|
||||
<Extensions>
|
||||
<cExt>*.c</cExt>
|
||||
<aExt>*.s*; *.src; *.a*</aExt>
|
||||
<oExt>*.obj; *.o</oExt>
|
||||
<lExt>*.lib</lExt>
|
||||
<tExt>*.txt; *.h; *.inc</tExt>
|
||||
<pExt>*.plm</pExt>
|
||||
<CppX>*.cpp</CppX>
|
||||
<nMigrate>0</nMigrate>
|
||||
</Extensions>
|
||||
|
||||
<DaveTm>
|
||||
<dwLowDateTime>0</dwLowDateTime>
|
||||
<dwHighDateTime>0</dwHighDateTime>
|
||||
</DaveTm>
|
||||
|
||||
<Target>
|
||||
<TargetName>IMU</TargetName>
|
||||
<ToolsetNumber>0x4</ToolsetNumber>
|
||||
<ToolsetName>ARM-ADS</ToolsetName>
|
||||
<TargetOption>
|
||||
<CLKADS>12000000</CLKADS>
|
||||
<OPTTT>
|
||||
<gFlags>1</gFlags>
|
||||
<BeepAtEnd>1</BeepAtEnd>
|
||||
<RunSim>0</RunSim>
|
||||
<RunTarget>1</RunTarget>
|
||||
<RunAbUc>0</RunAbUc>
|
||||
</OPTTT>
|
||||
<OPTHX>
|
||||
<HexSelection>1</HexSelection>
|
||||
<FlashByte>65535</FlashByte>
|
||||
<HexRangeLowAddress>0</HexRangeLowAddress>
|
||||
<HexRangeHighAddress>0</HexRangeHighAddress>
|
||||
<HexOffset>0</HexOffset>
|
||||
</OPTHX>
|
||||
<OPTLEX>
|
||||
<PageWidth>79</PageWidth>
|
||||
<PageLength>66</PageLength>
|
||||
<TabStop>8</TabStop>
|
||||
<ListingPath></ListingPath>
|
||||
</OPTLEX>
|
||||
<ListingPage>
|
||||
<CreateCListing>1</CreateCListing>
|
||||
<CreateAListing>1</CreateAListing>
|
||||
<CreateLListing>1</CreateLListing>
|
||||
<CreateIListing>0</CreateIListing>
|
||||
<AsmCond>1</AsmCond>
|
||||
<AsmSymb>1</AsmSymb>
|
||||
<AsmXref>0</AsmXref>
|
||||
<CCond>1</CCond>
|
||||
<CCode>0</CCode>
|
||||
<CListInc>0</CListInc>
|
||||
<CSymb>0</CSymb>
|
||||
<LinkerCodeListing>0</LinkerCodeListing>
|
||||
</ListingPage>
|
||||
<OPTXL>
|
||||
<LMap>1</LMap>
|
||||
<LComments>1</LComments>
|
||||
<LGenerateSymbols>1</LGenerateSymbols>
|
||||
<LLibSym>1</LLibSym>
|
||||
<LLines>1</LLines>
|
||||
<LLocSym>1</LLocSym>
|
||||
<LPubSym>1</LPubSym>
|
||||
<LXref>0</LXref>
|
||||
<LExpSel>0</LExpSel>
|
||||
</OPTXL>
|
||||
<OPTFL>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<IsCurrentTarget>1</IsCurrentTarget>
|
||||
</OPTFL>
|
||||
<CpuCode>18</CpuCode>
|
||||
<DebugOpt>
|
||||
<uSim>0</uSim>
|
||||
<uTrg>1</uTrg>
|
||||
<sLdApp>1</sLdApp>
|
||||
<sGomain>1</sGomain>
|
||||
<sRbreak>1</sRbreak>
|
||||
<sRwatch>1</sRwatch>
|
||||
<sRmem>1</sRmem>
|
||||
<sRfunc>1</sRfunc>
|
||||
<sRbox>1</sRbox>
|
||||
<tLdApp>1</tLdApp>
|
||||
<tGomain>1</tGomain>
|
||||
<tRbreak>1</tRbreak>
|
||||
<tRwatch>1</tRwatch>
|
||||
<tRmem>1</tRmem>
|
||||
<tRfunc>1</tRfunc>
|
||||
<tRbox>1</tRbox>
|
||||
<tRtrace>1</tRtrace>
|
||||
<sRSysVw>1</sRSysVw>
|
||||
<tRSysVw>1</tRSysVw>
|
||||
<sRunDeb>0</sRunDeb>
|
||||
<sLrtime>0</sLrtime>
|
||||
<bEvRecOn>1</bEvRecOn>
|
||||
<bSchkAxf>0</bSchkAxf>
|
||||
<bTchkAxf>0</bTchkAxf>
|
||||
<nTsel>6</nTsel>
|
||||
<sDll></sDll>
|
||||
<sDllPa></sDllPa>
|
||||
<sDlgDll></sDlgDll>
|
||||
<sDlgPa></sDlgPa>
|
||||
<sIfile></sIfile>
|
||||
<tDll></tDll>
|
||||
<tDllPa></tDllPa>
|
||||
<tDlgDll></tDlgDll>
|
||||
<tDlgPa></tDlgPa>
|
||||
<tIfile></tIfile>
|
||||
<pMon>STLink\ST-LINKIII-KEIL_SWO.dll</pMon>
|
||||
</DebugOpt>
|
||||
<TargetDriverDllRegistry>
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
<Key>UL2CM3</Key>
|
||||
<Name>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_1024 -FS08000000 -FL0100000 -FP0($$Device:STM32F407IGHx$CMSIS\Flash\STM32F4xx_1024.FLM))</Name>
|
||||
</SetRegEntry>
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
<Key>ST-LINKIII-KEIL_SWO</Key>
|
||||
<Name>-U-O142 -O2254 -S0 -C0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F407IGHx$CMSIS\Flash\STM32F4xx_1024.FLM)</Name>
|
||||
</SetRegEntry>
|
||||
</TargetDriverDllRegistry>
|
||||
<Breakpoint/>
|
||||
<Tracepoint>
|
||||
<THDelay>0</THDelay>
|
||||
</Tracepoint>
|
||||
<DebugFlag>
|
||||
<trace>0</trace>
|
||||
<periodic>1</periodic>
|
||||
<aLwin>1</aLwin>
|
||||
<aCover>0</aCover>
|
||||
<aSer1>0</aSer1>
|
||||
<aSer2>0</aSer2>
|
||||
<aPa>0</aPa>
|
||||
<viewmode>1</viewmode>
|
||||
<vrSel>0</vrSel>
|
||||
<aSym>0</aSym>
|
||||
<aTbox>0</aTbox>
|
||||
<AscS1>0</AscS1>
|
||||
<AscS2>0</AscS2>
|
||||
<AscS3>0</AscS3>
|
||||
<aSer3>0</aSer3>
|
||||
<eProf>0</eProf>
|
||||
<aLa>0</aLa>
|
||||
<aPa1>0</aPa1>
|
||||
<AscS4>0</AscS4>
|
||||
<aSer4>0</aSer4>
|
||||
<StkLoc>1</StkLoc>
|
||||
<TrcWin>0</TrcWin>
|
||||
<newCpu>0</newCpu>
|
||||
<uProt>0</uProt>
|
||||
</DebugFlag>
|
||||
<LintExecutable></LintExecutable>
|
||||
<LintConfigFile></LintConfigFile>
|
||||
<bLintAuto>0</bLintAuto>
|
||||
<bAutoGenD>0</bAutoGenD>
|
||||
<LntExFlags>0</LntExFlags>
|
||||
<pMisraName></pMisraName>
|
||||
<pszMrule></pszMrule>
|
||||
<pSingCmds></pSingCmds>
|
||||
<pMultCmds></pMultCmds>
|
||||
<pMisraNamep></pMisraNamep>
|
||||
<pszMrulep></pszMrulep>
|
||||
<pSingCmdsp></pSingCmdsp>
|
||||
<pMultCmdsp></pMultCmdsp>
|
||||
<DebugDescription>
|
||||
<Enable>1</Enable>
|
||||
<EnableFlashSeq>1</EnableFlashSeq>
|
||||
<EnableLog>0</EnableLog>
|
||||
<Protocol>2</Protocol>
|
||||
<DbgClock>10000000</DbgClock>
|
||||
</DebugDescription>
|
||||
</TargetOption>
|
||||
</Target>
|
||||
|
||||
<Group>
|
||||
<GroupName>Application/MDK-ARM</GroupName>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
<File>
|
||||
<GroupNumber>1</GroupNumber>
|
||||
<FileNumber>1</FileNumber>
|
||||
<FileType>2</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>startup_stm32f407xx.s</PathWithFileName>
|
||||
<FilenameWithoutPath>startup_stm32f407xx.s</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
</Group>
|
||||
|
||||
<Group>
|
||||
<GroupName>Application/User/Core</GroupName>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>2</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/main.c</PathWithFileName>
|
||||
<FilenameWithoutPath>main.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>3</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/gpio.c</PathWithFileName>
|
||||
<FilenameWithoutPath>gpio.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>4</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/freertos.c</PathWithFileName>
|
||||
<FilenameWithoutPath>freertos.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>5</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/can.c</PathWithFileName>
|
||||
<FilenameWithoutPath>can.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>6</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/crc.c</PathWithFileName>
|
||||
<FilenameWithoutPath>crc.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>7</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/dma.c</PathWithFileName>
|
||||
<FilenameWithoutPath>dma.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>8</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/spi.c</PathWithFileName>
|
||||
<FilenameWithoutPath>spi.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>9</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/tim.c</PathWithFileName>
|
||||
<FilenameWithoutPath>tim.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>10</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/usart.c</PathWithFileName>
|
||||
<FilenameWithoutPath>usart.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>11</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/stm32f4xx_it.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_it.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>2</GroupNumber>
|
||||
<FileNumber>12</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/stm32f4xx_hal_msp.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_msp.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
</Group>
|
||||
|
||||
<Group>
|
||||
<GroupName>Drivers/STM32F4xx_HAL_Driver</GroupName>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>13</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_can.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_can.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>14</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_rcc.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>15</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc_ex.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_rcc_ex.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>16</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_flash.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>17</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ex.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_flash_ex.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>18</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ramfunc.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_flash_ramfunc.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>19</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_gpio.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>20</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma_ex.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_dma_ex.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>21</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_dma.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>22</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_pwr.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>23</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr_ex.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_pwr_ex.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>24</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_cortex.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>25</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>26</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_exti.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_exti.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>27</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_crc.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_crc.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>28</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_spi.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_spi.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>29</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_tim.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>30</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_tim_ex.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>31</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stm32f4xx_hal_uart.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
</Group>
|
||||
|
||||
<Group>
|
||||
<GroupName>Drivers/CMSIS</GroupName>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
<File>
|
||||
<GroupNumber>4</GroupNumber>
|
||||
<FileNumber>32</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Core/Src/system_stm32f4xx.c</PathWithFileName>
|
||||
<FilenameWithoutPath>system_stm32f4xx.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
</Group>
|
||||
|
||||
<Group>
|
||||
<GroupName>Middlewares/FreeRTOS</GroupName>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
<File>
|
||||
<GroupNumber>5</GroupNumber>
|
||||
<FileNumber>33</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Middlewares/Third_Party/FreeRTOS/Source/croutine.c</PathWithFileName>
|
||||
<FilenameWithoutPath>croutine.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>5</GroupNumber>
|
||||
<FileNumber>34</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Middlewares/Third_Party/FreeRTOS/Source/event_groups.c</PathWithFileName>
|
||||
<FilenameWithoutPath>event_groups.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>5</GroupNumber>
|
||||
<FileNumber>35</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Middlewares/Third_Party/FreeRTOS/Source/list.c</PathWithFileName>
|
||||
<FilenameWithoutPath>list.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>5</GroupNumber>
|
||||
<FileNumber>36</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Middlewares/Third_Party/FreeRTOS/Source/queue.c</PathWithFileName>
|
||||
<FilenameWithoutPath>queue.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>5</GroupNumber>
|
||||
<FileNumber>37</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Middlewares/Third_Party/FreeRTOS/Source/stream_buffer.c</PathWithFileName>
|
||||
<FilenameWithoutPath>stream_buffer.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>5</GroupNumber>
|
||||
<FileNumber>38</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Middlewares/Third_Party/FreeRTOS/Source/tasks.c</PathWithFileName>
|
||||
<FilenameWithoutPath>tasks.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>5</GroupNumber>
|
||||
<FileNumber>39</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Middlewares/Third_Party/FreeRTOS/Source/timers.c</PathWithFileName>
|
||||
<FilenameWithoutPath>timers.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>5</GroupNumber>
|
||||
<FileNumber>40</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/cmsis_os2.c</PathWithFileName>
|
||||
<FilenameWithoutPath>cmsis_os2.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>5</GroupNumber>
|
||||
<FileNumber>41</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Middlewares/Third_Party/FreeRTOS/Source/portable/MemMang/heap_4.c</PathWithFileName>
|
||||
<FilenameWithoutPath>heap_4.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
<File>
|
||||
<GroupNumber>5</GroupNumber>
|
||||
<FileNumber>42</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>../Middlewares/Third_Party/FreeRTOS/Source/portable/RVDS/ARM_CM4F/port.c</PathWithFileName>
|
||||
<FilenameWithoutPath>port.c</FilenameWithoutPath>
|
||||
<RteFlg>0</RteFlg>
|
||||
<bShared>0</bShared>
|
||||
</File>
|
||||
</Group>
|
||||
|
||||
<Group>
|
||||
<GroupName>::CMSIS</GroupName>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>1</RteFlg>
|
||||
</Group>
|
||||
|
||||
</ProjectOpt>
|
@ -103,7 +103,7 @@
|
||||
<bEvRecOn>1</bEvRecOn>
|
||||
<bSchkAxf>0</bSchkAxf>
|
||||
<bTchkAxf>0</bTchkAxf>
|
||||
<nTsel>6</nTsel>
|
||||
<nTsel>3</nTsel>
|
||||
<sDll></sDll>
|
||||
<sDllPa></sDllPa>
|
||||
<sDlgDll></sDlgDll>
|
||||
@ -114,9 +114,14 @@
|
||||
<tDlgDll></tDlgDll>
|
||||
<tDlgPa></tDlgPa>
|
||||
<tIfile></tIfile>
|
||||
<pMon>STLink\ST-LINKIII-KEIL_SWO.dll</pMon>
|
||||
<pMon>BIN\CMSIS_AGDI.dll</pMon>
|
||||
</DebugOpt>
|
||||
<TargetDriverDllRegistry>
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
<Key>CMSIS_AGDI</Key>
|
||||
<Name>-X"Any" -UAny -O718 -S9 -C0 -P00000000 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO65554 -TC10000000 -TT10000000 -TP20 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F407IGHx$CMSIS\Flash\STM32F4xx_1024.FLM)</Name>
|
||||
</SetRegEntry>
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
<Key>ARMRTXEVENTFLAGS</Key>
|
||||
@ -135,12 +140,12 @@
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
<Key>ST-LINKIII-KEIL_SWO</Key>
|
||||
<Name>-U00260035480000034E575152 -O206 -SF10000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(2BA01477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8000 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F407IGHx$CMSIS\Flash\STM32F4xx_1024.FLM)</Name>
|
||||
<Name>-U00260035480000034E575152 -O206 -SF5000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P1 -N00("ARM CoreSight SW-DP (ARM Core") -D00(2BA01477) -L00(0) -TO131090 -TC10000000 -TT10000000 -TP21 -TDS8000 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F407IGHx$CMSIS\Flash\STM32F4xx_1024.FLM)</Name>
|
||||
</SetRegEntry>
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
<Key>DLGUARM</Key>
|
||||
<Name>(105=-1,-1,-1,-1,0)</Name>
|
||||
<Name></Name>
|
||||
</SetRegEntry>
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
@ -153,8 +158,68 @@
|
||||
<Ww>
|
||||
<count>0</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>cmd_rc,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>1</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>dr16,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>2</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>chassis,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>3</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>nuc_raw,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>4</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>nucbuf</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>5</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>dr16,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>6</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>cmd_fromnuc,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>7</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>ctrl,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>8</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>can,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>9</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>out,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>10</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>can_out,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>11</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>cmd_fromnuc,0x0A</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>12</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>a</ItemText>
|
||||
</Ww>
|
||||
</WatchWindow1>
|
||||
<Tracepoint>
|
||||
<THDelay>0</THDelay>
|
||||
@ -203,7 +268,7 @@
|
||||
<EnableFlashSeq>0</EnableFlashSeq>
|
||||
<EnableLog>0</EnableLog>
|
||||
<Protocol>2</Protocol>
|
||||
<DbgClock>10000000</DbgClock>
|
||||
<DbgClock>5000000</DbgClock>
|
||||
</DebugDescription>
|
||||
</TargetOption>
|
||||
</Target>
|
||||
@ -242,7 +307,7 @@
|
||||
|
||||
<Group>
|
||||
<GroupName>Application/User/Core</GroupName>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
@ -654,7 +719,7 @@
|
||||
|
||||
<Group>
|
||||
<GroupName>Drivers/CMSIS</GroupName>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
@ -674,7 +739,7 @@
|
||||
|
||||
<Group>
|
||||
<GroupName>Middlewares/FreeRTOS</GroupName>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
@ -802,7 +867,7 @@
|
||||
|
||||
<Group>
|
||||
<GroupName>User/Module</GroupName>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
@ -1126,7 +1191,7 @@
|
||||
|
||||
<Group>
|
||||
<GroupName>User/Algorithm</GroupName>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
@ -1206,7 +1271,7 @@
|
||||
|
||||
<Group>
|
||||
<GroupName>User/Device</GroupName>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
@ -1298,7 +1363,7 @@
|
||||
|
||||
<Group>
|
||||
<GroupName>Application/User/USB_DEVICE/App</GroupName>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
@ -1342,7 +1407,7 @@
|
||||
|
||||
<Group>
|
||||
<GroupName>Application/User/USB_DEVICE/Target</GroupName>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
@ -1362,7 +1427,7 @@
|
||||
|
||||
<Group>
|
||||
<GroupName>Middlewares/USB_Device_Library</GroupName>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<cbSel>0</cbSel>
|
||||
<RteFlg>0</RteFlg>
|
||||
|
Binary file not shown.
@ -334,8 +334,8 @@ ProjectManager.MainLocation=Core/Src
|
||||
ProjectManager.NoMain=false
|
||||
ProjectManager.PreviousToolchain=
|
||||
ProjectManager.ProjectBuild=false
|
||||
ProjectManager.ProjectFileName=AUTO_CHASSIS.ioc
|
||||
ProjectManager.ProjectName=AUTO_CHASSIS
|
||||
ProjectManager.ProjectFileName=R2_CHASSIS.ioc
|
||||
ProjectManager.ProjectName=R2_CHASSIS
|
||||
ProjectManager.ProjectStructure=
|
||||
ProjectManager.RegisterCallBack=
|
||||
ProjectManager.StackSize=0x400
|
||||
|
@ -309,3 +309,12 @@ uint8_t average(uint8_t arr[], uint8_t n) {
|
||||
}
|
||||
return (float) sum / n;
|
||||
}
|
||||
|
||||
|
||||
int abs_value(int num) {
|
||||
if (num >= 0) {
|
||||
return num; // 如果数是非负的,直接返回该数
|
||||
} else {
|
||||
return -num; // 如果数是负的,返回它的相反数
|
||||
}
|
||||
}
|
@ -157,4 +157,7 @@ PolarCoordinate_t addPolarVectors(PolarCoordinate_t v1, PolarCoordinate_t v2);
|
||||
/// @param n 元素数
|
||||
/// @return 平均值
|
||||
uint8_t average(uint8_t arr[], uint8_t n);
|
||||
|
||||
int abs_value(int num);
|
||||
|
||||
#endif
|
||||
|
@ -51,10 +51,10 @@ int8_t Chassis_UpdateFeedback(Chassis_t *c, const CAN_t *can) {
|
||||
c->motorfeedback.rotor_gimbal_pitchangle = can->motor.chassis6020.as_array[1].rotor_angle;
|
||||
c->motorfeedback.rotor_gimbal_pitchrpm = can->motor.chassis6020.as_array[1].rotor_speed;
|
||||
|
||||
c->sick_dis[0] = can->sickfed.raw_dis[0];
|
||||
c->sick_dis[1] = can->sickfed.raw_dis[1];
|
||||
c->sick_dis[2] = can->sickfed.raw_dis[2];
|
||||
c->sick_dis[3] = can->sickfed.raw_dis[3];
|
||||
// c->sick_dis[0] = can->sickfed.raw_dis[0];
|
||||
// c->sick_dis[1] = can->sickfed.raw_dis[1];
|
||||
// c->sick_dis[2] = can->sickfed.raw_dis[2];
|
||||
// c->sick_dis[3] = can->sickfed.raw_dis[3];
|
||||
|
||||
return CHASSIS_OK;
|
||||
}
|
||||
@ -71,23 +71,10 @@ int8_t Chassis_init(Chassis_t *c,const Chassis_Param_t *param,float target_freq)
|
||||
PID_init(&(c->pid.chassis_3508VecPID[i]),PID_POSITION_D,&(c->param->M3508_param)); //带D项滤波
|
||||
}
|
||||
|
||||
PID_init((&c->pid.chassis_pitAngle6020),PID_POSITION,&(c->param->C6020pitAngle_param));//尝试位置控制角度
|
||||
PID_init(&(c->pid.chassis_PICKWzPID_HIGN),PID_POSITION,&(c->param->chassis_PICKWzPID_HIGN_param));
|
||||
|
||||
PID_init((&c->pid.chassis_pitOmega6020),PID_POSITION,&(c->param->C6020pitOmega_param));
|
||||
PID_init(&(c->pid.chassis_PICKWzPID_LOW),PID_POSITION,&(c->param->chassis_PICKWzPID_LOW_param));
|
||||
|
||||
PID_init((&c->pid.chassis_gimbal_yawAnglePID),PID_POSITION,&(c->param->Gimbal_yawAngle_param));//尝试位置控制角度
|
||||
|
||||
PID_init((&c->pid.chassis_gimbal_yawOmegaPID),PID_POSITION,&(c->param->Gimbal_yawOmega_param));
|
||||
|
||||
PID_init((&c->pid.chassis_gimbal_pitchAnglePID),PID_POSITION,&(c->param->Gimbal_pitchAngle_param));//尝试位置控制角度
|
||||
|
||||
PID_init((&c->pid.chassis_gimbal_pitchOmegaPID),PID_POSITION,&(c->param->Gimbal_pitchOmega_param));
|
||||
|
||||
PID_init(&(c->pid.chassis_NaviVxPID),PID_POSITION,&(c->param->NaviVx_param));
|
||||
|
||||
PID_init(&(c->pid.chassis_NaviVyPID),PID_POSITION,&(c->param->NaviVy_param));
|
||||
|
||||
PID_init(&(c->pid.chassis_NaviWzPID),PID_POSITION,&(c->param->NaviVw_param));
|
||||
|
||||
PID_init(&(c->pid.sick_CaliforYPID),PID_POSITION,&(c->param->Sick_CaliYparam));
|
||||
|
||||
@ -125,7 +112,7 @@ void Chassis_speed_calculate(Chassis_t *c,fp32 Vx,fp32 Vy,fp32 Vw) //底盘逆
|
||||
// if(xArrive && yArrive) return true;
|
||||
// else return false;
|
||||
//}
|
||||
|
||||
fp32 a,b,c,d;
|
||||
|
||||
int8_t Chassis_Control(Chassis_t *c,CMD_t *ctrl,CAN_Output_t *out)
|
||||
{
|
||||
@ -156,19 +143,25 @@ int8_t Chassis_Control(Chassis_t *c,CMD_t *ctrl,CAN_Output_t *out)
|
||||
|
||||
break;
|
||||
|
||||
case MID_NAVI:
|
||||
case MID_NAVI: //雷达
|
||||
// //这套是全向轮的方向,一定要注意这里的xy方向
|
||||
c->move_vec.Vw =ctrl->C_navi.wz ;
|
||||
c->move_vec.Vx =ctrl->C_navi.vy ;
|
||||
c->move_vec.Vy =ctrl->C_navi.vx ;
|
||||
c->move_vec.Vw =ctrl->C_navi.wz*1000 ;
|
||||
c->move_vec.Vy =-ctrl->C_navi.vy*1000 ;
|
||||
c->move_vec.Vx =-ctrl->C_navi.vx*1000 ;
|
||||
// c->move_vec.Vw =LowPassFilter2p_Apply(&(c->filled[1]),c->move_vec.Vw);
|
||||
// c->move_vec.Vy =LowPassFilter2p_Apply(&(c->filled[2]),c->move_vec.Vy);
|
||||
// c->move_vec.Vx =LowPassFilter2p_Apply(&(c->filled[3]),c->move_vec.Vx);
|
||||
//
|
||||
// c->move_vec.Vw =PID_calc(&(c->pid.chassis_NaviWzPID),c->pos088.bmi088.gyro.z,c->move_vec.Vw);
|
||||
// c->move_vec.Vx =PID_calc(&(c->pid.chassis_NaviVxPID),c->pos088.bmi088.accl.y,c->move_vec.Vx);
|
||||
// c->move_vec.Vy =PID_calc(&(c->pid.chassis_NaviVyPID),c->pos088.bmi088.accl.x,c->move_vec.Vy);
|
||||
// //电机速度限幅
|
||||
|
||||
c->move_vec.Vw =LowPassFilter2p_Apply(&(c->filled[1]),c->move_vec.Vw);
|
||||
c->move_vec.Vy =LowPassFilter2p_Apply(&(c->filled[2]),c->move_vec.Vy);
|
||||
c->move_vec.Vx =LowPassFilter2p_Apply(&(c->filled[3]),c->move_vec.Vx);
|
||||
abs_limit_fp(&c->move_vec.Vx,2000.0f);
|
||||
|
||||
c->move_vec.Vw =PID_calc(&(c->pid.chassis_NaviWzPID),c->pos088.bmi088.gyro.z,c->move_vec.Vw);
|
||||
c->move_vec.Vx =PID_calc(&(c->pid.chassis_NaviVxPID),c->pos088.bmi088.accl.y,c->move_vec.Vx);
|
||||
c->move_vec.Vy =PID_calc(&(c->pid.chassis_NaviVyPID),c->pos088.bmi088.accl.x,c->move_vec.Vy);
|
||||
abs_limit_fp(&c->move_vec.Vy,2000.0f);
|
||||
|
||||
abs_limit_fp(&c->move_vec.Vw,2000.0f);
|
||||
|
||||
if(ctrl->status[5] ==1)
|
||||
{
|
||||
@ -179,21 +172,41 @@ int8_t Chassis_Control(Chassis_t *c,CMD_t *ctrl,CAN_Output_t *out)
|
||||
|
||||
break;
|
||||
|
||||
}
|
||||
/*怎么用*/
|
||||
switch (c->mode)
|
||||
|
||||
case PICK_t:
|
||||
|
||||
c->move_vec.Vx =ctrl->Vx*6000 ;
|
||||
c->move_vec.Vy =ctrl->Vy *6000;
|
||||
c->move_vec .Vw = -ctrl->C_pick .posx;
|
||||
|
||||
|
||||
|
||||
if(abs_value(ctrl ->C_pick .posx )>20)
|
||||
{
|
||||
c->move_vec.Vw =PID_calc(&(c->pid.chassis_PICKWzPID_HIGN),(c->move_vec .Vw) ,0);
|
||||
|
||||
}
|
||||
else if(abs_value(ctrl ->C_pick .posx )<0.1)
|
||||
{
|
||||
case RELAXED:
|
||||
c->move_vec.Vx =0;
|
||||
c->move_vec.Vy =0;
|
||||
c->move_vec.Vw =0;
|
||||
break;
|
||||
case NORMAL:
|
||||
}
|
||||
else
|
||||
c->move_vec.Vw =PID_calc(&(c->pid.chassis_PICKWzPID_LOW),(c->move_vec .Vw) ,0);
|
||||
|
||||
c->move_vec.Vw =LowPassFilter2p_Apply(&(c->filled[1]),c->move_vec.Vw);
|
||||
|
||||
|
||||
c->vofa_send[0]=c->move_vec.Vw;
|
||||
c->vofa_send[1]=-ctrl->C_pick .posx;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
break ;
|
||||
|
||||
case GYRO_STAY://陀螺仪yaw修正
|
||||
c->move_vec.Vw = c->move_vec.Vw +c->pos088.bmi088.gyro.z *2000;
|
||||
break;
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
@ -82,16 +82,10 @@ typedef struct
|
||||
|
||||
/*该部分决定PID的参数整定在config中修改*/
|
||||
pid_param_t M3508_param;
|
||||
pid_param_t AngleCor_param;
|
||||
pid_param_t OmegaCor_param;
|
||||
pid_param_t DisCamera_param;
|
||||
pid_param_t ImuCor_param;
|
||||
pid_param_t C6020pitAngle_param;
|
||||
pid_param_t C6020pitOmega_param;
|
||||
pid_param_t Gimbal_yawAngle_param;
|
||||
pid_param_t Gimbal_yawOmega_param;
|
||||
pid_param_t Gimbal_pitchAngle_param;
|
||||
pid_param_t Gimbal_pitchOmega_param;
|
||||
|
||||
pid_param_t chassis_PICKWzPID_HIGN_param;
|
||||
pid_param_t chassis_PICKWzPID_LOW_param;
|
||||
|
||||
pid_param_t NaviVx_param;
|
||||
pid_param_t NaviVy_param;
|
||||
pid_param_t NaviVw_param;
|
||||
@ -166,21 +160,21 @@ typedef struct{
|
||||
struct{
|
||||
|
||||
pid_type_def chassis_3508VecPID[4];
|
||||
pid_type_def chassis_pitAngle6020;
|
||||
pid_type_def chassis_pitOmega6020;
|
||||
pid_type_def chassis_gimbal_yawAnglePID;
|
||||
pid_type_def chassis_gimbal_yawOmegaPID;
|
||||
pid_type_def chassis_gimbal_pitchAnglePID;
|
||||
pid_type_def chassis_gimbal_pitchOmegaPID;
|
||||
/*视觉*/
|
||||
/*存在较高误差*/
|
||||
pid_type_def chassis_PICKWzPID_HIGN;
|
||||
/*存在较低误差*/
|
||||
pid_type_def chassis_PICKWzPID_LOW;
|
||||
|
||||
|
||||
|
||||
pid_type_def chassis_NaviWzPID;
|
||||
pid_type_def chassis_NaviVxPID;
|
||||
pid_type_def chassis_NaviVyPID;
|
||||
pid_type_def chassis_NaviWzPID;
|
||||
|
||||
pid_type_def sick_CaliforYPID;
|
||||
pid_type_def sick_CaliforXPID;
|
||||
|
||||
pid_type_def Action_VxPID;
|
||||
pid_type_def Action_VyPID;
|
||||
pid_type_def Action_WzPID;
|
||||
}pid;
|
||||
|
||||
fp32 vofa_send[8];
|
||||
|
@ -8,21 +8,6 @@
|
||||
#define DEG_TO_RAD(x) ((x) * (3.141592653 / 180.0)) //角度转弧度
|
||||
|
||||
|
||||
/*导航地图*/
|
||||
#define point_num 4
|
||||
|
||||
point_t map_point[point_num] ={
|
||||
|
||||
{0.0, 0, DEG_TO_RAD(90.0), 5.0},
|
||||
|
||||
{0, 0, DEG_TO_RAD(180.0), 5.0},
|
||||
//
|
||||
{0.0, 0.0, DEG_TO_RAD(270.0), 5.0},
|
||||
|
||||
{0.0, 0.0, DEG_TO_RAD(360.0), 5.0},
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
@ -36,83 +21,7 @@ static const ConfigParam_t param_chassis ={
|
||||
#endif
|
||||
|
||||
.chassis = {/**/
|
||||
.C6020pitAngle_param = {
|
||||
.p = 15.0f,
|
||||
.i = 0.3f,
|
||||
.d =0.0f,
|
||||
.i_limit = 200.0f,
|
||||
.out_limit = 3000.0f,
|
||||
},
|
||||
.C6020pitOmega_param = {
|
||||
.p =30.0f,
|
||||
.i =0.3f,
|
||||
.d =0.0f,
|
||||
.i_limit = 200.0f,
|
||||
.out_limit = 3000.0f
|
||||
},
|
||||
|
||||
.Gimbal_yawAngle_param = {
|
||||
.p =8.0f,
|
||||
.i =0.0f,
|
||||
.d =0.0f,
|
||||
.i_limit = 200.0f,
|
||||
.out_limit = 3000.0f
|
||||
},
|
||||
|
||||
.Gimbal_yawOmega_param = {
|
||||
.p =18.0f,
|
||||
.i =0.0f,
|
||||
.d =0.0f,
|
||||
.i_limit = 200.0f,
|
||||
.out_limit = 3000.0f
|
||||
},
|
||||
|
||||
.Gimbal_pitchAngle_param = {
|
||||
.p =8.0f,
|
||||
.i =0.0f,
|
||||
.d =0.0f,
|
||||
.i_limit = 200.0f,
|
||||
.out_limit = 3000.0f
|
||||
},
|
||||
|
||||
.Gimbal_pitchOmega_param = {
|
||||
.p =18.0f,
|
||||
.i =0.0f,
|
||||
.d =0.0f,
|
||||
.i_limit = 200.0f,
|
||||
.out_limit = 3000.0f
|
||||
},
|
||||
.AngleCor_param = {
|
||||
.p =0.8f,
|
||||
.i =0.0f,
|
||||
.d =1.0f,
|
||||
.i_limit = 0.0f,
|
||||
.out_limit =5000.0f,
|
||||
},
|
||||
|
||||
.OmegaCor_param = {
|
||||
.p =23.5f,
|
||||
.i =0.0f,
|
||||
.d =0.05f,
|
||||
.i_limit = 0.0f,
|
||||
.out_limit =5000.0f,
|
||||
},
|
||||
|
||||
.ImuCor_param = {
|
||||
.p =95.0f,
|
||||
.i =0.0f,
|
||||
.d =0.0f,
|
||||
.i_limit = 0.0f,
|
||||
.out_limit =200.0f,
|
||||
},
|
||||
|
||||
.DisCamera_param = {
|
||||
.p =80.0f,
|
||||
.i =0.1f,
|
||||
.d =0.0f,
|
||||
.i_limit = 0.0f,
|
||||
.out_limit =5000.0f,
|
||||
},
|
||||
|
||||
.M3508_param = {
|
||||
.p = 15.1f,
|
||||
@ -121,6 +30,23 @@ static const ConfigParam_t param_chassis ={
|
||||
.i_limit = 200.0f,
|
||||
.out_limit =6000.0f,
|
||||
},
|
||||
/*视觉*/
|
||||
.chassis_PICKWzPID_HIGN_param ={ //高响应
|
||||
.p = 1.0f,
|
||||
.i = 0.03f,
|
||||
.d = 0.03f,
|
||||
.i_limit = 100.0f,
|
||||
.out_limit =2000.0f,
|
||||
},
|
||||
.chassis_PICKWzPID_LOW_param ={ //高精度
|
||||
.p = 0.5f, //1.0 0.5
|
||||
.i = 0.5f, //0.01 0.04
|
||||
.d = 0.0f, //0.02 0.02
|
||||
.i_limit = 50.0f,
|
||||
.out_limit =1000.0f,
|
||||
},
|
||||
|
||||
|
||||
// .M3508_param = {
|
||||
// .p = 10.0f,
|
||||
// .i = 0.0f,
|
||||
@ -130,51 +56,51 @@ static const ConfigParam_t param_chassis ={
|
||||
// },
|
||||
|
||||
////高速那一套
|
||||
// .NaviVx_param ={
|
||||
// .p = 1.15f,
|
||||
// .i = 0.0f,
|
||||
// .d = 0.15f,
|
||||
// .i_limit = 0.0f,
|
||||
// .out_limit =5000.0f,
|
||||
// },
|
||||
// .NaviVy_param ={
|
||||
// .p = 1.15f,
|
||||
// .i = 0.0f,
|
||||
// .d = 0.15f,
|
||||
// .i_limit = 0.0f,
|
||||
// .out_limit =5000.0f,
|
||||
// },
|
||||
// .NaviVw_param ={
|
||||
// .p = 1.15f,
|
||||
// .i = 0.0f,
|
||||
// .d = 0.15f,
|
||||
// .i_limit = 0.0f,
|
||||
// .out_limit =5000.0f,
|
||||
// },
|
||||
//
|
||||
|
||||
//低速那一套
|
||||
.NaviVx_param ={
|
||||
.p = 1.04f,
|
||||
.p = 1.15f,
|
||||
.i = 0.0f,
|
||||
.d = 0.15f,
|
||||
.i_limit = 0.0f,
|
||||
.out_limit =5000.0f,
|
||||
},
|
||||
.NaviVy_param ={
|
||||
.p = 1.1f,
|
||||
.p = 1.15f,
|
||||
.i = 0.0f,
|
||||
.d = 0.15f,
|
||||
.i_limit = 0.0f,
|
||||
.out_limit =5000.0f,
|
||||
},
|
||||
.NaviVw_param ={
|
||||
.p = 1.5f,
|
||||
.p = 1.15f,
|
||||
.i = 0.0f,
|
||||
.d = 0.15f,
|
||||
.i_limit = 0.0f,
|
||||
.out_limit =5000.0f,
|
||||
},
|
||||
//
|
||||
|
||||
//低速那一套
|
||||
// .NaviVx_param ={
|
||||
// .p = 1.04f,
|
||||
// .i = 0.0f,
|
||||
// .d = 0.15f,
|
||||
// .i_limit = 0.0f,
|
||||
// .out_limit =5000.0f,
|
||||
// },
|
||||
// .NaviVy_param ={
|
||||
// .p = 1.1f,
|
||||
// .i = 0.0f,
|
||||
// .d = 0.15f,
|
||||
// .i_limit = 0.0f,
|
||||
// .out_limit =5000.0f,
|
||||
// },
|
||||
// .NaviVw_param ={
|
||||
// .p = 1.5f,
|
||||
// .i = 0.0f,
|
||||
// .d = 0.15f,
|
||||
// .i_limit = 0.0f,
|
||||
// .out_limit =5000.0f,
|
||||
// },
|
||||
.Sick_CaliYparam ={
|
||||
.p =2.5f,
|
||||
.i =0.001f,
|
||||
|
@ -9,7 +9,7 @@ static BSP_UART_t UART_Get(UART_HandleTypeDef *huart) {
|
||||
if (huart->Instance == USART3)
|
||||
return BSP_UART_REMOTE;
|
||||
else if (huart->Instance == USART1)
|
||||
return BSP_UART_ACTION;
|
||||
return BSP_UART_VOFA;
|
||||
else if (huart->Instance == USART6)
|
||||
return BSP_UART_NUC;
|
||||
/*
|
||||
@ -94,7 +94,7 @@ UART_HandleTypeDef *BSP_UART_GetHandle(BSP_UART_t uart) {
|
||||
switch (uart) {
|
||||
case BSP_UART_REMOTE:
|
||||
return &huart3;
|
||||
case BSP_UART_ACTION:
|
||||
case BSP_UART_VOFA:
|
||||
return &huart1;
|
||||
case BSP_UART_NUC:
|
||||
return &huart6;
|
||||
|
@ -12,7 +12,7 @@
|
||||
|
||||
typedef enum {
|
||||
BSP_UART_REMOTE,
|
||||
BSP_UART_ACTION,
|
||||
BSP_UART_VOFA,
|
||||
BSP_UART_NUC,
|
||||
/* BSP_UART_XXX, */
|
||||
BSP_UART_NUM,
|
||||
|
@ -63,7 +63,7 @@ static void CMD_RcLogic(const CMD_RC_t *rc, CMD_t *cmd) {
|
||||
|
||||
|
||||
cmd->Vx = rc->ch_r_x;
|
||||
cmd->Vy = -rc->ch_r_y;
|
||||
cmd->Vy = rc->ch_r_y;
|
||||
cmd->Vw = rc->ch_l_x;
|
||||
|
||||
cmd->poscamear = rc->ch_l_y;
|
||||
@ -102,7 +102,6 @@ int8_t CMD_ParseRc(CMD_t *cmd,CMD_RC_t *rc){
|
||||
} else {
|
||||
CMD_RcLogic(rc, cmd);
|
||||
}
|
||||
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
@ -128,6 +127,13 @@ int8_t CMD_ParseNuc(CMD_t *cmd,CMD_NUC_t *n){
|
||||
cmd->C_navi.wz = n->navi.wz;
|
||||
break;
|
||||
|
||||
case PICK :
|
||||
cmd ->C_pick .posx =n->pick .posx ;
|
||||
cmd ->C_pick .posy =n->pick .posy ;
|
||||
cmd ->C_pick .posw =n->pick .posw ;
|
||||
|
||||
break;
|
||||
|
||||
|
||||
}
|
||||
return 0;
|
||||
@ -181,7 +187,7 @@ int8_t CMD_CtrlSet(CMD_t *cmd) {
|
||||
{
|
||||
if(cmd->key_ctrl_r==CMD_SW_UP)
|
||||
{
|
||||
cmd->C_cmd.type = RC;
|
||||
cmd->C_cmd.type = PICK_t;
|
||||
cmd->C_cmd.mode = RC_MODE3;
|
||||
}
|
||||
if(cmd->key_ctrl_r==CMD_SW_MID)
|
||||
|
@ -23,9 +23,14 @@
|
||||
|
||||
|
||||
#define MID (0x09)
|
||||
#define PICK (0x06)
|
||||
|
||||
|
||||
/*选择遥控器,else为r12ds*/
|
||||
/*选择遥控器,else为r12ds
|
||||
更改遥控器时,建议取消相应的task
|
||||
|
||||
|
||||
*/
|
||||
#define dr16_t
|
||||
//#define r12ds_t
|
||||
|
||||
@ -35,6 +40,7 @@
|
||||
typedef enum{
|
||||
RC,//遥控器控制,左按键上
|
||||
MID_NAVI,//雷达导航
|
||||
PICK_t,
|
||||
}CMD_Chassis_CtrlType_e;
|
||||
|
||||
typedef enum{
|
||||
@ -92,6 +98,7 @@ typedef struct {
|
||||
|
||||
uint16_t res; /* 保留,未启用 */
|
||||
|
||||
|
||||
#else
|
||||
int16_t ch_x; // X轴(Channel 1)
|
||||
int16_t mul; // MUL(Channel 2)
|
||||
@ -115,11 +122,17 @@ typedef struct {
|
||||
fp32 vy;
|
||||
fp32 wz;
|
||||
}navi;
|
||||
|
||||
struct
|
||||
{
|
||||
fp32 posx;
|
||||
fp32 posy;
|
||||
fp32 posw;
|
||||
}pick;
|
||||
struct
|
||||
{
|
||||
fp32 angle;
|
||||
}sick_cali;
|
||||
|
||||
} CMD_NUC_t;
|
||||
|
||||
typedef struct{
|
||||
@ -156,7 +169,7 @@ typedef struct {
|
||||
|
||||
CMD_Chassis_Ctrl_t C_cmd;
|
||||
CMD_FOR_NAVI C_navi;
|
||||
|
||||
CMD_FOR_PICK C_pick;
|
||||
} CMD_t;
|
||||
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
|
||||
#ifdef dr16_t
|
||||
|
||||
//#define
|
||||
/* Private define ----------------------------------------------------------- */
|
||||
#define DR16_CH_VALUE_MIN (364u)
|
||||
#define DR16_CH_VALUE_MID (1024u)
|
||||
|
@ -6,7 +6,7 @@ static volatile uint32_t drop_message = 0;
|
||||
|
||||
static osThreadId_t thread_alert;
|
||||
|
||||
uint8_t nucbuf[32];
|
||||
uint8_t nucbuf[31];
|
||||
|
||||
static void NUC_IdleCallback(void) {
|
||||
osThreadFlagsSet(thread_alert,SIGNAL_NUC_RAW_REDY);
|
||||
@ -36,6 +36,8 @@ bool_t NUC_WaitDmaCplt(void) {
|
||||
return (osThreadFlagsWait(SIGNAL_NUC_RAW_REDY, osFlagsWaitAll,500) ==
|
||||
SIGNAL_NUC_RAW_REDY);
|
||||
}
|
||||
|
||||
|
||||
int8_t NUC_RawParse(CMD_NUC_t *n){
|
||||
if(n ==NULL) return DEVICE_ERR_NULL;
|
||||
union
|
||||
@ -52,7 +54,7 @@ int8_t NUC_RawParse(CMD_NUC_t *n){
|
||||
case MID://控制帧0x09
|
||||
/* 协议格式
|
||||
0xFF HEAD
|
||||
0x0X 控制帧
|
||||
0x09 控制帧
|
||||
0x01 相机帧
|
||||
vx fp32
|
||||
vy fp32
|
||||
@ -76,34 +78,34 @@ int8_t NUC_RawParse(CMD_NUC_t *n){
|
||||
instance.data[8] = nucbuf[11];
|
||||
n->navi.wz = instance.x[2];//
|
||||
break;
|
||||
// case PICK:
|
||||
// /* 协议格式
|
||||
// 0xFF HEAD
|
||||
// 0x0X 控制帧
|
||||
// 0x01 相机帧
|
||||
// cmd 8位
|
||||
// dis 相机深度值
|
||||
// posx 相机yaw轴值
|
||||
// posy 相机pitch轴值
|
||||
// 0xFE TAIL
|
||||
// */
|
||||
case PICK:
|
||||
/* 协议格式
|
||||
0xFF HEAD
|
||||
0x0X 控制帧
|
||||
0x01 相机帧
|
||||
cmd 8位
|
||||
dis 相机深度值
|
||||
posx 相机yaw轴值
|
||||
posy 相机pitch轴值
|
||||
0xFE TAIL
|
||||
*/
|
||||
// if(nucbuf[15]!=TAIL)goto error;
|
||||
// instance.data[3] = nucbuf[6];
|
||||
// instance.data[2] = nucbuf[5];
|
||||
// instance.data[1] = nucbuf[4];
|
||||
// instance.data[0] = nucbuf[3];
|
||||
// n->pick.posx = instance.x[0]; //距离球中心的角度值
|
||||
// instance.data[7] = nucbuf[10];
|
||||
// instance.data[6] = nucbuf[9];
|
||||
// instance.data[5] = nucbuf[8];
|
||||
// instance.data[4] = nucbuf[7];
|
||||
// n->pick.posy = instance.x[1];// 相机yaw轴
|
||||
// instance.data[11] = nucbuf[14];
|
||||
// instance.data[10] = nucbuf[13];
|
||||
// instance.data[9] = nucbuf[12];
|
||||
// instance.data[8] = nucbuf[11];
|
||||
// n->pick.posw= instance.x[2];// 暂未用到
|
||||
// break;
|
||||
instance.data[3] = nucbuf[6];
|
||||
instance.data[2] = nucbuf[5];
|
||||
instance.data[1] = nucbuf[4];
|
||||
instance.data[0] = nucbuf[3];
|
||||
n->pick.posx = instance.x[0]; //距离球中心的角度值
|
||||
instance.data[7] = nucbuf[10];
|
||||
instance.data[6] = nucbuf[9];
|
||||
instance.data[5] = nucbuf[8];
|
||||
instance.data[4] = nucbuf[7];
|
||||
n->pick.posy = instance.x[1];// 相机yaw轴
|
||||
instance.data[11] = nucbuf[14];
|
||||
instance.data[10] = nucbuf[13];
|
||||
instance.data[9] = nucbuf[12];
|
||||
instance.data[8] = nucbuf[11];
|
||||
n->pick.posw= instance.x[2];// 暂未用到
|
||||
break;
|
||||
// case SICK_CAIL:
|
||||
// if(nucbuf[15]!=TAIL)goto error;
|
||||
// instance.data[3] = nucbuf[14];
|
||||
|
@ -1,5 +1,5 @@
|
||||
#include "vofa.h"
|
||||
//#include "usart.h"
|
||||
#include "bsp_usart.h"
|
||||
#include "usbd_cdc_if.h"
|
||||
#include <cmsis_os2.h>
|
||||
//用来对需要的数据进行串口绘图 (未添加接收函数)
|
||||
@ -30,11 +30,11 @@ void vofa_tx_main(float *data)
|
||||
/*在下面使用对应的串口发送函数*/
|
||||
// HAL_UART_Transmit_DMA(&huart1, ( uint8_t *)fdata, sizeof(fdata));
|
||||
// osDelay(1);
|
||||
// HAL_UART_Transmit_DMA(&huart1, tail, 4);
|
||||
// osDelay(1);
|
||||
CDC_Transmit_FS( ( uint8_t *)fdata, sizeof(fdata));
|
||||
HAL_UART_Transmit_DMA(BSP_UART_GetHandle(BSP_UART_VOFA), tail, 4);
|
||||
osDelay(1);
|
||||
CDC_Transmit_FS( tail, 4);
|
||||
// CDC_Transmit_FS( ( uint8_t *)fdata, sizeof(fdata));
|
||||
// osDelay(1);
|
||||
// CDC_Transmit_FS( tail, 4);
|
||||
|
||||
}
|
||||
|
||||
|
@ -35,15 +35,22 @@ static CMD_RC_t cmd_rc;
|
||||
*/
|
||||
void Task_dr16(void *argument) {
|
||||
(void)argument; /* 未使用,消除警告 */
|
||||
const uint32_t delay_tick = osKernelGetTickFreq() / TASK_FREQ_DR16;
|
||||
uint32_t tick = osKernelGetTickCount();
|
||||
|
||||
#ifdef dr16_t
|
||||
|
||||
DR16_Init(&dr16); /* 初始化dr16 */
|
||||
#endif
|
||||
|
||||
while (1) {
|
||||
#ifdef dr16_t
|
||||
|
||||
#ifdef DEBUG
|
||||
/* */
|
||||
task_runtime.stack_water_mark.dr16 = osThreadGetStackSpace(osThreadGetId());
|
||||
#endif
|
||||
|
||||
/* 开启DMA */
|
||||
DR16_StartDmaRecv(&dr16);
|
||||
|
||||
@ -59,4 +66,9 @@ void Task_dr16(void *argument) {
|
||||
osMessageQueuePut(task_runtime.msgq.cmd.raw.rc, &cmd_rc, 0, 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
tick += delay_tick; /* 计算下一个唤醒时*/
|
||||
|
||||
osDelay(10);
|
||||
|
||||
}
|
||||
|
@ -35,8 +35,8 @@ void Task_Init(void *argument) {
|
||||
osThreadNew(Task_AttiEsti, NULL, &attr_atti_esti);
|
||||
task_runtime.thread.chassis =
|
||||
osThreadNew(Task_Chassis, NULL, &attr_chassis);
|
||||
task_runtime.thread.r12ds =
|
||||
osThreadNew(Task_r12ds,NULL,&attr_r12ds);
|
||||
// task_runtime.thread.r12ds =
|
||||
// osThreadNew(Task_r12ds,NULL,&attr_r12ds);
|
||||
task_runtime.thread.dr16 =
|
||||
osThreadNew(Task_dr16,NULL,&attr_dr16);
|
||||
|
||||
|
@ -6,6 +6,8 @@
|
||||
NUC_t nuc_raw;
|
||||
CMD_NUC_t cmd_fromnuc;
|
||||
#else
|
||||
static NUC_t nuc_raw;
|
||||
static CMD_NUC_t cmd_fromnuc;
|
||||
|
||||
|
||||
#endif
|
||||
|
@ -39,16 +39,17 @@ void Task_r12ds(void *argument)
|
||||
|
||||
|
||||
const uint32_t delay_tick = osKernelGetTickFreq() / TASK_FREQ_R12DS;
|
||||
|
||||
uint32_t tick = osKernelGetTickCount();
|
||||
#ifdef r12ds_t
|
||||
|
||||
R12ds_DMA_Init(sbus_rx_buf[0],sbus_rx_buf[1],50);
|
||||
|
||||
#endif
|
||||
|
||||
uint32_t tick = osKernelGetTickCount();
|
||||
|
||||
|
||||
while (1)
|
||||
{
|
||||
|
||||
#ifdef r12ds_t
|
||||
|
||||
#ifdef DEBUG
|
||||
@ -70,6 +71,7 @@ void Task_r12ds(void *argument)
|
||||
#endif
|
||||
|
||||
tick += delay_tick; /* 计算下一个唤醒时*/
|
||||
|
||||
osDelay(10);
|
||||
|
||||
}
|
||||
|
@ -30,17 +30,11 @@ const osThreadAttr_t attr_chassis = {
|
||||
.priority = osPriorityAboveNormal,
|
||||
.stack_size = 512 * 4,
|
||||
};
|
||||
const osThreadAttr_t attr_r12ds = {
|
||||
.name = "r12ds",
|
||||
.priority = osPriorityRealtime,
|
||||
.stack_size = 128 * 4,
|
||||
};
|
||||
const osThreadAttr_t attr_dr16 = {
|
||||
.name = "dr16",
|
||||
.priority = osPriorityRealtime,
|
||||
.stack_size = 128 *4,
|
||||
};
|
||||
|
||||
//const osThreadAttr_t attr_r12ds = {
|
||||
// .name = "r12ds",
|
||||
// .priority = osPriorityRealtime,
|
||||
// .stack_size = 128 * 4,
|
||||
//};
|
||||
|
||||
const osThreadAttr_t attr_can = {
|
||||
.name = "can",
|
||||
@ -66,4 +60,10 @@ const osThreadAttr_t attr_error_detect = {
|
||||
.stack_size = 128 *4,
|
||||
};
|
||||
|
||||
const osThreadAttr_t attr_dr16 = {
|
||||
.name = "dr16",
|
||||
.priority = osPriorityRealtime,
|
||||
.stack_size = 128 *4,
|
||||
};
|
||||
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
#define TASK_FREQ_NUC (500u)
|
||||
#define TASK_FREQ_CAN (1000u)
|
||||
#define TASK_FREQ_R12DS (1000u)
|
||||
#define TASK_FREQ_dr16 (1000u)
|
||||
#define TASK_FREQ_DR16 (1000u)
|
||||
|
||||
#define TASK_FREQ_ERROR_DTC (3u)
|
||||
|
||||
@ -37,10 +37,7 @@ typedef struct {
|
||||
osThreadId_t atti_esti;
|
||||
osThreadId_t chassis;
|
||||
osThreadId_t dr16;
|
||||
|
||||
osThreadId_t r12ds;
|
||||
|
||||
osThreadId_t ai;
|
||||
osThreadId_t can;
|
||||
osThreadId_t cmd;
|
||||
osThreadId_t nuc;
|
||||
@ -149,7 +146,7 @@ extern const osThreadAttr_t attr_error_detect;
|
||||
|
||||
extern const osThreadAttr_t attr_dr16;
|
||||
|
||||
extern const osThreadAttr_t attr_r12ds;
|
||||
//extern const osThreadAttr_t attr_r12ds;
|
||||
|
||||
/* Exported functions prototypes -------------------------------------------- */
|
||||
void Task_Init(void *argument);
|
||||
|
Loading…
Reference in New Issue
Block a user