From 0f335cbc9e3612a92fc1fece6e36c1d44285423d Mon Sep 17 00:00:00 2001 From: yunhai8432 Date: Wed, 12 Nov 2025 22:18:15 +0800 Subject: [PATCH] 1111 --- MDK-ARM/gimbal.uvguix.yunha | 30 +- MDK-ARM/gimbal/ai.o | Bin 3376 -> 3376 bytes MDK-ARM/gimbal/atti_esti.o | Bin 7908 -> 7908 bytes MDK-ARM/gimbal/config.o | Bin 5524 -> 5520 bytes MDK-ARM/gimbal/gimbal.axf | Bin 585052 -> 584840 bytes MDK-ARM/gimbal/gimbal.htm | 10 +- MDK-ARM/gimbal/gimbal.map | 4024 +++++++++++++++--------------- MDK-ARM/gimbal/gimbal.o | Bin 17724 -> 17540 bytes MDK-ARM/gimbal/gimbal_ctrl.o | Bin 9420 -> 9400 bytes MDK-ARM/gimbal/gimbal_gimbal.dep | 18 +- MDK-ARM/gimbal/remote.o | Bin 3820 -> 3820 bytes User/module/config.c | 6 +- User/module/gimbal.c | 42 +- User/module/gimbal.h | 9 +- 14 files changed, 2061 insertions(+), 2078 deletions(-) diff --git a/MDK-ARM/gimbal.uvguix.yunha b/MDK-ARM/gimbal.uvguix.yunha index 578c672..3c25fb3 100644 --- a/MDK-ARM/gimbal.uvguix.yunha +++ b/MDK-ARM/gimbal.uvguix.yunha @@ -93,8 +93,8 @@ 2 3 - -1 - -1 + -32000 + -32000 -1 @@ -134,7 +134,7 @@ 16 - B80100001C010000280500008C010000 + B80000006600000028040000D6000000 @@ -1799,14 +1799,14 @@ 3312 - 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFB8000000BF00000028040000C3000000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000000000000B80100001C010000280500008C010000B80000004F00000028040000BF0000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF700300004F00000074030000AC010000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000740400001C0100002805000079020000740300004F00000028040000AC01000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFB40000004F000000B8000000B5020000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C40000007394000001800010000001000000000100001C010000B401000082030000000000004F000000B4000000B50200000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF0000000098010000280400009C01000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000000000000000100006902000028050000ED020000000000009C010000280400002002000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFF140200009C010000180200002002000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF00000000B5020000A0050000B9020000010000000100001004000000010000009EFDFFFF6E000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF01000077940000018000800000010000000001000086030000A0060000F703000000000000B9020000A00500002A0300000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFB8000000BF00000028040000C3000000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000000000000B80000006600000028040000D6000000B80000004F00000028040000BF0000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF700300004F00000074030000AC010000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000740300006600000028040000C3010000740300004F00000028040000AC01000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFB40000004F000000B8000000B5020000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000018000100000010000000000000066000000B4000000CC020000000000004F000000B4000000B50200000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF0000000098010000280400009C01000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB0900000180008000000000000000000000B30100002804000037020000000000009C010000280400002002000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFF140200009C010000180200002002000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF00000000B5020000A0050000B9020000010000000100001004000000010000009EFDFFFF6E000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF010000779400000180008000000100000000000000D0020000A00500004103000000000000B9020000A00500002A0300000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 59392 File 2896 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000B436972636C654572726F72960000000000000014000B436972636C654572726F72104D4F544F525F444D5F506172616D5F740B2D3E646D5F6D6F746F722E0A2D3E646D5F6D6F746F720B2D3E726D5F6D6F746F722E08726D5F6D6F746F72104D4F544F525F524D5F506172616D5F741A67696D62616C2D3E666565646261636B2E6D6F746F722E7961770C7961775F726D5F6D6F746F720A52435F726573746172741372656D6F74655F636F6E74726F6C5F696E69740C4253505F43414E5F496E69740A67696D62616C5F636D640F434D445F47696D62616C436D645F7401670543414E5F740B414852535F45756C725F740847696D62616C5F7412504F534954494F4E5F544F4C4552414E434512566973696F6E5F50726F63657373427974650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000000000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000B436972636C654572726F72960000000000000014000B436972636C654572726F72104D4F544F525F444D5F506172616D5F740B2D3E646D5F6D6F746F722E0A2D3E646D5F6D6F746F720B2D3E726D5F6D6F746F722E08726D5F6D6F746F72104D4F544F525F524D5F506172616D5F741A67696D62616C2D3E666565646261636B2E6D6F746F722E7961770C7961775F726D5F6D6F746F720A52435F726573746172741372656D6F74655F636F6E74726F6C5F696E69740C4253505F43414E5F496E69740A67696D62616C5F636D640F434D445F47696D62616C436D645F7401670543414E5F740B414852535F45756C725F740847696D62616C5F7412504F534954494F4E5F544F4C4552414E434512566973696F6E5F50726F63657373427974650000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -1838,7 +1838,7 @@ Debug 2373 - 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720000000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7200000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720000000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720000000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730000000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72000000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 + 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72010000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 898 @@ -3606,27 +3606,27 @@ 0 ..\User\module\gimbal.c - 17 - 318 - 300 + 61 + 350 + 359 1 0 ..\User\module\gimbal.h - 9 - 55 - 78 + 0 + 102 + 125 1 0 ..\User\module\config.c - 12 - 32 - 49 + 0 + 13 + 27 1 0 diff --git a/MDK-ARM/gimbal/ai.o b/MDK-ARM/gimbal/ai.o index 119f019e4dd087debe4b8536c58fe6d7e093a2fb..6b419ea6151866377f2412b9cb7b63335424da5e 100644 GIT binary patch delta 41 rcmdlWwLxmb3nrOHP6@_3t{6rJh9V$ltY_dV2GYww?1s%O%sN~E)B^}y delta 41 rcmdlWwLxmb3nrNsP6@_Ft{6rJh9V$lY+~Rl2GYww?B>lZ%sN~E)ddJ> diff --git a/MDK-ARM/gimbal/atti_esti.o b/MDK-ARM/gimbal/atti_esti.o index cde88204d7c51c85a3dbdbd32373aadf7bf209c9..8eb804d726a662efa78d4609f84020aee7cf0cb2 100644 GIT binary patch delta 41 ucmaE2`^0v`U3Qs9775NeRuM)9hHxO}tY=^qW@cb81Y*vH%|F>+iva-NLJ6G! delta 41 ucmaE2`^0v`U3Qrk775NqRuM)9hHxO}Y+_&)W@cb81Y*wS%|F>+iva-OL zkYB*S>H%XHvaklg*hL(y5ioW!4+C2Qkh7Z+sG&N6k==l?j5P-+&d6AwN6- delta 369 zcmbQBJw_Z((J12BJA?4fsn6@~qo z82Ba^3D0BXm@Fuw%_uV2Rz#VxesZFSI^*`qonUe!kQA7F6G&!EW)xLtG?=UjBr7Hd ZimFQl@G>wg0NDY=96${8IfDQY0|2S!Ji7n@ diff --git a/MDK-ARM/gimbal/gimbal.axf b/MDK-ARM/gimbal/gimbal.axf index d15e57e6f39c55eeaef784289cb2c24dc95c7776..71eb43a140036ff5ac589eeaf9ff467e4c0a45fc 100644 GIT binary patch delta 168328 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

}e$<94IK{=x#&C+$7RIl^ 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 LI-5T!&+_+wa|R5r delta 168756 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

@H;nvq^$T_G-G4ypQ* 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 kU&(%>Static Call Graph - [gimbal\gimbal.axf]

Static Call Graph for image gimbal\gimbal.axf


-

#<CALLGRAPH># ARM Linker, 6160001: Last Updated: Wed Nov 12 21:26:23 2025 +

#<CALLGRAPH># ARM Linker, 6160001: Last Updated: Wed Nov 12 22:13:05 2025

Maximum Stack Usage = 432 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)

Call chain for Maximum Stack Depth:

@@ -169,9 +169,9 @@ Global Symbols

__scatterload_null (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED) -

__decompress (Thumb, 58 bytes, Stack size unknown bytes, __dczerorl.o(!!dczerorl), UNUSED) +

__decompress (Thumb, 90 bytes, Stack size unknown bytes, __dczerorl2.o(!!dczerorl2), UNUSED) -

__decompress0 (Thumb, 0 bytes, Stack size unknown bytes, __dczerorl.o(!!dczerorl), UNUSED) +

__decompress1 (Thumb, 0 bytes, Stack size unknown bytes, __dczerorl2.o(!!dczerorl2), UNUSED)

__scatterload_zeroinit (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED) @@ -1114,7 +1114,7 @@ Global Symbols

  • >>   MX_CAN1_Init -

    Gimbal_Control (Thumb, 1304 bytes, Stack size 88 bytes, gimbal.o(.text.Gimbal_Control)) +

    Gimbal_Control (Thumb, 1312 bytes, Stack size 88 bytes, gimbal.o(.text.Gimbal_Control))

    [Stack]

    • Max Depth = 208
    • Call Chain = Gimbal_Control ⇒ PID_Calc ⇒ LowPassFilter2p_Apply ⇒ __ARM_isinf

    [Calls]
    • >>   Clip @@ -1128,7 +1128,7 @@ Global Symbols
      [Called By]
      • >>   Task_gimbal_ctrl
      -

      Gimbal_Init (Thumb, 472 bytes, Stack size 32 bytes, gimbal.o(.text.Gimbal_Init)) +

      Gimbal_Init (Thumb, 400 bytes, Stack size 32 bytes, gimbal.o(.text.Gimbal_Init))

      [Stack]

      • Max Depth = 372 + Unknown Stack Size
      • Call Chain = Gimbal_Init ⇒ BSP_CAN_Init ⇒ osMutexNew ⇒ xQueueCreateMutexStatic ⇒ prvInitialiseMutex ⇒ xQueueGenericSend ⇒ prvCopyDataToQueue ⇒ xTaskPriorityDisinherit ⇒ vListInsertEnd
      diff --git a/MDK-ARM/gimbal/gimbal.map b/MDK-ARM/gimbal/gimbal.map index f726810..2be1143 100644 --- a/MDK-ARM/gimbal/gimbal.map +++ b/MDK-ARM/gimbal/gimbal.map @@ -6041,7 +6041,7 @@ Image Symbol Table ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit2.o ABSOLUTE ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit3.o ABSOLUTE ../clib/angel/boardlib.s 0x00000000 Number 0 boardshut.o ABSOLUTE - ../clib/angel/dczerorl.s 0x00000000 Number 0 __dczerorl.o ABSOLUTE + ../clib/angel/dczerorl2.s 0x00000000 Number 0 __dczerorl2.o ABSOLUTE ../clib/angel/handlers.s 0x00000000 Number 0 __scatter_zi.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry2.o ABSOLUTE @@ -6304,719 +6304,719 @@ Image Symbol Table RESET 0x08000000 Section 392 startup_stm32f407xx.o(RESET) !!!main 0x08000188 Section 8 __main.o(!!!main) !!!scatter 0x08000190 Section 52 __scatter.o(!!!scatter) - !!dczerorl 0x080001c4 Section 58 __dczerorl.o(!!dczerorl) - !!handler_zi 0x08000200 Section 28 __scatter_zi.o(!!handler_zi) - .ARM.Collect$$libinit$$00000000 0x0800021c Section 2 libinit.o(.ARM.Collect$$libinit$$00000000) - .ARM.Collect$$libinit$$00000001 0x0800021e Section 4 libinit2.o(.ARM.Collect$$libinit$$00000001) - .ARM.Collect$$libinit$$00000004 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000004) - .ARM.Collect$$libinit$$0000000A 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000A) - .ARM.Collect$$libinit$$0000000C 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000C) - .ARM.Collect$$libinit$$0000000E 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000E) - .ARM.Collect$$libinit$$00000011 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000011) - .ARM.Collect$$libinit$$00000013 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000013) - .ARM.Collect$$libinit$$00000015 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000015) - .ARM.Collect$$libinit$$00000017 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000017) - .ARM.Collect$$libinit$$00000019 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000019) - .ARM.Collect$$libinit$$0000001B 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001B) - .ARM.Collect$$libinit$$0000001D 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001D) - .ARM.Collect$$libinit$$0000001F 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001F) - .ARM.Collect$$libinit$$00000021 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000021) - .ARM.Collect$$libinit$$00000023 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000023) - .ARM.Collect$$libinit$$00000025 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000025) - .ARM.Collect$$libinit$$0000002C 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002C) - .ARM.Collect$$libinit$$0000002E 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002E) - .ARM.Collect$$libinit$$00000030 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000030) - .ARM.Collect$$libinit$$00000032 0x08000222 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000032) - .ARM.Collect$$libinit$$00000033 0x08000222 Section 2 libinit2.o(.ARM.Collect$$libinit$$00000033) - .ARM.Collect$$libshutdown$$00000000 0x08000224 Section 2 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) - .ARM.Collect$$libshutdown$$00000002 0x08000226 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) - .ARM.Collect$$libshutdown$$00000004 0x08000226 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) - .ARM.Collect$$libshutdown$$00000007 0x08000226 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000007) - .ARM.Collect$$libshutdown$$0000000A 0x08000226 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A) - .ARM.Collect$$libshutdown$$0000000C 0x08000226 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) - .ARM.Collect$$libshutdown$$0000000F 0x08000226 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) - .ARM.Collect$$libshutdown$$00000010 0x08000226 Section 2 libshutdown2.o(.ARM.Collect$$libshutdown$$00000010) - .ARM.Collect$$rtentry$$00000000 0x08000228 Section 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000) - .ARM.Collect$$rtentry$$00000002 0x08000228 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002) - .ARM.Collect$$rtentry$$00000004 0x08000228 Section 6 __rtentry4.o(.ARM.Collect$$rtentry$$00000004) - .ARM.Collect$$rtentry$$00000009 0x0800022e Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009) - .ARM.Collect$$rtentry$$0000000A 0x0800022e Section 4 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) - .ARM.Collect$$rtentry$$0000000C 0x08000232 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) - .ARM.Collect$$rtentry$$0000000D 0x08000232 Section 8 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) - .ARM.Collect$$rtexit$$00000000 0x0800023a Section 2 rtexit.o(.ARM.Collect$$rtexit$$00000000) - .ARM.Collect$$rtexit$$00000002 0x0800023c Section 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002) - .ARM.Collect$$rtexit$$00000003 0x0800023c Section 4 rtexit2.o(.ARM.Collect$$rtexit$$00000003) - .ARM.Collect$$rtexit$$00000004 0x08000240 Section 6 rtexit2.o(.ARM.Collect$$rtexit$$00000004) - $v0 0x08000248 Number 0 startup_stm32f407xx.o(.text) - .text 0x08000248 Section 64 startup_stm32f407xx.o(.text) - .text 0x08000288 Section 240 lludivv7m.o(.text) - .text 0x08000378 Section 138 rt_memcpy_v6.o(.text) - .text 0x08000402 Section 16 aeabi_memset4.o(.text) - .text 0x08000412 Section 78 rt_memclr_w.o(.text) - .text 0x08000460 Section 0 heapauxi.o(.text) - .text 0x08000466 Section 0 _rserrno.o(.text) - .text 0x0800047c Section 100 rt_memcpy_w.o(.text) - .text 0x080004e0 Section 8 rt_errno_addr_intlibspace.o(.text) - .text 0x080004e8 Section 8 libspace.o(.text) - .text 0x080004f0 Section 74 sys_stackheap_outer.o(.text) - .text 0x0800053a Section 0 exit.o(.text) - .text 0x0800054c Section 0 sys_exit.o(.text) - .text 0x08000558 Section 2 use_no_semi.o(.text) - .text 0x0800055a Section 0 indicate_semi.o(.text) - [Anonymous Symbol] 0x0800055c Section 0 ahrs.o(.text.AHRS_GetEulr) - [Anonymous Symbol] 0x080006b8 Section 0 ahrs.o(.text.AHRS_Init) - [Anonymous Symbol] 0x0800093c Section 0 ahrs.o(.text.AHRS_ResetEulr) - [Anonymous Symbol] 0x08000950 Section 0 ahrs.o(.text.AHRS_Update) - AHRS_UpdateIMU 0x0800156d Thumb Code 1480 ahrs.o(.text.AHRS_UpdateIMU) - [Anonymous Symbol] 0x0800156c Section 0 ahrs.o(.text.AHRS_UpdateIMU) - [Anonymous Symbol] 0x08001b34 Section 0 user_math.o(.text.AbsClip) - BMI088_AcclIntCallback 0x08001ba1 Thumb Code 20 bmi088.o(.text.BMI088_AcclIntCallback) - [Anonymous Symbol] 0x08001ba0 Section 0 bmi088.o(.text.BMI088_AcclIntCallback) - [Anonymous Symbol] 0x08001bb4 Section 0 bmi088.o(.text.BMI088_AcclStartDmaRecv) - [Anonymous Symbol] 0x08001bd4 Section 0 bmi088.o(.text.BMI088_AcclWaitDmaCplt) - [Anonymous Symbol] 0x08001be4 Section 0 bmi088.o(.text.BMI088_GetUpdateFreq) - BMI088_GyroIntCallback 0x08001bf5 Thumb Code 20 bmi088.o(.text.BMI088_GyroIntCallback) - [Anonymous Symbol] 0x08001bf4 Section 0 bmi088.o(.text.BMI088_GyroIntCallback) - [Anonymous Symbol] 0x08001c08 Section 0 bmi088.o(.text.BMI088_GyroStartDmaRecv) - [Anonymous Symbol] 0x08001c24 Section 0 bmi088.o(.text.BMI088_GyroWaitDmaCplt) - [Anonymous Symbol] 0x08001c34 Section 0 bmi088.o(.text.BMI088_Init) - [Anonymous Symbol] 0x08001dbc Section 0 bmi088.o(.text.BMI088_ParseAccl) - [Anonymous Symbol] 0x08001eb0 Section 0 bmi088.o(.text.BMI088_ParseGyro) - BMI088_RxCpltCallback 0x08001fc9 Thumb Code 84 bmi088.o(.text.BMI088_RxCpltCallback) - [Anonymous Symbol] 0x08001fc8 Section 0 bmi088.o(.text.BMI088_RxCpltCallback) - [Anonymous Symbol] 0x0800201c Section 0 bmi088.o(.text.BMI088_WaitNew) - BMI_Read 0x0800202d Thumb Code 118 bmi088.o(.text.BMI_Read) - [Anonymous Symbol] 0x0800202c Section 0 bmi088.o(.text.BMI_Read) - BMI_ReadSingle 0x080020a5 Thumb Code 178 bmi088.o(.text.BMI_ReadSingle) - [Anonymous Symbol] 0x080020a4 Section 0 bmi088.o(.text.BMI_ReadSingle) - BMI_WriteSingle 0x08002159 Thumb Code 148 bmi088.o(.text.BMI_WriteSingle) - [Anonymous Symbol] 0x08002158 Section 0 bmi088.o(.text.BMI_WriteSingle) - BSP_CAN_CreateIdQueue 0x080021ed Thumb Code 292 can_1.o(.text.BSP_CAN_CreateIdQueue) - [Anonymous Symbol] 0x080021ec Section 0 can_1.o(.text.BSP_CAN_CreateIdQueue) - BSP_CAN_DefaultIdParser 0x08002311 Thumb Code 14 can_1.o(.text.BSP_CAN_DefaultIdParser) - [Anonymous Symbol] 0x08002310 Section 0 can_1.o(.text.BSP_CAN_DefaultIdParser) - BSP_CAN_FindQueue 0x08002321 Thumb Code 82 can_1.o(.text.BSP_CAN_FindQueue) - [Anonymous Symbol] 0x08002320 Section 0 can_1.o(.text.BSP_CAN_FindQueue) - BSP_CAN_GetFrameType 0x08002375 Thumb Code 58 can_1.o(.text.BSP_CAN_GetFrameType) - [Anonymous Symbol] 0x08002374 Section 0 can_1.o(.text.BSP_CAN_GetFrameType) - [Anonymous Symbol] 0x080023b0 Section 0 can_1.o(.text.BSP_CAN_GetHandle) - [Anonymous Symbol] 0x08002400 Section 0 can_1.o(.text.BSP_CAN_GetMessage) - [Anonymous Symbol] 0x080024a0 Section 0 can_1.o(.text.BSP_CAN_Init) - [Anonymous Symbol] 0x08002614 Section 0 can_1.o(.text.BSP_CAN_ParseId) - [Anonymous Symbol] 0x08002658 Section 0 can_1.o(.text.BSP_CAN_RegisterCallback) - [Anonymous Symbol] 0x080026dc Section 0 can_1.o(.text.BSP_CAN_RegisterId) - BSP_CAN_RxFifo0Callback 0x08002721 Thumb Code 228 can_1.o(.text.BSP_CAN_RxFifo0Callback) - [Anonymous Symbol] 0x08002720 Section 0 can_1.o(.text.BSP_CAN_RxFifo0Callback) - BSP_CAN_RxFifo1Callback 0x08002805 Thumb Code 228 can_1.o(.text.BSP_CAN_RxFifo1Callback) - [Anonymous Symbol] 0x08002804 Section 0 can_1.o(.text.BSP_CAN_RxFifo1Callback) - [Anonymous Symbol] 0x080028e8 Section 0 can_1.o(.text.BSP_CAN_Transmit) - [Anonymous Symbol] 0x08002a60 Section 0 can_1.o(.text.BSP_CAN_TransmitStdDataFrame) - BSP_CAN_TxCompleteCallback 0x08002aa1 Thumb Code 120 can_1.o(.text.BSP_CAN_TxCompleteCallback) - [Anonymous Symbol] 0x08002aa0 Section 0 can_1.o(.text.BSP_CAN_TxCompleteCallback) - BSP_CAN_TxQueueInit 0x08002b19 Thumb Code 66 can_1.o(.text.BSP_CAN_TxQueueInit) - [Anonymous Symbol] 0x08002b18 Section 0 can_1.o(.text.BSP_CAN_TxQueueInit) - BSP_CAN_TxQueueIsEmpty 0x08002b5d Thumb Code 86 can_1.o(.text.BSP_CAN_TxQueueIsEmpty) - [Anonymous Symbol] 0x08002b5c Section 0 can_1.o(.text.BSP_CAN_TxQueueIsEmpty) - BSP_CAN_TxQueuePop 0x08002bb5 Thumb Code 172 can_1.o(.text.BSP_CAN_TxQueuePop) - [Anonymous Symbol] 0x08002bb4 Section 0 can_1.o(.text.BSP_CAN_TxQueuePop) - BSP_CAN_TxQueuePush 0x08002c61 Thumb Code 172 can_1.o(.text.BSP_CAN_TxQueuePush) - [Anonymous Symbol] 0x08002c60 Section 0 can_1.o(.text.BSP_CAN_TxQueuePush) - [Anonymous Symbol] 0x08002d0c Section 0 mm.o(.text.BSP_Free) - [Anonymous Symbol] 0x08002d1c Section 0 gpio_1.o(.text.BSP_GPIO_DisableIRQ) - [Anonymous Symbol] 0x08002d74 Section 0 gpio_1.o(.text.BSP_GPIO_EnableIRQ) - [Anonymous Symbol] 0x08002dcc Section 0 gpio_1.o(.text.BSP_GPIO_ReadPin) - [Anonymous Symbol] 0x08002e18 Section 0 gpio_1.o(.text.BSP_GPIO_RegisterCallback) - [Anonymous Symbol] 0x08002ea8 Section 0 gpio_1.o(.text.BSP_GPIO_WritePin) - [Anonymous Symbol] 0x08002ef8 Section 0 mm.o(.text.BSP_Malloc) - [Anonymous Symbol] 0x08002f08 Section 0 pwm.o(.text.BSP_PWM_SetComp) - [Anonymous Symbol] 0x08003048 Section 0 pwm.o(.text.BSP_PWM_Start) - [Anonymous Symbol] 0x0800308c Section 0 spi_1.o(.text.BSP_SPI_GetHandle) - [Anonymous Symbol] 0x080030b4 Section 0 spi_1.o(.text.BSP_SPI_Receive) - [Anonymous Symbol] 0x08003134 Section 0 spi_1.o(.text.BSP_SPI_RegisterCallback) - [Anonymous Symbol] 0x08003178 Section 0 spi_1.o(.text.BSP_SPI_Transmit) - [Anonymous Symbol] 0x080031f8 Section 0 time.o(.text.BSP_TIME_Delay_ms) - [Anonymous Symbol] 0x08003288 Section 0 time.o(.text.BSP_TIME_Get_us) - [Anonymous Symbol] 0x08003334 Section 0 uart.o(.text.BSP_UART_IRQHandler) - [Anonymous Symbol] 0x080033a0 Section 0 stm32f4xx_it.o(.text.BusFault_Handler) - [Anonymous Symbol] 0x080033a4 Section 0 stm32f4xx_it.o(.text.CAN1_RX0_IRQHandler) - [Anonymous Symbol] 0x080033b4 Section 0 stm32f4xx_it.o(.text.CAN1_RX1_IRQHandler) - [Anonymous Symbol] 0x080033c4 Section 0 stm32f4xx_it.o(.text.CAN1_TX_IRQHandler) - [Anonymous Symbol] 0x080033d4 Section 0 stm32f4xx_it.o(.text.CAN2_RX0_IRQHandler) - [Anonymous Symbol] 0x080033e4 Section 0 stm32f4xx_it.o(.text.CAN2_RX1_IRQHandler) - [Anonymous Symbol] 0x080033f4 Section 0 stm32f4xx_it.o(.text.CAN2_TX_IRQHandler) - CAN_Get 0x08003405 Thumb Code 86 can_1.o(.text.CAN_Get) - [Anonymous Symbol] 0x08003404 Section 0 can_1.o(.text.CAN_Get) - [Anonymous Symbol] 0x0800345c Section 0 user_math.o(.text.CircleAdd) - [Anonymous Symbol] 0x080034e0 Section 0 user_math.o(.text.CircleError) - [Anonymous Symbol] 0x0800357c Section 0 user_math.o(.text.Clip) - [Anonymous Symbol] 0x080035c8 Section 0 config.o(.text.Config_GetRobotParam) - [Anonymous Symbol] 0x080035d4 Section 0 stm32f4xx_it.o(.text.DMA1_Stream1_IRQHandler) - [Anonymous Symbol] 0x080035e8 Section 0 remote_control.o(.text.DMA1_Stream1_IRQHandler1) - [Anonymous Symbol] 0x08003640 Section 0 stm32f4xx_it.o(.text.DMA2_Stream2_IRQHandler) - [Anonymous Symbol] 0x08003650 Section 0 stm32f4xx_it.o(.text.DMA2_Stream3_IRQHandler) - DMA_CalcBaseAndBitshift 0x08003661 Thumb Code 86 stm32f4xx_hal_dma.o(.text.DMA_CalcBaseAndBitshift) - [Anonymous Symbol] 0x08003660 Section 0 stm32f4xx_hal_dma.o(.text.DMA_CalcBaseAndBitshift) - DMA_CheckFifoParam 0x080036b9 Thumb Code 240 stm32f4xx_hal_dma.o(.text.DMA_CheckFifoParam) - [Anonymous Symbol] 0x080036b8 Section 0 stm32f4xx_hal_dma.o(.text.DMA_CheckFifoParam) - DMA_SetConfig 0x080037a9 Thumb Code 80 stm32f4xx_hal_dma.o(.text.DMA_SetConfig) - [Anonymous Symbol] 0x080037a8 Section 0 stm32f4xx_hal_dma.o(.text.DMA_SetConfig) - [Anonymous Symbol] 0x080037f8 Section 0 stm32f4xx_it.o(.text.DebugMon_Handler) - [Anonymous Symbol] 0x080037fc Section 0 stm32f4xx_it.o(.text.EXTI0_IRQHandler) - [Anonymous Symbol] 0x08003808 Section 0 stm32f4xx_it.o(.text.EXTI3_IRQHandler) - [Anonymous Symbol] 0x08003814 Section 0 stm32f4xx_it.o(.text.EXTI4_IRQHandler) - [Anonymous Symbol] 0x08003820 Section 0 stm32f4xx_it.o(.text.EXTI9_5_IRQHandler) - [Anonymous Symbol] 0x0800382c Section 0 main.o(.text.Error_Handler) - [Anonymous Symbol] 0x08003834 Section 0 gimbal.o(.text.Gimbal_Control) - __arm_cp.3_6 0x08003bf8 Number 4 gimbal.o(.text.Gimbal_Control) - __arm_cp.3_9 0x08003c04 Number 4 gimbal.o(.text.Gimbal_Control) - [Anonymous Symbol] 0x08003d4c Section 0 gimbal.o(.text.Gimbal_Init) - [Anonymous Symbol] 0x08003f24 Section 0 gimbal.o(.text.Gimbal_Output) - Gimbal_SetMode 0x08004039 Thumb Code 180 gimbal.o(.text.Gimbal_SetMode) - [Anonymous Symbol] 0x08004038 Section 0 gimbal.o(.text.Gimbal_SetMode) - [Anonymous Symbol] 0x080040ec Section 0 gimbal.o(.text.Gimbal_UpdateFeedback) - [Anonymous Symbol] 0x08004254 Section 0 gimbal.o(.text.Gimbal_UpdateIMU) - [Anonymous Symbol] 0x080042a0 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_ActivateNotification) - [Anonymous Symbol] 0x080042f4 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_AddTxMessage) - [Anonymous Symbol] 0x0800444c Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_ConfigFilter) - [Anonymous Symbol] 0x080045ec Section 0 can_1.o(.text.HAL_CAN_ErrorCallback) - [Anonymous Symbol] 0x0800463c Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_GetRxFifoFillLevel) - [Anonymous Symbol] 0x08004690 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_GetRxMessage) - [Anonymous Symbol] 0x080048a4 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_GetTxMailboxesFreeLevel) - [Anonymous Symbol] 0x08004914 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_IRQHandler) - [Anonymous Symbol] 0x08004d08 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_Init) - [Anonymous Symbol] 0x08004ee8 Section 0 can.o(.text.HAL_CAN_MspInit) - [Anonymous Symbol] 0x080050b8 Section 0 can_1.o(.text.HAL_CAN_RxFifo0FullCallback) - [Anonymous Symbol] 0x08005108 Section 0 can_1.o(.text.HAL_CAN_RxFifo0MsgPendingCallback) - [Anonymous Symbol] 0x08005158 Section 0 can_1.o(.text.HAL_CAN_RxFifo1FullCallback) - [Anonymous Symbol] 0x080051a8 Section 0 can_1.o(.text.HAL_CAN_RxFifo1MsgPendingCallback) - [Anonymous Symbol] 0x080051f8 Section 0 can_1.o(.text.HAL_CAN_SleepCallback) - [Anonymous Symbol] 0x08005248 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_Start) - [Anonymous Symbol] 0x080052d4 Section 0 can_1.o(.text.HAL_CAN_TxMailbox0AbortCallback) - [Anonymous Symbol] 0x08005324 Section 0 can_1.o(.text.HAL_CAN_TxMailbox0CompleteCallback) - [Anonymous Symbol] 0x08005370 Section 0 can_1.o(.text.HAL_CAN_TxMailbox1AbortCallback) - [Anonymous Symbol] 0x080053c0 Section 0 can_1.o(.text.HAL_CAN_TxMailbox1CompleteCallback) - [Anonymous Symbol] 0x08005410 Section 0 can_1.o(.text.HAL_CAN_TxMailbox2AbortCallback) - [Anonymous Symbol] 0x08005460 Section 0 can_1.o(.text.HAL_CAN_TxMailbox2CompleteCallback) - [Anonymous Symbol] 0x080054b0 Section 0 can_1.o(.text.HAL_CAN_WakeUpFromRxMsgCallback) - [Anonymous Symbol] 0x08005500 Section 0 stm32f4xx_hal_dma.o(.text.HAL_DMA_Abort) - [Anonymous Symbol] 0x080055ec Section 0 stm32f4xx_hal_dma.o(.text.HAL_DMA_Abort_IT) - [Anonymous Symbol] 0x08005630 Section 0 stm32f4xx_hal_dma.o(.text.HAL_DMA_GetState) - [Anonymous Symbol] 0x08005640 Section 0 stm32f4xx_hal_dma.o(.text.HAL_DMA_IRQHandler) - [Anonymous Symbol] 0x08005960 Section 0 stm32f4xx_hal_dma.o(.text.HAL_DMA_Init) - [Anonymous Symbol] 0x08005ad0 Section 0 stm32f4xx_hal_dma.o(.text.HAL_DMA_Start_IT) - [Anonymous Symbol] 0x08005b94 Section 0 stm32f4xx_hal.o(.text.HAL_Delay) - [Anonymous Symbol] 0x08005bd8 Section 0 gpio_1.o(.text.HAL_GPIO_EXTI_Callback) - [Anonymous Symbol] 0x08005c40 Section 0 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_EXTI_IRQHandler) - [Anonymous Symbol] 0x08005c78 Section 0 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_Init) - [Anonymous Symbol] 0x08006030 Section 0 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_ReadPin) - [Anonymous Symbol] 0x08006060 Section 0 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_WritePin) - [Anonymous Symbol] 0x08006090 Section 0 stm32f4xx_hal.o(.text.HAL_GetTick) - [Anonymous Symbol] 0x0800609c Section 0 i2c_1.o(.text.HAL_I2C_AbortCpltCallback) - [Anonymous Symbol] 0x080060f0 Section 0 stm32f4xx_hal_i2c.o(.text.HAL_I2C_AddrCallback) - [Anonymous Symbol] 0x08006100 Section 0 stm32f4xx_hal_i2c.o(.text.HAL_I2C_ER_IRQHandler) - [Anonymous Symbol] 0x0800627c Section 0 stm32f4xx_hal_i2c.o(.text.HAL_I2C_EV_IRQHandler) - [Anonymous Symbol] 0x08006648 Section 0 i2c_1.o(.text.HAL_I2C_ErrorCallback) - [Anonymous Symbol] 0x0800669c Section 0 stm32f4xx_hal_i2c.o(.text.HAL_I2C_Init) - [Anonymous Symbol] 0x08006940 Section 0 i2c_1.o(.text.HAL_I2C_ListenCpltCallback) - [Anonymous Symbol] 0x08006994 Section 0 i2c_1.o(.text.HAL_I2C_MasterRxCpltCallback) - [Anonymous Symbol] 0x080069e8 Section 0 i2c_1.o(.text.HAL_I2C_MasterTxCpltCallback) - [Anonymous Symbol] 0x08006a38 Section 0 i2c_1.o(.text.HAL_I2C_MemRxCpltCallback) - [Anonymous Symbol] 0x08006a8c Section 0 i2c_1.o(.text.HAL_I2C_MemTxCpltCallback) - [Anonymous Symbol] 0x08006ae0 Section 0 i2c.o(.text.HAL_I2C_MspInit) - [Anonymous Symbol] 0x08006c14 Section 0 i2c_1.o(.text.HAL_I2C_SlaveRxCpltCallback) - [Anonymous Symbol] 0x08006c68 Section 0 i2c_1.o(.text.HAL_I2C_SlaveTxCpltCallback) - [Anonymous Symbol] 0x08006cbc Section 0 stm32f4xx_hal.o(.text.HAL_IncTick) - [Anonymous Symbol] 0x08006cd8 Section 0 stm32f4xx_hal.o(.text.HAL_Init) - [Anonymous Symbol] 0x08006d10 Section 0 stm32f4xx_hal.o(.text.HAL_InitTick) - [Anonymous Symbol] 0x08006d80 Section 0 stm32f4xx_hal_msp.o(.text.HAL_MspInit) - [Anonymous Symbol] 0x08006dd8 Section 0 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_DisableIRQ) - [Anonymous Symbol] 0x08006dec Section 0 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_EnableIRQ) - [Anonymous Symbol] 0x08006e00 Section 0 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_SetPriority) - [Anonymous Symbol] 0x08006e34 Section 0 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_SetPriorityGrouping) - [Anonymous Symbol] 0x08006e44 Section 0 stm32f4xx_hal_rcc.o(.text.HAL_RCC_ClockConfig) - [Anonymous Symbol] 0x080070a8 Section 0 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetHCLKFreq) - [Anonymous Symbol] 0x080070b4 Section 0 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetPCLK1Freq) - [Anonymous Symbol] 0x080070d8 Section 0 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetPCLK2Freq) - [Anonymous Symbol] 0x080070fc Section 0 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetSysClockFreq) - [Anonymous Symbol] 0x080071e4 Section 0 stm32f4xx_hal_rcc.o(.text.HAL_RCC_OscConfig) - [Anonymous Symbol] 0x080078a4 Section 0 spi_1.o(.text.HAL_SPI_ErrorCallback) - [Anonymous Symbol] 0x080078f8 Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_Init) - [Anonymous Symbol] 0x080079f8 Section 0 spi.o(.text.HAL_SPI_MspInit) - [Anonymous Symbol] 0x08007c08 Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive) - [Anonymous Symbol] 0x08007e58 Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive_DMA) - [Anonymous Symbol] 0x08007ff0 Section 0 spi_1.o(.text.HAL_SPI_RxCpltCallback) - [Anonymous Symbol] 0x08008044 Section 0 spi_1.o(.text.HAL_SPI_RxHalfCpltCallback) - [Anonymous Symbol] 0x08008098 Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_Transmit) - [Anonymous Symbol] 0x0800833c Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive) - [Anonymous Symbol] 0x080086e0 Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA) - [Anonymous Symbol] 0x080088f4 Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_Transmit_DMA) - [Anonymous Symbol] 0x08008a60 Section 0 spi_1.o(.text.HAL_SPI_TxCpltCallback) - [Anonymous Symbol] 0x08008aa8 Section 0 spi_1.o(.text.HAL_SPI_TxHalfCpltCallback) - [Anonymous Symbol] 0x08008afc Section 0 spi_1.o(.text.HAL_SPI_TxRxCpltCallback) - [Anonymous Symbol] 0x08008b50 Section 0 spi_1.o(.text.HAL_SPI_TxRxHalfCpltCallback) - [Anonymous Symbol] 0x08008ba4 Section 0 stm32f4xx_hal_cortex.o(.text.HAL_SYSTICK_Config) - [Anonymous Symbol] 0x08008bb4 Section 0 stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_BreakCallback) - [Anonymous Symbol] 0x08008bbc Section 0 stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutCallback) - [Anonymous Symbol] 0x08008bc4 Section 0 stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_MasterConfigSynchronization) - [Anonymous Symbol] 0x08008ce8 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_Base_Init) - [Anonymous Symbol] 0x08008d84 Section 0 tim.o(.text.HAL_TIM_Base_MspInit) - [Anonymous Symbol] 0x08008e10 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_IC_CaptureCallback) - [Anonymous Symbol] 0x08008e18 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_IRQHandler) - [Anonymous Symbol] 0x08009034 Section 0 tim.o(.text.HAL_TIM_MspPostInit) - [Anonymous Symbol] 0x080090a0 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_OC_DelayElapsedCallback) - [Anonymous Symbol] 0x080090a8 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_ConfigChannel) - [Anonymous Symbol] 0x080091ec Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_Init) - [Anonymous Symbol] 0x08009288 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_MspInit) - [Anonymous Symbol] 0x08009290 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedCallback) - [Anonymous Symbol] 0x08009298 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_Start) - [Anonymous Symbol] 0x08009464 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_PeriodElapsedCallback) - [Anonymous Symbol] 0x0800946c Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_TriggerCallback) - [Anonymous Symbol] 0x08009474 Section 0 stm32f4xx_hal_uart.o(.text.HAL_UARTEx_RxEventCallback) - [Anonymous Symbol] 0x08009480 Section 0 uart.o(.text.HAL_UART_ErrorCallback) - [Anonymous Symbol] 0x080094d4 Section 0 stm32f4xx_hal_uart.o(.text.HAL_UART_IRQHandler) - [Anonymous Symbol] 0x08009930 Section 0 stm32f4xx_hal_uart.o(.text.HAL_UART_Init) - [Anonymous Symbol] 0x080099d0 Section 0 usart.o(.text.HAL_UART_MspInit) - [Anonymous Symbol] 0x08009b9c Section 0 uart.o(.text.HAL_UART_RxCpltCallback) - [Anonymous Symbol] 0x08009bf0 Section 0 uart.o(.text.HAL_UART_TxCpltCallback) - [Anonymous Symbol] 0x08009c44 Section 0 stm32f4xx_it.o(.text.HardFault_Handler) - [Anonymous Symbol] 0x08009c48 Section 0 stm32f4xx_it.o(.text.I2C1_ER_IRQHandler) - [Anonymous Symbol] 0x08009c58 Section 0 stm32f4xx_it.o(.text.I2C1_EV_IRQHandler) - I2C_ConvertOtherXferOptions 0x08009c69 Thumb Code 52 stm32f4xx_hal_i2c.o(.text.I2C_ConvertOtherXferOptions) - [Anonymous Symbol] 0x08009c68 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_ConvertOtherXferOptions) - I2C_DMAAbort 0x08009c9d Thumb Code 342 stm32f4xx_hal_i2c.o(.text.I2C_DMAAbort) - [Anonymous Symbol] 0x08009c9c Section 0 stm32f4xx_hal_i2c.o(.text.I2C_DMAAbort) - I2C_Flush_DR 0x08009df5 Thumb Code 36 stm32f4xx_hal_i2c.o(.text.I2C_Flush_DR) - [Anonymous Symbol] 0x08009df4 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Flush_DR) - I2C_Get 0x08009e19 Thumb Code 72 i2c_1.o(.text.I2C_Get) - [Anonymous Symbol] 0x08009e18 Section 0 i2c_1.o(.text.I2C_Get) - I2C_ITError 0x08009e61 Thumb Code 634 stm32f4xx_hal_i2c.o(.text.I2C_ITError) - [Anonymous Symbol] 0x08009e60 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_ITError) - I2C_MasterReceive_BTF 0x0800a0dd Thumb Code 428 stm32f4xx_hal_i2c.o(.text.I2C_MasterReceive_BTF) - [Anonymous Symbol] 0x0800a0dc Section 0 stm32f4xx_hal_i2c.o(.text.I2C_MasterReceive_BTF) - I2C_MasterReceive_RXNE 0x0800a289 Thumb Code 362 stm32f4xx_hal_i2c.o(.text.I2C_MasterReceive_RXNE) - [Anonymous Symbol] 0x0800a288 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_MasterReceive_RXNE) - I2C_MasterTransmit_BTF 0x0800a3f5 Thumb Code 222 stm32f4xx_hal_i2c.o(.text.I2C_MasterTransmit_BTF) - [Anonymous Symbol] 0x0800a3f4 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_MasterTransmit_BTF) - I2C_MasterTransmit_TXE 0x0800a4d5 Thumb Code 318 stm32f4xx_hal_i2c.o(.text.I2C_MasterTransmit_TXE) - [Anonymous Symbol] 0x0800a4d4 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_MasterTransmit_TXE) - I2C_Master_ADD10 0x0800a615 Thumb Code 70 stm32f4xx_hal_i2c.o(.text.I2C_Master_ADD10) - [Anonymous Symbol] 0x0800a614 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Master_ADD10) - I2C_Master_ADDR 0x0800a65d Thumb Code 830 stm32f4xx_hal_i2c.o(.text.I2C_Master_ADDR) - [Anonymous Symbol] 0x0800a65c Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Master_ADDR) - I2C_Master_SB 0x0800a99d Thumb Code 240 stm32f4xx_hal_i2c.o(.text.I2C_Master_SB) - [Anonymous Symbol] 0x0800a99c Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Master_SB) - I2C_MemoryTransmit_TXE_BTF 0x0800aa8d Thumb Code 296 stm32f4xx_hal_i2c.o(.text.I2C_MemoryTransmit_TXE_BTF) - [Anonymous Symbol] 0x0800aa8c Section 0 stm32f4xx_hal_i2c.o(.text.I2C_MemoryTransmit_TXE_BTF) - I2C_SlaveReceive_BTF 0x0800abb5 Thumb Code 46 stm32f4xx_hal_i2c.o(.text.I2C_SlaveReceive_BTF) - [Anonymous Symbol] 0x0800abb4 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_SlaveReceive_BTF) - I2C_SlaveReceive_RXNE 0x0800abe5 Thumb Code 110 stm32f4xx_hal_i2c.o(.text.I2C_SlaveReceive_RXNE) - [Anonymous Symbol] 0x0800abe4 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_SlaveReceive_RXNE) - I2C_SlaveTransmit_BTF 0x0800ac55 Thumb Code 44 stm32f4xx_hal_i2c.o(.text.I2C_SlaveTransmit_BTF) - [Anonymous Symbol] 0x0800ac54 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_SlaveTransmit_BTF) - I2C_SlaveTransmit_TXE 0x0800ac81 Thumb Code 108 stm32f4xx_hal_i2c.o(.text.I2C_SlaveTransmit_TXE) - [Anonymous Symbol] 0x0800ac80 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_SlaveTransmit_TXE) - I2C_Slave_ADDR 0x0800aced Thumb Code 174 stm32f4xx_hal_i2c.o(.text.I2C_Slave_ADDR) - [Anonymous Symbol] 0x0800acec Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Slave_ADDR) - I2C_Slave_AF 0x0800ad9d Thumb Code 228 stm32f4xx_hal_i2c.o(.text.I2C_Slave_AF) - [Anonymous Symbol] 0x0800ad9c Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Slave_AF) - I2C_Slave_STOPF 0x0800ae81 Thumb Code 586 stm32f4xx_hal_i2c.o(.text.I2C_Slave_STOPF) - [Anonymous Symbol] 0x0800ae80 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Slave_STOPF) - I2C_WaitOnSTOPRequestThroughIT 0x0800b0cd Thumb Code 120 stm32f4xx_hal_i2c.o(.text.I2C_WaitOnSTOPRequestThroughIT) - [Anonymous Symbol] 0x0800b0cc Section 0 stm32f4xx_hal_i2c.o(.text.I2C_WaitOnSTOPRequestThroughIT) - [Anonymous Symbol] 0x0800b144 Section 0 user_math.o(.text.InvSqrt) - [Anonymous Symbol] 0x0800b1bc Section 0 filter.o(.text.LowPassFilter2p_Apply) - [Anonymous Symbol] 0x0800b274 Section 0 filter.o(.text.LowPassFilter2p_Init) - [Anonymous Symbol] 0x0800b3b0 Section 0 filter.o(.text.LowPassFilter2p_Reset) - MOTOR_DM_CreateCANManager 0x0800b445 Thumb Code 150 motor_dm.o(.text.MOTOR_DM_CreateCANManager) - [Anonymous Symbol] 0x0800b444 Section 0 motor_dm.o(.text.MOTOR_DM_CreateCANManager) - [Anonymous Symbol] 0x0800b4dc Section 0 motor_dm.o(.text.MOTOR_DM_Enable) - MOTOR_DM_GetCANManager 0x0800b559 Thumb Code 48 motor_dm.o(.text.MOTOR_DM_GetCANManager) - [Anonymous Symbol] 0x0800b558 Section 0 motor_dm.o(.text.MOTOR_DM_GetCANManager) - [Anonymous Symbol] 0x0800b588 Section 0 motor_dm.o(.text.MOTOR_DM_GetMotor) - [Anonymous Symbol] 0x0800b610 Section 0 motor_dm.o(.text.MOTOR_DM_MITCtrl) - MOTOR_DM_ParseFeedbackFrame 0x0800b659 Thumb Code 344 motor_dm.o(.text.MOTOR_DM_ParseFeedbackFrame) - [Anonymous Symbol] 0x0800b658 Section 0 motor_dm.o(.text.MOTOR_DM_ParseFeedbackFrame) - [Anonymous Symbol] 0x0800b7b0 Section 0 motor_dm.o(.text.MOTOR_DM_Register) - MOTOR_DM_SendMITCmd 0x0800b8dd Thumb Code 324 motor_dm.o(.text.MOTOR_DM_SendMITCmd) - [Anonymous Symbol] 0x0800b8dc Section 0 motor_dm.o(.text.MOTOR_DM_SendMITCmd) - [Anonymous Symbol] 0x0800ba20 Section 0 motor_dm.o(.text.MOTOR_DM_Update) - MOTOR_RM_CreateCANManager 0x0800bb2d Thumb Code 150 motor_rm.o(.text.MOTOR_RM_CreateCANManager) - [Anonymous Symbol] 0x0800bb2c Section 0 motor_rm.o(.text.MOTOR_RM_CreateCANManager) - [Anonymous Symbol] 0x0800bbc4 Section 0 motor_rm.o(.text.MOTOR_RM_Ctrl) - MOTOR_RM_GetCANManager 0x0800bd35 Thumb Code 48 motor_rm.o(.text.MOTOR_RM_GetCANManager) - [Anonymous Symbol] 0x0800bd34 Section 0 motor_rm.o(.text.MOTOR_RM_GetCANManager) - MOTOR_RM_GetLSB 0x0800bd65 Thumb Code 82 motor_rm.o(.text.MOTOR_RM_GetLSB) - [Anonymous Symbol] 0x0800bd64 Section 0 motor_rm.o(.text.MOTOR_RM_GetLSB) - MOTOR_RM_GetLogicalIndex 0x0800bdb9 Thumb Code 128 motor_rm.o(.text.MOTOR_RM_GetLogicalIndex) - [Anonymous Symbol] 0x0800bdb8 Section 0 motor_rm.o(.text.MOTOR_RM_GetLogicalIndex) - [Anonymous Symbol] 0x0800be38 Section 0 motor_rm.o(.text.MOTOR_RM_GetMotor) - MOTOR_RM_GetRatio 0x0800beb1 Thumb Code 80 motor_rm.o(.text.MOTOR_RM_GetRatio) - [Anonymous Symbol] 0x0800beb0 Section 0 motor_rm.o(.text.MOTOR_RM_GetRatio) - [Anonymous Symbol] 0x0800bf00 Section 0 motor_rm.o(.text.MOTOR_RM_Register) - [Anonymous Symbol] 0x0800c020 Section 0 motor_rm.o(.text.MOTOR_RM_SetOutput) - [Anonymous Symbol] 0x0800c13c Section 0 motor_rm.o(.text.MOTOR_RM_Update) - [Anonymous Symbol] 0x0800c240 Section 0 can.o(.text.MX_CAN1_Init) - [Anonymous Symbol] 0x0800c290 Section 0 can.o(.text.MX_CAN2_Init) - [Anonymous Symbol] 0x0800c2e0 Section 0 dma.o(.text.MX_DMA_Init) - [Anonymous Symbol] 0x0800c368 Section 0 freertos.o(.text.MX_FREERTOS_Init) - [Anonymous Symbol] 0x0800c3a8 Section 0 gpio.o(.text.MX_GPIO_Init) - [Anonymous Symbol] 0x0800c5d4 Section 0 i2c.o(.text.MX_I2C1_Init) - [Anonymous Symbol] 0x0800c61c Section 0 i2c.o(.text.MX_I2C2_Init) - [Anonymous Symbol] 0x0800c664 Section 0 spi.o(.text.MX_SPI1_Init) - [Anonymous Symbol] 0x0800c6b8 Section 0 spi.o(.text.MX_SPI2_Init) - [Anonymous Symbol] 0x0800c70c Section 0 tim.o(.text.MX_TIM10_Init) - [Anonymous Symbol] 0x0800c79c Section 0 tim.o(.text.MX_TIM7_Init) - [Anonymous Symbol] 0x0800c7f4 Section 0 usart.o(.text.MX_USART1_UART_Init) - [Anonymous Symbol] 0x0800c834 Section 0 usart.o(.text.MX_USART3_UART_Init) - [Anonymous Symbol] 0x0800c880 Section 0 stm32f4xx_it.o(.text.MemManage_Handler) - Motor_RM_Decode 0x0800c885 Thumb Code 540 motor_rm.o(.text.Motor_RM_Decode) - [Anonymous Symbol] 0x0800c884 Section 0 motor_rm.o(.text.Motor_RM_Decode) - [Anonymous Symbol] 0x0800caa0 Section 0 stm32f4xx_it.o(.text.NMI_Handler) - NVIC_EncodePriority 0x0800caa5 Thumb Code 108 stm32f4xx_hal_cortex.o(.text.NVIC_EncodePriority) - [Anonymous Symbol] 0x0800caa4 Section 0 stm32f4xx_hal_cortex.o(.text.NVIC_EncodePriority) - [Anonymous Symbol] 0x0800cb10 Section 0 pid.o(.text.PID_Calc) - [Anonymous Symbol] 0x0800ce00 Section 0 pid.o(.text.PID_Init) - [Anonymous Symbol] 0x0800cf98 Section 0 pid.o(.text.PID_Reset) - [Anonymous Symbol] 0x0800cfe0 Section 0 port.o(.text.PendSV_Handler) - pxCurrentTCBConst 0x0800d040 Number 0 port.o(.text.PendSV_Handler) - [Anonymous Symbol] 0x0800d044 Section 0 bsp_rc.o(.text.RC_Init) - [Anonymous Symbol] 0x0800d0d8 Section 0 bsp_rc.o(.text.RC_restart) - SPI_DMAError 0x0800d135 Thumb Code 52 stm32f4xx_hal_spi.o(.text.SPI_DMAError) - [Anonymous Symbol] 0x0800d134 Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMAError) - SPI_DMAHalfReceiveCplt 0x0800d169 Thumb Code 22 stm32f4xx_hal_spi.o(.text.SPI_DMAHalfReceiveCplt) - [Anonymous Symbol] 0x0800d168 Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMAHalfReceiveCplt) - SPI_DMAHalfTransmitCplt 0x0800d181 Thumb Code 22 stm32f4xx_hal_spi.o(.text.SPI_DMAHalfTransmitCplt) - [Anonymous Symbol] 0x0800d180 Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMAHalfTransmitCplt) - SPI_DMAHalfTransmitReceiveCplt 0x0800d199 Thumb Code 22 stm32f4xx_hal_spi.o(.text.SPI_DMAHalfTransmitReceiveCplt) - [Anonymous Symbol] 0x0800d198 Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMAHalfTransmitReceiveCplt) - SPI_DMAReceiveCplt 0x0800d1b1 Thumb Code 162 stm32f4xx_hal_spi.o(.text.SPI_DMAReceiveCplt) - [Anonymous Symbol] 0x0800d1b0 Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMAReceiveCplt) - SPI_DMATransmitCplt 0x0800d255 Thumb Code 166 stm32f4xx_hal_spi.o(.text.SPI_DMATransmitCplt) - [Anonymous Symbol] 0x0800d254 Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMATransmitCplt) - SPI_DMATransmitReceiveCplt 0x0800d2fd Thumb Code 134 stm32f4xx_hal_spi.o(.text.SPI_DMATransmitReceiveCplt) - [Anonymous Symbol] 0x0800d2fc Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMATransmitReceiveCplt) - SPI_EndRxTransaction 0x0800d385 Thumb Code 228 stm32f4xx_hal_spi.o(.text.SPI_EndRxTransaction) - [Anonymous Symbol] 0x0800d384 Section 0 stm32f4xx_hal_spi.o(.text.SPI_EndRxTransaction) - SPI_EndRxTxTransaction 0x0800d469 Thumb Code 204 stm32f4xx_hal_spi.o(.text.SPI_EndRxTxTransaction) - [Anonymous Symbol] 0x0800d468 Section 0 stm32f4xx_hal_spi.o(.text.SPI_EndRxTxTransaction) - SPI_Get 0x0800d535 Thumb Code 46 spi_1.o(.text.SPI_Get) - [Anonymous Symbol] 0x0800d534 Section 0 spi_1.o(.text.SPI_Get) - SPI_WaitFlagStateUntilTimeout 0x0800d565 Thumb Code 300 stm32f4xx_hal_spi.o(.text.SPI_WaitFlagStateUntilTimeout) - [Anonymous Symbol] 0x0800d564 Section 0 stm32f4xx_hal_spi.o(.text.SPI_WaitFlagStateUntilTimeout) - [Anonymous Symbol] 0x0800d690 Section 0 port.o(.text.SVC_Handler) - pxCurrentTCBConst2 0x0800d6b0 Number 0 port.o(.text.SVC_Handler) - SVC_Setup 0x0800d6b5 Thumb Code 14 cmsis_os2.o(.text.SVC_Setup) - [Anonymous Symbol] 0x0800d6b4 Section 0 cmsis_os2.o(.text.SVC_Setup) - [Anonymous Symbol] 0x0800d6c4 Section 0 freertos.o(.text.StartDefaultTask) - SysTick_Config 0x0800d6d9 Thumb Code 82 stm32f4xx_hal_cortex.o(.text.SysTick_Config) - [Anonymous Symbol] 0x0800d6d8 Section 0 stm32f4xx_hal_cortex.o(.text.SysTick_Config) - [Anonymous Symbol] 0x0800d72c Section 0 stm32f4xx_it.o(.text.SysTick_Handler) - [Anonymous Symbol] 0x0800d744 Section 0 main.o(.text.SystemClock_Config) - [Anonymous Symbol] 0x0800d800 Section 0 system_stm32f4xx.o(.text.SystemInit) - [Anonymous Symbol] 0x0800d814 Section 0 stm32f4xx_it.o(.text.TIM7_IRQHandler) - [Anonymous Symbol] 0x0800d824 Section 0 stm32f4xx_hal_tim.o(.text.TIM_Base_SetConfig) - [Anonymous Symbol] 0x0800d9c8 Section 0 stm32f4xx_hal_tim.o(.text.TIM_CCxChannelCmd) - TIM_OC1_SetConfig 0x0800da01 Thumb Code 234 stm32f4xx_hal_tim.o(.text.TIM_OC1_SetConfig) - [Anonymous Symbol] 0x0800da00 Section 0 stm32f4xx_hal_tim.o(.text.TIM_OC1_SetConfig) - [Anonymous Symbol] 0x0800daec Section 0 stm32f4xx_hal_tim.o(.text.TIM_OC2_SetConfig) - TIM_OC3_SetConfig 0x0800dbe1 Thumb Code 242 stm32f4xx_hal_tim.o(.text.TIM_OC3_SetConfig) - [Anonymous Symbol] 0x0800dbe0 Section 0 stm32f4xx_hal_tim.o(.text.TIM_OC3_SetConfig) - TIM_OC4_SetConfig 0x0800dcd5 Thumb Code 164 stm32f4xx_hal_tim.o(.text.TIM_OC4_SetConfig) - [Anonymous Symbol] 0x0800dcd4 Section 0 stm32f4xx_hal_tim.o(.text.TIM_OC4_SetConfig) - [Anonymous Symbol] 0x0800dd78 Section 0 init.o(.text.Task_Init) - [Anonymous Symbol] 0x0800de30 Section 0 atti_esti.o(.text.Task_atti_esti) - [Anonymous Symbol] 0x0800dfc0 Section 0 gimbal_ctrl.o(.text.Task_gimbal_ctrl) - [Anonymous Symbol] 0x0800e0b0 Section 0 remote.o(.text.Task_remote) - UART_DMAAbortOnError 0x0800e151 Thumb Code 28 stm32f4xx_hal_uart.o(.text.UART_DMAAbortOnError) - [Anonymous Symbol] 0x0800e150 Section 0 stm32f4xx_hal_uart.o(.text.UART_DMAAbortOnError) - UART_EndRxTransfer 0x0800e16d Thumb Code 148 stm32f4xx_hal_uart.o(.text.UART_EndRxTransfer) - [Anonymous Symbol] 0x0800e16c Section 0 stm32f4xx_hal_uart.o(.text.UART_EndRxTransfer) - UART_EndTransmit_IT 0x0800e201 Thumb Code 38 stm32f4xx_hal_uart.o(.text.UART_EndTransmit_IT) - [Anonymous Symbol] 0x0800e200 Section 0 stm32f4xx_hal_uart.o(.text.UART_EndTransmit_IT) - UART_Get 0x0800e229 Thumb Code 46 uart.o(.text.UART_Get) - [Anonymous Symbol] 0x0800e228 Section 0 uart.o(.text.UART_Get) - UART_Receive_IT 0x0800e259 Thumb Code 360 stm32f4xx_hal_uart.o(.text.UART_Receive_IT) - [Anonymous Symbol] 0x0800e258 Section 0 stm32f4xx_hal_uart.o(.text.UART_Receive_IT) - UART_SetConfig 0x0800e3c1 Thumb Code 314 stm32f4xx_hal_uart.o(.text.UART_SetConfig) - [Anonymous Symbol] 0x0800e3c0 Section 0 stm32f4xx_hal_uart.o(.text.UART_SetConfig) - UART_Transmit_IT 0x0800e4fd Thumb Code 148 stm32f4xx_hal_uart.o(.text.UART_Transmit_IT) - [Anonymous Symbol] 0x0800e4fc Section 0 stm32f4xx_hal_uart.o(.text.UART_Transmit_IT) - [Anonymous Symbol] 0x0800e590 Section 0 stm32f4xx_it.o(.text.USART3_IRQHandler) - [Anonymous Symbol] 0x0800e5b0 Section 0 remote_control.o(.text.USART3_IRQHandler1) - [Anonymous Symbol] 0x0800e5d4 Section 0 stm32f4xx_it.o(.text.UsageFault_Handler) - __ARM_isfinite 0x0800e5d9 Thumb Code 30 filter.o(.text.__ARM_isfinite) - [Anonymous Symbol] 0x0800e5d8 Section 0 filter.o(.text.__ARM_isfinite) - __ARM_isfinite 0x0800e5f9 Thumb Code 30 pid.o(.text.__ARM_isfinite) - [Anonymous Symbol] 0x0800e5f8 Section 0 pid.o(.text.__ARM_isfinite) - __ARM_isfinitef 0x0800e619 Thumb Code 24 filter.o(.text.__ARM_isfinitef) - [Anonymous Symbol] 0x0800e618 Section 0 filter.o(.text.__ARM_isfinitef) - __ARM_isfinitef 0x0800e631 Thumb Code 24 pid.o(.text.__ARM_isfinitef) - [Anonymous Symbol] 0x0800e630 Section 0 pid.o(.text.__ARM_isfinitef) - __ARM_isinf 0x0800e649 Thumb Code 52 filter.o(.text.__ARM_isinf) - [Anonymous Symbol] 0x0800e648 Section 0 filter.o(.text.__ARM_isinf) - __ARM_isinff 0x0800e67d Thumb Code 28 filter.o(.text.__ARM_isinff) - [Anonymous Symbol] 0x0800e67c Section 0 filter.o(.text.__ARM_isinff) - __NVIC_DisableIRQ 0x0800e699 Thumb Code 56 stm32f4xx_hal_cortex.o(.text.__NVIC_DisableIRQ) - [Anonymous Symbol] 0x0800e698 Section 0 stm32f4xx_hal_cortex.o(.text.__NVIC_DisableIRQ) - __NVIC_EnableIRQ 0x0800e6d1 Thumb Code 48 stm32f4xx_hal_cortex.o(.text.__NVIC_EnableIRQ) - [Anonymous Symbol] 0x0800e6d0 Section 0 stm32f4xx_hal_cortex.o(.text.__NVIC_EnableIRQ) - __NVIC_GetPriorityGrouping 0x0800e701 Thumb Code 16 stm32f4xx_hal_cortex.o(.text.__NVIC_GetPriorityGrouping) - [Anonymous Symbol] 0x0800e700 Section 0 stm32f4xx_hal_cortex.o(.text.__NVIC_GetPriorityGrouping) - __NVIC_SetPriority 0x0800e711 Thumb Code 66 stm32f4xx_hal_cortex.o(.text.__NVIC_SetPriority) - [Anonymous Symbol] 0x0800e710 Section 0 stm32f4xx_hal_cortex.o(.text.__NVIC_SetPriority) - __NVIC_SetPriority 0x0800e755 Thumb Code 66 cmsis_os2.o(.text.__NVIC_SetPriority) - [Anonymous Symbol] 0x0800e754 Section 0 cmsis_os2.o(.text.__NVIC_SetPriority) - __NVIC_SetPriorityGrouping 0x0800e799 Thumb Code 60 stm32f4xx_hal_cortex.o(.text.__NVIC_SetPriorityGrouping) - [Anonymous Symbol] 0x0800e798 Section 0 stm32f4xx_hal_cortex.o(.text.__NVIC_SetPriorityGrouping) - [Anonymous Symbol] 0x0800e7d4 Section 0 freertos.o(.text.configureTimerForRunTimeStats) - copysignf 0x0800e7d9 Thumb Code 30 ahrs.o(.text.copysignf) - [Anonymous Symbol] 0x0800e7d8 Section 0 ahrs.o(.text.copysignf) - [Anonymous Symbol] 0x0800e7f8 Section 0 bsp_delay.o(.text.delay_init) - [Anonymous Symbol] 0x0800e838 Section 0 tasks.o(.text.eTaskGetState) - float_to_uint 0x0800e931 Thumb Code 88 motor_dm.o(.text.float_to_uint) - [Anonymous Symbol] 0x0800e930 Section 0 motor_dm.o(.text.float_to_uint) - [Anonymous Symbol] 0x0800e988 Section 0 freertos.o(.text.getRunTimeCounterValue) - [Anonymous Symbol] 0x0800e98c Section 0 main.o(.text.main) - [Anonymous Symbol] 0x0800e9dc Section 0 calc_lib.o(.text.map) - [Anonymous Symbol] 0x0800ea08 Section 0 cmsis_os2.o(.text.osDelay) - [Anonymous Symbol] 0x0800ea3c Section 0 cmsis_os2.o(.text.osDelayUntil) - [Anonymous Symbol] 0x0800ea94 Section 0 cmsis_os2.o(.text.osKernelGetState) - [Anonymous Symbol] 0x0800eae8 Section 0 cmsis_os2.o(.text.osKernelGetTickCount) - [Anonymous Symbol] 0x0800eb10 Section 0 cmsis_os2.o(.text.osKernelGetTickFreq) - [Anonymous Symbol] 0x0800eb18 Section 0 cmsis_os2.o(.text.osKernelInitialize) - [Anonymous Symbol] 0x0800eb60 Section 0 cmsis_os2.o(.text.osKernelLock) - [Anonymous Symbol] 0x0800ebb8 Section 0 cmsis_os2.o(.text.osKernelStart) - [Anonymous Symbol] 0x0800ec0c Section 0 cmsis_os2.o(.text.osKernelUnlock) - [Anonymous Symbol] 0x0800ec7c Section 0 cmsis_os2.o(.text.osMessageQueueGet) - [Anonymous Symbol] 0x0800ed3c Section 0 cmsis_os2.o(.text.osMessageQueueNew) - [Anonymous Symbol] 0x0800ee3c Section 0 cmsis_os2.o(.text.osMessageQueuePut) - [Anonymous Symbol] 0x0800ef00 Section 0 cmsis_os2.o(.text.osMessageQueueReset) - [Anonymous Symbol] 0x0800ef40 Section 0 cmsis_os2.o(.text.osMutexAcquire) - [Anonymous Symbol] 0x0800efe0 Section 0 cmsis_os2.o(.text.osMutexNew) - [Anonymous Symbol] 0x0800f108 Section 0 cmsis_os2.o(.text.osMutexRelease) - [Anonymous Symbol] 0x0800f188 Section 0 cmsis_os2.o(.text.osThreadFlagsSet) - [Anonymous Symbol] 0x0800f22c Section 0 cmsis_os2.o(.text.osThreadFlagsWait) - [Anonymous Symbol] 0x0800f348 Section 0 cmsis_os2.o(.text.osThreadGetId) - [Anonymous Symbol] 0x0800f358 Section 0 cmsis_os2.o(.text.osThreadNew) - [Anonymous Symbol] 0x0800f4b4 Section 0 cmsis_os2.o(.text.osThreadTerminate) - prvAddCurrentTaskToDelayedList 0x0800f515 Thumb Code 212 tasks.o(.text.prvAddCurrentTaskToDelayedList) - [Anonymous Symbol] 0x0800f514 Section 0 tasks.o(.text.prvAddCurrentTaskToDelayedList) - prvAddNewTaskToReadyList 0x0800f5e9 Thumb Code 290 tasks.o(.text.prvAddNewTaskToReadyList) - [Anonymous Symbol] 0x0800f5e8 Section 0 tasks.o(.text.prvAddNewTaskToReadyList) - prvCheckForValidListAndQueue 0x0800f70d Thumb Code 162 timers.o(.text.prvCheckForValidListAndQueue) - [Anonymous Symbol] 0x0800f70c Section 0 timers.o(.text.prvCheckForValidListAndQueue) - prvCheckTasksWaitingTermination 0x0800f7b1 Thumb Code 90 tasks.o(.text.prvCheckTasksWaitingTermination) - [Anonymous Symbol] 0x0800f7b0 Section 0 tasks.o(.text.prvCheckTasksWaitingTermination) - prvCopyDataFromQueue 0x0800f80d Thumb Code 66 queue.o(.text.prvCopyDataFromQueue) - [Anonymous Symbol] 0x0800f80c Section 0 queue.o(.text.prvCopyDataFromQueue) - prvCopyDataToQueue 0x0800f851 Thumb Code 204 queue.o(.text.prvCopyDataToQueue) - [Anonymous Symbol] 0x0800f850 Section 0 queue.o(.text.prvCopyDataToQueue) - prvDeleteTCB 0x0800f91d Thumb Code 94 tasks.o(.text.prvDeleteTCB) - [Anonymous Symbol] 0x0800f91c Section 0 tasks.o(.text.prvDeleteTCB) - prvGetDisinheritPriorityAfterTimeout 0x0800f97d Thumb Code 38 queue.o(.text.prvGetDisinheritPriorityAfterTimeout) - [Anonymous Symbol] 0x0800f97c Section 0 queue.o(.text.prvGetDisinheritPriorityAfterTimeout) - prvGetNextExpireTime 0x0800f9a5 Thumb Code 64 timers.o(.text.prvGetNextExpireTime) - [Anonymous Symbol] 0x0800f9a4 Section 0 timers.o(.text.prvGetNextExpireTime) - prvHeapInit 0x0800f9e5 Thumb Code 188 heap_4.o(.text.prvHeapInit) - [Anonymous Symbol] 0x0800f9e4 Section 0 heap_4.o(.text.prvHeapInit) - prvIdleTask 0x0800faa1 Thumb Code 56 tasks.o(.text.prvIdleTask) - [Anonymous Symbol] 0x0800faa0 Section 0 tasks.o(.text.prvIdleTask) - prvInitialiseMutex 0x0800fad9 Thumb Code 44 queue.o(.text.prvInitialiseMutex) - [Anonymous Symbol] 0x0800fad8 Section 0 queue.o(.text.prvInitialiseMutex) - prvInitialiseNewQueue 0x0800fb05 Thumb Code 72 queue.o(.text.prvInitialiseNewQueue) - [Anonymous Symbol] 0x0800fb04 Section 0 queue.o(.text.prvInitialiseNewQueue) - prvInitialiseNewTask 0x0800fb4d Thumb Code 300 tasks.o(.text.prvInitialiseNewTask) - [Anonymous Symbol] 0x0800fb4c Section 0 tasks.o(.text.prvInitialiseNewTask) - prvInitialiseTaskLists 0x0800fc79 Thumb Code 142 tasks.o(.text.prvInitialiseTaskLists) - [Anonymous Symbol] 0x0800fc78 Section 0 tasks.o(.text.prvInitialiseTaskLists) - prvInsertBlockIntoFreeList 0x0800fd09 Thumb Code 198 heap_4.o(.text.prvInsertBlockIntoFreeList) - [Anonymous Symbol] 0x0800fd08 Section 0 heap_4.o(.text.prvInsertBlockIntoFreeList) - prvInsertTimerInActiveList 0x0800fdd1 Thumb Code 134 timers.o(.text.prvInsertTimerInActiveList) - [Anonymous Symbol] 0x0800fdd0 Section 0 timers.o(.text.prvInsertTimerInActiveList) - prvIsQueueEmpty 0x0800fe59 Thumb Code 40 queue.o(.text.prvIsQueueEmpty) - [Anonymous Symbol] 0x0800fe58 Section 0 queue.o(.text.prvIsQueueEmpty) - prvIsQueueFull 0x0800fe81 Thumb Code 46 queue.o(.text.prvIsQueueFull) - [Anonymous Symbol] 0x0800fe80 Section 0 queue.o(.text.prvIsQueueFull) - prvPortStartFirstTask 0x0800feb1 Thumb Code 34 port.o(.text.prvPortStartFirstTask) - [Anonymous Symbol] 0x0800feb0 Section 0 port.o(.text.prvPortStartFirstTask) - prvProcessExpiredTimer 0x0800fed9 Thumb Code 142 timers.o(.text.prvProcessExpiredTimer) - [Anonymous Symbol] 0x0800fed8 Section 0 timers.o(.text.prvProcessExpiredTimer) - prvProcessReceivedCommands 0x0800ff69 Thumb Code 402 timers.o(.text.prvProcessReceivedCommands) - [Anonymous Symbol] 0x0800ff68 Section 0 timers.o(.text.prvProcessReceivedCommands) - prvProcessTimerOrBlockTask 0x080100fd Thumb Code 154 timers.o(.text.prvProcessTimerOrBlockTask) - [Anonymous Symbol] 0x080100fc Section 0 timers.o(.text.prvProcessTimerOrBlockTask) - prvResetNextTaskUnblockTime 0x08010199 Thumb Code 70 tasks.o(.text.prvResetNextTaskUnblockTime) - [Anonymous Symbol] 0x08010198 Section 0 tasks.o(.text.prvResetNextTaskUnblockTime) - prvSampleTimeNow 0x080101e1 Thumb Code 68 timers.o(.text.prvSampleTimeNow) - [Anonymous Symbol] 0x080101e0 Section 0 timers.o(.text.prvSampleTimeNow) - prvSwitchTimerLists 0x08010225 Thumb Code 212 timers.o(.text.prvSwitchTimerLists) - [Anonymous Symbol] 0x08010224 Section 0 timers.o(.text.prvSwitchTimerLists) - prvTaskExitError 0x080102f9 Thumb Code 76 port.o(.text.prvTaskExitError) - [Anonymous Symbol] 0x080102f8 Section 0 port.o(.text.prvTaskExitError) - prvTimerTask 0x08010345 Thumb Code 30 timers.o(.text.prvTimerTask) - [Anonymous Symbol] 0x08010344 Section 0 timers.o(.text.prvTimerTask) - prvUnlockQueue 0x08010365 Thumb Code 174 queue.o(.text.prvUnlockQueue) - [Anonymous Symbol] 0x08010364 Section 0 queue.o(.text.prvUnlockQueue) - [Anonymous Symbol] 0x08010414 Section 0 heap_4.o(.text.pvPortMalloc) - [Anonymous Symbol] 0x08010600 Section 0 tasks.o(.text.pvTaskIncrementMutexHeldCount) - [Anonymous Symbol] 0x0801062c Section 0 port.o(.text.pxPortInitialiseStack) - [Anonymous Symbol] 0x08010690 Section 0 ai.o(.text.remote_ParseHost) - [Anonymous Symbol] 0x08010740 Section 0 remote_control.o(.text.remote_control_init) - sbus_to_rc 0x08010759 Thumb Code 656 remote_control.o(.text.sbus_to_rc) - [Anonymous Symbol] 0x08010758 Section 0 remote_control.o(.text.sbus_to_rc) - uint_to_float 0x080109e9 Thumb Code 82 motor_dm.o(.text.uint_to_float) - [Anonymous Symbol] 0x080109e8 Section 0 motor_dm.o(.text.uint_to_float) - [Anonymous Symbol] 0x08010a3c Section 0 calc_lib.o(.text.user_delay_ms) - [Anonymous Symbol] 0x08010a6c Section 0 calc_lib.o(.text.user_delay_us) - [Anonymous Symbol] 0x08010ab0 Section 0 list.o(.text.uxListRemove) - [Anonymous Symbol] 0x08010af8 Section 0 cmsis_os2.o(.text.vApplicationGetIdleTaskMemory) - [Anonymous Symbol] 0x08010b24 Section 0 cmsis_os2.o(.text.vApplicationGetTimerTaskMemory) - [Anonymous Symbol] 0x08010b50 Section 0 freertos.o(.text.vApplicationStackOverflowHook) - [Anonymous Symbol] 0x08010b5c Section 0 list.o(.text.vListInitialise) - [Anonymous Symbol] 0x08010b8c Section 0 list.o(.text.vListInitialiseItem) - [Anonymous Symbol] 0x08010b9c Section 0 list.o(.text.vListInsert) - [Anonymous Symbol] 0x08010c08 Section 0 list.o(.text.vListInsertEnd) - vPortEnableVFP 0x08010c45 Thumb Code 14 port.o(.text.vPortEnableVFP) - [Anonymous Symbol] 0x08010c44 Section 0 port.o(.text.vPortEnableVFP) - [Anonymous Symbol] 0x08010c58 Section 0 port.o(.text.vPortEnterCritical) - [Anonymous Symbol] 0x08010cb0 Section 0 port.o(.text.vPortExitCritical) - [Anonymous Symbol] 0x08010cfc Section 0 heap_4.o(.text.vPortFree) - [Anonymous Symbol] 0x08010dcc Section 0 port.o(.text.vPortSetupTimerInterrupt) - [Anonymous Symbol] 0x08010e10 Section 0 port.o(.text.vPortValidateInterruptPriority) - [Anonymous Symbol] 0x08010e94 Section 0 queue.o(.text.vQueueAddToRegistry) - [Anonymous Symbol] 0x08010ee8 Section 0 queue.o(.text.vQueueWaitForMessageRestricted) - [Anonymous Symbol] 0x08010f4c Section 0 tasks.o(.text.vTaskDelay) - [Anonymous Symbol] 0x08010fbc Section 0 tasks.o(.text.vTaskDelayUntil) - [Anonymous Symbol] 0x080110d0 Section 0 tasks.o(.text.vTaskDelete) - [Anonymous Symbol] 0x080111e0 Section 0 tasks.o(.text.vTaskInternalSetTimeOutState) - [Anonymous Symbol] 0x08011204 Section 0 tasks.o(.text.vTaskMissedYield) - [Anonymous Symbol] 0x08011214 Section 0 tasks.o(.text.vTaskPlaceOnEventList) - [Anonymous Symbol] 0x08011258 Section 0 tasks.o(.text.vTaskPlaceOnEventListRestricted) - [Anonymous Symbol] 0x080112ac Section 0 tasks.o(.text.vTaskPriorityDisinheritAfterTimeout) - [Anonymous Symbol] 0x080113e0 Section 0 tasks.o(.text.vTaskStartScheduler) - [Anonymous Symbol] 0x080114c4 Section 0 tasks.o(.text.vTaskSuspendAll) - [Anonymous Symbol] 0x080114d4 Section 0 tasks.o(.text.vTaskSwitchContext) - [Anonymous Symbol] 0x08011654 Section 0 port.o(.text.xPortStartScheduler) - [Anonymous Symbol] 0x080117ac Section 0 port.o(.text.xPortSysTickHandler) - [Anonymous Symbol] 0x080117e8 Section 0 queue.o(.text.xQueueCreateMutex) - [Anonymous Symbol] 0x08011810 Section 0 queue.o(.text.xQueueCreateMutexStatic) - [Anonymous Symbol] 0x08011844 Section 0 queue.o(.text.xQueueGenericCreate) - [Anonymous Symbol] 0x080118b8 Section 0 queue.o(.text.xQueueGenericCreateStatic) - [Anonymous Symbol] 0x080119c8 Section 0 queue.o(.text.xQueueGenericReset) - [Anonymous Symbol] 0x08011a84 Section 0 queue.o(.text.xQueueGenericSend) - [Anonymous Symbol] 0x08011cb0 Section 0 queue.o(.text.xQueueGenericSendFromISR) - [Anonymous Symbol] 0x08011dfc Section 0 queue.o(.text.xQueueGiveMutexRecursive) - [Anonymous Symbol] 0x08011e68 Section 0 queue.o(.text.xQueueReceive) - [Anonymous Symbol] 0x08012044 Section 0 queue.o(.text.xQueueReceiveFromISR) - [Anonymous Symbol] 0x0801214c Section 0 queue.o(.text.xQueueSemaphoreTake) - [Anonymous Symbol] 0x08012378 Section 0 queue.o(.text.xQueueTakeMutexRecursive) - [Anonymous Symbol] 0x080123e8 Section 0 tasks.o(.text.xTaskCheckForTimeOut) - [Anonymous Symbol] 0x080124b4 Section 0 tasks.o(.text.xTaskCreate) - [Anonymous Symbol] 0x08012554 Section 0 tasks.o(.text.xTaskCreateStatic) - [Anonymous Symbol] 0x08012624 Section 0 tasks.o(.text.xTaskGenericNotify) - [Anonymous Symbol] 0x0801279c Section 0 tasks.o(.text.xTaskGenericNotifyFromISR) - [Anonymous Symbol] 0x08012960 Section 0 tasks.o(.text.xTaskGetCurrentTaskHandle) - [Anonymous Symbol] 0x08012974 Section 0 tasks.o(.text.xTaskGetSchedulerState) - [Anonymous Symbol] 0x080129ac Section 0 tasks.o(.text.xTaskGetTickCount) - [Anonymous Symbol] 0x080129c0 Section 0 tasks.o(.text.xTaskGetTickCountFromISR) - [Anonymous Symbol] 0x080129e0 Section 0 tasks.o(.text.xTaskIncrementTick) - [Anonymous Symbol] 0x08012ba4 Section 0 tasks.o(.text.xTaskNotifyWait) - [Anonymous Symbol] 0x08012c7c Section 0 tasks.o(.text.xTaskPriorityDisinherit) - [Anonymous Symbol] 0x08012d68 Section 0 tasks.o(.text.xTaskPriorityInherit) - [Anonymous Symbol] 0x08012e78 Section 0 tasks.o(.text.xTaskRemoveFromEventList) - [Anonymous Symbol] 0x08012f48 Section 0 tasks.o(.text.xTaskResumeAll) - [Anonymous Symbol] 0x080130d0 Section 0 timers.o(.text.xTimerCreateTimerTask) - [Anonymous Symbol] 0x08013164 Section 0 timers.o(.text.xTimerGenericCommand) - i.__ARM_fpclassify 0x08013214 Section 0 fpclassify.o(i.__ARM_fpclassify) - i.__ARM_fpclassifyf 0x08013244 Section 0 fpclassifyf.o(i.__ARM_fpclassifyf) - i.__hardfp_asinf 0x0801326c Section 0 asinf.o(i.__hardfp_asinf) - i.__hardfp_atan 0x08013398 Section 0 atan.o(i.__hardfp_atan) - i.__hardfp_atan2 0x08013670 Section 0 atan2.o(i.__hardfp_atan2) - i.__hardfp_atan2f 0x08013870 Section 0 atan2f.o(i.__hardfp_atan2f) - i.__hardfp_cosf 0x08013b1c Section 0 cosf.o(i.__hardfp_cosf) - i.__hardfp_tanf 0x08013c6c Section 0 tanf.o(i.__hardfp_tanf) - i.__kernel_poly 0x08013de8 Section 0 poly.o(i.__kernel_poly) - i.__mathlib_dbl_infnan 0x08013ee0 Section 0 dunder.o(i.__mathlib_dbl_infnan) - i.__mathlib_dbl_infnan2 0x08013ef4 Section 0 dunder.o(i.__mathlib_dbl_infnan2) - i.__mathlib_dbl_underflow 0x08013f08 Section 0 dunder.o(i.__mathlib_dbl_underflow) - i.__mathlib_flt_infnan 0x08013f28 Section 0 funder.o(i.__mathlib_flt_infnan) - i.__mathlib_flt_infnan2 0x08013f2e Section 0 funder.o(i.__mathlib_flt_infnan2) - i.__mathlib_flt_invalid 0x08013f34 Section 0 funder.o(i.__mathlib_flt_invalid) - i.__mathlib_flt_underflow 0x08013f44 Section 0 funder.o(i.__mathlib_flt_underflow) - i.__mathlib_rredf2 0x08013f54 Section 0 rredf.o(i.__mathlib_rredf2) - i.atan 0x080140a8 Section 0 atan.o(i.atan) - i.fabs 0x080140b8 Section 0 fabs.o(i.fabs) - i.sqrtf 0x080140d0 Section 0 sqrtf.o(i.sqrtf) - $v0 0x0801410e Number 0 basic.o(x$fpl$basic) - x$fpl$basic 0x0801410e Section 24 basic.o(x$fpl$basic) - $v0 0x08014128 Number 0 d2f.o(x$fpl$d2f) - x$fpl$d2f 0x08014128 Section 98 d2f.o(x$fpl$d2f) - $v0 0x0801418c Number 0 daddsub_clz.o(x$fpl$dadd) - x$fpl$dadd 0x0801418c Section 336 daddsub_clz.o(x$fpl$dadd) - _dadd1 0x0801419d Thumb Code 0 daddsub_clz.o(x$fpl$dadd) - $v0 0x080142dc Number 0 dcmpi.o(x$fpl$dcmpinf) - x$fpl$dcmpinf 0x080142dc Section 24 dcmpi.o(x$fpl$dcmpinf) - $v0 0x080142f4 Number 0 ddiv.o(x$fpl$ddiv) - x$fpl$ddiv 0x080142f4 Section 692 ddiv.o(x$fpl$ddiv) - ddiv_entry 0x080142fb Thumb Code 0 ddiv.o(x$fpl$ddiv) - $v0 0x080145a8 Number 0 deqf.o(x$fpl$deqf) - x$fpl$deqf 0x080145a8 Section 120 deqf.o(x$fpl$deqf) - $v0 0x08014620 Number 0 dfix.o(x$fpl$dfix) - x$fpl$dfix 0x08014620 Section 94 dfix.o(x$fpl$dfix) - $v0 0x08014680 Number 0 dfixu.o(x$fpl$dfixu) - x$fpl$dfixu 0x08014680 Section 90 dfixu.o(x$fpl$dfixu) - $v0 0x080146da Number 0 dflt_clz.o(x$fpl$dflt) - x$fpl$dflt 0x080146da Section 46 dflt_clz.o(x$fpl$dflt) - $v0 0x08014708 Number 0 dflt_clz.o(x$fpl$dfltu) - x$fpl$dfltu 0x08014708 Section 38 dflt_clz.o(x$fpl$dfltu) - $v0 0x08014730 Number 0 dmul.o(x$fpl$dmul) - x$fpl$dmul 0x08014730 Section 340 dmul.o(x$fpl$dmul) - $v0 0x08014884 Number 0 dnaninf.o(x$fpl$dnaninf) - x$fpl$dnaninf 0x08014884 Section 156 dnaninf.o(x$fpl$dnaninf) - $v0 0x08014920 Number 0 dretinf.o(x$fpl$dretinf) - x$fpl$dretinf 0x08014920 Section 12 dretinf.o(x$fpl$dretinf) - $v0 0x0801492c Number 0 daddsub_clz.o(x$fpl$drsb) - x$fpl$drsb 0x0801492c Section 22 daddsub_clz.o(x$fpl$drsb) - $v0 0x08014944 Number 0 daddsub_clz.o(x$fpl$dsub) - x$fpl$dsub 0x08014944 Section 476 daddsub_clz.o(x$fpl$dsub) - _dsub1 0x08014955 Thumb Code 0 daddsub_clz.o(x$fpl$dsub) - $v0 0x08014b20 Number 0 f2d.o(x$fpl$f2d) - x$fpl$f2d 0x08014b20 Section 86 f2d.o(x$fpl$f2d) - $v0 0x08014b76 Number 0 ffltll_clz.o(x$fpl$ffltll) - x$fpl$ffltll 0x08014b76 Section 96 ffltll_clz.o(x$fpl$ffltll) - $v0 0x08014bd6 Number 0 fnaninf.o(x$fpl$fnaninf) - x$fpl$fnaninf 0x08014bd6 Section 140 fnaninf.o(x$fpl$fnaninf) - $v0 0x08014c62 Number 0 fpinit.o(x$fpl$fpinit) - x$fpl$fpinit 0x08014c62 Section 26 fpinit.o(x$fpl$fpinit) - $v0 0x08014c7c Number 0 fretinf.o(x$fpl$fretinf) - x$fpl$fretinf 0x08014c7c Section 10 fretinf.o(x$fpl$fretinf) - x$fpl$usenofp 0x08014c86 Section 0 usenofp.o(x$fpl$usenofp) - atanhi 0x08014c88 Data 32 atan.o(.constdata) - .constdata 0x08014c88 Section 152 atan.o(.constdata) - atanlo 0x08014ca8 Data 32 atan.o(.constdata) - aTodd 0x08014cc8 Data 40 atan.o(.constdata) - aTeven 0x08014cf0 Data 48 atan.o(.constdata) - .constdata 0x08014d20 Section 8 qnan.o(.constdata) - twooverpi 0x08014d28 Data 32 rredf.o(.constdata) - .constdata 0x08014d28 Section 32 rredf.o(.constdata) - DMA_CalcBaseAndBitshift.flagBitshiftOffset 0x08014d60 Data 8 stm32f4xx_hal_dma.o(.rodata.DMA_CalcBaseAndBitshift.flagBitshiftOffset) - [Anonymous Symbol] 0x08014d60 Section 0 stm32f4xx_hal_dma.o(.rodata.DMA_CalcBaseAndBitshift.flagBitshiftOffset) - GPIO_Map 0x08014d68 Data 56 gpio_1.o(.rodata.GPIO_Map) - [Anonymous Symbol] 0x08014d68 Section 0 gpio_1.o(.rodata.GPIO_Map) - PWM_Map 0x08014da0 Data 8 pwm.o(.rodata.PWM_Map) - [Anonymous Symbol] 0x08014da0 Section 0 pwm.o(.rodata.PWM_Map) - imu_temp_ctrl_pid_param 0x08014e5c Data 32 atti_esti.o(.rodata.imu_temp_ctrl_pid_param) - [Anonymous Symbol] 0x08014e5c Section 0 atti_esti.o(.rodata.imu_temp_ctrl_pid_param) - [Anonymous Symbol] 0x08014e7c Section 0 freertos.o(.rodata.str1.1) - .L.str 0x08014e88 Data 5 tasks.o(.rodata.str1.1) - [Anonymous Symbol] 0x08014e88 Section 0 tasks.o(.rodata.str1.1) - .L.str.1 0x08014e8d Data 15 tasks.o(.rodata.str1.1) - .L.str.1 0x08014e8d Data 5 timers.o(.rodata.str1.1) - [Anonymous Symbol] 0x08014e8d Section 0 timers.o(.rodata.str1.1) - .L.str 0x08014e92 Data 8 timers.o(.rodata.str1.1) - [Anonymous Symbol] 0x08014e9a Section 0 user_task.o(.rodata.str1.1) - .L.str.2 0x08014e9c Data 12 tasks.o(.rodata.str1.1) - .L.str.3 0x08014ea8 Data 12 tasks.o(.rodata.str1.1) + !!dczerorl2 0x080001c4 Section 90 __dczerorl2.o(!!dczerorl2) + !!handler_zi 0x08000220 Section 28 __scatter_zi.o(!!handler_zi) + .ARM.Collect$$libinit$$00000000 0x0800023c Section 2 libinit.o(.ARM.Collect$$libinit$$00000000) + .ARM.Collect$$libinit$$00000001 0x0800023e Section 4 libinit2.o(.ARM.Collect$$libinit$$00000001) + .ARM.Collect$$libinit$$00000004 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000004) + .ARM.Collect$$libinit$$0000000A 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000A) + .ARM.Collect$$libinit$$0000000C 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000C) + .ARM.Collect$$libinit$$0000000E 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000E) + .ARM.Collect$$libinit$$00000011 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000011) + .ARM.Collect$$libinit$$00000013 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000013) + .ARM.Collect$$libinit$$00000015 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000015) + .ARM.Collect$$libinit$$00000017 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000017) + .ARM.Collect$$libinit$$00000019 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000019) + .ARM.Collect$$libinit$$0000001B 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001B) + .ARM.Collect$$libinit$$0000001D 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001D) + .ARM.Collect$$libinit$$0000001F 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001F) + .ARM.Collect$$libinit$$00000021 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000021) + .ARM.Collect$$libinit$$00000023 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000023) + .ARM.Collect$$libinit$$00000025 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000025) + .ARM.Collect$$libinit$$0000002C 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002C) + .ARM.Collect$$libinit$$0000002E 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002E) + .ARM.Collect$$libinit$$00000030 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000030) + .ARM.Collect$$libinit$$00000032 0x08000242 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000032) + .ARM.Collect$$libinit$$00000033 0x08000242 Section 2 libinit2.o(.ARM.Collect$$libinit$$00000033) + .ARM.Collect$$libshutdown$$00000000 0x08000244 Section 2 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) + .ARM.Collect$$libshutdown$$00000002 0x08000246 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) + .ARM.Collect$$libshutdown$$00000004 0x08000246 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) + .ARM.Collect$$libshutdown$$00000007 0x08000246 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000007) + .ARM.Collect$$libshutdown$$0000000A 0x08000246 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A) + .ARM.Collect$$libshutdown$$0000000C 0x08000246 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) + .ARM.Collect$$libshutdown$$0000000F 0x08000246 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) + .ARM.Collect$$libshutdown$$00000010 0x08000246 Section 2 libshutdown2.o(.ARM.Collect$$libshutdown$$00000010) + .ARM.Collect$$rtentry$$00000000 0x08000248 Section 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000) + .ARM.Collect$$rtentry$$00000002 0x08000248 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002) + .ARM.Collect$$rtentry$$00000004 0x08000248 Section 6 __rtentry4.o(.ARM.Collect$$rtentry$$00000004) + .ARM.Collect$$rtentry$$00000009 0x0800024e Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009) + .ARM.Collect$$rtentry$$0000000A 0x0800024e Section 4 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) + .ARM.Collect$$rtentry$$0000000C 0x08000252 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) + .ARM.Collect$$rtentry$$0000000D 0x08000252 Section 8 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) + .ARM.Collect$$rtexit$$00000000 0x0800025a Section 2 rtexit.o(.ARM.Collect$$rtexit$$00000000) + .ARM.Collect$$rtexit$$00000002 0x0800025c Section 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002) + .ARM.Collect$$rtexit$$00000003 0x0800025c Section 4 rtexit2.o(.ARM.Collect$$rtexit$$00000003) + .ARM.Collect$$rtexit$$00000004 0x08000260 Section 6 rtexit2.o(.ARM.Collect$$rtexit$$00000004) + $v0 0x08000268 Number 0 startup_stm32f407xx.o(.text) + .text 0x08000268 Section 64 startup_stm32f407xx.o(.text) + .text 0x080002a8 Section 240 lludivv7m.o(.text) + .text 0x08000398 Section 138 rt_memcpy_v6.o(.text) + .text 0x08000422 Section 16 aeabi_memset4.o(.text) + .text 0x08000432 Section 78 rt_memclr_w.o(.text) + .text 0x08000480 Section 0 heapauxi.o(.text) + .text 0x08000486 Section 0 _rserrno.o(.text) + .text 0x0800049c Section 100 rt_memcpy_w.o(.text) + .text 0x08000500 Section 8 rt_errno_addr_intlibspace.o(.text) + .text 0x08000508 Section 8 libspace.o(.text) + .text 0x08000510 Section 74 sys_stackheap_outer.o(.text) + .text 0x0800055a Section 0 exit.o(.text) + .text 0x0800056c Section 0 sys_exit.o(.text) + .text 0x08000578 Section 2 use_no_semi.o(.text) + .text 0x0800057a Section 0 indicate_semi.o(.text) + [Anonymous Symbol] 0x0800057c Section 0 ahrs.o(.text.AHRS_GetEulr) + [Anonymous Symbol] 0x080006d8 Section 0 ahrs.o(.text.AHRS_Init) + [Anonymous Symbol] 0x0800095c Section 0 ahrs.o(.text.AHRS_ResetEulr) + [Anonymous Symbol] 0x08000970 Section 0 ahrs.o(.text.AHRS_Update) + AHRS_UpdateIMU 0x0800158d Thumb Code 1480 ahrs.o(.text.AHRS_UpdateIMU) + [Anonymous Symbol] 0x0800158c Section 0 ahrs.o(.text.AHRS_UpdateIMU) + [Anonymous Symbol] 0x08001b54 Section 0 user_math.o(.text.AbsClip) + BMI088_AcclIntCallback 0x08001bc1 Thumb Code 20 bmi088.o(.text.BMI088_AcclIntCallback) + [Anonymous Symbol] 0x08001bc0 Section 0 bmi088.o(.text.BMI088_AcclIntCallback) + [Anonymous Symbol] 0x08001bd4 Section 0 bmi088.o(.text.BMI088_AcclStartDmaRecv) + [Anonymous Symbol] 0x08001bf4 Section 0 bmi088.o(.text.BMI088_AcclWaitDmaCplt) + [Anonymous Symbol] 0x08001c04 Section 0 bmi088.o(.text.BMI088_GetUpdateFreq) + BMI088_GyroIntCallback 0x08001c15 Thumb Code 20 bmi088.o(.text.BMI088_GyroIntCallback) + [Anonymous Symbol] 0x08001c14 Section 0 bmi088.o(.text.BMI088_GyroIntCallback) + [Anonymous Symbol] 0x08001c28 Section 0 bmi088.o(.text.BMI088_GyroStartDmaRecv) + [Anonymous Symbol] 0x08001c44 Section 0 bmi088.o(.text.BMI088_GyroWaitDmaCplt) + [Anonymous Symbol] 0x08001c54 Section 0 bmi088.o(.text.BMI088_Init) + [Anonymous Symbol] 0x08001ddc Section 0 bmi088.o(.text.BMI088_ParseAccl) + [Anonymous Symbol] 0x08001ed0 Section 0 bmi088.o(.text.BMI088_ParseGyro) + BMI088_RxCpltCallback 0x08001fe9 Thumb Code 84 bmi088.o(.text.BMI088_RxCpltCallback) + [Anonymous Symbol] 0x08001fe8 Section 0 bmi088.o(.text.BMI088_RxCpltCallback) + [Anonymous Symbol] 0x0800203c Section 0 bmi088.o(.text.BMI088_WaitNew) + BMI_Read 0x0800204d Thumb Code 118 bmi088.o(.text.BMI_Read) + [Anonymous Symbol] 0x0800204c Section 0 bmi088.o(.text.BMI_Read) + BMI_ReadSingle 0x080020c5 Thumb Code 178 bmi088.o(.text.BMI_ReadSingle) + [Anonymous Symbol] 0x080020c4 Section 0 bmi088.o(.text.BMI_ReadSingle) + BMI_WriteSingle 0x08002179 Thumb Code 148 bmi088.o(.text.BMI_WriteSingle) + [Anonymous Symbol] 0x08002178 Section 0 bmi088.o(.text.BMI_WriteSingle) + BSP_CAN_CreateIdQueue 0x0800220d Thumb Code 292 can_1.o(.text.BSP_CAN_CreateIdQueue) + [Anonymous Symbol] 0x0800220c Section 0 can_1.o(.text.BSP_CAN_CreateIdQueue) + BSP_CAN_DefaultIdParser 0x08002331 Thumb Code 14 can_1.o(.text.BSP_CAN_DefaultIdParser) + [Anonymous Symbol] 0x08002330 Section 0 can_1.o(.text.BSP_CAN_DefaultIdParser) + BSP_CAN_FindQueue 0x08002341 Thumb Code 82 can_1.o(.text.BSP_CAN_FindQueue) + [Anonymous Symbol] 0x08002340 Section 0 can_1.o(.text.BSP_CAN_FindQueue) + BSP_CAN_GetFrameType 0x08002395 Thumb Code 58 can_1.o(.text.BSP_CAN_GetFrameType) + [Anonymous Symbol] 0x08002394 Section 0 can_1.o(.text.BSP_CAN_GetFrameType) + [Anonymous Symbol] 0x080023d0 Section 0 can_1.o(.text.BSP_CAN_GetHandle) + [Anonymous Symbol] 0x08002420 Section 0 can_1.o(.text.BSP_CAN_GetMessage) + [Anonymous Symbol] 0x080024c0 Section 0 can_1.o(.text.BSP_CAN_Init) + [Anonymous Symbol] 0x08002634 Section 0 can_1.o(.text.BSP_CAN_ParseId) + [Anonymous Symbol] 0x08002678 Section 0 can_1.o(.text.BSP_CAN_RegisterCallback) + [Anonymous Symbol] 0x080026fc Section 0 can_1.o(.text.BSP_CAN_RegisterId) + BSP_CAN_RxFifo0Callback 0x08002741 Thumb Code 228 can_1.o(.text.BSP_CAN_RxFifo0Callback) + [Anonymous Symbol] 0x08002740 Section 0 can_1.o(.text.BSP_CAN_RxFifo0Callback) + BSP_CAN_RxFifo1Callback 0x08002825 Thumb Code 228 can_1.o(.text.BSP_CAN_RxFifo1Callback) + [Anonymous Symbol] 0x08002824 Section 0 can_1.o(.text.BSP_CAN_RxFifo1Callback) + [Anonymous Symbol] 0x08002908 Section 0 can_1.o(.text.BSP_CAN_Transmit) + [Anonymous Symbol] 0x08002a80 Section 0 can_1.o(.text.BSP_CAN_TransmitStdDataFrame) + BSP_CAN_TxCompleteCallback 0x08002ac1 Thumb Code 120 can_1.o(.text.BSP_CAN_TxCompleteCallback) + [Anonymous Symbol] 0x08002ac0 Section 0 can_1.o(.text.BSP_CAN_TxCompleteCallback) + BSP_CAN_TxQueueInit 0x08002b39 Thumb Code 66 can_1.o(.text.BSP_CAN_TxQueueInit) + [Anonymous Symbol] 0x08002b38 Section 0 can_1.o(.text.BSP_CAN_TxQueueInit) + BSP_CAN_TxQueueIsEmpty 0x08002b7d Thumb Code 86 can_1.o(.text.BSP_CAN_TxQueueIsEmpty) + [Anonymous Symbol] 0x08002b7c Section 0 can_1.o(.text.BSP_CAN_TxQueueIsEmpty) + BSP_CAN_TxQueuePop 0x08002bd5 Thumb Code 172 can_1.o(.text.BSP_CAN_TxQueuePop) + [Anonymous Symbol] 0x08002bd4 Section 0 can_1.o(.text.BSP_CAN_TxQueuePop) + BSP_CAN_TxQueuePush 0x08002c81 Thumb Code 172 can_1.o(.text.BSP_CAN_TxQueuePush) + [Anonymous Symbol] 0x08002c80 Section 0 can_1.o(.text.BSP_CAN_TxQueuePush) + [Anonymous Symbol] 0x08002d2c Section 0 mm.o(.text.BSP_Free) + [Anonymous Symbol] 0x08002d3c Section 0 gpio_1.o(.text.BSP_GPIO_DisableIRQ) + [Anonymous Symbol] 0x08002d94 Section 0 gpio_1.o(.text.BSP_GPIO_EnableIRQ) + [Anonymous Symbol] 0x08002dec Section 0 gpio_1.o(.text.BSP_GPIO_ReadPin) + [Anonymous Symbol] 0x08002e38 Section 0 gpio_1.o(.text.BSP_GPIO_RegisterCallback) + [Anonymous Symbol] 0x08002ec8 Section 0 gpio_1.o(.text.BSP_GPIO_WritePin) + [Anonymous Symbol] 0x08002f18 Section 0 mm.o(.text.BSP_Malloc) + [Anonymous Symbol] 0x08002f28 Section 0 pwm.o(.text.BSP_PWM_SetComp) + [Anonymous Symbol] 0x08003068 Section 0 pwm.o(.text.BSP_PWM_Start) + [Anonymous Symbol] 0x080030ac Section 0 spi_1.o(.text.BSP_SPI_GetHandle) + [Anonymous Symbol] 0x080030d4 Section 0 spi_1.o(.text.BSP_SPI_Receive) + [Anonymous Symbol] 0x08003154 Section 0 spi_1.o(.text.BSP_SPI_RegisterCallback) + [Anonymous Symbol] 0x08003198 Section 0 spi_1.o(.text.BSP_SPI_Transmit) + [Anonymous Symbol] 0x08003218 Section 0 time.o(.text.BSP_TIME_Delay_ms) + [Anonymous Symbol] 0x080032a8 Section 0 time.o(.text.BSP_TIME_Get_us) + [Anonymous Symbol] 0x08003354 Section 0 uart.o(.text.BSP_UART_IRQHandler) + [Anonymous Symbol] 0x080033c0 Section 0 stm32f4xx_it.o(.text.BusFault_Handler) + [Anonymous Symbol] 0x080033c4 Section 0 stm32f4xx_it.o(.text.CAN1_RX0_IRQHandler) + [Anonymous Symbol] 0x080033d4 Section 0 stm32f4xx_it.o(.text.CAN1_RX1_IRQHandler) + [Anonymous Symbol] 0x080033e4 Section 0 stm32f4xx_it.o(.text.CAN1_TX_IRQHandler) + [Anonymous Symbol] 0x080033f4 Section 0 stm32f4xx_it.o(.text.CAN2_RX0_IRQHandler) + [Anonymous Symbol] 0x08003404 Section 0 stm32f4xx_it.o(.text.CAN2_RX1_IRQHandler) + [Anonymous Symbol] 0x08003414 Section 0 stm32f4xx_it.o(.text.CAN2_TX_IRQHandler) + CAN_Get 0x08003425 Thumb Code 86 can_1.o(.text.CAN_Get) + [Anonymous Symbol] 0x08003424 Section 0 can_1.o(.text.CAN_Get) + [Anonymous Symbol] 0x0800347c Section 0 user_math.o(.text.CircleAdd) + [Anonymous Symbol] 0x08003500 Section 0 user_math.o(.text.CircleError) + [Anonymous Symbol] 0x0800359c Section 0 user_math.o(.text.Clip) + [Anonymous Symbol] 0x080035e8 Section 0 config.o(.text.Config_GetRobotParam) + [Anonymous Symbol] 0x080035f4 Section 0 stm32f4xx_it.o(.text.DMA1_Stream1_IRQHandler) + [Anonymous Symbol] 0x08003608 Section 0 remote_control.o(.text.DMA1_Stream1_IRQHandler1) + [Anonymous Symbol] 0x08003660 Section 0 stm32f4xx_it.o(.text.DMA2_Stream2_IRQHandler) + [Anonymous Symbol] 0x08003670 Section 0 stm32f4xx_it.o(.text.DMA2_Stream3_IRQHandler) + DMA_CalcBaseAndBitshift 0x08003681 Thumb Code 86 stm32f4xx_hal_dma.o(.text.DMA_CalcBaseAndBitshift) + [Anonymous Symbol] 0x08003680 Section 0 stm32f4xx_hal_dma.o(.text.DMA_CalcBaseAndBitshift) + DMA_CheckFifoParam 0x080036d9 Thumb Code 240 stm32f4xx_hal_dma.o(.text.DMA_CheckFifoParam) + [Anonymous Symbol] 0x080036d8 Section 0 stm32f4xx_hal_dma.o(.text.DMA_CheckFifoParam) + DMA_SetConfig 0x080037c9 Thumb Code 80 stm32f4xx_hal_dma.o(.text.DMA_SetConfig) + [Anonymous Symbol] 0x080037c8 Section 0 stm32f4xx_hal_dma.o(.text.DMA_SetConfig) + [Anonymous Symbol] 0x08003818 Section 0 stm32f4xx_it.o(.text.DebugMon_Handler) + [Anonymous Symbol] 0x0800381c Section 0 stm32f4xx_it.o(.text.EXTI0_IRQHandler) + [Anonymous Symbol] 0x08003828 Section 0 stm32f4xx_it.o(.text.EXTI3_IRQHandler) + [Anonymous Symbol] 0x08003834 Section 0 stm32f4xx_it.o(.text.EXTI4_IRQHandler) + [Anonymous Symbol] 0x08003840 Section 0 stm32f4xx_it.o(.text.EXTI9_5_IRQHandler) + [Anonymous Symbol] 0x0800384c Section 0 main.o(.text.Error_Handler) + [Anonymous Symbol] 0x08003854 Section 0 gimbal.o(.text.Gimbal_Control) + __arm_cp.3_6 0x08003c1c Number 4 gimbal.o(.text.Gimbal_Control) + __arm_cp.3_9 0x08003c28 Number 4 gimbal.o(.text.Gimbal_Control) + [Anonymous Symbol] 0x08003d74 Section 0 gimbal.o(.text.Gimbal_Init) + [Anonymous Symbol] 0x08003f04 Section 0 gimbal.o(.text.Gimbal_Output) + Gimbal_SetMode 0x08004019 Thumb Code 180 gimbal.o(.text.Gimbal_SetMode) + [Anonymous Symbol] 0x08004018 Section 0 gimbal.o(.text.Gimbal_SetMode) + [Anonymous Symbol] 0x080040cc Section 0 gimbal.o(.text.Gimbal_UpdateFeedback) + [Anonymous Symbol] 0x08004234 Section 0 gimbal.o(.text.Gimbal_UpdateIMU) + [Anonymous Symbol] 0x08004280 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_ActivateNotification) + [Anonymous Symbol] 0x080042d4 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_AddTxMessage) + [Anonymous Symbol] 0x0800442c Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_ConfigFilter) + [Anonymous Symbol] 0x080045cc Section 0 can_1.o(.text.HAL_CAN_ErrorCallback) + [Anonymous Symbol] 0x0800461c Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_GetRxFifoFillLevel) + [Anonymous Symbol] 0x08004670 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_GetRxMessage) + [Anonymous Symbol] 0x08004884 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_GetTxMailboxesFreeLevel) + [Anonymous Symbol] 0x080048f4 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_IRQHandler) + [Anonymous Symbol] 0x08004ce8 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_Init) + [Anonymous Symbol] 0x08004ec8 Section 0 can.o(.text.HAL_CAN_MspInit) + [Anonymous Symbol] 0x08005098 Section 0 can_1.o(.text.HAL_CAN_RxFifo0FullCallback) + [Anonymous Symbol] 0x080050e8 Section 0 can_1.o(.text.HAL_CAN_RxFifo0MsgPendingCallback) + [Anonymous Symbol] 0x08005138 Section 0 can_1.o(.text.HAL_CAN_RxFifo1FullCallback) + [Anonymous Symbol] 0x08005188 Section 0 can_1.o(.text.HAL_CAN_RxFifo1MsgPendingCallback) + [Anonymous Symbol] 0x080051d8 Section 0 can_1.o(.text.HAL_CAN_SleepCallback) + [Anonymous Symbol] 0x08005228 Section 0 stm32f4xx_hal_can.o(.text.HAL_CAN_Start) + [Anonymous Symbol] 0x080052b4 Section 0 can_1.o(.text.HAL_CAN_TxMailbox0AbortCallback) + [Anonymous Symbol] 0x08005304 Section 0 can_1.o(.text.HAL_CAN_TxMailbox0CompleteCallback) + [Anonymous Symbol] 0x08005350 Section 0 can_1.o(.text.HAL_CAN_TxMailbox1AbortCallback) + [Anonymous Symbol] 0x080053a0 Section 0 can_1.o(.text.HAL_CAN_TxMailbox1CompleteCallback) + [Anonymous Symbol] 0x080053f0 Section 0 can_1.o(.text.HAL_CAN_TxMailbox2AbortCallback) + [Anonymous Symbol] 0x08005440 Section 0 can_1.o(.text.HAL_CAN_TxMailbox2CompleteCallback) + [Anonymous Symbol] 0x08005490 Section 0 can_1.o(.text.HAL_CAN_WakeUpFromRxMsgCallback) + [Anonymous Symbol] 0x080054e0 Section 0 stm32f4xx_hal_dma.o(.text.HAL_DMA_Abort) + [Anonymous Symbol] 0x080055cc Section 0 stm32f4xx_hal_dma.o(.text.HAL_DMA_Abort_IT) + [Anonymous Symbol] 0x08005610 Section 0 stm32f4xx_hal_dma.o(.text.HAL_DMA_GetState) + [Anonymous Symbol] 0x08005620 Section 0 stm32f4xx_hal_dma.o(.text.HAL_DMA_IRQHandler) + [Anonymous Symbol] 0x08005940 Section 0 stm32f4xx_hal_dma.o(.text.HAL_DMA_Init) + [Anonymous Symbol] 0x08005ab0 Section 0 stm32f4xx_hal_dma.o(.text.HAL_DMA_Start_IT) + [Anonymous Symbol] 0x08005b74 Section 0 stm32f4xx_hal.o(.text.HAL_Delay) + [Anonymous Symbol] 0x08005bb8 Section 0 gpio_1.o(.text.HAL_GPIO_EXTI_Callback) + [Anonymous Symbol] 0x08005c20 Section 0 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_EXTI_IRQHandler) + [Anonymous Symbol] 0x08005c58 Section 0 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_Init) + [Anonymous Symbol] 0x08006010 Section 0 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_ReadPin) + [Anonymous Symbol] 0x08006040 Section 0 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_WritePin) + [Anonymous Symbol] 0x08006070 Section 0 stm32f4xx_hal.o(.text.HAL_GetTick) + [Anonymous Symbol] 0x0800607c Section 0 i2c_1.o(.text.HAL_I2C_AbortCpltCallback) + [Anonymous Symbol] 0x080060d0 Section 0 stm32f4xx_hal_i2c.o(.text.HAL_I2C_AddrCallback) + [Anonymous Symbol] 0x080060e0 Section 0 stm32f4xx_hal_i2c.o(.text.HAL_I2C_ER_IRQHandler) + [Anonymous Symbol] 0x0800625c Section 0 stm32f4xx_hal_i2c.o(.text.HAL_I2C_EV_IRQHandler) + [Anonymous Symbol] 0x08006628 Section 0 i2c_1.o(.text.HAL_I2C_ErrorCallback) + [Anonymous Symbol] 0x0800667c Section 0 stm32f4xx_hal_i2c.o(.text.HAL_I2C_Init) + [Anonymous Symbol] 0x08006920 Section 0 i2c_1.o(.text.HAL_I2C_ListenCpltCallback) + [Anonymous Symbol] 0x08006974 Section 0 i2c_1.o(.text.HAL_I2C_MasterRxCpltCallback) + [Anonymous Symbol] 0x080069c8 Section 0 i2c_1.o(.text.HAL_I2C_MasterTxCpltCallback) + [Anonymous Symbol] 0x08006a18 Section 0 i2c_1.o(.text.HAL_I2C_MemRxCpltCallback) + [Anonymous Symbol] 0x08006a6c Section 0 i2c_1.o(.text.HAL_I2C_MemTxCpltCallback) + [Anonymous Symbol] 0x08006ac0 Section 0 i2c.o(.text.HAL_I2C_MspInit) + [Anonymous Symbol] 0x08006bf4 Section 0 i2c_1.o(.text.HAL_I2C_SlaveRxCpltCallback) + [Anonymous Symbol] 0x08006c48 Section 0 i2c_1.o(.text.HAL_I2C_SlaveTxCpltCallback) + [Anonymous Symbol] 0x08006c9c Section 0 stm32f4xx_hal.o(.text.HAL_IncTick) + [Anonymous Symbol] 0x08006cb8 Section 0 stm32f4xx_hal.o(.text.HAL_Init) + [Anonymous Symbol] 0x08006cf0 Section 0 stm32f4xx_hal.o(.text.HAL_InitTick) + [Anonymous Symbol] 0x08006d60 Section 0 stm32f4xx_hal_msp.o(.text.HAL_MspInit) + [Anonymous Symbol] 0x08006db8 Section 0 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_DisableIRQ) + [Anonymous Symbol] 0x08006dcc Section 0 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_EnableIRQ) + [Anonymous Symbol] 0x08006de0 Section 0 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_SetPriority) + [Anonymous Symbol] 0x08006e14 Section 0 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_SetPriorityGrouping) + [Anonymous Symbol] 0x08006e24 Section 0 stm32f4xx_hal_rcc.o(.text.HAL_RCC_ClockConfig) + [Anonymous Symbol] 0x08007088 Section 0 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetHCLKFreq) + [Anonymous Symbol] 0x08007094 Section 0 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetPCLK1Freq) + [Anonymous Symbol] 0x080070b8 Section 0 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetPCLK2Freq) + [Anonymous Symbol] 0x080070dc Section 0 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetSysClockFreq) + [Anonymous Symbol] 0x080071c4 Section 0 stm32f4xx_hal_rcc.o(.text.HAL_RCC_OscConfig) + [Anonymous Symbol] 0x08007884 Section 0 spi_1.o(.text.HAL_SPI_ErrorCallback) + [Anonymous Symbol] 0x080078d8 Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_Init) + [Anonymous Symbol] 0x080079d8 Section 0 spi.o(.text.HAL_SPI_MspInit) + [Anonymous Symbol] 0x08007be8 Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive) + [Anonymous Symbol] 0x08007e38 Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive_DMA) + [Anonymous Symbol] 0x08007fd0 Section 0 spi_1.o(.text.HAL_SPI_RxCpltCallback) + [Anonymous Symbol] 0x08008024 Section 0 spi_1.o(.text.HAL_SPI_RxHalfCpltCallback) + [Anonymous Symbol] 0x08008078 Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_Transmit) + [Anonymous Symbol] 0x0800831c Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive) + [Anonymous Symbol] 0x080086c0 Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA) + [Anonymous Symbol] 0x080088d4 Section 0 stm32f4xx_hal_spi.o(.text.HAL_SPI_Transmit_DMA) + [Anonymous Symbol] 0x08008a40 Section 0 spi_1.o(.text.HAL_SPI_TxCpltCallback) + [Anonymous Symbol] 0x08008a88 Section 0 spi_1.o(.text.HAL_SPI_TxHalfCpltCallback) + [Anonymous Symbol] 0x08008adc Section 0 spi_1.o(.text.HAL_SPI_TxRxCpltCallback) + [Anonymous Symbol] 0x08008b30 Section 0 spi_1.o(.text.HAL_SPI_TxRxHalfCpltCallback) + [Anonymous Symbol] 0x08008b84 Section 0 stm32f4xx_hal_cortex.o(.text.HAL_SYSTICK_Config) + [Anonymous Symbol] 0x08008b94 Section 0 stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_BreakCallback) + [Anonymous Symbol] 0x08008b9c Section 0 stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutCallback) + [Anonymous Symbol] 0x08008ba4 Section 0 stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_MasterConfigSynchronization) + [Anonymous Symbol] 0x08008cc8 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_Base_Init) + [Anonymous Symbol] 0x08008d64 Section 0 tim.o(.text.HAL_TIM_Base_MspInit) + [Anonymous Symbol] 0x08008df0 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_IC_CaptureCallback) + [Anonymous Symbol] 0x08008df8 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_IRQHandler) + [Anonymous Symbol] 0x08009014 Section 0 tim.o(.text.HAL_TIM_MspPostInit) + [Anonymous Symbol] 0x08009080 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_OC_DelayElapsedCallback) + [Anonymous Symbol] 0x08009088 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_ConfigChannel) + [Anonymous Symbol] 0x080091cc Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_Init) + [Anonymous Symbol] 0x08009268 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_MspInit) + [Anonymous Symbol] 0x08009270 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedCallback) + [Anonymous Symbol] 0x08009278 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_Start) + [Anonymous Symbol] 0x08009444 Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_PeriodElapsedCallback) + [Anonymous Symbol] 0x0800944c Section 0 stm32f4xx_hal_tim.o(.text.HAL_TIM_TriggerCallback) + [Anonymous Symbol] 0x08009454 Section 0 stm32f4xx_hal_uart.o(.text.HAL_UARTEx_RxEventCallback) + [Anonymous Symbol] 0x08009460 Section 0 uart.o(.text.HAL_UART_ErrorCallback) + [Anonymous Symbol] 0x080094b4 Section 0 stm32f4xx_hal_uart.o(.text.HAL_UART_IRQHandler) + [Anonymous Symbol] 0x08009910 Section 0 stm32f4xx_hal_uart.o(.text.HAL_UART_Init) + [Anonymous Symbol] 0x080099b0 Section 0 usart.o(.text.HAL_UART_MspInit) + [Anonymous Symbol] 0x08009b7c Section 0 uart.o(.text.HAL_UART_RxCpltCallback) + [Anonymous Symbol] 0x08009bd0 Section 0 uart.o(.text.HAL_UART_TxCpltCallback) + [Anonymous Symbol] 0x08009c24 Section 0 stm32f4xx_it.o(.text.HardFault_Handler) + [Anonymous Symbol] 0x08009c28 Section 0 stm32f4xx_it.o(.text.I2C1_ER_IRQHandler) + [Anonymous Symbol] 0x08009c38 Section 0 stm32f4xx_it.o(.text.I2C1_EV_IRQHandler) + I2C_ConvertOtherXferOptions 0x08009c49 Thumb Code 52 stm32f4xx_hal_i2c.o(.text.I2C_ConvertOtherXferOptions) + [Anonymous Symbol] 0x08009c48 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_ConvertOtherXferOptions) + I2C_DMAAbort 0x08009c7d Thumb Code 342 stm32f4xx_hal_i2c.o(.text.I2C_DMAAbort) + [Anonymous Symbol] 0x08009c7c Section 0 stm32f4xx_hal_i2c.o(.text.I2C_DMAAbort) + I2C_Flush_DR 0x08009dd5 Thumb Code 36 stm32f4xx_hal_i2c.o(.text.I2C_Flush_DR) + [Anonymous Symbol] 0x08009dd4 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Flush_DR) + I2C_Get 0x08009df9 Thumb Code 72 i2c_1.o(.text.I2C_Get) + [Anonymous Symbol] 0x08009df8 Section 0 i2c_1.o(.text.I2C_Get) + I2C_ITError 0x08009e41 Thumb Code 634 stm32f4xx_hal_i2c.o(.text.I2C_ITError) + [Anonymous Symbol] 0x08009e40 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_ITError) + I2C_MasterReceive_BTF 0x0800a0bd Thumb Code 428 stm32f4xx_hal_i2c.o(.text.I2C_MasterReceive_BTF) + [Anonymous Symbol] 0x0800a0bc Section 0 stm32f4xx_hal_i2c.o(.text.I2C_MasterReceive_BTF) + I2C_MasterReceive_RXNE 0x0800a269 Thumb Code 362 stm32f4xx_hal_i2c.o(.text.I2C_MasterReceive_RXNE) + [Anonymous Symbol] 0x0800a268 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_MasterReceive_RXNE) + I2C_MasterTransmit_BTF 0x0800a3d5 Thumb Code 222 stm32f4xx_hal_i2c.o(.text.I2C_MasterTransmit_BTF) + [Anonymous Symbol] 0x0800a3d4 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_MasterTransmit_BTF) + I2C_MasterTransmit_TXE 0x0800a4b5 Thumb Code 318 stm32f4xx_hal_i2c.o(.text.I2C_MasterTransmit_TXE) + [Anonymous Symbol] 0x0800a4b4 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_MasterTransmit_TXE) + I2C_Master_ADD10 0x0800a5f5 Thumb Code 70 stm32f4xx_hal_i2c.o(.text.I2C_Master_ADD10) + [Anonymous Symbol] 0x0800a5f4 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Master_ADD10) + I2C_Master_ADDR 0x0800a63d Thumb Code 830 stm32f4xx_hal_i2c.o(.text.I2C_Master_ADDR) + [Anonymous Symbol] 0x0800a63c Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Master_ADDR) + I2C_Master_SB 0x0800a97d Thumb Code 240 stm32f4xx_hal_i2c.o(.text.I2C_Master_SB) + [Anonymous Symbol] 0x0800a97c Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Master_SB) + I2C_MemoryTransmit_TXE_BTF 0x0800aa6d Thumb Code 296 stm32f4xx_hal_i2c.o(.text.I2C_MemoryTransmit_TXE_BTF) + [Anonymous Symbol] 0x0800aa6c Section 0 stm32f4xx_hal_i2c.o(.text.I2C_MemoryTransmit_TXE_BTF) + I2C_SlaveReceive_BTF 0x0800ab95 Thumb Code 46 stm32f4xx_hal_i2c.o(.text.I2C_SlaveReceive_BTF) + [Anonymous Symbol] 0x0800ab94 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_SlaveReceive_BTF) + I2C_SlaveReceive_RXNE 0x0800abc5 Thumb Code 110 stm32f4xx_hal_i2c.o(.text.I2C_SlaveReceive_RXNE) + [Anonymous Symbol] 0x0800abc4 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_SlaveReceive_RXNE) + I2C_SlaveTransmit_BTF 0x0800ac35 Thumb Code 44 stm32f4xx_hal_i2c.o(.text.I2C_SlaveTransmit_BTF) + [Anonymous Symbol] 0x0800ac34 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_SlaveTransmit_BTF) + I2C_SlaveTransmit_TXE 0x0800ac61 Thumb Code 108 stm32f4xx_hal_i2c.o(.text.I2C_SlaveTransmit_TXE) + [Anonymous Symbol] 0x0800ac60 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_SlaveTransmit_TXE) + I2C_Slave_ADDR 0x0800accd Thumb Code 174 stm32f4xx_hal_i2c.o(.text.I2C_Slave_ADDR) + [Anonymous Symbol] 0x0800accc Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Slave_ADDR) + I2C_Slave_AF 0x0800ad7d Thumb Code 228 stm32f4xx_hal_i2c.o(.text.I2C_Slave_AF) + [Anonymous Symbol] 0x0800ad7c Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Slave_AF) + I2C_Slave_STOPF 0x0800ae61 Thumb Code 586 stm32f4xx_hal_i2c.o(.text.I2C_Slave_STOPF) + [Anonymous Symbol] 0x0800ae60 Section 0 stm32f4xx_hal_i2c.o(.text.I2C_Slave_STOPF) + I2C_WaitOnSTOPRequestThroughIT 0x0800b0ad Thumb Code 120 stm32f4xx_hal_i2c.o(.text.I2C_WaitOnSTOPRequestThroughIT) + [Anonymous Symbol] 0x0800b0ac Section 0 stm32f4xx_hal_i2c.o(.text.I2C_WaitOnSTOPRequestThroughIT) + [Anonymous Symbol] 0x0800b124 Section 0 user_math.o(.text.InvSqrt) + [Anonymous Symbol] 0x0800b19c Section 0 filter.o(.text.LowPassFilter2p_Apply) + [Anonymous Symbol] 0x0800b254 Section 0 filter.o(.text.LowPassFilter2p_Init) + [Anonymous Symbol] 0x0800b390 Section 0 filter.o(.text.LowPassFilter2p_Reset) + MOTOR_DM_CreateCANManager 0x0800b425 Thumb Code 150 motor_dm.o(.text.MOTOR_DM_CreateCANManager) + [Anonymous Symbol] 0x0800b424 Section 0 motor_dm.o(.text.MOTOR_DM_CreateCANManager) + [Anonymous Symbol] 0x0800b4bc Section 0 motor_dm.o(.text.MOTOR_DM_Enable) + MOTOR_DM_GetCANManager 0x0800b539 Thumb Code 48 motor_dm.o(.text.MOTOR_DM_GetCANManager) + [Anonymous Symbol] 0x0800b538 Section 0 motor_dm.o(.text.MOTOR_DM_GetCANManager) + [Anonymous Symbol] 0x0800b568 Section 0 motor_dm.o(.text.MOTOR_DM_GetMotor) + [Anonymous Symbol] 0x0800b5f0 Section 0 motor_dm.o(.text.MOTOR_DM_MITCtrl) + MOTOR_DM_ParseFeedbackFrame 0x0800b639 Thumb Code 344 motor_dm.o(.text.MOTOR_DM_ParseFeedbackFrame) + [Anonymous Symbol] 0x0800b638 Section 0 motor_dm.o(.text.MOTOR_DM_ParseFeedbackFrame) + [Anonymous Symbol] 0x0800b790 Section 0 motor_dm.o(.text.MOTOR_DM_Register) + MOTOR_DM_SendMITCmd 0x0800b8bd Thumb Code 324 motor_dm.o(.text.MOTOR_DM_SendMITCmd) + [Anonymous Symbol] 0x0800b8bc Section 0 motor_dm.o(.text.MOTOR_DM_SendMITCmd) + [Anonymous Symbol] 0x0800ba00 Section 0 motor_dm.o(.text.MOTOR_DM_Update) + MOTOR_RM_CreateCANManager 0x0800bb0d Thumb Code 150 motor_rm.o(.text.MOTOR_RM_CreateCANManager) + [Anonymous Symbol] 0x0800bb0c Section 0 motor_rm.o(.text.MOTOR_RM_CreateCANManager) + [Anonymous Symbol] 0x0800bba4 Section 0 motor_rm.o(.text.MOTOR_RM_Ctrl) + MOTOR_RM_GetCANManager 0x0800bd15 Thumb Code 48 motor_rm.o(.text.MOTOR_RM_GetCANManager) + [Anonymous Symbol] 0x0800bd14 Section 0 motor_rm.o(.text.MOTOR_RM_GetCANManager) + MOTOR_RM_GetLSB 0x0800bd45 Thumb Code 82 motor_rm.o(.text.MOTOR_RM_GetLSB) + [Anonymous Symbol] 0x0800bd44 Section 0 motor_rm.o(.text.MOTOR_RM_GetLSB) + MOTOR_RM_GetLogicalIndex 0x0800bd99 Thumb Code 128 motor_rm.o(.text.MOTOR_RM_GetLogicalIndex) + [Anonymous Symbol] 0x0800bd98 Section 0 motor_rm.o(.text.MOTOR_RM_GetLogicalIndex) + [Anonymous Symbol] 0x0800be18 Section 0 motor_rm.o(.text.MOTOR_RM_GetMotor) + MOTOR_RM_GetRatio 0x0800be91 Thumb Code 80 motor_rm.o(.text.MOTOR_RM_GetRatio) + [Anonymous Symbol] 0x0800be90 Section 0 motor_rm.o(.text.MOTOR_RM_GetRatio) + [Anonymous Symbol] 0x0800bee0 Section 0 motor_rm.o(.text.MOTOR_RM_Register) + [Anonymous Symbol] 0x0800c000 Section 0 motor_rm.o(.text.MOTOR_RM_SetOutput) + [Anonymous Symbol] 0x0800c11c Section 0 motor_rm.o(.text.MOTOR_RM_Update) + [Anonymous Symbol] 0x0800c220 Section 0 can.o(.text.MX_CAN1_Init) + [Anonymous Symbol] 0x0800c270 Section 0 can.o(.text.MX_CAN2_Init) + [Anonymous Symbol] 0x0800c2c0 Section 0 dma.o(.text.MX_DMA_Init) + [Anonymous Symbol] 0x0800c348 Section 0 freertos.o(.text.MX_FREERTOS_Init) + [Anonymous Symbol] 0x0800c388 Section 0 gpio.o(.text.MX_GPIO_Init) + [Anonymous Symbol] 0x0800c5b4 Section 0 i2c.o(.text.MX_I2C1_Init) + [Anonymous Symbol] 0x0800c5fc Section 0 i2c.o(.text.MX_I2C2_Init) + [Anonymous Symbol] 0x0800c644 Section 0 spi.o(.text.MX_SPI1_Init) + [Anonymous Symbol] 0x0800c698 Section 0 spi.o(.text.MX_SPI2_Init) + [Anonymous Symbol] 0x0800c6ec Section 0 tim.o(.text.MX_TIM10_Init) + [Anonymous Symbol] 0x0800c77c Section 0 tim.o(.text.MX_TIM7_Init) + [Anonymous Symbol] 0x0800c7d4 Section 0 usart.o(.text.MX_USART1_UART_Init) + [Anonymous Symbol] 0x0800c814 Section 0 usart.o(.text.MX_USART3_UART_Init) + [Anonymous Symbol] 0x0800c860 Section 0 stm32f4xx_it.o(.text.MemManage_Handler) + Motor_RM_Decode 0x0800c865 Thumb Code 540 motor_rm.o(.text.Motor_RM_Decode) + [Anonymous Symbol] 0x0800c864 Section 0 motor_rm.o(.text.Motor_RM_Decode) + [Anonymous Symbol] 0x0800ca80 Section 0 stm32f4xx_it.o(.text.NMI_Handler) + NVIC_EncodePriority 0x0800ca85 Thumb Code 108 stm32f4xx_hal_cortex.o(.text.NVIC_EncodePriority) + [Anonymous Symbol] 0x0800ca84 Section 0 stm32f4xx_hal_cortex.o(.text.NVIC_EncodePriority) + [Anonymous Symbol] 0x0800caf0 Section 0 pid.o(.text.PID_Calc) + [Anonymous Symbol] 0x0800cde0 Section 0 pid.o(.text.PID_Init) + [Anonymous Symbol] 0x0800cf78 Section 0 pid.o(.text.PID_Reset) + [Anonymous Symbol] 0x0800cfc0 Section 0 port.o(.text.PendSV_Handler) + pxCurrentTCBConst 0x0800d020 Number 0 port.o(.text.PendSV_Handler) + [Anonymous Symbol] 0x0800d024 Section 0 bsp_rc.o(.text.RC_Init) + [Anonymous Symbol] 0x0800d0b8 Section 0 bsp_rc.o(.text.RC_restart) + SPI_DMAError 0x0800d115 Thumb Code 52 stm32f4xx_hal_spi.o(.text.SPI_DMAError) + [Anonymous Symbol] 0x0800d114 Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMAError) + SPI_DMAHalfReceiveCplt 0x0800d149 Thumb Code 22 stm32f4xx_hal_spi.o(.text.SPI_DMAHalfReceiveCplt) + [Anonymous Symbol] 0x0800d148 Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMAHalfReceiveCplt) + SPI_DMAHalfTransmitCplt 0x0800d161 Thumb Code 22 stm32f4xx_hal_spi.o(.text.SPI_DMAHalfTransmitCplt) + [Anonymous Symbol] 0x0800d160 Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMAHalfTransmitCplt) + SPI_DMAHalfTransmitReceiveCplt 0x0800d179 Thumb Code 22 stm32f4xx_hal_spi.o(.text.SPI_DMAHalfTransmitReceiveCplt) + [Anonymous Symbol] 0x0800d178 Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMAHalfTransmitReceiveCplt) + SPI_DMAReceiveCplt 0x0800d191 Thumb Code 162 stm32f4xx_hal_spi.o(.text.SPI_DMAReceiveCplt) + [Anonymous Symbol] 0x0800d190 Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMAReceiveCplt) + SPI_DMATransmitCplt 0x0800d235 Thumb Code 166 stm32f4xx_hal_spi.o(.text.SPI_DMATransmitCplt) + [Anonymous Symbol] 0x0800d234 Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMATransmitCplt) + SPI_DMATransmitReceiveCplt 0x0800d2dd Thumb Code 134 stm32f4xx_hal_spi.o(.text.SPI_DMATransmitReceiveCplt) + [Anonymous Symbol] 0x0800d2dc Section 0 stm32f4xx_hal_spi.o(.text.SPI_DMATransmitReceiveCplt) + SPI_EndRxTransaction 0x0800d365 Thumb Code 228 stm32f4xx_hal_spi.o(.text.SPI_EndRxTransaction) + [Anonymous Symbol] 0x0800d364 Section 0 stm32f4xx_hal_spi.o(.text.SPI_EndRxTransaction) + SPI_EndRxTxTransaction 0x0800d449 Thumb Code 204 stm32f4xx_hal_spi.o(.text.SPI_EndRxTxTransaction) + [Anonymous Symbol] 0x0800d448 Section 0 stm32f4xx_hal_spi.o(.text.SPI_EndRxTxTransaction) + SPI_Get 0x0800d515 Thumb Code 46 spi_1.o(.text.SPI_Get) + [Anonymous Symbol] 0x0800d514 Section 0 spi_1.o(.text.SPI_Get) + SPI_WaitFlagStateUntilTimeout 0x0800d545 Thumb Code 300 stm32f4xx_hal_spi.o(.text.SPI_WaitFlagStateUntilTimeout) + [Anonymous Symbol] 0x0800d544 Section 0 stm32f4xx_hal_spi.o(.text.SPI_WaitFlagStateUntilTimeout) + [Anonymous Symbol] 0x0800d670 Section 0 port.o(.text.SVC_Handler) + pxCurrentTCBConst2 0x0800d690 Number 0 port.o(.text.SVC_Handler) + SVC_Setup 0x0800d695 Thumb Code 14 cmsis_os2.o(.text.SVC_Setup) + [Anonymous Symbol] 0x0800d694 Section 0 cmsis_os2.o(.text.SVC_Setup) + [Anonymous Symbol] 0x0800d6a4 Section 0 freertos.o(.text.StartDefaultTask) + SysTick_Config 0x0800d6b9 Thumb Code 82 stm32f4xx_hal_cortex.o(.text.SysTick_Config) + [Anonymous Symbol] 0x0800d6b8 Section 0 stm32f4xx_hal_cortex.o(.text.SysTick_Config) + [Anonymous Symbol] 0x0800d70c Section 0 stm32f4xx_it.o(.text.SysTick_Handler) + [Anonymous Symbol] 0x0800d724 Section 0 main.o(.text.SystemClock_Config) + [Anonymous Symbol] 0x0800d7e0 Section 0 system_stm32f4xx.o(.text.SystemInit) + [Anonymous Symbol] 0x0800d7f4 Section 0 stm32f4xx_it.o(.text.TIM7_IRQHandler) + [Anonymous Symbol] 0x0800d804 Section 0 stm32f4xx_hal_tim.o(.text.TIM_Base_SetConfig) + [Anonymous Symbol] 0x0800d9a8 Section 0 stm32f4xx_hal_tim.o(.text.TIM_CCxChannelCmd) + TIM_OC1_SetConfig 0x0800d9e1 Thumb Code 234 stm32f4xx_hal_tim.o(.text.TIM_OC1_SetConfig) + [Anonymous Symbol] 0x0800d9e0 Section 0 stm32f4xx_hal_tim.o(.text.TIM_OC1_SetConfig) + [Anonymous Symbol] 0x0800dacc Section 0 stm32f4xx_hal_tim.o(.text.TIM_OC2_SetConfig) + TIM_OC3_SetConfig 0x0800dbc1 Thumb Code 242 stm32f4xx_hal_tim.o(.text.TIM_OC3_SetConfig) + [Anonymous Symbol] 0x0800dbc0 Section 0 stm32f4xx_hal_tim.o(.text.TIM_OC3_SetConfig) + TIM_OC4_SetConfig 0x0800dcb5 Thumb Code 164 stm32f4xx_hal_tim.o(.text.TIM_OC4_SetConfig) + [Anonymous Symbol] 0x0800dcb4 Section 0 stm32f4xx_hal_tim.o(.text.TIM_OC4_SetConfig) + [Anonymous Symbol] 0x0800dd58 Section 0 init.o(.text.Task_Init) + [Anonymous Symbol] 0x0800de10 Section 0 atti_esti.o(.text.Task_atti_esti) + [Anonymous Symbol] 0x0800dfa0 Section 0 gimbal_ctrl.o(.text.Task_gimbal_ctrl) + [Anonymous Symbol] 0x0800e090 Section 0 remote.o(.text.Task_remote) + UART_DMAAbortOnError 0x0800e131 Thumb Code 28 stm32f4xx_hal_uart.o(.text.UART_DMAAbortOnError) + [Anonymous Symbol] 0x0800e130 Section 0 stm32f4xx_hal_uart.o(.text.UART_DMAAbortOnError) + UART_EndRxTransfer 0x0800e14d Thumb Code 148 stm32f4xx_hal_uart.o(.text.UART_EndRxTransfer) + [Anonymous Symbol] 0x0800e14c Section 0 stm32f4xx_hal_uart.o(.text.UART_EndRxTransfer) + UART_EndTransmit_IT 0x0800e1e1 Thumb Code 38 stm32f4xx_hal_uart.o(.text.UART_EndTransmit_IT) + [Anonymous Symbol] 0x0800e1e0 Section 0 stm32f4xx_hal_uart.o(.text.UART_EndTransmit_IT) + UART_Get 0x0800e209 Thumb Code 46 uart.o(.text.UART_Get) + [Anonymous Symbol] 0x0800e208 Section 0 uart.o(.text.UART_Get) + UART_Receive_IT 0x0800e239 Thumb Code 360 stm32f4xx_hal_uart.o(.text.UART_Receive_IT) + [Anonymous Symbol] 0x0800e238 Section 0 stm32f4xx_hal_uart.o(.text.UART_Receive_IT) + UART_SetConfig 0x0800e3a1 Thumb Code 314 stm32f4xx_hal_uart.o(.text.UART_SetConfig) + [Anonymous Symbol] 0x0800e3a0 Section 0 stm32f4xx_hal_uart.o(.text.UART_SetConfig) + UART_Transmit_IT 0x0800e4dd Thumb Code 148 stm32f4xx_hal_uart.o(.text.UART_Transmit_IT) + [Anonymous Symbol] 0x0800e4dc Section 0 stm32f4xx_hal_uart.o(.text.UART_Transmit_IT) + [Anonymous Symbol] 0x0800e570 Section 0 stm32f4xx_it.o(.text.USART3_IRQHandler) + [Anonymous Symbol] 0x0800e590 Section 0 remote_control.o(.text.USART3_IRQHandler1) + [Anonymous Symbol] 0x0800e5b4 Section 0 stm32f4xx_it.o(.text.UsageFault_Handler) + __ARM_isfinite 0x0800e5b9 Thumb Code 30 filter.o(.text.__ARM_isfinite) + [Anonymous Symbol] 0x0800e5b8 Section 0 filter.o(.text.__ARM_isfinite) + __ARM_isfinite 0x0800e5d9 Thumb Code 30 pid.o(.text.__ARM_isfinite) + [Anonymous Symbol] 0x0800e5d8 Section 0 pid.o(.text.__ARM_isfinite) + __ARM_isfinitef 0x0800e5f9 Thumb Code 24 filter.o(.text.__ARM_isfinitef) + [Anonymous Symbol] 0x0800e5f8 Section 0 filter.o(.text.__ARM_isfinitef) + __ARM_isfinitef 0x0800e611 Thumb Code 24 pid.o(.text.__ARM_isfinitef) + [Anonymous Symbol] 0x0800e610 Section 0 pid.o(.text.__ARM_isfinitef) + __ARM_isinf 0x0800e629 Thumb Code 52 filter.o(.text.__ARM_isinf) + [Anonymous Symbol] 0x0800e628 Section 0 filter.o(.text.__ARM_isinf) + __ARM_isinff 0x0800e65d Thumb Code 28 filter.o(.text.__ARM_isinff) + [Anonymous Symbol] 0x0800e65c Section 0 filter.o(.text.__ARM_isinff) + __NVIC_DisableIRQ 0x0800e679 Thumb Code 56 stm32f4xx_hal_cortex.o(.text.__NVIC_DisableIRQ) + [Anonymous Symbol] 0x0800e678 Section 0 stm32f4xx_hal_cortex.o(.text.__NVIC_DisableIRQ) + __NVIC_EnableIRQ 0x0800e6b1 Thumb Code 48 stm32f4xx_hal_cortex.o(.text.__NVIC_EnableIRQ) + [Anonymous Symbol] 0x0800e6b0 Section 0 stm32f4xx_hal_cortex.o(.text.__NVIC_EnableIRQ) + __NVIC_GetPriorityGrouping 0x0800e6e1 Thumb Code 16 stm32f4xx_hal_cortex.o(.text.__NVIC_GetPriorityGrouping) + [Anonymous Symbol] 0x0800e6e0 Section 0 stm32f4xx_hal_cortex.o(.text.__NVIC_GetPriorityGrouping) + __NVIC_SetPriority 0x0800e6f1 Thumb Code 66 stm32f4xx_hal_cortex.o(.text.__NVIC_SetPriority) + [Anonymous Symbol] 0x0800e6f0 Section 0 stm32f4xx_hal_cortex.o(.text.__NVIC_SetPriority) + __NVIC_SetPriority 0x0800e735 Thumb Code 66 cmsis_os2.o(.text.__NVIC_SetPriority) + [Anonymous Symbol] 0x0800e734 Section 0 cmsis_os2.o(.text.__NVIC_SetPriority) + __NVIC_SetPriorityGrouping 0x0800e779 Thumb Code 60 stm32f4xx_hal_cortex.o(.text.__NVIC_SetPriorityGrouping) + [Anonymous Symbol] 0x0800e778 Section 0 stm32f4xx_hal_cortex.o(.text.__NVIC_SetPriorityGrouping) + [Anonymous Symbol] 0x0800e7b4 Section 0 freertos.o(.text.configureTimerForRunTimeStats) + copysignf 0x0800e7b9 Thumb Code 30 ahrs.o(.text.copysignf) + [Anonymous Symbol] 0x0800e7b8 Section 0 ahrs.o(.text.copysignf) + [Anonymous Symbol] 0x0800e7d8 Section 0 bsp_delay.o(.text.delay_init) + [Anonymous Symbol] 0x0800e818 Section 0 tasks.o(.text.eTaskGetState) + float_to_uint 0x0800e911 Thumb Code 88 motor_dm.o(.text.float_to_uint) + [Anonymous Symbol] 0x0800e910 Section 0 motor_dm.o(.text.float_to_uint) + [Anonymous Symbol] 0x0800e968 Section 0 freertos.o(.text.getRunTimeCounterValue) + [Anonymous Symbol] 0x0800e96c Section 0 main.o(.text.main) + [Anonymous Symbol] 0x0800e9bc Section 0 calc_lib.o(.text.map) + [Anonymous Symbol] 0x0800e9e8 Section 0 cmsis_os2.o(.text.osDelay) + [Anonymous Symbol] 0x0800ea1c Section 0 cmsis_os2.o(.text.osDelayUntil) + [Anonymous Symbol] 0x0800ea74 Section 0 cmsis_os2.o(.text.osKernelGetState) + [Anonymous Symbol] 0x0800eac8 Section 0 cmsis_os2.o(.text.osKernelGetTickCount) + [Anonymous Symbol] 0x0800eaf0 Section 0 cmsis_os2.o(.text.osKernelGetTickFreq) + [Anonymous Symbol] 0x0800eaf8 Section 0 cmsis_os2.o(.text.osKernelInitialize) + [Anonymous Symbol] 0x0800eb40 Section 0 cmsis_os2.o(.text.osKernelLock) + [Anonymous Symbol] 0x0800eb98 Section 0 cmsis_os2.o(.text.osKernelStart) + [Anonymous Symbol] 0x0800ebec Section 0 cmsis_os2.o(.text.osKernelUnlock) + [Anonymous Symbol] 0x0800ec5c Section 0 cmsis_os2.o(.text.osMessageQueueGet) + [Anonymous Symbol] 0x0800ed1c Section 0 cmsis_os2.o(.text.osMessageQueueNew) + [Anonymous Symbol] 0x0800ee1c Section 0 cmsis_os2.o(.text.osMessageQueuePut) + [Anonymous Symbol] 0x0800eee0 Section 0 cmsis_os2.o(.text.osMessageQueueReset) + [Anonymous Symbol] 0x0800ef20 Section 0 cmsis_os2.o(.text.osMutexAcquire) + [Anonymous Symbol] 0x0800efc0 Section 0 cmsis_os2.o(.text.osMutexNew) + [Anonymous Symbol] 0x0800f0e8 Section 0 cmsis_os2.o(.text.osMutexRelease) + [Anonymous Symbol] 0x0800f168 Section 0 cmsis_os2.o(.text.osThreadFlagsSet) + [Anonymous Symbol] 0x0800f20c Section 0 cmsis_os2.o(.text.osThreadFlagsWait) + [Anonymous Symbol] 0x0800f328 Section 0 cmsis_os2.o(.text.osThreadGetId) + [Anonymous Symbol] 0x0800f338 Section 0 cmsis_os2.o(.text.osThreadNew) + [Anonymous Symbol] 0x0800f494 Section 0 cmsis_os2.o(.text.osThreadTerminate) + prvAddCurrentTaskToDelayedList 0x0800f4f5 Thumb Code 212 tasks.o(.text.prvAddCurrentTaskToDelayedList) + [Anonymous Symbol] 0x0800f4f4 Section 0 tasks.o(.text.prvAddCurrentTaskToDelayedList) + prvAddNewTaskToReadyList 0x0800f5c9 Thumb Code 290 tasks.o(.text.prvAddNewTaskToReadyList) + [Anonymous Symbol] 0x0800f5c8 Section 0 tasks.o(.text.prvAddNewTaskToReadyList) + prvCheckForValidListAndQueue 0x0800f6ed Thumb Code 162 timers.o(.text.prvCheckForValidListAndQueue) + [Anonymous Symbol] 0x0800f6ec Section 0 timers.o(.text.prvCheckForValidListAndQueue) + prvCheckTasksWaitingTermination 0x0800f791 Thumb Code 90 tasks.o(.text.prvCheckTasksWaitingTermination) + [Anonymous Symbol] 0x0800f790 Section 0 tasks.o(.text.prvCheckTasksWaitingTermination) + prvCopyDataFromQueue 0x0800f7ed Thumb Code 66 queue.o(.text.prvCopyDataFromQueue) + [Anonymous Symbol] 0x0800f7ec Section 0 queue.o(.text.prvCopyDataFromQueue) + prvCopyDataToQueue 0x0800f831 Thumb Code 204 queue.o(.text.prvCopyDataToQueue) + [Anonymous Symbol] 0x0800f830 Section 0 queue.o(.text.prvCopyDataToQueue) + prvDeleteTCB 0x0800f8fd Thumb Code 94 tasks.o(.text.prvDeleteTCB) + [Anonymous Symbol] 0x0800f8fc Section 0 tasks.o(.text.prvDeleteTCB) + prvGetDisinheritPriorityAfterTimeout 0x0800f95d Thumb Code 38 queue.o(.text.prvGetDisinheritPriorityAfterTimeout) + [Anonymous Symbol] 0x0800f95c Section 0 queue.o(.text.prvGetDisinheritPriorityAfterTimeout) + prvGetNextExpireTime 0x0800f985 Thumb Code 64 timers.o(.text.prvGetNextExpireTime) + [Anonymous Symbol] 0x0800f984 Section 0 timers.o(.text.prvGetNextExpireTime) + prvHeapInit 0x0800f9c5 Thumb Code 188 heap_4.o(.text.prvHeapInit) + [Anonymous Symbol] 0x0800f9c4 Section 0 heap_4.o(.text.prvHeapInit) + prvIdleTask 0x0800fa81 Thumb Code 56 tasks.o(.text.prvIdleTask) + [Anonymous Symbol] 0x0800fa80 Section 0 tasks.o(.text.prvIdleTask) + prvInitialiseMutex 0x0800fab9 Thumb Code 44 queue.o(.text.prvInitialiseMutex) + [Anonymous Symbol] 0x0800fab8 Section 0 queue.o(.text.prvInitialiseMutex) + prvInitialiseNewQueue 0x0800fae5 Thumb Code 72 queue.o(.text.prvInitialiseNewQueue) + [Anonymous Symbol] 0x0800fae4 Section 0 queue.o(.text.prvInitialiseNewQueue) + prvInitialiseNewTask 0x0800fb2d Thumb Code 300 tasks.o(.text.prvInitialiseNewTask) + [Anonymous Symbol] 0x0800fb2c Section 0 tasks.o(.text.prvInitialiseNewTask) + prvInitialiseTaskLists 0x0800fc59 Thumb Code 142 tasks.o(.text.prvInitialiseTaskLists) + [Anonymous Symbol] 0x0800fc58 Section 0 tasks.o(.text.prvInitialiseTaskLists) + prvInsertBlockIntoFreeList 0x0800fce9 Thumb Code 198 heap_4.o(.text.prvInsertBlockIntoFreeList) + [Anonymous Symbol] 0x0800fce8 Section 0 heap_4.o(.text.prvInsertBlockIntoFreeList) + prvInsertTimerInActiveList 0x0800fdb1 Thumb Code 134 timers.o(.text.prvInsertTimerInActiveList) + [Anonymous Symbol] 0x0800fdb0 Section 0 timers.o(.text.prvInsertTimerInActiveList) + prvIsQueueEmpty 0x0800fe39 Thumb Code 40 queue.o(.text.prvIsQueueEmpty) + [Anonymous Symbol] 0x0800fe38 Section 0 queue.o(.text.prvIsQueueEmpty) + prvIsQueueFull 0x0800fe61 Thumb Code 46 queue.o(.text.prvIsQueueFull) + [Anonymous Symbol] 0x0800fe60 Section 0 queue.o(.text.prvIsQueueFull) + prvPortStartFirstTask 0x0800fe91 Thumb Code 34 port.o(.text.prvPortStartFirstTask) + [Anonymous Symbol] 0x0800fe90 Section 0 port.o(.text.prvPortStartFirstTask) + prvProcessExpiredTimer 0x0800feb9 Thumb Code 142 timers.o(.text.prvProcessExpiredTimer) + [Anonymous Symbol] 0x0800feb8 Section 0 timers.o(.text.prvProcessExpiredTimer) + prvProcessReceivedCommands 0x0800ff49 Thumb Code 402 timers.o(.text.prvProcessReceivedCommands) + [Anonymous Symbol] 0x0800ff48 Section 0 timers.o(.text.prvProcessReceivedCommands) + prvProcessTimerOrBlockTask 0x080100dd Thumb Code 154 timers.o(.text.prvProcessTimerOrBlockTask) + [Anonymous Symbol] 0x080100dc Section 0 timers.o(.text.prvProcessTimerOrBlockTask) + prvResetNextTaskUnblockTime 0x08010179 Thumb Code 70 tasks.o(.text.prvResetNextTaskUnblockTime) + [Anonymous Symbol] 0x08010178 Section 0 tasks.o(.text.prvResetNextTaskUnblockTime) + prvSampleTimeNow 0x080101c1 Thumb Code 68 timers.o(.text.prvSampleTimeNow) + [Anonymous Symbol] 0x080101c0 Section 0 timers.o(.text.prvSampleTimeNow) + prvSwitchTimerLists 0x08010205 Thumb Code 212 timers.o(.text.prvSwitchTimerLists) + [Anonymous Symbol] 0x08010204 Section 0 timers.o(.text.prvSwitchTimerLists) + prvTaskExitError 0x080102d9 Thumb Code 76 port.o(.text.prvTaskExitError) + [Anonymous Symbol] 0x080102d8 Section 0 port.o(.text.prvTaskExitError) + prvTimerTask 0x08010325 Thumb Code 30 timers.o(.text.prvTimerTask) + [Anonymous Symbol] 0x08010324 Section 0 timers.o(.text.prvTimerTask) + prvUnlockQueue 0x08010345 Thumb Code 174 queue.o(.text.prvUnlockQueue) + [Anonymous Symbol] 0x08010344 Section 0 queue.o(.text.prvUnlockQueue) + [Anonymous Symbol] 0x080103f4 Section 0 heap_4.o(.text.pvPortMalloc) + [Anonymous Symbol] 0x080105e0 Section 0 tasks.o(.text.pvTaskIncrementMutexHeldCount) + [Anonymous Symbol] 0x0801060c Section 0 port.o(.text.pxPortInitialiseStack) + [Anonymous Symbol] 0x08010670 Section 0 ai.o(.text.remote_ParseHost) + [Anonymous Symbol] 0x08010720 Section 0 remote_control.o(.text.remote_control_init) + sbus_to_rc 0x08010739 Thumb Code 656 remote_control.o(.text.sbus_to_rc) + [Anonymous Symbol] 0x08010738 Section 0 remote_control.o(.text.sbus_to_rc) + uint_to_float 0x080109c9 Thumb Code 82 motor_dm.o(.text.uint_to_float) + [Anonymous Symbol] 0x080109c8 Section 0 motor_dm.o(.text.uint_to_float) + [Anonymous Symbol] 0x08010a1c Section 0 calc_lib.o(.text.user_delay_ms) + [Anonymous Symbol] 0x08010a4c Section 0 calc_lib.o(.text.user_delay_us) + [Anonymous Symbol] 0x08010a90 Section 0 list.o(.text.uxListRemove) + [Anonymous Symbol] 0x08010ad8 Section 0 cmsis_os2.o(.text.vApplicationGetIdleTaskMemory) + [Anonymous Symbol] 0x08010b04 Section 0 cmsis_os2.o(.text.vApplicationGetTimerTaskMemory) + [Anonymous Symbol] 0x08010b30 Section 0 freertos.o(.text.vApplicationStackOverflowHook) + [Anonymous Symbol] 0x08010b3c Section 0 list.o(.text.vListInitialise) + [Anonymous Symbol] 0x08010b6c Section 0 list.o(.text.vListInitialiseItem) + [Anonymous Symbol] 0x08010b7c Section 0 list.o(.text.vListInsert) + [Anonymous Symbol] 0x08010be8 Section 0 list.o(.text.vListInsertEnd) + vPortEnableVFP 0x08010c25 Thumb Code 14 port.o(.text.vPortEnableVFP) + [Anonymous Symbol] 0x08010c24 Section 0 port.o(.text.vPortEnableVFP) + [Anonymous Symbol] 0x08010c38 Section 0 port.o(.text.vPortEnterCritical) + [Anonymous Symbol] 0x08010c90 Section 0 port.o(.text.vPortExitCritical) + [Anonymous Symbol] 0x08010cdc Section 0 heap_4.o(.text.vPortFree) + [Anonymous Symbol] 0x08010dac Section 0 port.o(.text.vPortSetupTimerInterrupt) + [Anonymous Symbol] 0x08010df0 Section 0 port.o(.text.vPortValidateInterruptPriority) + [Anonymous Symbol] 0x08010e74 Section 0 queue.o(.text.vQueueAddToRegistry) + [Anonymous Symbol] 0x08010ec8 Section 0 queue.o(.text.vQueueWaitForMessageRestricted) + [Anonymous Symbol] 0x08010f2c Section 0 tasks.o(.text.vTaskDelay) + [Anonymous Symbol] 0x08010f9c Section 0 tasks.o(.text.vTaskDelayUntil) + [Anonymous Symbol] 0x080110b0 Section 0 tasks.o(.text.vTaskDelete) + [Anonymous Symbol] 0x080111c0 Section 0 tasks.o(.text.vTaskInternalSetTimeOutState) + [Anonymous Symbol] 0x080111e4 Section 0 tasks.o(.text.vTaskMissedYield) + [Anonymous Symbol] 0x080111f4 Section 0 tasks.o(.text.vTaskPlaceOnEventList) + [Anonymous Symbol] 0x08011238 Section 0 tasks.o(.text.vTaskPlaceOnEventListRestricted) + [Anonymous Symbol] 0x0801128c Section 0 tasks.o(.text.vTaskPriorityDisinheritAfterTimeout) + [Anonymous Symbol] 0x080113c0 Section 0 tasks.o(.text.vTaskStartScheduler) + [Anonymous Symbol] 0x080114a4 Section 0 tasks.o(.text.vTaskSuspendAll) + [Anonymous Symbol] 0x080114b4 Section 0 tasks.o(.text.vTaskSwitchContext) + [Anonymous Symbol] 0x08011634 Section 0 port.o(.text.xPortStartScheduler) + [Anonymous Symbol] 0x0801178c Section 0 port.o(.text.xPortSysTickHandler) + [Anonymous Symbol] 0x080117c8 Section 0 queue.o(.text.xQueueCreateMutex) + [Anonymous Symbol] 0x080117f0 Section 0 queue.o(.text.xQueueCreateMutexStatic) + [Anonymous Symbol] 0x08011824 Section 0 queue.o(.text.xQueueGenericCreate) + [Anonymous Symbol] 0x08011898 Section 0 queue.o(.text.xQueueGenericCreateStatic) + [Anonymous Symbol] 0x080119a8 Section 0 queue.o(.text.xQueueGenericReset) + [Anonymous Symbol] 0x08011a64 Section 0 queue.o(.text.xQueueGenericSend) + [Anonymous Symbol] 0x08011c90 Section 0 queue.o(.text.xQueueGenericSendFromISR) + [Anonymous Symbol] 0x08011ddc Section 0 queue.o(.text.xQueueGiveMutexRecursive) + [Anonymous Symbol] 0x08011e48 Section 0 queue.o(.text.xQueueReceive) + [Anonymous Symbol] 0x08012024 Section 0 queue.o(.text.xQueueReceiveFromISR) + [Anonymous Symbol] 0x0801212c Section 0 queue.o(.text.xQueueSemaphoreTake) + [Anonymous Symbol] 0x08012358 Section 0 queue.o(.text.xQueueTakeMutexRecursive) + [Anonymous Symbol] 0x080123c8 Section 0 tasks.o(.text.xTaskCheckForTimeOut) + [Anonymous Symbol] 0x08012494 Section 0 tasks.o(.text.xTaskCreate) + [Anonymous Symbol] 0x08012534 Section 0 tasks.o(.text.xTaskCreateStatic) + [Anonymous Symbol] 0x08012604 Section 0 tasks.o(.text.xTaskGenericNotify) + [Anonymous Symbol] 0x0801277c Section 0 tasks.o(.text.xTaskGenericNotifyFromISR) + [Anonymous Symbol] 0x08012940 Section 0 tasks.o(.text.xTaskGetCurrentTaskHandle) + [Anonymous Symbol] 0x08012954 Section 0 tasks.o(.text.xTaskGetSchedulerState) + [Anonymous Symbol] 0x0801298c Section 0 tasks.o(.text.xTaskGetTickCount) + [Anonymous Symbol] 0x080129a0 Section 0 tasks.o(.text.xTaskGetTickCountFromISR) + [Anonymous Symbol] 0x080129c0 Section 0 tasks.o(.text.xTaskIncrementTick) + [Anonymous Symbol] 0x08012b84 Section 0 tasks.o(.text.xTaskNotifyWait) + [Anonymous Symbol] 0x08012c5c Section 0 tasks.o(.text.xTaskPriorityDisinherit) + [Anonymous Symbol] 0x08012d48 Section 0 tasks.o(.text.xTaskPriorityInherit) + [Anonymous Symbol] 0x08012e58 Section 0 tasks.o(.text.xTaskRemoveFromEventList) + [Anonymous Symbol] 0x08012f28 Section 0 tasks.o(.text.xTaskResumeAll) + [Anonymous Symbol] 0x080130b0 Section 0 timers.o(.text.xTimerCreateTimerTask) + [Anonymous Symbol] 0x08013144 Section 0 timers.o(.text.xTimerGenericCommand) + i.__ARM_fpclassify 0x080131f4 Section 0 fpclassify.o(i.__ARM_fpclassify) + i.__ARM_fpclassifyf 0x08013224 Section 0 fpclassifyf.o(i.__ARM_fpclassifyf) + i.__hardfp_asinf 0x0801324c Section 0 asinf.o(i.__hardfp_asinf) + i.__hardfp_atan 0x08013378 Section 0 atan.o(i.__hardfp_atan) + i.__hardfp_atan2 0x08013650 Section 0 atan2.o(i.__hardfp_atan2) + i.__hardfp_atan2f 0x08013850 Section 0 atan2f.o(i.__hardfp_atan2f) + i.__hardfp_cosf 0x08013afc Section 0 cosf.o(i.__hardfp_cosf) + i.__hardfp_tanf 0x08013c4c Section 0 tanf.o(i.__hardfp_tanf) + i.__kernel_poly 0x08013dc8 Section 0 poly.o(i.__kernel_poly) + i.__mathlib_dbl_infnan 0x08013ec0 Section 0 dunder.o(i.__mathlib_dbl_infnan) + i.__mathlib_dbl_infnan2 0x08013ed4 Section 0 dunder.o(i.__mathlib_dbl_infnan2) + i.__mathlib_dbl_underflow 0x08013ee8 Section 0 dunder.o(i.__mathlib_dbl_underflow) + i.__mathlib_flt_infnan 0x08013f08 Section 0 funder.o(i.__mathlib_flt_infnan) + i.__mathlib_flt_infnan2 0x08013f0e Section 0 funder.o(i.__mathlib_flt_infnan2) + i.__mathlib_flt_invalid 0x08013f14 Section 0 funder.o(i.__mathlib_flt_invalid) + i.__mathlib_flt_underflow 0x08013f24 Section 0 funder.o(i.__mathlib_flt_underflow) + i.__mathlib_rredf2 0x08013f34 Section 0 rredf.o(i.__mathlib_rredf2) + i.atan 0x08014088 Section 0 atan.o(i.atan) + i.fabs 0x08014098 Section 0 fabs.o(i.fabs) + i.sqrtf 0x080140b0 Section 0 sqrtf.o(i.sqrtf) + $v0 0x080140ee Number 0 basic.o(x$fpl$basic) + x$fpl$basic 0x080140ee Section 24 basic.o(x$fpl$basic) + $v0 0x08014108 Number 0 d2f.o(x$fpl$d2f) + x$fpl$d2f 0x08014108 Section 98 d2f.o(x$fpl$d2f) + $v0 0x0801416c Number 0 daddsub_clz.o(x$fpl$dadd) + x$fpl$dadd 0x0801416c Section 336 daddsub_clz.o(x$fpl$dadd) + _dadd1 0x0801417d Thumb Code 0 daddsub_clz.o(x$fpl$dadd) + $v0 0x080142bc Number 0 dcmpi.o(x$fpl$dcmpinf) + x$fpl$dcmpinf 0x080142bc Section 24 dcmpi.o(x$fpl$dcmpinf) + $v0 0x080142d4 Number 0 ddiv.o(x$fpl$ddiv) + x$fpl$ddiv 0x080142d4 Section 692 ddiv.o(x$fpl$ddiv) + ddiv_entry 0x080142db Thumb Code 0 ddiv.o(x$fpl$ddiv) + $v0 0x08014588 Number 0 deqf.o(x$fpl$deqf) + x$fpl$deqf 0x08014588 Section 120 deqf.o(x$fpl$deqf) + $v0 0x08014600 Number 0 dfix.o(x$fpl$dfix) + x$fpl$dfix 0x08014600 Section 94 dfix.o(x$fpl$dfix) + $v0 0x08014660 Number 0 dfixu.o(x$fpl$dfixu) + x$fpl$dfixu 0x08014660 Section 90 dfixu.o(x$fpl$dfixu) + $v0 0x080146ba Number 0 dflt_clz.o(x$fpl$dflt) + x$fpl$dflt 0x080146ba Section 46 dflt_clz.o(x$fpl$dflt) + $v0 0x080146e8 Number 0 dflt_clz.o(x$fpl$dfltu) + x$fpl$dfltu 0x080146e8 Section 38 dflt_clz.o(x$fpl$dfltu) + $v0 0x08014710 Number 0 dmul.o(x$fpl$dmul) + x$fpl$dmul 0x08014710 Section 340 dmul.o(x$fpl$dmul) + $v0 0x08014864 Number 0 dnaninf.o(x$fpl$dnaninf) + x$fpl$dnaninf 0x08014864 Section 156 dnaninf.o(x$fpl$dnaninf) + $v0 0x08014900 Number 0 dretinf.o(x$fpl$dretinf) + x$fpl$dretinf 0x08014900 Section 12 dretinf.o(x$fpl$dretinf) + $v0 0x0801490c Number 0 daddsub_clz.o(x$fpl$drsb) + x$fpl$drsb 0x0801490c Section 22 daddsub_clz.o(x$fpl$drsb) + $v0 0x08014924 Number 0 daddsub_clz.o(x$fpl$dsub) + x$fpl$dsub 0x08014924 Section 476 daddsub_clz.o(x$fpl$dsub) + _dsub1 0x08014935 Thumb Code 0 daddsub_clz.o(x$fpl$dsub) + $v0 0x08014b00 Number 0 f2d.o(x$fpl$f2d) + x$fpl$f2d 0x08014b00 Section 86 f2d.o(x$fpl$f2d) + $v0 0x08014b56 Number 0 ffltll_clz.o(x$fpl$ffltll) + x$fpl$ffltll 0x08014b56 Section 96 ffltll_clz.o(x$fpl$ffltll) + $v0 0x08014bb6 Number 0 fnaninf.o(x$fpl$fnaninf) + x$fpl$fnaninf 0x08014bb6 Section 140 fnaninf.o(x$fpl$fnaninf) + $v0 0x08014c42 Number 0 fpinit.o(x$fpl$fpinit) + x$fpl$fpinit 0x08014c42 Section 26 fpinit.o(x$fpl$fpinit) + $v0 0x08014c5c Number 0 fretinf.o(x$fpl$fretinf) + x$fpl$fretinf 0x08014c5c Section 10 fretinf.o(x$fpl$fretinf) + x$fpl$usenofp 0x08014c66 Section 0 usenofp.o(x$fpl$usenofp) + atanhi 0x08014c68 Data 32 atan.o(.constdata) + .constdata 0x08014c68 Section 152 atan.o(.constdata) + atanlo 0x08014c88 Data 32 atan.o(.constdata) + aTodd 0x08014ca8 Data 40 atan.o(.constdata) + aTeven 0x08014cd0 Data 48 atan.o(.constdata) + .constdata 0x08014d00 Section 8 qnan.o(.constdata) + twooverpi 0x08014d08 Data 32 rredf.o(.constdata) + .constdata 0x08014d08 Section 32 rredf.o(.constdata) + DMA_CalcBaseAndBitshift.flagBitshiftOffset 0x08014d40 Data 8 stm32f4xx_hal_dma.o(.rodata.DMA_CalcBaseAndBitshift.flagBitshiftOffset) + [Anonymous Symbol] 0x08014d40 Section 0 stm32f4xx_hal_dma.o(.rodata.DMA_CalcBaseAndBitshift.flagBitshiftOffset) + GPIO_Map 0x08014d48 Data 56 gpio_1.o(.rodata.GPIO_Map) + [Anonymous Symbol] 0x08014d48 Section 0 gpio_1.o(.rodata.GPIO_Map) + PWM_Map 0x08014d80 Data 8 pwm.o(.rodata.PWM_Map) + [Anonymous Symbol] 0x08014d80 Section 0 pwm.o(.rodata.PWM_Map) + imu_temp_ctrl_pid_param 0x08014e3c Data 32 atti_esti.o(.rodata.imu_temp_ctrl_pid_param) + [Anonymous Symbol] 0x08014e3c Section 0 atti_esti.o(.rodata.imu_temp_ctrl_pid_param) + [Anonymous Symbol] 0x08014e5c Section 0 freertos.o(.rodata.str1.1) + .L.str 0x08014e68 Data 5 tasks.o(.rodata.str1.1) + [Anonymous Symbol] 0x08014e68 Section 0 tasks.o(.rodata.str1.1) + .L.str.1 0x08014e6d Data 15 tasks.o(.rodata.str1.1) + .L.str.1 0x08014e6d Data 5 timers.o(.rodata.str1.1) + [Anonymous Symbol] 0x08014e6d Section 0 timers.o(.rodata.str1.1) + .L.str 0x08014e72 Data 8 timers.o(.rodata.str1.1) + [Anonymous Symbol] 0x08014e7a Section 0 user_task.o(.rodata.str1.1) + .L.str.2 0x08014e7c Data 12 tasks.o(.rodata.str1.1) + .L.str.3 0x08014e88 Data 12 tasks.o(.rodata.str1.1) beta 0x20000004 Data 4 ahrs.o(.data.beta) [Anonymous Symbol] 0x20000004 Section 0 ahrs.o(.data.beta) uxCriticalNesting 0x200001a0 Data 4 port.o(.data.uxCriticalNesting) @@ -7204,535 +7204,535 @@ Image Symbol Table __scatterload_rt2 0x08000191 Thumb Code 44 __scatter.o(!!!scatter) __scatterload_rt2_thumb_only 0x08000191 Thumb Code 0 __scatter.o(!!!scatter) __scatterload_null 0x0800019f Thumb Code 0 __scatter.o(!!!scatter) - __decompress 0x080001c5 Thumb Code 58 __dczerorl.o(!!dczerorl) - __decompress0 0x080001c5 Thumb Code 0 __dczerorl.o(!!dczerorl) - __scatterload_zeroinit 0x08000201 Thumb Code 28 __scatter_zi.o(!!handler_zi) - __rt_lib_init 0x0800021d Thumb Code 0 libinit.o(.ARM.Collect$$libinit$$00000000) - __rt_lib_init_fp_1 0x0800021f Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000001) - __rt_lib_init_alloca_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002E) - __rt_lib_init_argv_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002C) - __rt_lib_init_atexit_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001B) - __rt_lib_init_clock_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000021) - __rt_lib_init_cpp_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000032) - __rt_lib_init_exceptions_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000030) - __rt_lib_init_fp_trap_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001F) - __rt_lib_init_getenv_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000023) - __rt_lib_init_heap_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000A) - __rt_lib_init_lc_collate_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000011) - __rt_lib_init_lc_ctype_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000013) - __rt_lib_init_lc_monetary_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000015) - __rt_lib_init_lc_numeric_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000017) - __rt_lib_init_lc_time_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000019) - __rt_lib_init_preinit_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000004) - __rt_lib_init_rand_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000E) - __rt_lib_init_return 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000033) - __rt_lib_init_signal_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001D) - __rt_lib_init_stdio_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000025) - __rt_lib_init_user_alloc_1 0x08000223 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000C) - __rt_lib_shutdown 0x08000225 Thumb Code 0 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) - __rt_lib_shutdown_cpp_1 0x08000227 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) - __rt_lib_shutdown_fp_trap_1 0x08000227 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000007) - __rt_lib_shutdown_heap_1 0x08000227 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) - __rt_lib_shutdown_return 0x08000227 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000010) - __rt_lib_shutdown_signal_1 0x08000227 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A) - __rt_lib_shutdown_stdio_1 0x08000227 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) - __rt_lib_shutdown_user_alloc_1 0x08000227 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) - __rt_entry 0x08000229 Thumb Code 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000) - __rt_entry_presh_1 0x08000229 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002) - __rt_entry_sh 0x08000229 Thumb Code 0 __rtentry4.o(.ARM.Collect$$rtentry$$00000004) - __rt_entry_li 0x0800022f Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) - __rt_entry_postsh_1 0x0800022f Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009) - __rt_entry_main 0x08000233 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) - __rt_entry_postli_1 0x08000233 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) - __rt_exit 0x0800023b Thumb Code 0 rtexit.o(.ARM.Collect$$rtexit$$00000000) - __rt_exit_ls 0x0800023d Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000003) - __rt_exit_prels_1 0x0800023d Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002) - __rt_exit_exit 0x08000241 Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000004) - Reset_Handler 0x08000249 Thumb Code 8 startup_stm32f407xx.o(.text) - ADC_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - CAN1_SCE_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - CAN2_SCE_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DCMI_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA1_Stream0_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA1_Stream2_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA1_Stream3_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA1_Stream4_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA1_Stream5_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA1_Stream6_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA1_Stream7_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA2_Stream0_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA2_Stream1_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA2_Stream4_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA2_Stream5_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA2_Stream6_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - DMA2_Stream7_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - ETH_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - ETH_WKUP_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - EXTI15_10_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - EXTI1_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - EXTI2_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - FLASH_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - FMC_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - FPU_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - HASH_RNG_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - I2C2_ER_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - I2C2_EV_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - I2C3_ER_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - I2C3_EV_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - OTG_FS_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - OTG_FS_WKUP_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - OTG_HS_EP1_IN_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - OTG_HS_EP1_OUT_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - OTG_HS_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - OTG_HS_WKUP_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - PVD_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - RCC_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - RTC_Alarm_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - RTC_WKUP_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - SDIO_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - SPI1_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - SPI2_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - SPI3_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TAMP_STAMP_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM1_BRK_TIM9_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM1_CC_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM1_TRG_COM_TIM11_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM1_UP_TIM10_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM2_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM3_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM4_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM5_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM6_DAC_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM8_BRK_TIM12_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM8_CC_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM8_TRG_COM_TIM14_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - TIM8_UP_TIM13_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - UART4_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - UART5_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - USART1_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - USART2_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - USART6_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - WWDG_IRQHandler 0x08000263 Thumb Code 0 startup_stm32f407xx.o(.text) - __user_initial_stackheap 0x08000265 Thumb Code 0 startup_stm32f407xx.o(.text) - __aeabi_uldivmod 0x08000289 Thumb Code 0 lludivv7m.o(.text) - _ll_udiv 0x08000289 Thumb Code 240 lludivv7m.o(.text) - __aeabi_memcpy 0x08000379 Thumb Code 0 rt_memcpy_v6.o(.text) - __rt_memcpy 0x08000379 Thumb Code 138 rt_memcpy_v6.o(.text) - _memcpy_lastbytes 0x080003df Thumb Code 0 rt_memcpy_v6.o(.text) - __aeabi_memset4 0x08000403 Thumb Code 16 aeabi_memset4.o(.text) - __aeabi_memset8 0x08000403 Thumb Code 0 aeabi_memset4.o(.text) - __aeabi_memclr4 0x08000413 Thumb Code 0 rt_memclr_w.o(.text) - __aeabi_memclr8 0x08000413 Thumb Code 0 rt_memclr_w.o(.text) - __rt_memclr_w 0x08000413 Thumb Code 0 rt_memclr_w.o(.text) - _memset_w 0x08000417 Thumb Code 74 rt_memclr_w.o(.text) - __use_two_region_memory 0x08000461 Thumb Code 2 heapauxi.o(.text) - __rt_heap_escrow$2region 0x08000463 Thumb Code 2 heapauxi.o(.text) - __rt_heap_expand$2region 0x08000465 Thumb Code 2 heapauxi.o(.text) - __read_errno 0x08000467 Thumb Code 10 _rserrno.o(.text) - __set_errno 0x08000471 Thumb Code 12 _rserrno.o(.text) - __aeabi_memcpy4 0x0800047d Thumb Code 0 rt_memcpy_w.o(.text) - __aeabi_memcpy8 0x0800047d Thumb Code 0 rt_memcpy_w.o(.text) - __rt_memcpy_w 0x0800047d Thumb Code 100 rt_memcpy_w.o(.text) - _memcpy_lastbytes_aligned 0x080004c5 Thumb Code 0 rt_memcpy_w.o(.text) - __aeabi_errno_addr 0x080004e1 Thumb Code 8 rt_errno_addr_intlibspace.o(.text) - __errno$intlibspace 0x080004e1 Thumb Code 0 rt_errno_addr_intlibspace.o(.text) - __rt_errno_addr$intlibspace 0x080004e1 Thumb Code 0 rt_errno_addr_intlibspace.o(.text) - __user_libspace 0x080004e9 Thumb Code 8 libspace.o(.text) - __user_perproc_libspace 0x080004e9 Thumb Code 0 libspace.o(.text) - __user_perthread_libspace 0x080004e9 Thumb Code 0 libspace.o(.text) - __user_setup_stackheap 0x080004f1 Thumb Code 74 sys_stackheap_outer.o(.text) - exit 0x0800053b Thumb Code 18 exit.o(.text) - _sys_exit 0x0800054d Thumb Code 8 sys_exit.o(.text) - __I$use$semihosting 0x08000559 Thumb Code 0 use_no_semi.o(.text) - __use_no_semihosting_swi 0x08000559 Thumb Code 2 use_no_semi.o(.text) - __semihosting_library_function 0x0800055b Thumb Code 0 indicate_semi.o(.text) - AHRS_GetEulr 0x0800055d Thumb Code 348 ahrs.o(.text.AHRS_GetEulr) - AHRS_Init 0x080006b9 Thumb Code 644 ahrs.o(.text.AHRS_Init) - AHRS_ResetEulr 0x0800093d Thumb Code 18 ahrs.o(.text.AHRS_ResetEulr) - AHRS_Update 0x08000951 Thumb Code 3098 ahrs.o(.text.AHRS_Update) - AbsClip 0x08001b35 Thumb Code 106 user_math.o(.text.AbsClip) - BMI088_AcclStartDmaRecv 0x08001bb5 Thumb Code 30 bmi088.o(.text.BMI088_AcclStartDmaRecv) - BMI088_AcclWaitDmaCplt 0x08001bd5 Thumb Code 16 bmi088.o(.text.BMI088_AcclWaitDmaCplt) - BMI088_GetUpdateFreq 0x08001be5 Thumb Code 16 bmi088.o(.text.BMI088_GetUpdateFreq) - BMI088_GyroStartDmaRecv 0x08001c09 Thumb Code 26 bmi088.o(.text.BMI088_GyroStartDmaRecv) - BMI088_GyroWaitDmaCplt 0x08001c25 Thumb Code 16 bmi088.o(.text.BMI088_GyroWaitDmaCplt) - BMI088_Init 0x08001c35 Thumb Code 392 bmi088.o(.text.BMI088_Init) - BMI088_ParseAccl 0x08001dbd Thumb Code 244 bmi088.o(.text.BMI088_ParseAccl) - BMI088_ParseGyro 0x08001eb1 Thumb Code 280 bmi088.o(.text.BMI088_ParseGyro) - BMI088_WaitNew 0x0800201d Thumb Code 16 bmi088.o(.text.BMI088_WaitNew) - BSP_CAN_GetHandle 0x080023b1 Thumb Code 78 can_1.o(.text.BSP_CAN_GetHandle) - BSP_CAN_GetMessage 0x08002401 Thumb Code 158 can_1.o(.text.BSP_CAN_GetMessage) - BSP_CAN_Init 0x080024a1 Thumb Code 372 can_1.o(.text.BSP_CAN_Init) - BSP_CAN_ParseId 0x08002615 Thumb Code 66 can_1.o(.text.BSP_CAN_ParseId) - BSP_CAN_RegisterCallback 0x08002659 Thumb Code 130 can_1.o(.text.BSP_CAN_RegisterCallback) - BSP_CAN_RegisterId 0x080026dd Thumb Code 66 can_1.o(.text.BSP_CAN_RegisterId) - BSP_CAN_Transmit 0x080028e9 Thumb Code 374 can_1.o(.text.BSP_CAN_Transmit) - BSP_CAN_TransmitStdDataFrame 0x08002a61 Thumb Code 62 can_1.o(.text.BSP_CAN_TransmitStdDataFrame) - BSP_Free 0x08002d0d Thumb Code 16 mm.o(.text.BSP_Free) - BSP_GPIO_DisableIRQ 0x08002d1d Thumb Code 88 gpio_1.o(.text.BSP_GPIO_DisableIRQ) - BSP_GPIO_EnableIRQ 0x08002d75 Thumb Code 88 gpio_1.o(.text.BSP_GPIO_EnableIRQ) - BSP_GPIO_ReadPin 0x08002dcd Thumb Code 74 gpio_1.o(.text.BSP_GPIO_ReadPin) - BSP_GPIO_RegisterCallback 0x08002e19 Thumb Code 144 gpio_1.o(.text.BSP_GPIO_RegisterCallback) - BSP_GPIO_WritePin 0x08002ea9 Thumb Code 80 gpio_1.o(.text.BSP_GPIO_WritePin) - BSP_Malloc 0x08002ef9 Thumb Code 16 mm.o(.text.BSP_Malloc) - BSP_PWM_SetComp 0x08002f09 Thumb Code 318 pwm.o(.text.BSP_PWM_SetComp) - BSP_PWM_Start 0x08003049 Thumb Code 68 pwm.o(.text.BSP_PWM_Start) - BSP_SPI_GetHandle 0x0800308d Thumb Code 38 spi_1.o(.text.BSP_SPI_GetHandle) - BSP_SPI_Receive 0x080030b5 Thumb Code 128 spi_1.o(.text.BSP_SPI_Receive) - BSP_SPI_RegisterCallback 0x08003135 Thumb Code 68 spi_1.o(.text.BSP_SPI_RegisterCallback) - BSP_SPI_Transmit 0x08003179 Thumb Code 128 spi_1.o(.text.BSP_SPI_Transmit) - BSP_TIME_Delay 0x080031f9 Thumb Code 142 time.o(.text.BSP_TIME_Delay_ms) - BSP_TIME_Delay_ms 0x080031f9 Thumb Code 142 time.o(.text.BSP_TIME_Delay_ms) - BSP_TIME_Get 0x08003289 Thumb Code 170 time.o(.text.BSP_TIME_Get_us) - BSP_TIME_Get_us 0x08003289 Thumb Code 170 time.o(.text.BSP_TIME_Get_us) - BSP_UART_IRQHandler 0x08003335 Thumb Code 108 uart.o(.text.BSP_UART_IRQHandler) - BusFault_Handler 0x080033a1 Thumb Code 4 stm32f4xx_it.o(.text.BusFault_Handler) - CAN1_RX0_IRQHandler 0x080033a5 Thumb Code 16 stm32f4xx_it.o(.text.CAN1_RX0_IRQHandler) - CAN1_RX1_IRQHandler 0x080033b5 Thumb Code 16 stm32f4xx_it.o(.text.CAN1_RX1_IRQHandler) - CAN1_TX_IRQHandler 0x080033c5 Thumb Code 16 stm32f4xx_it.o(.text.CAN1_TX_IRQHandler) - CAN2_RX0_IRQHandler 0x080033d5 Thumb Code 16 stm32f4xx_it.o(.text.CAN2_RX0_IRQHandler) - CAN2_RX1_IRQHandler 0x080033e5 Thumb Code 16 stm32f4xx_it.o(.text.CAN2_RX1_IRQHandler) - CAN2_TX_IRQHandler 0x080033f5 Thumb Code 16 stm32f4xx_it.o(.text.CAN2_TX_IRQHandler) - CircleAdd 0x0800345d Thumb Code 132 user_math.o(.text.CircleAdd) - CircleError 0x080034e1 Thumb Code 154 user_math.o(.text.CircleError) - Clip 0x0800357d Thumb Code 76 user_math.o(.text.Clip) - Config_GetRobotParam 0x080035c9 Thumb Code 10 config.o(.text.Config_GetRobotParam) - DMA1_Stream1_IRQHandler 0x080035d5 Thumb Code 20 stm32f4xx_it.o(.text.DMA1_Stream1_IRQHandler) - DMA1_Stream1_IRQHandler1 0x080035e9 Thumb Code 86 remote_control.o(.text.DMA1_Stream1_IRQHandler1) - DMA2_Stream2_IRQHandler 0x08003641 Thumb Code 16 stm32f4xx_it.o(.text.DMA2_Stream2_IRQHandler) - DMA2_Stream3_IRQHandler 0x08003651 Thumb Code 16 stm32f4xx_it.o(.text.DMA2_Stream3_IRQHandler) - DebugMon_Handler 0x080037f9 Thumb Code 2 stm32f4xx_it.o(.text.DebugMon_Handler) - EXTI0_IRQHandler 0x080037fd Thumb Code 10 stm32f4xx_it.o(.text.EXTI0_IRQHandler) - EXTI3_IRQHandler 0x08003809 Thumb Code 10 stm32f4xx_it.o(.text.EXTI3_IRQHandler) - EXTI4_IRQHandler 0x08003815 Thumb Code 10 stm32f4xx_it.o(.text.EXTI4_IRQHandler) - EXTI9_5_IRQHandler 0x08003821 Thumb Code 10 stm32f4xx_it.o(.text.EXTI9_5_IRQHandler) - Error_Handler 0x0800382d Thumb Code 6 main.o(.text.Error_Handler) - Gimbal_Control 0x08003835 Thumb Code 1304 gimbal.o(.text.Gimbal_Control) - Gimbal_Init 0x08003d4d Thumb Code 472 gimbal.o(.text.Gimbal_Init) - Gimbal_Output 0x08003f25 Thumb Code 274 gimbal.o(.text.Gimbal_Output) - Gimbal_UpdateFeedback 0x080040ed Thumb Code 360 gimbal.o(.text.Gimbal_UpdateFeedback) - Gimbal_UpdateIMU 0x08004255 Thumb Code 74 gimbal.o(.text.Gimbal_UpdateIMU) - HAL_CAN_ActivateNotification 0x080042a1 Thumb Code 82 stm32f4xx_hal_can.o(.text.HAL_CAN_ActivateNotification) - HAL_CAN_AddTxMessage 0x080042f5 Thumb Code 342 stm32f4xx_hal_can.o(.text.HAL_CAN_AddTxMessage) - HAL_CAN_ConfigFilter 0x0800444d Thumb Code 414 stm32f4xx_hal_can.o(.text.HAL_CAN_ConfigFilter) - HAL_CAN_ErrorCallback 0x080045ed Thumb Code 80 can_1.o(.text.HAL_CAN_ErrorCallback) - HAL_CAN_GetRxFifoFillLevel 0x0800463d Thumb Code 82 stm32f4xx_hal_can.o(.text.HAL_CAN_GetRxFifoFillLevel) - HAL_CAN_GetRxMessage 0x08004691 Thumb Code 530 stm32f4xx_hal_can.o(.text.HAL_CAN_GetRxMessage) - HAL_CAN_GetTxMailboxesFreeLevel 0x080048a5 Thumb Code 112 stm32f4xx_hal_can.o(.text.HAL_CAN_GetTxMailboxesFreeLevel) - HAL_CAN_IRQHandler 0x08004915 Thumb Code 1010 stm32f4xx_hal_can.o(.text.HAL_CAN_IRQHandler) - HAL_CAN_Init 0x08004d09 Thumb Code 478 stm32f4xx_hal_can.o(.text.HAL_CAN_Init) - HAL_CAN_MspInit 0x08004ee9 Thumb Code 464 can.o(.text.HAL_CAN_MspInit) - HAL_CAN_RxFifo0FullCallback 0x080050b9 Thumb Code 80 can_1.o(.text.HAL_CAN_RxFifo0FullCallback) - HAL_CAN_RxFifo0MsgPendingCallback 0x08005109 Thumb Code 80 can_1.o(.text.HAL_CAN_RxFifo0MsgPendingCallback) - HAL_CAN_RxFifo1FullCallback 0x08005159 Thumb Code 80 can_1.o(.text.HAL_CAN_RxFifo1FullCallback) - HAL_CAN_RxFifo1MsgPendingCallback 0x080051a9 Thumb Code 80 can_1.o(.text.HAL_CAN_RxFifo1MsgPendingCallback) - HAL_CAN_SleepCallback 0x080051f9 Thumb Code 80 can_1.o(.text.HAL_CAN_SleepCallback) - HAL_CAN_Start 0x08005249 Thumb Code 138 stm32f4xx_hal_can.o(.text.HAL_CAN_Start) - HAL_CAN_TxMailbox0AbortCallback 0x080052d5 Thumb Code 80 can_1.o(.text.HAL_CAN_TxMailbox0AbortCallback) - HAL_CAN_TxMailbox0CompleteCallback 0x08005325 Thumb Code 76 can_1.o(.text.HAL_CAN_TxMailbox0CompleteCallback) - HAL_CAN_TxMailbox1AbortCallback 0x08005371 Thumb Code 80 can_1.o(.text.HAL_CAN_TxMailbox1AbortCallback) - HAL_CAN_TxMailbox1CompleteCallback 0x080053c1 Thumb Code 80 can_1.o(.text.HAL_CAN_TxMailbox1CompleteCallback) - HAL_CAN_TxMailbox2AbortCallback 0x08005411 Thumb Code 80 can_1.o(.text.HAL_CAN_TxMailbox2AbortCallback) - HAL_CAN_TxMailbox2CompleteCallback 0x08005461 Thumb Code 80 can_1.o(.text.HAL_CAN_TxMailbox2CompleteCallback) - HAL_CAN_WakeUpFromRxMsgCallback 0x080054b1 Thumb Code 80 can_1.o(.text.HAL_CAN_WakeUpFromRxMsgCallback) - HAL_DMA_Abort 0x08005501 Thumb Code 236 stm32f4xx_hal_dma.o(.text.HAL_DMA_Abort) - HAL_DMA_Abort_IT 0x080055ed Thumb Code 68 stm32f4xx_hal_dma.o(.text.HAL_DMA_Abort_IT) - HAL_DMA_GetState 0x08005631 Thumb Code 14 stm32f4xx_hal_dma.o(.text.HAL_DMA_GetState) - HAL_DMA_IRQHandler 0x08005641 Thumb Code 798 stm32f4xx_hal_dma.o(.text.HAL_DMA_IRQHandler) - HAL_DMA_Init 0x08005961 Thumb Code 366 stm32f4xx_hal_dma.o(.text.HAL_DMA_Init) - HAL_DMA_Start_IT 0x08005ad1 Thumb Code 194 stm32f4xx_hal_dma.o(.text.HAL_DMA_Start_IT) - HAL_Delay 0x08005b95 Thumb Code 66 stm32f4xx_hal.o(.text.HAL_Delay) - HAL_GPIO_EXTI_Callback 0x08005bd9 Thumb Code 102 gpio_1.o(.text.HAL_GPIO_EXTI_Callback) - HAL_GPIO_EXTI_IRQHandler 0x08005c41 Thumb Code 56 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_EXTI_IRQHandler) - HAL_GPIO_Init 0x08005c79 Thumb Code 950 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_Init) - HAL_GPIO_ReadPin 0x08006031 Thumb Code 46 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_ReadPin) - HAL_GPIO_WritePin 0x08006061 Thumb Code 46 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_WritePin) - HAL_GetTick 0x08006091 Thumb Code 12 stm32f4xx_hal.o(.text.HAL_GetTick) - HAL_I2C_AbortCpltCallback 0x0800609d Thumb Code 84 i2c_1.o(.text.HAL_I2C_AbortCpltCallback) - HAL_I2C_AddrCallback 0x080060f1 Thumb Code 16 stm32f4xx_hal_i2c.o(.text.HAL_I2C_AddrCallback) - HAL_I2C_ER_IRQHandler 0x08006101 Thumb Code 378 stm32f4xx_hal_i2c.o(.text.HAL_I2C_ER_IRQHandler) - HAL_I2C_EV_IRQHandler 0x0800627d Thumb Code 970 stm32f4xx_hal_i2c.o(.text.HAL_I2C_EV_IRQHandler) - HAL_I2C_ErrorCallback 0x08006649 Thumb Code 84 i2c_1.o(.text.HAL_I2C_ErrorCallback) - HAL_I2C_Init 0x0800669d Thumb Code 676 stm32f4xx_hal_i2c.o(.text.HAL_I2C_Init) - HAL_I2C_ListenCpltCallback 0x08006941 Thumb Code 84 i2c_1.o(.text.HAL_I2C_ListenCpltCallback) - HAL_I2C_MasterRxCpltCallback 0x08006995 Thumb Code 84 i2c_1.o(.text.HAL_I2C_MasterRxCpltCallback) - HAL_I2C_MasterTxCpltCallback 0x080069e9 Thumb Code 80 i2c_1.o(.text.HAL_I2C_MasterTxCpltCallback) - HAL_I2C_MemRxCpltCallback 0x08006a39 Thumb Code 84 i2c_1.o(.text.HAL_I2C_MemRxCpltCallback) - HAL_I2C_MemTxCpltCallback 0x08006a8d Thumb Code 84 i2c_1.o(.text.HAL_I2C_MemTxCpltCallback) - HAL_I2C_MspInit 0x08006ae1 Thumb Code 308 i2c.o(.text.HAL_I2C_MspInit) - HAL_I2C_SlaveRxCpltCallback 0x08006c15 Thumb Code 84 i2c_1.o(.text.HAL_I2C_SlaveRxCpltCallback) - HAL_I2C_SlaveTxCpltCallback 0x08006c69 Thumb Code 84 i2c_1.o(.text.HAL_I2C_SlaveTxCpltCallback) - HAL_IncTick 0x08006cbd Thumb Code 26 stm32f4xx_hal.o(.text.HAL_IncTick) - HAL_Init 0x08006cd9 Thumb Code 54 stm32f4xx_hal.o(.text.HAL_Init) - HAL_InitTick 0x08006d11 Thumb Code 112 stm32f4xx_hal.o(.text.HAL_InitTick) - HAL_MspInit 0x08006d81 Thumb Code 88 stm32f4xx_hal_msp.o(.text.HAL_MspInit) - HAL_NVIC_DisableIRQ 0x08006dd9 Thumb Code 20 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_DisableIRQ) - HAL_NVIC_EnableIRQ 0x08006ded Thumb Code 20 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_EnableIRQ) - HAL_NVIC_SetPriority 0x08006e01 Thumb Code 50 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_SetPriority) - HAL_NVIC_SetPriorityGrouping 0x08006e35 Thumb Code 16 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_SetPriorityGrouping) - HAL_RCC_ClockConfig 0x08006e45 Thumb Code 610 stm32f4xx_hal_rcc.o(.text.HAL_RCC_ClockConfig) - HAL_RCC_GetHCLKFreq 0x080070a9 Thumb Code 12 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetHCLKFreq) - HAL_RCC_GetPCLK1Freq 0x080070b5 Thumb Code 34 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetPCLK1Freq) - HAL_RCC_GetPCLK2Freq 0x080070d9 Thumb Code 34 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetPCLK2Freq) - HAL_RCC_GetSysClockFreq 0x080070fd Thumb Code 230 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetSysClockFreq) - HAL_RCC_OscConfig 0x080071e5 Thumb Code 1726 stm32f4xx_hal_rcc.o(.text.HAL_RCC_OscConfig) - HAL_SPI_ErrorCallback 0x080078a5 Thumb Code 84 spi_1.o(.text.HAL_SPI_ErrorCallback) - HAL_SPI_Init 0x080078f9 Thumb Code 256 stm32f4xx_hal_spi.o(.text.HAL_SPI_Init) - HAL_SPI_MspInit 0x080079f9 Thumb Code 528 spi.o(.text.HAL_SPI_MspInit) - HAL_SPI_Receive 0x08007c09 Thumb Code 590 stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive) - HAL_SPI_Receive_DMA 0x08007e59 Thumb Code 408 stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive_DMA) - HAL_SPI_RxCpltCallback 0x08007ff1 Thumb Code 84 spi_1.o(.text.HAL_SPI_RxCpltCallback) - HAL_SPI_RxHalfCpltCallback 0x08008045 Thumb Code 84 spi_1.o(.text.HAL_SPI_RxHalfCpltCallback) - HAL_SPI_Transmit 0x08008099 Thumb Code 674 stm32f4xx_hal_spi.o(.text.HAL_SPI_Transmit) - HAL_SPI_TransmitReceive 0x0800833d Thumb Code 930 stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive) - HAL_SPI_TransmitReceive_DMA 0x080086e1 Thumb Code 532 stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA) - HAL_SPI_Transmit_DMA 0x080088f5 Thumb Code 364 stm32f4xx_hal_spi.o(.text.HAL_SPI_Transmit_DMA) - HAL_SPI_TxCpltCallback 0x08008a61 Thumb Code 72 spi_1.o(.text.HAL_SPI_TxCpltCallback) - HAL_SPI_TxHalfCpltCallback 0x08008aa9 Thumb Code 84 spi_1.o(.text.HAL_SPI_TxHalfCpltCallback) - HAL_SPI_TxRxCpltCallback 0x08008afd Thumb Code 84 spi_1.o(.text.HAL_SPI_TxRxCpltCallback) - HAL_SPI_TxRxHalfCpltCallback 0x08008b51 Thumb Code 84 spi_1.o(.text.HAL_SPI_TxRxHalfCpltCallback) - HAL_SYSTICK_Config 0x08008ba5 Thumb Code 16 stm32f4xx_hal_cortex.o(.text.HAL_SYSTICK_Config) - HAL_TIMEx_BreakCallback 0x08008bb5 Thumb Code 8 stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_BreakCallback) - HAL_TIMEx_CommutCallback 0x08008bbd Thumb Code 8 stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutCallback) - HAL_TIMEx_MasterConfigSynchronization 0x08008bc5 Thumb Code 290 stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_MasterConfigSynchronization) - HAL_TIM_Base_Init 0x08008ce9 Thumb Code 156 stm32f4xx_hal_tim.o(.text.HAL_TIM_Base_Init) - HAL_TIM_Base_MspInit 0x08008d85 Thumb Code 138 tim.o(.text.HAL_TIM_Base_MspInit) - HAL_TIM_IC_CaptureCallback 0x08008e11 Thumb Code 8 stm32f4xx_hal_tim.o(.text.HAL_TIM_IC_CaptureCallback) - HAL_TIM_IRQHandler 0x08008e19 Thumb Code 538 stm32f4xx_hal_tim.o(.text.HAL_TIM_IRQHandler) - HAL_TIM_MspPostInit 0x08009035 Thumb Code 108 tim.o(.text.HAL_TIM_MspPostInit) - HAL_TIM_OC_DelayElapsedCallback 0x080090a1 Thumb Code 8 stm32f4xx_hal_tim.o(.text.HAL_TIM_OC_DelayElapsedCallback) - HAL_TIM_PWM_ConfigChannel 0x080090a9 Thumb Code 322 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_ConfigChannel) - HAL_TIM_PWM_Init 0x080091ed Thumb Code 156 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_Init) - HAL_TIM_PWM_MspInit 0x08009289 Thumb Code 8 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_MspInit) - HAL_TIM_PWM_PulseFinishedCallback 0x08009291 Thumb Code 8 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedCallback) - HAL_TIM_PWM_Start 0x08009299 Thumb Code 458 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_Start) - HAL_TIM_PeriodElapsedCallback 0x08009465 Thumb Code 8 stm32f4xx_hal_tim.o(.text.HAL_TIM_PeriodElapsedCallback) - HAL_TIM_TriggerCallback 0x0800946d Thumb Code 8 stm32f4xx_hal_tim.o(.text.HAL_TIM_TriggerCallback) - HAL_UARTEx_RxEventCallback 0x08009475 Thumb Code 12 stm32f4xx_hal_uart.o(.text.HAL_UARTEx_RxEventCallback) - HAL_UART_ErrorCallback 0x08009481 Thumb Code 84 uart.o(.text.HAL_UART_ErrorCallback) - HAL_UART_IRQHandler 0x080094d5 Thumb Code 1116 stm32f4xx_hal_uart.o(.text.HAL_UART_IRQHandler) - HAL_UART_Init 0x08009931 Thumb Code 158 stm32f4xx_hal_uart.o(.text.HAL_UART_Init) - HAL_UART_MspInit 0x080099d1 Thumb Code 460 usart.o(.text.HAL_UART_MspInit) - HAL_UART_RxCpltCallback 0x08009b9d Thumb Code 84 uart.o(.text.HAL_UART_RxCpltCallback) - HAL_UART_TxCpltCallback 0x08009bf1 Thumb Code 84 uart.o(.text.HAL_UART_TxCpltCallback) - HardFault_Handler 0x08009c45 Thumb Code 4 stm32f4xx_it.o(.text.HardFault_Handler) - I2C1_ER_IRQHandler 0x08009c49 Thumb Code 16 stm32f4xx_it.o(.text.I2C1_ER_IRQHandler) - I2C1_EV_IRQHandler 0x08009c59 Thumb Code 16 stm32f4xx_it.o(.text.I2C1_EV_IRQHandler) - InvSqrt 0x0800b145 Thumb Code 118 user_math.o(.text.InvSqrt) - LowPassFilter2p_Apply 0x0800b1bd Thumb Code 184 filter.o(.text.LowPassFilter2p_Apply) - LowPassFilter2p_Init 0x0800b275 Thumb Code 316 filter.o(.text.LowPassFilter2p_Init) - LowPassFilter2p_Reset 0x0800b3b1 Thumb Code 146 filter.o(.text.LowPassFilter2p_Reset) - MOTOR_DM_Enable 0x0800b4dd Thumb Code 122 motor_dm.o(.text.MOTOR_DM_Enable) - MOTOR_DM_GetMotor 0x0800b589 Thumb Code 134 motor_dm.o(.text.MOTOR_DM_GetMotor) - MOTOR_DM_MITCtrl 0x0800b611 Thumb Code 72 motor_dm.o(.text.MOTOR_DM_MITCtrl) - MOTOR_DM_Register 0x0800b7b1 Thumb Code 300 motor_dm.o(.text.MOTOR_DM_Register) - MOTOR_DM_Update 0x0800ba21 Thumb Code 268 motor_dm.o(.text.MOTOR_DM_Update) - MOTOR_RM_Ctrl 0x0800bbc5 Thumb Code 368 motor_rm.o(.text.MOTOR_RM_Ctrl) - MOTOR_RM_GetMotor 0x0800be39 Thumb Code 120 motor_rm.o(.text.MOTOR_RM_GetMotor) - MOTOR_RM_Register 0x0800bf01 Thumb Code 288 motor_rm.o(.text.MOTOR_RM_Register) - MOTOR_RM_SetOutput 0x0800c021 Thumb Code 282 motor_rm.o(.text.MOTOR_RM_SetOutput) - MOTOR_RM_Update 0x0800c13d Thumb Code 258 motor_rm.o(.text.MOTOR_RM_Update) - MX_CAN1_Init 0x0800c241 Thumb Code 78 can.o(.text.MX_CAN1_Init) - MX_CAN2_Init 0x0800c291 Thumb Code 78 can.o(.text.MX_CAN2_Init) - MX_DMA_Init 0x0800c2e1 Thumb Code 134 dma.o(.text.MX_DMA_Init) - MX_FREERTOS_Init 0x0800c369 Thumb Code 64 freertos.o(.text.MX_FREERTOS_Init) - MX_GPIO_Init 0x0800c3a9 Thumb Code 554 gpio.o(.text.MX_GPIO_Init) - MX_I2C1_Init 0x0800c5d5 Thumb Code 72 i2c.o(.text.MX_I2C1_Init) - MX_I2C2_Init 0x0800c61d Thumb Code 72 i2c.o(.text.MX_I2C2_Init) - MX_SPI1_Init 0x0800c665 Thumb Code 82 spi.o(.text.MX_SPI1_Init) - MX_SPI2_Init 0x0800c6b9 Thumb Code 84 spi.o(.text.MX_SPI2_Init) - MX_TIM10_Init 0x0800c70d Thumb Code 142 tim.o(.text.MX_TIM10_Init) - MX_TIM7_Init 0x0800c79d Thumb Code 88 tim.o(.text.MX_TIM7_Init) - MX_USART1_UART_Init 0x0800c7f5 Thumb Code 64 usart.o(.text.MX_USART1_UART_Init) - MX_USART3_UART_Init 0x0800c835 Thumb Code 76 usart.o(.text.MX_USART3_UART_Init) - MemManage_Handler 0x0800c881 Thumb Code 4 stm32f4xx_it.o(.text.MemManage_Handler) - NMI_Handler 0x0800caa1 Thumb Code 4 stm32f4xx_it.o(.text.NMI_Handler) - PID_Calc 0x0800cb11 Thumb Code 752 pid.o(.text.PID_Calc) - PID_Init 0x0800ce01 Thumb Code 406 pid.o(.text.PID_Init) - PID_Reset 0x0800cf99 Thumb Code 72 pid.o(.text.PID_Reset) - PendSV_Handler 0x0800cfe1 Thumb Code 100 port.o(.text.PendSV_Handler) - RC_Init 0x0800d045 Thumb Code 148 bsp_rc.o(.text.RC_Init) - RC_restart 0x0800d0d9 Thumb Code 90 bsp_rc.o(.text.RC_restart) - SVC_Handler 0x0800d691 Thumb Code 36 port.o(.text.SVC_Handler) - StartDefaultTask 0x0800d6c5 Thumb Code 18 freertos.o(.text.StartDefaultTask) - SysTick_Handler 0x0800d72d Thumb Code 24 stm32f4xx_it.o(.text.SysTick_Handler) - SystemClock_Config 0x0800d745 Thumb Code 188 main.o(.text.SystemClock_Config) - SystemInit 0x0800d801 Thumb Code 18 system_stm32f4xx.o(.text.SystemInit) - TIM7_IRQHandler 0x0800d815 Thumb Code 16 stm32f4xx_it.o(.text.TIM7_IRQHandler) - TIM_Base_SetConfig 0x0800d825 Thumb Code 420 stm32f4xx_hal_tim.o(.text.TIM_Base_SetConfig) - TIM_CCxChannelCmd 0x0800d9c9 Thumb Code 54 stm32f4xx_hal_tim.o(.text.TIM_CCxChannelCmd) - TIM_OC2_SetConfig 0x0800daed Thumb Code 244 stm32f4xx_hal_tim.o(.text.TIM_OC2_SetConfig) - Task_Init 0x0800dd79 Thumb Code 184 init.o(.text.Task_Init) - Task_atti_esti 0x0800de31 Thumb Code 400 atti_esti.o(.text.Task_atti_esti) - Task_gimbal_ctrl 0x0800dfc1 Thumb Code 236 gimbal_ctrl.o(.text.Task_gimbal_ctrl) - Task_remote 0x0800e0b1 Thumb Code 160 remote.o(.text.Task_remote) - USART3_IRQHandler 0x0800e591 Thumb Code 32 stm32f4xx_it.o(.text.USART3_IRQHandler) - USART3_IRQHandler1 0x0800e5b1 Thumb Code 34 remote_control.o(.text.USART3_IRQHandler1) - UsageFault_Handler 0x0800e5d5 Thumb Code 4 stm32f4xx_it.o(.text.UsageFault_Handler) - configureTimerForRunTimeStats 0x0800e7d5 Thumb Code 2 freertos.o(.text.configureTimerForRunTimeStats) - delay_init 0x0800e7f9 Thumb Code 62 bsp_delay.o(.text.delay_init) - eTaskGetState 0x0800e839 Thumb Code 246 tasks.o(.text.eTaskGetState) - getRunTimeCounterValue 0x0800e989 Thumb Code 4 freertos.o(.text.getRunTimeCounterValue) - main 0x0800e98d Thumb Code 80 main.o(.text.main) - map 0x0800e9dd Thumb Code 42 calc_lib.o(.text.map) - osDelay 0x0800ea09 Thumb Code 52 cmsis_os2.o(.text.osDelay) - osDelayUntil 0x0800ea3d Thumb Code 88 cmsis_os2.o(.text.osDelayUntil) - osKernelGetState 0x0800ea95 Thumb Code 82 cmsis_os2.o(.text.osKernelGetState) - osKernelGetTickCount 0x0800eae9 Thumb Code 38 cmsis_os2.o(.text.osKernelGetTickCount) - osKernelGetTickFreq 0x0800eb11 Thumb Code 6 cmsis_os2.o(.text.osKernelGetTickFreq) - osKernelInitialize 0x0800eb19 Thumb Code 70 cmsis_os2.o(.text.osKernelInitialize) - osKernelLock 0x0800eb61 Thumb Code 86 cmsis_os2.o(.text.osKernelLock) - osKernelStart 0x0800ebb9 Thumb Code 82 cmsis_os2.o(.text.osKernelStart) - osKernelUnlock 0x0800ec0d Thumb Code 110 cmsis_os2.o(.text.osKernelUnlock) - osMessageQueueGet 0x0800ec7d Thumb Code 192 cmsis_os2.o(.text.osMessageQueueGet) - osMessageQueueNew 0x0800ed3d Thumb Code 254 cmsis_os2.o(.text.osMessageQueueNew) - osMessageQueuePut 0x0800ee3d Thumb Code 196 cmsis_os2.o(.text.osMessageQueuePut) - osMessageQueueReset 0x0800ef01 Thumb Code 64 cmsis_os2.o(.text.osMessageQueueReset) - osMutexAcquire 0x0800ef41 Thumb Code 158 cmsis_os2.o(.text.osMutexAcquire) - osMutexNew 0x0800efe1 Thumb Code 296 cmsis_os2.o(.text.osMutexNew) - osMutexRelease 0x0800f109 Thumb Code 126 cmsis_os2.o(.text.osMutexRelease) - osThreadFlagsSet 0x0800f189 Thumb Code 164 cmsis_os2.o(.text.osThreadFlagsSet) - osThreadFlagsWait 0x0800f22d Thumb Code 282 cmsis_os2.o(.text.osThreadFlagsWait) - osThreadGetId 0x0800f349 Thumb Code 16 cmsis_os2.o(.text.osThreadGetId) - osThreadNew 0x0800f359 Thumb Code 346 cmsis_os2.o(.text.osThreadNew) - osThreadTerminate 0x0800f4b5 Thumb Code 94 cmsis_os2.o(.text.osThreadTerminate) - pvPortMalloc 0x08010415 Thumb Code 492 heap_4.o(.text.pvPortMalloc) - pvTaskIncrementMutexHeldCount 0x08010601 Thumb Code 44 tasks.o(.text.pvTaskIncrementMutexHeldCount) - pxPortInitialiseStack 0x0801062d Thumb Code 94 port.o(.text.pxPortInitialiseStack) - remote_ParseHost 0x08010691 Thumb Code 176 ai.o(.text.remote_ParseHost) - remote_control_init 0x08010741 Thumb Code 18 remote_control.o(.text.remote_control_init) - user_delay_ms 0x08010a3d Thumb Code 46 calc_lib.o(.text.user_delay_ms) - user_delay_us 0x08010a6d Thumb Code 68 calc_lib.o(.text.user_delay_us) - uxListRemove 0x08010ab1 Thumb Code 72 list.o(.text.uxListRemove) - vApplicationGetIdleTaskMemory 0x08010af9 Thumb Code 42 cmsis_os2.o(.text.vApplicationGetIdleTaskMemory) - vApplicationGetTimerTaskMemory 0x08010b25 Thumb Code 44 cmsis_os2.o(.text.vApplicationGetTimerTaskMemory) - vApplicationStackOverflowHook 0x08010b51 Thumb Code 10 freertos.o(.text.vApplicationStackOverflowHook) - vListInitialise 0x08010b5d Thumb Code 46 list.o(.text.vListInitialise) - vListInitialiseItem 0x08010b8d Thumb Code 14 list.o(.text.vListInitialiseItem) - vListInsert 0x08010b9d Thumb Code 106 list.o(.text.vListInsert) - vListInsertEnd 0x08010c09 Thumb Code 58 list.o(.text.vListInsertEnd) - vPortEnterCritical 0x08010c59 Thumb Code 86 port.o(.text.vPortEnterCritical) - vPortExitCritical 0x08010cb1 Thumb Code 74 port.o(.text.vPortExitCritical) - vPortFree 0x08010cfd Thumb Code 206 heap_4.o(.text.vPortFree) - vPortSetupTimerInterrupt 0x08010dcd Thumb Code 68 port.o(.text.vPortSetupTimerInterrupt) - vPortValidateInterruptPriority 0x08010e11 Thumb Code 132 port.o(.text.vPortValidateInterruptPriority) - vQueueAddToRegistry 0x08010e95 Thumb Code 82 queue.o(.text.vQueueAddToRegistry) - vQueueWaitForMessageRestricted 0x08010ee9 Thumb Code 100 queue.o(.text.vQueueWaitForMessageRestricted) - vTaskDelay 0x08010f4d Thumb Code 110 tasks.o(.text.vTaskDelay) - vTaskDelayUntil 0x08010fbd Thumb Code 276 tasks.o(.text.vTaskDelayUntil) - vTaskDelete 0x080110d1 Thumb Code 270 tasks.o(.text.vTaskDelete) - vTaskInternalSetTimeOutState 0x080111e1 Thumb Code 36 tasks.o(.text.vTaskInternalSetTimeOutState) - vTaskMissedYield 0x08011205 Thumb Code 14 tasks.o(.text.vTaskMissedYield) - vTaskPlaceOnEventList 0x08011215 Thumb Code 66 tasks.o(.text.vTaskPlaceOnEventList) - vTaskPlaceOnEventListRestricted 0x08011259 Thumb Code 82 tasks.o(.text.vTaskPlaceOnEventListRestricted) - vTaskPriorityDisinheritAfterTimeout 0x080112ad Thumb Code 308 tasks.o(.text.vTaskPriorityDisinheritAfterTimeout) - vTaskStartScheduler 0x080113e1 Thumb Code 228 tasks.o(.text.vTaskStartScheduler) - vTaskSuspendAll 0x080114c5 Thumb Code 16 tasks.o(.text.vTaskSuspendAll) - vTaskSwitchContext 0x080114d5 Thumb Code 384 tasks.o(.text.vTaskSwitchContext) - xPortStartScheduler 0x08011655 Thumb Code 342 port.o(.text.xPortStartScheduler) - xPortSysTickHandler 0x080117ad Thumb Code 60 port.o(.text.xPortSysTickHandler) - xQueueCreateMutex 0x080117e9 Thumb Code 38 queue.o(.text.xQueueCreateMutex) - xQueueCreateMutexStatic 0x08011811 Thumb Code 50 queue.o(.text.xQueueCreateMutexStatic) - xQueueGenericCreate 0x08011845 Thumb Code 116 queue.o(.text.xQueueGenericCreate) - xQueueGenericCreateStatic 0x080118b9 Thumb Code 270 queue.o(.text.xQueueGenericCreateStatic) - xQueueGenericReset 0x080119c9 Thumb Code 186 queue.o(.text.xQueueGenericReset) - xQueueGenericSend 0x08011a85 Thumb Code 556 queue.o(.text.xQueueGenericSend) - xQueueGenericSendFromISR 0x08011cb1 Thumb Code 332 queue.o(.text.xQueueGenericSendFromISR) - xQueueGiveMutexRecursive 0x08011dfd Thumb Code 108 queue.o(.text.xQueueGiveMutexRecursive) - xQueueReceive 0x08011e69 Thumb Code 476 queue.o(.text.xQueueReceive) - xQueueReceiveFromISR 0x08012045 Thumb Code 264 queue.o(.text.xQueueReceiveFromISR) - xQueueSemaphoreTake 0x0801214d Thumb Code 556 queue.o(.text.xQueueSemaphoreTake) - xQueueTakeMutexRecursive 0x08012379 Thumb Code 110 queue.o(.text.xQueueTakeMutexRecursive) - xTaskCheckForTimeOut 0x080123e9 Thumb Code 204 tasks.o(.text.xTaskCheckForTimeOut) - xTaskCreate 0x080124b5 Thumb Code 158 tasks.o(.text.xTaskCreate) - xTaskCreateStatic 0x08012555 Thumb Code 206 tasks.o(.text.xTaskCreateStatic) - xTaskGenericNotify 0x08012625 Thumb Code 376 tasks.o(.text.xTaskGenericNotify) - xTaskGenericNotifyFromISR 0x0801279d Thumb Code 452 tasks.o(.text.xTaskGenericNotifyFromISR) - xTaskGetCurrentTaskHandle 0x08012961 Thumb Code 20 tasks.o(.text.xTaskGetCurrentTaskHandle) - xTaskGetSchedulerState 0x08012975 Thumb Code 56 tasks.o(.text.xTaskGetSchedulerState) - xTaskGetTickCount 0x080129ad Thumb Code 20 tasks.o(.text.xTaskGetTickCount) - xTaskGetTickCountFromISR 0x080129c1 Thumb Code 30 tasks.o(.text.xTaskGetTickCountFromISR) - xTaskIncrementTick 0x080129e1 Thumb Code 452 tasks.o(.text.xTaskIncrementTick) - xTaskNotifyWait 0x08012ba5 Thumb Code 214 tasks.o(.text.xTaskNotifyWait) - xTaskPriorityDisinherit 0x08012c7d Thumb Code 236 tasks.o(.text.xTaskPriorityDisinherit) - xTaskPriorityInherit 0x08012d69 Thumb Code 270 tasks.o(.text.xTaskPriorityInherit) - xTaskRemoveFromEventList 0x08012e79 Thumb Code 206 tasks.o(.text.xTaskRemoveFromEventList) - xTaskResumeAll 0x08012f49 Thumb Code 390 tasks.o(.text.xTaskResumeAll) - xTimerCreateTimerTask 0x080130d1 Thumb Code 148 timers.o(.text.xTimerCreateTimerTask) - xTimerGenericCommand 0x08013165 Thumb Code 176 timers.o(.text.xTimerGenericCommand) - __ARM_fpclassify 0x08013215 Thumb Code 48 fpclassify.o(i.__ARM_fpclassify) - __ARM_fpclassifyf 0x08013245 Thumb Code 38 fpclassifyf.o(i.__ARM_fpclassifyf) - __hardfp_asinf 0x0801326d Thumb Code 258 asinf.o(i.__hardfp_asinf) - __hardfp_atan 0x08013399 Thumb Code 622 atan.o(i.__hardfp_atan) - __hardfp_atan2 0x08013671 Thumb Code 448 atan2.o(i.__hardfp_atan2) - __hardfp_atan2f 0x08013871 Thumb Code 594 atan2f.o(i.__hardfp_atan2f) - __hardfp_cosf 0x08013b1d Thumb Code 280 cosf.o(i.__hardfp_cosf) - __hardfp_tanf 0x08013c6d Thumb Code 322 tanf.o(i.__hardfp_tanf) - __kernel_poly 0x08013de9 Thumb Code 248 poly.o(i.__kernel_poly) - __mathlib_dbl_infnan 0x08013ee1 Thumb Code 20 dunder.o(i.__mathlib_dbl_infnan) - __mathlib_dbl_infnan2 0x08013ef5 Thumb Code 20 dunder.o(i.__mathlib_dbl_infnan2) - __mathlib_dbl_underflow 0x08013f09 Thumb Code 24 dunder.o(i.__mathlib_dbl_underflow) - __mathlib_flt_infnan 0x08013f29 Thumb Code 6 funder.o(i.__mathlib_flt_infnan) - __mathlib_flt_infnan2 0x08013f2f Thumb Code 6 funder.o(i.__mathlib_flt_infnan2) - __mathlib_flt_invalid 0x08013f35 Thumb Code 10 funder.o(i.__mathlib_flt_invalid) - __mathlib_flt_underflow 0x08013f45 Thumb Code 10 funder.o(i.__mathlib_flt_underflow) - __mathlib_rredf2 0x08013f55 Thumb Code 316 rredf.o(i.__mathlib_rredf2) - atan 0x080140a9 Thumb Code 16 atan.o(i.atan) - fabs 0x080140b9 Thumb Code 24 fabs.o(i.fabs) - sqrtf 0x080140d1 Thumb Code 62 sqrtf.o(i.sqrtf) - __aeabi_dneg 0x0801410f Thumb Code 0 basic.o(x$fpl$basic) - _dneg 0x0801410f Thumb Code 6 basic.o(x$fpl$basic) - __aeabi_fneg 0x08014115 Thumb Code 0 basic.o(x$fpl$basic) - _fneg 0x08014115 Thumb Code 6 basic.o(x$fpl$basic) - _dabs 0x0801411b Thumb Code 6 basic.o(x$fpl$basic) - _fabs 0x08014121 Thumb Code 6 basic.o(x$fpl$basic) - __aeabi_d2f 0x08014129 Thumb Code 0 d2f.o(x$fpl$d2f) - _d2f 0x08014129 Thumb Code 98 d2f.o(x$fpl$d2f) - __aeabi_dadd 0x0801418d Thumb Code 0 daddsub_clz.o(x$fpl$dadd) - _dadd 0x0801418d Thumb Code 332 daddsub_clz.o(x$fpl$dadd) - __fpl_dcmp_Inf 0x080142dd Thumb Code 24 dcmpi.o(x$fpl$dcmpinf) - __aeabi_ddiv 0x080142f5 Thumb Code 0 ddiv.o(x$fpl$ddiv) - _ddiv 0x080142f5 Thumb Code 556 ddiv.o(x$fpl$ddiv) - __aeabi_cdcmpeq 0x080145a9 Thumb Code 0 deqf.o(x$fpl$deqf) - _dcmpeq 0x080145a9 Thumb Code 120 deqf.o(x$fpl$deqf) - __aeabi_d2iz 0x08014621 Thumb Code 0 dfix.o(x$fpl$dfix) - _dfix 0x08014621 Thumb Code 94 dfix.o(x$fpl$dfix) - __aeabi_d2uiz 0x08014681 Thumb Code 0 dfixu.o(x$fpl$dfixu) - _dfixu 0x08014681 Thumb Code 90 dfixu.o(x$fpl$dfixu) - __aeabi_i2d 0x080146db Thumb Code 0 dflt_clz.o(x$fpl$dflt) - _dflt 0x080146db Thumb Code 46 dflt_clz.o(x$fpl$dflt) - __aeabi_ui2d 0x08014709 Thumb Code 0 dflt_clz.o(x$fpl$dfltu) - _dfltu 0x08014709 Thumb Code 38 dflt_clz.o(x$fpl$dfltu) - __aeabi_dmul 0x08014731 Thumb Code 0 dmul.o(x$fpl$dmul) - _dmul 0x08014731 Thumb Code 332 dmul.o(x$fpl$dmul) - __fpl_dnaninf 0x08014885 Thumb Code 156 dnaninf.o(x$fpl$dnaninf) - __fpl_dretinf 0x08014921 Thumb Code 12 dretinf.o(x$fpl$dretinf) - __aeabi_drsub 0x0801492d Thumb Code 0 daddsub_clz.o(x$fpl$drsb) - _drsb 0x0801492d Thumb Code 22 daddsub_clz.o(x$fpl$drsb) - __aeabi_dsub 0x08014945 Thumb Code 0 daddsub_clz.o(x$fpl$dsub) - _dsub 0x08014945 Thumb Code 472 daddsub_clz.o(x$fpl$dsub) - __aeabi_f2d 0x08014b21 Thumb Code 0 f2d.o(x$fpl$f2d) - _f2d 0x08014b21 Thumb Code 86 f2d.o(x$fpl$f2d) - __aeabi_ul2f 0x08014b77 Thumb Code 0 ffltll_clz.o(x$fpl$ffltll) - _ll_uto_f 0x08014b77 Thumb Code 6 ffltll_clz.o(x$fpl$ffltll) - __aeabi_l2f 0x08014b7d Thumb Code 0 ffltll_clz.o(x$fpl$ffltll) - _ll_sto_f 0x08014b7d Thumb Code 90 ffltll_clz.o(x$fpl$ffltll) - __fpl_fnaninf 0x08014bd7 Thumb Code 140 fnaninf.o(x$fpl$fnaninf) - _fp_init 0x08014c63 Thumb Code 26 fpinit.o(x$fpl$fpinit) - __fplib_config_fpu_vfp 0x08014c7b Thumb Code 0 fpinit.o(x$fpl$fpinit) - __fplib_config_pureend_doubles 0x08014c7b Thumb Code 0 fpinit.o(x$fpl$fpinit) - __fpl_fretinf 0x08014c7d Thumb Code 10 fretinf.o(x$fpl$fretinf) - __I$use$fp 0x08014c86 Number 0 usenofp.o(x$fpl$usenofp) - __mathlib_zero 0x08014d20 Data 8 qnan.o(.constdata) - AHBPrescTable 0x08014d48 Data 16 system_stm32f4xx.o(.rodata.AHBPrescTable) - APBPrescTable 0x08014d58 Data 8 system_stm32f4xx.o(.rodata.APBPrescTable) - attr_atti_esti 0x08014da8 Data 36 user_task.o(.rodata.attr_atti_esti) - attr_gimbal_ctrl 0x08014dcc Data 36 user_task.o(.rodata.attr_gimbal_ctrl) - attr_init 0x08014df0 Data 36 user_task.o(.rodata.attr_init) - attr_remote 0x08014e14 Data 36 user_task.o(.rodata.attr_remote) - defaultTask_attributes 0x08014e38 Data 36 freertos.o(.rodata.defaultTask_attributes) - Region$$Table$$Base 0x08014ec4 Number 0 anon$$obj.o(Region$$Table) - Region$$Table$$Limit 0x08014ee4 Number 0 anon$$obj.o(Region$$Table) + __decompress 0x080001c5 Thumb Code 90 __dczerorl2.o(!!dczerorl2) + __decompress1 0x080001c5 Thumb Code 0 __dczerorl2.o(!!dczerorl2) + __scatterload_zeroinit 0x08000221 Thumb Code 28 __scatter_zi.o(!!handler_zi) + __rt_lib_init 0x0800023d Thumb Code 0 libinit.o(.ARM.Collect$$libinit$$00000000) + __rt_lib_init_fp_1 0x0800023f Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000001) + __rt_lib_init_alloca_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002E) + __rt_lib_init_argv_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002C) + __rt_lib_init_atexit_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001B) + __rt_lib_init_clock_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000021) + __rt_lib_init_cpp_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000032) + __rt_lib_init_exceptions_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000030) + __rt_lib_init_fp_trap_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001F) + __rt_lib_init_getenv_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000023) + __rt_lib_init_heap_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000A) + __rt_lib_init_lc_collate_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000011) + __rt_lib_init_lc_ctype_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000013) + __rt_lib_init_lc_monetary_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000015) + __rt_lib_init_lc_numeric_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000017) + __rt_lib_init_lc_time_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000019) + __rt_lib_init_preinit_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000004) + __rt_lib_init_rand_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000E) + __rt_lib_init_return 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000033) + __rt_lib_init_signal_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001D) + __rt_lib_init_stdio_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000025) + __rt_lib_init_user_alloc_1 0x08000243 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000C) + __rt_lib_shutdown 0x08000245 Thumb Code 0 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) + __rt_lib_shutdown_cpp_1 0x08000247 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) + __rt_lib_shutdown_fp_trap_1 0x08000247 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000007) + __rt_lib_shutdown_heap_1 0x08000247 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) + __rt_lib_shutdown_return 0x08000247 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000010) + __rt_lib_shutdown_signal_1 0x08000247 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A) + __rt_lib_shutdown_stdio_1 0x08000247 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) + __rt_lib_shutdown_user_alloc_1 0x08000247 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) + __rt_entry 0x08000249 Thumb Code 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000) + __rt_entry_presh_1 0x08000249 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002) + __rt_entry_sh 0x08000249 Thumb Code 0 __rtentry4.o(.ARM.Collect$$rtentry$$00000004) + __rt_entry_li 0x0800024f Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) + __rt_entry_postsh_1 0x0800024f Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009) + __rt_entry_main 0x08000253 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) + __rt_entry_postli_1 0x08000253 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) + __rt_exit 0x0800025b Thumb Code 0 rtexit.o(.ARM.Collect$$rtexit$$00000000) + __rt_exit_ls 0x0800025d Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000003) + __rt_exit_prels_1 0x0800025d Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002) + __rt_exit_exit 0x08000261 Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000004) + Reset_Handler 0x08000269 Thumb Code 8 startup_stm32f407xx.o(.text) + ADC_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + CAN1_SCE_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + CAN2_SCE_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DCMI_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA1_Stream0_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA1_Stream2_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA1_Stream3_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA1_Stream4_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA1_Stream5_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA1_Stream6_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA1_Stream7_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA2_Stream0_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA2_Stream1_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA2_Stream4_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA2_Stream5_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA2_Stream6_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + DMA2_Stream7_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + ETH_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + ETH_WKUP_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + EXTI15_10_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + EXTI1_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + EXTI2_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + FLASH_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + FMC_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + FPU_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + HASH_RNG_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + I2C2_ER_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + I2C2_EV_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + I2C3_ER_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + I2C3_EV_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + OTG_FS_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + OTG_FS_WKUP_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + OTG_HS_EP1_IN_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + OTG_HS_EP1_OUT_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + OTG_HS_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + OTG_HS_WKUP_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + PVD_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + RCC_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + RTC_Alarm_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + RTC_WKUP_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + SDIO_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + SPI1_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + SPI2_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + SPI3_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TAMP_STAMP_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM1_BRK_TIM9_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM1_CC_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM1_TRG_COM_TIM11_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM1_UP_TIM10_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM2_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM3_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM4_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM5_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM6_DAC_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM8_BRK_TIM12_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM8_CC_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM8_TRG_COM_TIM14_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + TIM8_UP_TIM13_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + UART4_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + UART5_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + USART1_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + USART2_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + USART6_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + WWDG_IRQHandler 0x08000283 Thumb Code 0 startup_stm32f407xx.o(.text) + __user_initial_stackheap 0x08000285 Thumb Code 0 startup_stm32f407xx.o(.text) + __aeabi_uldivmod 0x080002a9 Thumb Code 0 lludivv7m.o(.text) + _ll_udiv 0x080002a9 Thumb Code 240 lludivv7m.o(.text) + __aeabi_memcpy 0x08000399 Thumb Code 0 rt_memcpy_v6.o(.text) + __rt_memcpy 0x08000399 Thumb Code 138 rt_memcpy_v6.o(.text) + _memcpy_lastbytes 0x080003ff Thumb Code 0 rt_memcpy_v6.o(.text) + __aeabi_memset4 0x08000423 Thumb Code 16 aeabi_memset4.o(.text) + __aeabi_memset8 0x08000423 Thumb Code 0 aeabi_memset4.o(.text) + __aeabi_memclr4 0x08000433 Thumb Code 0 rt_memclr_w.o(.text) + __aeabi_memclr8 0x08000433 Thumb Code 0 rt_memclr_w.o(.text) + __rt_memclr_w 0x08000433 Thumb Code 0 rt_memclr_w.o(.text) + _memset_w 0x08000437 Thumb Code 74 rt_memclr_w.o(.text) + __use_two_region_memory 0x08000481 Thumb Code 2 heapauxi.o(.text) + __rt_heap_escrow$2region 0x08000483 Thumb Code 2 heapauxi.o(.text) + __rt_heap_expand$2region 0x08000485 Thumb Code 2 heapauxi.o(.text) + __read_errno 0x08000487 Thumb Code 10 _rserrno.o(.text) + __set_errno 0x08000491 Thumb Code 12 _rserrno.o(.text) + __aeabi_memcpy4 0x0800049d Thumb Code 0 rt_memcpy_w.o(.text) + __aeabi_memcpy8 0x0800049d Thumb Code 0 rt_memcpy_w.o(.text) + __rt_memcpy_w 0x0800049d Thumb Code 100 rt_memcpy_w.o(.text) + _memcpy_lastbytes_aligned 0x080004e5 Thumb Code 0 rt_memcpy_w.o(.text) + __aeabi_errno_addr 0x08000501 Thumb Code 8 rt_errno_addr_intlibspace.o(.text) + __errno$intlibspace 0x08000501 Thumb Code 0 rt_errno_addr_intlibspace.o(.text) + __rt_errno_addr$intlibspace 0x08000501 Thumb Code 0 rt_errno_addr_intlibspace.o(.text) + __user_libspace 0x08000509 Thumb Code 8 libspace.o(.text) + __user_perproc_libspace 0x08000509 Thumb Code 0 libspace.o(.text) + __user_perthread_libspace 0x08000509 Thumb Code 0 libspace.o(.text) + __user_setup_stackheap 0x08000511 Thumb Code 74 sys_stackheap_outer.o(.text) + exit 0x0800055b Thumb Code 18 exit.o(.text) + _sys_exit 0x0800056d Thumb Code 8 sys_exit.o(.text) + __I$use$semihosting 0x08000579 Thumb Code 0 use_no_semi.o(.text) + __use_no_semihosting_swi 0x08000579 Thumb Code 2 use_no_semi.o(.text) + __semihosting_library_function 0x0800057b Thumb Code 0 indicate_semi.o(.text) + AHRS_GetEulr 0x0800057d Thumb Code 348 ahrs.o(.text.AHRS_GetEulr) + AHRS_Init 0x080006d9 Thumb Code 644 ahrs.o(.text.AHRS_Init) + AHRS_ResetEulr 0x0800095d Thumb Code 18 ahrs.o(.text.AHRS_ResetEulr) + AHRS_Update 0x08000971 Thumb Code 3098 ahrs.o(.text.AHRS_Update) + AbsClip 0x08001b55 Thumb Code 106 user_math.o(.text.AbsClip) + BMI088_AcclStartDmaRecv 0x08001bd5 Thumb Code 30 bmi088.o(.text.BMI088_AcclStartDmaRecv) + BMI088_AcclWaitDmaCplt 0x08001bf5 Thumb Code 16 bmi088.o(.text.BMI088_AcclWaitDmaCplt) + BMI088_GetUpdateFreq 0x08001c05 Thumb Code 16 bmi088.o(.text.BMI088_GetUpdateFreq) + BMI088_GyroStartDmaRecv 0x08001c29 Thumb Code 26 bmi088.o(.text.BMI088_GyroStartDmaRecv) + BMI088_GyroWaitDmaCplt 0x08001c45 Thumb Code 16 bmi088.o(.text.BMI088_GyroWaitDmaCplt) + BMI088_Init 0x08001c55 Thumb Code 392 bmi088.o(.text.BMI088_Init) + BMI088_ParseAccl 0x08001ddd Thumb Code 244 bmi088.o(.text.BMI088_ParseAccl) + BMI088_ParseGyro 0x08001ed1 Thumb Code 280 bmi088.o(.text.BMI088_ParseGyro) + BMI088_WaitNew 0x0800203d Thumb Code 16 bmi088.o(.text.BMI088_WaitNew) + BSP_CAN_GetHandle 0x080023d1 Thumb Code 78 can_1.o(.text.BSP_CAN_GetHandle) + BSP_CAN_GetMessage 0x08002421 Thumb Code 158 can_1.o(.text.BSP_CAN_GetMessage) + BSP_CAN_Init 0x080024c1 Thumb Code 372 can_1.o(.text.BSP_CAN_Init) + BSP_CAN_ParseId 0x08002635 Thumb Code 66 can_1.o(.text.BSP_CAN_ParseId) + BSP_CAN_RegisterCallback 0x08002679 Thumb Code 130 can_1.o(.text.BSP_CAN_RegisterCallback) + BSP_CAN_RegisterId 0x080026fd Thumb Code 66 can_1.o(.text.BSP_CAN_RegisterId) + BSP_CAN_Transmit 0x08002909 Thumb Code 374 can_1.o(.text.BSP_CAN_Transmit) + BSP_CAN_TransmitStdDataFrame 0x08002a81 Thumb Code 62 can_1.o(.text.BSP_CAN_TransmitStdDataFrame) + BSP_Free 0x08002d2d Thumb Code 16 mm.o(.text.BSP_Free) + BSP_GPIO_DisableIRQ 0x08002d3d Thumb Code 88 gpio_1.o(.text.BSP_GPIO_DisableIRQ) + BSP_GPIO_EnableIRQ 0x08002d95 Thumb Code 88 gpio_1.o(.text.BSP_GPIO_EnableIRQ) + BSP_GPIO_ReadPin 0x08002ded Thumb Code 74 gpio_1.o(.text.BSP_GPIO_ReadPin) + BSP_GPIO_RegisterCallback 0x08002e39 Thumb Code 144 gpio_1.o(.text.BSP_GPIO_RegisterCallback) + BSP_GPIO_WritePin 0x08002ec9 Thumb Code 80 gpio_1.o(.text.BSP_GPIO_WritePin) + BSP_Malloc 0x08002f19 Thumb Code 16 mm.o(.text.BSP_Malloc) + BSP_PWM_SetComp 0x08002f29 Thumb Code 318 pwm.o(.text.BSP_PWM_SetComp) + BSP_PWM_Start 0x08003069 Thumb Code 68 pwm.o(.text.BSP_PWM_Start) + BSP_SPI_GetHandle 0x080030ad Thumb Code 38 spi_1.o(.text.BSP_SPI_GetHandle) + BSP_SPI_Receive 0x080030d5 Thumb Code 128 spi_1.o(.text.BSP_SPI_Receive) + BSP_SPI_RegisterCallback 0x08003155 Thumb Code 68 spi_1.o(.text.BSP_SPI_RegisterCallback) + BSP_SPI_Transmit 0x08003199 Thumb Code 128 spi_1.o(.text.BSP_SPI_Transmit) + BSP_TIME_Delay 0x08003219 Thumb Code 142 time.o(.text.BSP_TIME_Delay_ms) + BSP_TIME_Delay_ms 0x08003219 Thumb Code 142 time.o(.text.BSP_TIME_Delay_ms) + BSP_TIME_Get 0x080032a9 Thumb Code 170 time.o(.text.BSP_TIME_Get_us) + BSP_TIME_Get_us 0x080032a9 Thumb Code 170 time.o(.text.BSP_TIME_Get_us) + BSP_UART_IRQHandler 0x08003355 Thumb Code 108 uart.o(.text.BSP_UART_IRQHandler) + BusFault_Handler 0x080033c1 Thumb Code 4 stm32f4xx_it.o(.text.BusFault_Handler) + CAN1_RX0_IRQHandler 0x080033c5 Thumb Code 16 stm32f4xx_it.o(.text.CAN1_RX0_IRQHandler) + CAN1_RX1_IRQHandler 0x080033d5 Thumb Code 16 stm32f4xx_it.o(.text.CAN1_RX1_IRQHandler) + CAN1_TX_IRQHandler 0x080033e5 Thumb Code 16 stm32f4xx_it.o(.text.CAN1_TX_IRQHandler) + CAN2_RX0_IRQHandler 0x080033f5 Thumb Code 16 stm32f4xx_it.o(.text.CAN2_RX0_IRQHandler) + CAN2_RX1_IRQHandler 0x08003405 Thumb Code 16 stm32f4xx_it.o(.text.CAN2_RX1_IRQHandler) + CAN2_TX_IRQHandler 0x08003415 Thumb Code 16 stm32f4xx_it.o(.text.CAN2_TX_IRQHandler) + CircleAdd 0x0800347d Thumb Code 132 user_math.o(.text.CircleAdd) + CircleError 0x08003501 Thumb Code 154 user_math.o(.text.CircleError) + Clip 0x0800359d Thumb Code 76 user_math.o(.text.Clip) + Config_GetRobotParam 0x080035e9 Thumb Code 10 config.o(.text.Config_GetRobotParam) + DMA1_Stream1_IRQHandler 0x080035f5 Thumb Code 20 stm32f4xx_it.o(.text.DMA1_Stream1_IRQHandler) + DMA1_Stream1_IRQHandler1 0x08003609 Thumb Code 86 remote_control.o(.text.DMA1_Stream1_IRQHandler1) + DMA2_Stream2_IRQHandler 0x08003661 Thumb Code 16 stm32f4xx_it.o(.text.DMA2_Stream2_IRQHandler) + DMA2_Stream3_IRQHandler 0x08003671 Thumb Code 16 stm32f4xx_it.o(.text.DMA2_Stream3_IRQHandler) + DebugMon_Handler 0x08003819 Thumb Code 2 stm32f4xx_it.o(.text.DebugMon_Handler) + EXTI0_IRQHandler 0x0800381d Thumb Code 10 stm32f4xx_it.o(.text.EXTI0_IRQHandler) + EXTI3_IRQHandler 0x08003829 Thumb Code 10 stm32f4xx_it.o(.text.EXTI3_IRQHandler) + EXTI4_IRQHandler 0x08003835 Thumb Code 10 stm32f4xx_it.o(.text.EXTI4_IRQHandler) + EXTI9_5_IRQHandler 0x08003841 Thumb Code 10 stm32f4xx_it.o(.text.EXTI9_5_IRQHandler) + Error_Handler 0x0800384d Thumb Code 6 main.o(.text.Error_Handler) + Gimbal_Control 0x08003855 Thumb Code 1312 gimbal.o(.text.Gimbal_Control) + Gimbal_Init 0x08003d75 Thumb Code 400 gimbal.o(.text.Gimbal_Init) + Gimbal_Output 0x08003f05 Thumb Code 274 gimbal.o(.text.Gimbal_Output) + Gimbal_UpdateFeedback 0x080040cd Thumb Code 360 gimbal.o(.text.Gimbal_UpdateFeedback) + Gimbal_UpdateIMU 0x08004235 Thumb Code 74 gimbal.o(.text.Gimbal_UpdateIMU) + HAL_CAN_ActivateNotification 0x08004281 Thumb Code 82 stm32f4xx_hal_can.o(.text.HAL_CAN_ActivateNotification) + HAL_CAN_AddTxMessage 0x080042d5 Thumb Code 342 stm32f4xx_hal_can.o(.text.HAL_CAN_AddTxMessage) + HAL_CAN_ConfigFilter 0x0800442d Thumb Code 414 stm32f4xx_hal_can.o(.text.HAL_CAN_ConfigFilter) + HAL_CAN_ErrorCallback 0x080045cd Thumb Code 80 can_1.o(.text.HAL_CAN_ErrorCallback) + HAL_CAN_GetRxFifoFillLevel 0x0800461d Thumb Code 82 stm32f4xx_hal_can.o(.text.HAL_CAN_GetRxFifoFillLevel) + HAL_CAN_GetRxMessage 0x08004671 Thumb Code 530 stm32f4xx_hal_can.o(.text.HAL_CAN_GetRxMessage) + HAL_CAN_GetTxMailboxesFreeLevel 0x08004885 Thumb Code 112 stm32f4xx_hal_can.o(.text.HAL_CAN_GetTxMailboxesFreeLevel) + HAL_CAN_IRQHandler 0x080048f5 Thumb Code 1010 stm32f4xx_hal_can.o(.text.HAL_CAN_IRQHandler) + HAL_CAN_Init 0x08004ce9 Thumb Code 478 stm32f4xx_hal_can.o(.text.HAL_CAN_Init) + HAL_CAN_MspInit 0x08004ec9 Thumb Code 464 can.o(.text.HAL_CAN_MspInit) + HAL_CAN_RxFifo0FullCallback 0x08005099 Thumb Code 80 can_1.o(.text.HAL_CAN_RxFifo0FullCallback) + HAL_CAN_RxFifo0MsgPendingCallback 0x080050e9 Thumb Code 80 can_1.o(.text.HAL_CAN_RxFifo0MsgPendingCallback) + HAL_CAN_RxFifo1FullCallback 0x08005139 Thumb Code 80 can_1.o(.text.HAL_CAN_RxFifo1FullCallback) + HAL_CAN_RxFifo1MsgPendingCallback 0x08005189 Thumb Code 80 can_1.o(.text.HAL_CAN_RxFifo1MsgPendingCallback) + HAL_CAN_SleepCallback 0x080051d9 Thumb Code 80 can_1.o(.text.HAL_CAN_SleepCallback) + HAL_CAN_Start 0x08005229 Thumb Code 138 stm32f4xx_hal_can.o(.text.HAL_CAN_Start) + HAL_CAN_TxMailbox0AbortCallback 0x080052b5 Thumb Code 80 can_1.o(.text.HAL_CAN_TxMailbox0AbortCallback) + HAL_CAN_TxMailbox0CompleteCallback 0x08005305 Thumb Code 76 can_1.o(.text.HAL_CAN_TxMailbox0CompleteCallback) + HAL_CAN_TxMailbox1AbortCallback 0x08005351 Thumb Code 80 can_1.o(.text.HAL_CAN_TxMailbox1AbortCallback) + HAL_CAN_TxMailbox1CompleteCallback 0x080053a1 Thumb Code 80 can_1.o(.text.HAL_CAN_TxMailbox1CompleteCallback) + HAL_CAN_TxMailbox2AbortCallback 0x080053f1 Thumb Code 80 can_1.o(.text.HAL_CAN_TxMailbox2AbortCallback) + HAL_CAN_TxMailbox2CompleteCallback 0x08005441 Thumb Code 80 can_1.o(.text.HAL_CAN_TxMailbox2CompleteCallback) + HAL_CAN_WakeUpFromRxMsgCallback 0x08005491 Thumb Code 80 can_1.o(.text.HAL_CAN_WakeUpFromRxMsgCallback) + HAL_DMA_Abort 0x080054e1 Thumb Code 236 stm32f4xx_hal_dma.o(.text.HAL_DMA_Abort) + HAL_DMA_Abort_IT 0x080055cd Thumb Code 68 stm32f4xx_hal_dma.o(.text.HAL_DMA_Abort_IT) + HAL_DMA_GetState 0x08005611 Thumb Code 14 stm32f4xx_hal_dma.o(.text.HAL_DMA_GetState) + HAL_DMA_IRQHandler 0x08005621 Thumb Code 798 stm32f4xx_hal_dma.o(.text.HAL_DMA_IRQHandler) + HAL_DMA_Init 0x08005941 Thumb Code 366 stm32f4xx_hal_dma.o(.text.HAL_DMA_Init) + HAL_DMA_Start_IT 0x08005ab1 Thumb Code 194 stm32f4xx_hal_dma.o(.text.HAL_DMA_Start_IT) + HAL_Delay 0x08005b75 Thumb Code 66 stm32f4xx_hal.o(.text.HAL_Delay) + HAL_GPIO_EXTI_Callback 0x08005bb9 Thumb Code 102 gpio_1.o(.text.HAL_GPIO_EXTI_Callback) + HAL_GPIO_EXTI_IRQHandler 0x08005c21 Thumb Code 56 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_EXTI_IRQHandler) + HAL_GPIO_Init 0x08005c59 Thumb Code 950 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_Init) + HAL_GPIO_ReadPin 0x08006011 Thumb Code 46 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_ReadPin) + HAL_GPIO_WritePin 0x08006041 Thumb Code 46 stm32f4xx_hal_gpio.o(.text.HAL_GPIO_WritePin) + HAL_GetTick 0x08006071 Thumb Code 12 stm32f4xx_hal.o(.text.HAL_GetTick) + HAL_I2C_AbortCpltCallback 0x0800607d Thumb Code 84 i2c_1.o(.text.HAL_I2C_AbortCpltCallback) + HAL_I2C_AddrCallback 0x080060d1 Thumb Code 16 stm32f4xx_hal_i2c.o(.text.HAL_I2C_AddrCallback) + HAL_I2C_ER_IRQHandler 0x080060e1 Thumb Code 378 stm32f4xx_hal_i2c.o(.text.HAL_I2C_ER_IRQHandler) + HAL_I2C_EV_IRQHandler 0x0800625d Thumb Code 970 stm32f4xx_hal_i2c.o(.text.HAL_I2C_EV_IRQHandler) + HAL_I2C_ErrorCallback 0x08006629 Thumb Code 84 i2c_1.o(.text.HAL_I2C_ErrorCallback) + HAL_I2C_Init 0x0800667d Thumb Code 676 stm32f4xx_hal_i2c.o(.text.HAL_I2C_Init) + HAL_I2C_ListenCpltCallback 0x08006921 Thumb Code 84 i2c_1.o(.text.HAL_I2C_ListenCpltCallback) + HAL_I2C_MasterRxCpltCallback 0x08006975 Thumb Code 84 i2c_1.o(.text.HAL_I2C_MasterRxCpltCallback) + HAL_I2C_MasterTxCpltCallback 0x080069c9 Thumb Code 80 i2c_1.o(.text.HAL_I2C_MasterTxCpltCallback) + HAL_I2C_MemRxCpltCallback 0x08006a19 Thumb Code 84 i2c_1.o(.text.HAL_I2C_MemRxCpltCallback) + HAL_I2C_MemTxCpltCallback 0x08006a6d Thumb Code 84 i2c_1.o(.text.HAL_I2C_MemTxCpltCallback) + HAL_I2C_MspInit 0x08006ac1 Thumb Code 308 i2c.o(.text.HAL_I2C_MspInit) + HAL_I2C_SlaveRxCpltCallback 0x08006bf5 Thumb Code 84 i2c_1.o(.text.HAL_I2C_SlaveRxCpltCallback) + HAL_I2C_SlaveTxCpltCallback 0x08006c49 Thumb Code 84 i2c_1.o(.text.HAL_I2C_SlaveTxCpltCallback) + HAL_IncTick 0x08006c9d Thumb Code 26 stm32f4xx_hal.o(.text.HAL_IncTick) + HAL_Init 0x08006cb9 Thumb Code 54 stm32f4xx_hal.o(.text.HAL_Init) + HAL_InitTick 0x08006cf1 Thumb Code 112 stm32f4xx_hal.o(.text.HAL_InitTick) + HAL_MspInit 0x08006d61 Thumb Code 88 stm32f4xx_hal_msp.o(.text.HAL_MspInit) + HAL_NVIC_DisableIRQ 0x08006db9 Thumb Code 20 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_DisableIRQ) + HAL_NVIC_EnableIRQ 0x08006dcd Thumb Code 20 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_EnableIRQ) + HAL_NVIC_SetPriority 0x08006de1 Thumb Code 50 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_SetPriority) + HAL_NVIC_SetPriorityGrouping 0x08006e15 Thumb Code 16 stm32f4xx_hal_cortex.o(.text.HAL_NVIC_SetPriorityGrouping) + HAL_RCC_ClockConfig 0x08006e25 Thumb Code 610 stm32f4xx_hal_rcc.o(.text.HAL_RCC_ClockConfig) + HAL_RCC_GetHCLKFreq 0x08007089 Thumb Code 12 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetHCLKFreq) + HAL_RCC_GetPCLK1Freq 0x08007095 Thumb Code 34 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetPCLK1Freq) + HAL_RCC_GetPCLK2Freq 0x080070b9 Thumb Code 34 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetPCLK2Freq) + HAL_RCC_GetSysClockFreq 0x080070dd Thumb Code 230 stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetSysClockFreq) + HAL_RCC_OscConfig 0x080071c5 Thumb Code 1726 stm32f4xx_hal_rcc.o(.text.HAL_RCC_OscConfig) + HAL_SPI_ErrorCallback 0x08007885 Thumb Code 84 spi_1.o(.text.HAL_SPI_ErrorCallback) + HAL_SPI_Init 0x080078d9 Thumb Code 256 stm32f4xx_hal_spi.o(.text.HAL_SPI_Init) + HAL_SPI_MspInit 0x080079d9 Thumb Code 528 spi.o(.text.HAL_SPI_MspInit) + HAL_SPI_Receive 0x08007be9 Thumb Code 590 stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive) + HAL_SPI_Receive_DMA 0x08007e39 Thumb Code 408 stm32f4xx_hal_spi.o(.text.HAL_SPI_Receive_DMA) + HAL_SPI_RxCpltCallback 0x08007fd1 Thumb Code 84 spi_1.o(.text.HAL_SPI_RxCpltCallback) + HAL_SPI_RxHalfCpltCallback 0x08008025 Thumb Code 84 spi_1.o(.text.HAL_SPI_RxHalfCpltCallback) + HAL_SPI_Transmit 0x08008079 Thumb Code 674 stm32f4xx_hal_spi.o(.text.HAL_SPI_Transmit) + HAL_SPI_TransmitReceive 0x0800831d Thumb Code 930 stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive) + HAL_SPI_TransmitReceive_DMA 0x080086c1 Thumb Code 532 stm32f4xx_hal_spi.o(.text.HAL_SPI_TransmitReceive_DMA) + HAL_SPI_Transmit_DMA 0x080088d5 Thumb Code 364 stm32f4xx_hal_spi.o(.text.HAL_SPI_Transmit_DMA) + HAL_SPI_TxCpltCallback 0x08008a41 Thumb Code 72 spi_1.o(.text.HAL_SPI_TxCpltCallback) + HAL_SPI_TxHalfCpltCallback 0x08008a89 Thumb Code 84 spi_1.o(.text.HAL_SPI_TxHalfCpltCallback) + HAL_SPI_TxRxCpltCallback 0x08008add Thumb Code 84 spi_1.o(.text.HAL_SPI_TxRxCpltCallback) + HAL_SPI_TxRxHalfCpltCallback 0x08008b31 Thumb Code 84 spi_1.o(.text.HAL_SPI_TxRxHalfCpltCallback) + HAL_SYSTICK_Config 0x08008b85 Thumb Code 16 stm32f4xx_hal_cortex.o(.text.HAL_SYSTICK_Config) + HAL_TIMEx_BreakCallback 0x08008b95 Thumb Code 8 stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_BreakCallback) + HAL_TIMEx_CommutCallback 0x08008b9d Thumb Code 8 stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutCallback) + HAL_TIMEx_MasterConfigSynchronization 0x08008ba5 Thumb Code 290 stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_MasterConfigSynchronization) + HAL_TIM_Base_Init 0x08008cc9 Thumb Code 156 stm32f4xx_hal_tim.o(.text.HAL_TIM_Base_Init) + HAL_TIM_Base_MspInit 0x08008d65 Thumb Code 138 tim.o(.text.HAL_TIM_Base_MspInit) + HAL_TIM_IC_CaptureCallback 0x08008df1 Thumb Code 8 stm32f4xx_hal_tim.o(.text.HAL_TIM_IC_CaptureCallback) + HAL_TIM_IRQHandler 0x08008df9 Thumb Code 538 stm32f4xx_hal_tim.o(.text.HAL_TIM_IRQHandler) + HAL_TIM_MspPostInit 0x08009015 Thumb Code 108 tim.o(.text.HAL_TIM_MspPostInit) + HAL_TIM_OC_DelayElapsedCallback 0x08009081 Thumb Code 8 stm32f4xx_hal_tim.o(.text.HAL_TIM_OC_DelayElapsedCallback) + HAL_TIM_PWM_ConfigChannel 0x08009089 Thumb Code 322 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_ConfigChannel) + HAL_TIM_PWM_Init 0x080091cd Thumb Code 156 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_Init) + HAL_TIM_PWM_MspInit 0x08009269 Thumb Code 8 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_MspInit) + HAL_TIM_PWM_PulseFinishedCallback 0x08009271 Thumb Code 8 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedCallback) + HAL_TIM_PWM_Start 0x08009279 Thumb Code 458 stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_Start) + HAL_TIM_PeriodElapsedCallback 0x08009445 Thumb Code 8 stm32f4xx_hal_tim.o(.text.HAL_TIM_PeriodElapsedCallback) + HAL_TIM_TriggerCallback 0x0800944d Thumb Code 8 stm32f4xx_hal_tim.o(.text.HAL_TIM_TriggerCallback) + HAL_UARTEx_RxEventCallback 0x08009455 Thumb Code 12 stm32f4xx_hal_uart.o(.text.HAL_UARTEx_RxEventCallback) + HAL_UART_ErrorCallback 0x08009461 Thumb Code 84 uart.o(.text.HAL_UART_ErrorCallback) + HAL_UART_IRQHandler 0x080094b5 Thumb Code 1116 stm32f4xx_hal_uart.o(.text.HAL_UART_IRQHandler) + HAL_UART_Init 0x08009911 Thumb Code 158 stm32f4xx_hal_uart.o(.text.HAL_UART_Init) + HAL_UART_MspInit 0x080099b1 Thumb Code 460 usart.o(.text.HAL_UART_MspInit) + HAL_UART_RxCpltCallback 0x08009b7d Thumb Code 84 uart.o(.text.HAL_UART_RxCpltCallback) + HAL_UART_TxCpltCallback 0x08009bd1 Thumb Code 84 uart.o(.text.HAL_UART_TxCpltCallback) + HardFault_Handler 0x08009c25 Thumb Code 4 stm32f4xx_it.o(.text.HardFault_Handler) + I2C1_ER_IRQHandler 0x08009c29 Thumb Code 16 stm32f4xx_it.o(.text.I2C1_ER_IRQHandler) + I2C1_EV_IRQHandler 0x08009c39 Thumb Code 16 stm32f4xx_it.o(.text.I2C1_EV_IRQHandler) + InvSqrt 0x0800b125 Thumb Code 118 user_math.o(.text.InvSqrt) + LowPassFilter2p_Apply 0x0800b19d Thumb Code 184 filter.o(.text.LowPassFilter2p_Apply) + LowPassFilter2p_Init 0x0800b255 Thumb Code 316 filter.o(.text.LowPassFilter2p_Init) + LowPassFilter2p_Reset 0x0800b391 Thumb Code 146 filter.o(.text.LowPassFilter2p_Reset) + MOTOR_DM_Enable 0x0800b4bd Thumb Code 122 motor_dm.o(.text.MOTOR_DM_Enable) + MOTOR_DM_GetMotor 0x0800b569 Thumb Code 134 motor_dm.o(.text.MOTOR_DM_GetMotor) + MOTOR_DM_MITCtrl 0x0800b5f1 Thumb Code 72 motor_dm.o(.text.MOTOR_DM_MITCtrl) + MOTOR_DM_Register 0x0800b791 Thumb Code 300 motor_dm.o(.text.MOTOR_DM_Register) + MOTOR_DM_Update 0x0800ba01 Thumb Code 268 motor_dm.o(.text.MOTOR_DM_Update) + MOTOR_RM_Ctrl 0x0800bba5 Thumb Code 368 motor_rm.o(.text.MOTOR_RM_Ctrl) + MOTOR_RM_GetMotor 0x0800be19 Thumb Code 120 motor_rm.o(.text.MOTOR_RM_GetMotor) + MOTOR_RM_Register 0x0800bee1 Thumb Code 288 motor_rm.o(.text.MOTOR_RM_Register) + MOTOR_RM_SetOutput 0x0800c001 Thumb Code 282 motor_rm.o(.text.MOTOR_RM_SetOutput) + MOTOR_RM_Update 0x0800c11d Thumb Code 258 motor_rm.o(.text.MOTOR_RM_Update) + MX_CAN1_Init 0x0800c221 Thumb Code 78 can.o(.text.MX_CAN1_Init) + MX_CAN2_Init 0x0800c271 Thumb Code 78 can.o(.text.MX_CAN2_Init) + MX_DMA_Init 0x0800c2c1 Thumb Code 134 dma.o(.text.MX_DMA_Init) + MX_FREERTOS_Init 0x0800c349 Thumb Code 64 freertos.o(.text.MX_FREERTOS_Init) + MX_GPIO_Init 0x0800c389 Thumb Code 554 gpio.o(.text.MX_GPIO_Init) + MX_I2C1_Init 0x0800c5b5 Thumb Code 72 i2c.o(.text.MX_I2C1_Init) + MX_I2C2_Init 0x0800c5fd Thumb Code 72 i2c.o(.text.MX_I2C2_Init) + MX_SPI1_Init 0x0800c645 Thumb Code 82 spi.o(.text.MX_SPI1_Init) + MX_SPI2_Init 0x0800c699 Thumb Code 84 spi.o(.text.MX_SPI2_Init) + MX_TIM10_Init 0x0800c6ed Thumb Code 142 tim.o(.text.MX_TIM10_Init) + MX_TIM7_Init 0x0800c77d Thumb Code 88 tim.o(.text.MX_TIM7_Init) + MX_USART1_UART_Init 0x0800c7d5 Thumb Code 64 usart.o(.text.MX_USART1_UART_Init) + MX_USART3_UART_Init 0x0800c815 Thumb Code 76 usart.o(.text.MX_USART3_UART_Init) + MemManage_Handler 0x0800c861 Thumb Code 4 stm32f4xx_it.o(.text.MemManage_Handler) + NMI_Handler 0x0800ca81 Thumb Code 4 stm32f4xx_it.o(.text.NMI_Handler) + PID_Calc 0x0800caf1 Thumb Code 752 pid.o(.text.PID_Calc) + PID_Init 0x0800cde1 Thumb Code 406 pid.o(.text.PID_Init) + PID_Reset 0x0800cf79 Thumb Code 72 pid.o(.text.PID_Reset) + PendSV_Handler 0x0800cfc1 Thumb Code 100 port.o(.text.PendSV_Handler) + RC_Init 0x0800d025 Thumb Code 148 bsp_rc.o(.text.RC_Init) + RC_restart 0x0800d0b9 Thumb Code 90 bsp_rc.o(.text.RC_restart) + SVC_Handler 0x0800d671 Thumb Code 36 port.o(.text.SVC_Handler) + StartDefaultTask 0x0800d6a5 Thumb Code 18 freertos.o(.text.StartDefaultTask) + SysTick_Handler 0x0800d70d Thumb Code 24 stm32f4xx_it.o(.text.SysTick_Handler) + SystemClock_Config 0x0800d725 Thumb Code 188 main.o(.text.SystemClock_Config) + SystemInit 0x0800d7e1 Thumb Code 18 system_stm32f4xx.o(.text.SystemInit) + TIM7_IRQHandler 0x0800d7f5 Thumb Code 16 stm32f4xx_it.o(.text.TIM7_IRQHandler) + TIM_Base_SetConfig 0x0800d805 Thumb Code 420 stm32f4xx_hal_tim.o(.text.TIM_Base_SetConfig) + TIM_CCxChannelCmd 0x0800d9a9 Thumb Code 54 stm32f4xx_hal_tim.o(.text.TIM_CCxChannelCmd) + TIM_OC2_SetConfig 0x0800dacd Thumb Code 244 stm32f4xx_hal_tim.o(.text.TIM_OC2_SetConfig) + Task_Init 0x0800dd59 Thumb Code 184 init.o(.text.Task_Init) + Task_atti_esti 0x0800de11 Thumb Code 400 atti_esti.o(.text.Task_atti_esti) + Task_gimbal_ctrl 0x0800dfa1 Thumb Code 236 gimbal_ctrl.o(.text.Task_gimbal_ctrl) + Task_remote 0x0800e091 Thumb Code 160 remote.o(.text.Task_remote) + USART3_IRQHandler 0x0800e571 Thumb Code 32 stm32f4xx_it.o(.text.USART3_IRQHandler) + USART3_IRQHandler1 0x0800e591 Thumb Code 34 remote_control.o(.text.USART3_IRQHandler1) + UsageFault_Handler 0x0800e5b5 Thumb Code 4 stm32f4xx_it.o(.text.UsageFault_Handler) + configureTimerForRunTimeStats 0x0800e7b5 Thumb Code 2 freertos.o(.text.configureTimerForRunTimeStats) + delay_init 0x0800e7d9 Thumb Code 62 bsp_delay.o(.text.delay_init) + eTaskGetState 0x0800e819 Thumb Code 246 tasks.o(.text.eTaskGetState) + getRunTimeCounterValue 0x0800e969 Thumb Code 4 freertos.o(.text.getRunTimeCounterValue) + main 0x0800e96d Thumb Code 80 main.o(.text.main) + map 0x0800e9bd Thumb Code 42 calc_lib.o(.text.map) + osDelay 0x0800e9e9 Thumb Code 52 cmsis_os2.o(.text.osDelay) + osDelayUntil 0x0800ea1d Thumb Code 88 cmsis_os2.o(.text.osDelayUntil) + osKernelGetState 0x0800ea75 Thumb Code 82 cmsis_os2.o(.text.osKernelGetState) + osKernelGetTickCount 0x0800eac9 Thumb Code 38 cmsis_os2.o(.text.osKernelGetTickCount) + osKernelGetTickFreq 0x0800eaf1 Thumb Code 6 cmsis_os2.o(.text.osKernelGetTickFreq) + osKernelInitialize 0x0800eaf9 Thumb Code 70 cmsis_os2.o(.text.osKernelInitialize) + osKernelLock 0x0800eb41 Thumb Code 86 cmsis_os2.o(.text.osKernelLock) + osKernelStart 0x0800eb99 Thumb Code 82 cmsis_os2.o(.text.osKernelStart) + osKernelUnlock 0x0800ebed Thumb Code 110 cmsis_os2.o(.text.osKernelUnlock) + osMessageQueueGet 0x0800ec5d Thumb Code 192 cmsis_os2.o(.text.osMessageQueueGet) + osMessageQueueNew 0x0800ed1d Thumb Code 254 cmsis_os2.o(.text.osMessageQueueNew) + osMessageQueuePut 0x0800ee1d Thumb Code 196 cmsis_os2.o(.text.osMessageQueuePut) + osMessageQueueReset 0x0800eee1 Thumb Code 64 cmsis_os2.o(.text.osMessageQueueReset) + osMutexAcquire 0x0800ef21 Thumb Code 158 cmsis_os2.o(.text.osMutexAcquire) + osMutexNew 0x0800efc1 Thumb Code 296 cmsis_os2.o(.text.osMutexNew) + osMutexRelease 0x0800f0e9 Thumb Code 126 cmsis_os2.o(.text.osMutexRelease) + osThreadFlagsSet 0x0800f169 Thumb Code 164 cmsis_os2.o(.text.osThreadFlagsSet) + osThreadFlagsWait 0x0800f20d Thumb Code 282 cmsis_os2.o(.text.osThreadFlagsWait) + osThreadGetId 0x0800f329 Thumb Code 16 cmsis_os2.o(.text.osThreadGetId) + osThreadNew 0x0800f339 Thumb Code 346 cmsis_os2.o(.text.osThreadNew) + osThreadTerminate 0x0800f495 Thumb Code 94 cmsis_os2.o(.text.osThreadTerminate) + pvPortMalloc 0x080103f5 Thumb Code 492 heap_4.o(.text.pvPortMalloc) + pvTaskIncrementMutexHeldCount 0x080105e1 Thumb Code 44 tasks.o(.text.pvTaskIncrementMutexHeldCount) + pxPortInitialiseStack 0x0801060d Thumb Code 94 port.o(.text.pxPortInitialiseStack) + remote_ParseHost 0x08010671 Thumb Code 176 ai.o(.text.remote_ParseHost) + remote_control_init 0x08010721 Thumb Code 18 remote_control.o(.text.remote_control_init) + user_delay_ms 0x08010a1d Thumb Code 46 calc_lib.o(.text.user_delay_ms) + user_delay_us 0x08010a4d Thumb Code 68 calc_lib.o(.text.user_delay_us) + uxListRemove 0x08010a91 Thumb Code 72 list.o(.text.uxListRemove) + vApplicationGetIdleTaskMemory 0x08010ad9 Thumb Code 42 cmsis_os2.o(.text.vApplicationGetIdleTaskMemory) + vApplicationGetTimerTaskMemory 0x08010b05 Thumb Code 44 cmsis_os2.o(.text.vApplicationGetTimerTaskMemory) + vApplicationStackOverflowHook 0x08010b31 Thumb Code 10 freertos.o(.text.vApplicationStackOverflowHook) + vListInitialise 0x08010b3d Thumb Code 46 list.o(.text.vListInitialise) + vListInitialiseItem 0x08010b6d Thumb Code 14 list.o(.text.vListInitialiseItem) + vListInsert 0x08010b7d Thumb Code 106 list.o(.text.vListInsert) + vListInsertEnd 0x08010be9 Thumb Code 58 list.o(.text.vListInsertEnd) + vPortEnterCritical 0x08010c39 Thumb Code 86 port.o(.text.vPortEnterCritical) + vPortExitCritical 0x08010c91 Thumb Code 74 port.o(.text.vPortExitCritical) + vPortFree 0x08010cdd Thumb Code 206 heap_4.o(.text.vPortFree) + vPortSetupTimerInterrupt 0x08010dad Thumb Code 68 port.o(.text.vPortSetupTimerInterrupt) + vPortValidateInterruptPriority 0x08010df1 Thumb Code 132 port.o(.text.vPortValidateInterruptPriority) + vQueueAddToRegistry 0x08010e75 Thumb Code 82 queue.o(.text.vQueueAddToRegistry) + vQueueWaitForMessageRestricted 0x08010ec9 Thumb Code 100 queue.o(.text.vQueueWaitForMessageRestricted) + vTaskDelay 0x08010f2d Thumb Code 110 tasks.o(.text.vTaskDelay) + vTaskDelayUntil 0x08010f9d Thumb Code 276 tasks.o(.text.vTaskDelayUntil) + vTaskDelete 0x080110b1 Thumb Code 270 tasks.o(.text.vTaskDelete) + vTaskInternalSetTimeOutState 0x080111c1 Thumb Code 36 tasks.o(.text.vTaskInternalSetTimeOutState) + vTaskMissedYield 0x080111e5 Thumb Code 14 tasks.o(.text.vTaskMissedYield) + vTaskPlaceOnEventList 0x080111f5 Thumb Code 66 tasks.o(.text.vTaskPlaceOnEventList) + vTaskPlaceOnEventListRestricted 0x08011239 Thumb Code 82 tasks.o(.text.vTaskPlaceOnEventListRestricted) + vTaskPriorityDisinheritAfterTimeout 0x0801128d Thumb Code 308 tasks.o(.text.vTaskPriorityDisinheritAfterTimeout) + vTaskStartScheduler 0x080113c1 Thumb Code 228 tasks.o(.text.vTaskStartScheduler) + vTaskSuspendAll 0x080114a5 Thumb Code 16 tasks.o(.text.vTaskSuspendAll) + vTaskSwitchContext 0x080114b5 Thumb Code 384 tasks.o(.text.vTaskSwitchContext) + xPortStartScheduler 0x08011635 Thumb Code 342 port.o(.text.xPortStartScheduler) + xPortSysTickHandler 0x0801178d Thumb Code 60 port.o(.text.xPortSysTickHandler) + xQueueCreateMutex 0x080117c9 Thumb Code 38 queue.o(.text.xQueueCreateMutex) + xQueueCreateMutexStatic 0x080117f1 Thumb Code 50 queue.o(.text.xQueueCreateMutexStatic) + xQueueGenericCreate 0x08011825 Thumb Code 116 queue.o(.text.xQueueGenericCreate) + xQueueGenericCreateStatic 0x08011899 Thumb Code 270 queue.o(.text.xQueueGenericCreateStatic) + xQueueGenericReset 0x080119a9 Thumb Code 186 queue.o(.text.xQueueGenericReset) + xQueueGenericSend 0x08011a65 Thumb Code 556 queue.o(.text.xQueueGenericSend) + xQueueGenericSendFromISR 0x08011c91 Thumb Code 332 queue.o(.text.xQueueGenericSendFromISR) + xQueueGiveMutexRecursive 0x08011ddd Thumb Code 108 queue.o(.text.xQueueGiveMutexRecursive) + xQueueReceive 0x08011e49 Thumb Code 476 queue.o(.text.xQueueReceive) + xQueueReceiveFromISR 0x08012025 Thumb Code 264 queue.o(.text.xQueueReceiveFromISR) + xQueueSemaphoreTake 0x0801212d Thumb Code 556 queue.o(.text.xQueueSemaphoreTake) + xQueueTakeMutexRecursive 0x08012359 Thumb Code 110 queue.o(.text.xQueueTakeMutexRecursive) + xTaskCheckForTimeOut 0x080123c9 Thumb Code 204 tasks.o(.text.xTaskCheckForTimeOut) + xTaskCreate 0x08012495 Thumb Code 158 tasks.o(.text.xTaskCreate) + xTaskCreateStatic 0x08012535 Thumb Code 206 tasks.o(.text.xTaskCreateStatic) + xTaskGenericNotify 0x08012605 Thumb Code 376 tasks.o(.text.xTaskGenericNotify) + xTaskGenericNotifyFromISR 0x0801277d Thumb Code 452 tasks.o(.text.xTaskGenericNotifyFromISR) + xTaskGetCurrentTaskHandle 0x08012941 Thumb Code 20 tasks.o(.text.xTaskGetCurrentTaskHandle) + xTaskGetSchedulerState 0x08012955 Thumb Code 56 tasks.o(.text.xTaskGetSchedulerState) + xTaskGetTickCount 0x0801298d Thumb Code 20 tasks.o(.text.xTaskGetTickCount) + xTaskGetTickCountFromISR 0x080129a1 Thumb Code 30 tasks.o(.text.xTaskGetTickCountFromISR) + xTaskIncrementTick 0x080129c1 Thumb Code 452 tasks.o(.text.xTaskIncrementTick) + xTaskNotifyWait 0x08012b85 Thumb Code 214 tasks.o(.text.xTaskNotifyWait) + xTaskPriorityDisinherit 0x08012c5d Thumb Code 236 tasks.o(.text.xTaskPriorityDisinherit) + xTaskPriorityInherit 0x08012d49 Thumb Code 270 tasks.o(.text.xTaskPriorityInherit) + xTaskRemoveFromEventList 0x08012e59 Thumb Code 206 tasks.o(.text.xTaskRemoveFromEventList) + xTaskResumeAll 0x08012f29 Thumb Code 390 tasks.o(.text.xTaskResumeAll) + xTimerCreateTimerTask 0x080130b1 Thumb Code 148 timers.o(.text.xTimerCreateTimerTask) + xTimerGenericCommand 0x08013145 Thumb Code 176 timers.o(.text.xTimerGenericCommand) + __ARM_fpclassify 0x080131f5 Thumb Code 48 fpclassify.o(i.__ARM_fpclassify) + __ARM_fpclassifyf 0x08013225 Thumb Code 38 fpclassifyf.o(i.__ARM_fpclassifyf) + __hardfp_asinf 0x0801324d Thumb Code 258 asinf.o(i.__hardfp_asinf) + __hardfp_atan 0x08013379 Thumb Code 622 atan.o(i.__hardfp_atan) + __hardfp_atan2 0x08013651 Thumb Code 448 atan2.o(i.__hardfp_atan2) + __hardfp_atan2f 0x08013851 Thumb Code 594 atan2f.o(i.__hardfp_atan2f) + __hardfp_cosf 0x08013afd Thumb Code 280 cosf.o(i.__hardfp_cosf) + __hardfp_tanf 0x08013c4d Thumb Code 322 tanf.o(i.__hardfp_tanf) + __kernel_poly 0x08013dc9 Thumb Code 248 poly.o(i.__kernel_poly) + __mathlib_dbl_infnan 0x08013ec1 Thumb Code 20 dunder.o(i.__mathlib_dbl_infnan) + __mathlib_dbl_infnan2 0x08013ed5 Thumb Code 20 dunder.o(i.__mathlib_dbl_infnan2) + __mathlib_dbl_underflow 0x08013ee9 Thumb Code 24 dunder.o(i.__mathlib_dbl_underflow) + __mathlib_flt_infnan 0x08013f09 Thumb Code 6 funder.o(i.__mathlib_flt_infnan) + __mathlib_flt_infnan2 0x08013f0f Thumb Code 6 funder.o(i.__mathlib_flt_infnan2) + __mathlib_flt_invalid 0x08013f15 Thumb Code 10 funder.o(i.__mathlib_flt_invalid) + __mathlib_flt_underflow 0x08013f25 Thumb Code 10 funder.o(i.__mathlib_flt_underflow) + __mathlib_rredf2 0x08013f35 Thumb Code 316 rredf.o(i.__mathlib_rredf2) + atan 0x08014089 Thumb Code 16 atan.o(i.atan) + fabs 0x08014099 Thumb Code 24 fabs.o(i.fabs) + sqrtf 0x080140b1 Thumb Code 62 sqrtf.o(i.sqrtf) + __aeabi_dneg 0x080140ef Thumb Code 0 basic.o(x$fpl$basic) + _dneg 0x080140ef Thumb Code 6 basic.o(x$fpl$basic) + __aeabi_fneg 0x080140f5 Thumb Code 0 basic.o(x$fpl$basic) + _fneg 0x080140f5 Thumb Code 6 basic.o(x$fpl$basic) + _dabs 0x080140fb Thumb Code 6 basic.o(x$fpl$basic) + _fabs 0x08014101 Thumb Code 6 basic.o(x$fpl$basic) + __aeabi_d2f 0x08014109 Thumb Code 0 d2f.o(x$fpl$d2f) + _d2f 0x08014109 Thumb Code 98 d2f.o(x$fpl$d2f) + __aeabi_dadd 0x0801416d Thumb Code 0 daddsub_clz.o(x$fpl$dadd) + _dadd 0x0801416d Thumb Code 332 daddsub_clz.o(x$fpl$dadd) + __fpl_dcmp_Inf 0x080142bd Thumb Code 24 dcmpi.o(x$fpl$dcmpinf) + __aeabi_ddiv 0x080142d5 Thumb Code 0 ddiv.o(x$fpl$ddiv) + _ddiv 0x080142d5 Thumb Code 556 ddiv.o(x$fpl$ddiv) + __aeabi_cdcmpeq 0x08014589 Thumb Code 0 deqf.o(x$fpl$deqf) + _dcmpeq 0x08014589 Thumb Code 120 deqf.o(x$fpl$deqf) + __aeabi_d2iz 0x08014601 Thumb Code 0 dfix.o(x$fpl$dfix) + _dfix 0x08014601 Thumb Code 94 dfix.o(x$fpl$dfix) + __aeabi_d2uiz 0x08014661 Thumb Code 0 dfixu.o(x$fpl$dfixu) + _dfixu 0x08014661 Thumb Code 90 dfixu.o(x$fpl$dfixu) + __aeabi_i2d 0x080146bb Thumb Code 0 dflt_clz.o(x$fpl$dflt) + _dflt 0x080146bb Thumb Code 46 dflt_clz.o(x$fpl$dflt) + __aeabi_ui2d 0x080146e9 Thumb Code 0 dflt_clz.o(x$fpl$dfltu) + _dfltu 0x080146e9 Thumb Code 38 dflt_clz.o(x$fpl$dfltu) + __aeabi_dmul 0x08014711 Thumb Code 0 dmul.o(x$fpl$dmul) + _dmul 0x08014711 Thumb Code 332 dmul.o(x$fpl$dmul) + __fpl_dnaninf 0x08014865 Thumb Code 156 dnaninf.o(x$fpl$dnaninf) + __fpl_dretinf 0x08014901 Thumb Code 12 dretinf.o(x$fpl$dretinf) + __aeabi_drsub 0x0801490d Thumb Code 0 daddsub_clz.o(x$fpl$drsb) + _drsb 0x0801490d Thumb Code 22 daddsub_clz.o(x$fpl$drsb) + __aeabi_dsub 0x08014925 Thumb Code 0 daddsub_clz.o(x$fpl$dsub) + _dsub 0x08014925 Thumb Code 472 daddsub_clz.o(x$fpl$dsub) + __aeabi_f2d 0x08014b01 Thumb Code 0 f2d.o(x$fpl$f2d) + _f2d 0x08014b01 Thumb Code 86 f2d.o(x$fpl$f2d) + __aeabi_ul2f 0x08014b57 Thumb Code 0 ffltll_clz.o(x$fpl$ffltll) + _ll_uto_f 0x08014b57 Thumb Code 6 ffltll_clz.o(x$fpl$ffltll) + __aeabi_l2f 0x08014b5d Thumb Code 0 ffltll_clz.o(x$fpl$ffltll) + _ll_sto_f 0x08014b5d Thumb Code 90 ffltll_clz.o(x$fpl$ffltll) + __fpl_fnaninf 0x08014bb7 Thumb Code 140 fnaninf.o(x$fpl$fnaninf) + _fp_init 0x08014c43 Thumb Code 26 fpinit.o(x$fpl$fpinit) + __fplib_config_fpu_vfp 0x08014c5b Thumb Code 0 fpinit.o(x$fpl$fpinit) + __fplib_config_pureend_doubles 0x08014c5b Thumb Code 0 fpinit.o(x$fpl$fpinit) + __fpl_fretinf 0x08014c5d Thumb Code 10 fretinf.o(x$fpl$fretinf) + __I$use$fp 0x08014c66 Number 0 usenofp.o(x$fpl$usenofp) + __mathlib_zero 0x08014d00 Data 8 qnan.o(.constdata) + AHBPrescTable 0x08014d28 Data 16 system_stm32f4xx.o(.rodata.AHBPrescTable) + APBPrescTable 0x08014d38 Data 8 system_stm32f4xx.o(.rodata.APBPrescTable) + attr_atti_esti 0x08014d88 Data 36 user_task.o(.rodata.attr_atti_esti) + attr_gimbal_ctrl 0x08014dac Data 36 user_task.o(.rodata.attr_gimbal_ctrl) + attr_init 0x08014dd0 Data 36 user_task.o(.rodata.attr_init) + attr_remote 0x08014df4 Data 36 user_task.o(.rodata.attr_remote) + defaultTask_attributes 0x08014e18 Data 36 freertos.o(.rodata.defaultTask_attributes) + Region$$Table$$Base 0x08014ea4 Number 0 anon$$obj.o(Region$$Table) + Region$$Table$$Limit 0x08014ec4 Number 0 anon$$obj.o(Region$$Table) SystemCoreClock 0x20000000 Data 4 system_stm32f4xx.o(.data.SystemCoreClock) robot_config 0x20000008 Data 400 config.o(.data.robot_config) uwTickFreq 0x20000198 Data 1 stm32f4xx_hal.o(.data.uwTickFreq) @@ -7779,773 +7779,773 @@ Memory Map of the image Image Entry point : 0x08000189 - Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00015090, Max: 0x00100000, ABSOLUTE, COMPRESSED[0x00014f80]) + Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00015070, Max: 0x00100000, ABSOLUTE, COMPRESSED[0x00014f40]) - Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00014ee4, Max: 0x00100000, ABSOLUTE) + Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00014ec4, Max: 0x00100000, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object 0x08000000 0x08000000 0x00000188 Data RO 3 RESET startup_stm32f407xx.o 0x08000188 0x08000188 0x00000008 Code RO 3098 * !!!main c_w.l(__main.o) 0x08000190 0x08000190 0x00000034 Code RO 3587 !!!scatter c_w.l(__scatter.o) - 0x080001c4 0x080001c4 0x0000003a Code RO 3585 !!dczerorl c_w.l(__dczerorl.o) - 0x080001fe 0x080001fe 0x00000002 PAD - 0x08000200 0x08000200 0x0000001c Code RO 3589 !!handler_zi c_w.l(__scatter_zi.o) - 0x0800021c 0x0800021c 0x00000002 Code RO 3441 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o) - 0x0800021e 0x0800021e 0x00000004 Code RO 3459 .ARM.Collect$$libinit$$00000001 c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3462 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3465 .ARM.Collect$$libinit$$0000000A c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3467 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3469 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3472 .ARM.Collect$$libinit$$00000011 c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3474 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3476 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3478 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3480 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3482 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3484 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3486 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3488 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3490 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3492 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3496 .ARM.Collect$$libinit$$0000002C c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3498 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3500 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000000 Code RO 3502 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o) - 0x08000222 0x08000222 0x00000002 Code RO 3503 .ARM.Collect$$libinit$$00000033 c_w.l(libinit2.o) - 0x08000224 0x08000224 0x00000002 Code RO 3540 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o) - 0x08000226 0x08000226 0x00000000 Code RO 3568 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o) - 0x08000226 0x08000226 0x00000000 Code RO 3570 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o) - 0x08000226 0x08000226 0x00000000 Code RO 3573 .ARM.Collect$$libshutdown$$00000007 c_w.l(libshutdown2.o) - 0x08000226 0x08000226 0x00000000 Code RO 3576 .ARM.Collect$$libshutdown$$0000000A c_w.l(libshutdown2.o) - 0x08000226 0x08000226 0x00000000 Code RO 3578 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o) - 0x08000226 0x08000226 0x00000000 Code RO 3581 .ARM.Collect$$libshutdown$$0000000F c_w.l(libshutdown2.o) - 0x08000226 0x08000226 0x00000002 Code RO 3582 .ARM.Collect$$libshutdown$$00000010 c_w.l(libshutdown2.o) - 0x08000228 0x08000228 0x00000000 Code RO 3156 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o) - 0x08000228 0x08000228 0x00000000 Code RO 3339 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o) - 0x08000228 0x08000228 0x00000006 Code RO 3351 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o) - 0x0800022e 0x0800022e 0x00000000 Code RO 3341 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o) - 0x0800022e 0x0800022e 0x00000004 Code RO 3342 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o) - 0x08000232 0x08000232 0x00000000 Code RO 3344 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o) - 0x08000232 0x08000232 0x00000008 Code RO 3345 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o) - 0x0800023a 0x0800023a 0x00000002 Code RO 3444 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o) - 0x0800023c 0x0800023c 0x00000000 Code RO 3509 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o) - 0x0800023c 0x0800023c 0x00000004 Code RO 3510 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) - 0x08000240 0x08000240 0x00000006 Code RO 3511 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) - 0x08000246 0x08000246 0x00000002 PAD - 0x08000248 0x08000248 0x00000040 Code RO 4 .text startup_stm32f407xx.o - 0x08000288 0x08000288 0x000000f0 Code RO 3072 .text c_w.l(lludivv7m.o) - 0x08000378 0x08000378 0x0000008a Code RO 3084 .text c_w.l(rt_memcpy_v6.o) - 0x08000402 0x08000402 0x00000010 Code RO 3088 .text c_w.l(aeabi_memset4.o) - 0x08000412 0x08000412 0x0000004e Code RO 3092 .text c_w.l(rt_memclr_w.o) - 0x08000460 0x08000460 0x00000006 Code RO 3096 .text c_w.l(heapauxi.o) - 0x08000466 0x08000466 0x00000016 Code RO 3161 .text c_w.l(_rserrno.o) - 0x0800047c 0x0800047c 0x00000064 Code RO 3256 .text c_w.l(rt_memcpy_w.o) - 0x080004e0 0x080004e0 0x00000008 Code RO 3358 .text c_w.l(rt_errno_addr_intlibspace.o) - 0x080004e8 0x080004e8 0x00000008 Code RO 3386 .text c_w.l(libspace.o) - 0x080004f0 0x080004f0 0x0000004a Code RO 3389 .text c_w.l(sys_stackheap_outer.o) - 0x0800053a 0x0800053a 0x00000012 Code RO 3430 .text c_w.l(exit.o) - 0x0800054c 0x0800054c 0x0000000c Code RO 3504 .text c_w.l(sys_exit.o) - 0x08000558 0x08000558 0x00000002 Code RO 3529 .text c_w.l(use_no_semi.o) - 0x0800055a 0x0800055a 0x00000000 Code RO 3531 .text c_w.l(indicate_semi.o) - 0x0800055a 0x0800055a 0x00000002 PAD - 0x0800055c 0x0800055c 0x0000015c Code RO 2480 .text.AHRS_GetEulr ahrs.o - 0x080006b8 0x080006b8 0x00000284 Code RO 2474 .text.AHRS_Init ahrs.o - 0x0800093c 0x0800093c 0x00000012 Code RO 2484 .text.AHRS_ResetEulr ahrs.o - 0x0800094e 0x0800094e 0x00000002 PAD - 0x08000950 0x08000950 0x00000c1a Code RO 2476 .text.AHRS_Update ahrs.o - 0x0800156a 0x0800156a 0x00000002 PAD - 0x0800156c 0x0800156c 0x000005c8 Code RO 2478 .text.AHRS_UpdateIMU ahrs.o - 0x08001b34 0x08001b34 0x0000006a Code RO 2677 .text.AbsClip user_math.o - 0x08001b9e 0x08001b9e 0x00000002 PAD - 0x08001ba0 0x08001ba0 0x00000014 Code RO 2761 .text.BMI088_AcclIntCallback bmi088.o - 0x08001bb4 0x08001bb4 0x0000001e Code RO 2769 .text.BMI088_AcclStartDmaRecv bmi088.o - 0x08001bd2 0x08001bd2 0x00000002 PAD - 0x08001bd4 0x08001bd4 0x00000010 Code RO 2773 .text.BMI088_AcclWaitDmaCplt bmi088.o - 0x08001be4 0x08001be4 0x00000010 Code RO 2783 .text.BMI088_GetUpdateFreq bmi088.o - 0x08001bf4 0x08001bf4 0x00000014 Code RO 2763 .text.BMI088_GyroIntCallback bmi088.o - 0x08001c08 0x08001c08 0x0000001a Code RO 2775 .text.BMI088_GyroStartDmaRecv bmi088.o - 0x08001c22 0x08001c22 0x00000002 PAD - 0x08001c24 0x08001c24 0x00000010 Code RO 2777 .text.BMI088_GyroWaitDmaCplt bmi088.o - 0x08001c34 0x08001c34 0x00000188 Code RO 2753 .text.BMI088_Init bmi088.o - 0x08001dbc 0x08001dbc 0x000000f4 Code RO 2779 .text.BMI088_ParseAccl bmi088.o - 0x08001eb0 0x08001eb0 0x00000118 Code RO 2781 .text.BMI088_ParseGyro bmi088.o - 0x08001fc8 0x08001fc8 0x00000054 Code RO 2759 .text.BMI088_RxCpltCallback bmi088.o - 0x0800201c 0x0800201c 0x00000010 Code RO 2767 .text.BMI088_WaitNew bmi088.o - 0x0800202c 0x0800202c 0x00000076 Code RO 2771 .text.BMI_Read bmi088.o - 0x080020a2 0x080020a2 0x00000002 PAD - 0x080020a4 0x080020a4 0x000000b2 Code RO 2757 .text.BMI_ReadSingle bmi088.o - 0x08002156 0x08002156 0x00000002 PAD - 0x08002158 0x08002158 0x00000094 Code RO 2755 .text.BMI_WriteSingle bmi088.o - 0x080021ec 0x080021ec 0x00000124 Code RO 2242 .text.BSP_CAN_CreateIdQueue can_1.o - 0x08002310 0x08002310 0x0000000e Code RO 2218 .text.BSP_CAN_DefaultIdParser can_1.o - 0x0800231e 0x0800231e 0x00000002 PAD - 0x08002320 0x08002320 0x00000052 Code RO 2246 .text.BSP_CAN_FindQueue can_1.o - 0x08002372 0x08002372 0x00000002 PAD - 0x08002374 0x08002374 0x0000003a Code RO 2256 .text.BSP_CAN_GetFrameType can_1.o - 0x080023ae 0x080023ae 0x00000002 PAD - 0x080023b0 0x080023b0 0x0000004e Code RO 2228 .text.BSP_CAN_GetHandle can_1.o - 0x080023fe 0x080023fe 0x00000002 PAD - 0x08002400 0x08002400 0x0000009e Code RO 2244 .text.BSP_CAN_GetMessage can_1.o - 0x0800249e 0x0800249e 0x00000002 PAD - 0x080024a0 0x080024a0 0x00000174 Code RO 2214 .text.BSP_CAN_Init can_1.o - 0x08002614 0x08002614 0x00000042 Code RO 2254 .text.BSP_CAN_ParseId can_1.o - 0x08002656 0x08002656 0x00000002 PAD - 0x08002658 0x08002658 0x00000082 Code RO 2220 .text.BSP_CAN_RegisterCallback can_1.o - 0x080026da 0x080026da 0x00000002 PAD - 0x080026dc 0x080026dc 0x00000042 Code RO 2240 .text.BSP_CAN_RegisterId can_1.o - 0x0800271e 0x0800271e 0x00000002 PAD - 0x08002720 0x08002720 0x000000e4 Code RO 2222 .text.BSP_CAN_RxFifo0Callback can_1.o - 0x08002804 0x08002804 0x000000e4 Code RO 2226 .text.BSP_CAN_RxFifo1Callback can_1.o - 0x080028e8 0x080028e8 0x00000176 Code RO 2230 .text.BSP_CAN_Transmit can_1.o - 0x08002a5e 0x08002a5e 0x00000002 PAD - 0x08002a60 0x08002a60 0x0000003e Code RO 2234 .text.BSP_CAN_TransmitStdDataFrame can_1.o - 0x08002a9e 0x08002a9e 0x00000002 PAD - 0x08002aa0 0x08002aa0 0x00000078 Code RO 2224 .text.BSP_CAN_TxCompleteCallback can_1.o - 0x08002b18 0x08002b18 0x00000042 Code RO 2216 .text.BSP_CAN_TxQueueInit can_1.o - 0x08002b5a 0x08002b5a 0x00000002 PAD - 0x08002b5c 0x08002b5c 0x00000056 Code RO 2258 .text.BSP_CAN_TxQueueIsEmpty can_1.o - 0x08002bb2 0x08002bb2 0x00000002 PAD - 0x08002bb4 0x08002bb4 0x000000ac Code RO 2260 .text.BSP_CAN_TxQueuePop can_1.o - 0x08002c60 0x08002c60 0x000000ac Code RO 2232 .text.BSP_CAN_TxQueuePush can_1.o - 0x08002d0c 0x08002d0c 0x00000010 Code RO 2344 .text.BSP_Free mm.o - 0x08002d1c 0x08002d1c 0x00000058 Code RO 2281 .text.BSP_GPIO_DisableIRQ gpio_1.o - 0x08002d74 0x08002d74 0x00000058 Code RO 2279 .text.BSP_GPIO_EnableIRQ gpio_1.o - 0x08002dcc 0x08002dcc 0x0000004a Code RO 2287 .text.BSP_GPIO_ReadPin gpio_1.o - 0x08002e16 0x08002e16 0x00000002 PAD - 0x08002e18 0x08002e18 0x00000090 Code RO 2277 .text.BSP_GPIO_RegisterCallback gpio_1.o - 0x08002ea8 0x08002ea8 0x00000050 Code RO 2283 .text.BSP_GPIO_WritePin gpio_1.o - 0x08002ef8 0x08002ef8 0x00000010 Code RO 2342 .text.BSP_Malloc mm.o - 0x08002f08 0x08002f08 0x0000013e Code RO 2355 .text.BSP_PWM_SetComp pwm.o - 0x08003046 0x08003046 0x00000002 PAD - 0x08003048 0x08003048 0x00000044 Code RO 2353 .text.BSP_PWM_Start pwm.o - 0x0800308c 0x0800308c 0x00000026 Code RO 2397 .text.BSP_SPI_GetHandle spi_1.o - 0x080030b2 0x080030b2 0x00000002 PAD - 0x080030b4 0x080030b4 0x00000080 Code RO 2403 .text.BSP_SPI_Receive spi_1.o - 0x08003134 0x08003134 0x00000044 Code RO 2399 .text.BSP_SPI_RegisterCallback spi_1.o - 0x08003178 0x08003178 0x00000080 Code RO 2401 .text.BSP_SPI_Transmit spi_1.o - 0x080031f8 0x080031f8 0x0000008e Code RO 2427 .text.BSP_TIME_Delay_ms time.o - 0x08003286 0x08003286 0x00000002 PAD - 0x08003288 0x08003288 0x000000aa Code RO 2425 .text.BSP_TIME_Get_us time.o - 0x08003332 0x08003332 0x00000002 PAD - 0x08003334 0x08003334 0x0000006c Code RO 2456 .text.BSP_UART_IRQHandler uart.o - 0x080033a0 0x080033a0 0x00000004 Code RO 158 .text.BusFault_Handler stm32f4xx_it.o - 0x080033a4 0x080033a4 0x00000010 Code RO 176 .text.CAN1_RX0_IRQHandler stm32f4xx_it.o - 0x080033b4 0x080033b4 0x00000010 Code RO 178 .text.CAN1_RX1_IRQHandler stm32f4xx_it.o - 0x080033c4 0x080033c4 0x00000010 Code RO 174 .text.CAN1_TX_IRQHandler stm32f4xx_it.o - 0x080033d4 0x080033d4 0x00000010 Code RO 196 .text.CAN2_RX0_IRQHandler stm32f4xx_it.o - 0x080033e4 0x080033e4 0x00000010 Code RO 198 .text.CAN2_RX1_IRQHandler stm32f4xx_it.o - 0x080033f4 0x080033f4 0x00000010 Code RO 194 .text.CAN2_TX_IRQHandler stm32f4xx_it.o - 0x08003404 0x08003404 0x00000056 Code RO 2188 .text.CAN_Get can_1.o - 0x0800345a 0x0800345a 0x00000002 PAD - 0x0800345c 0x0800345c 0x00000084 Code RO 2689 .text.CircleAdd user_math.o - 0x080034e0 0x080034e0 0x0000009a Code RO 2687 .text.CircleError user_math.o - 0x0800357a 0x0800357a 0x00000002 PAD - 0x0800357c 0x0800357c 0x0000004c Code RO 2681 .text.Clip user_math.o - 0x080035c8 0x080035c8 0x0000000a Code RO 3062 .text.Config_GetRobotParam config.o - 0x080035d2 0x080035d2 0x00000002 PAD - 0x080035d4 0x080035d4 0x00000014 Code RO 172 .text.DMA1_Stream1_IRQHandler stm32f4xx_it.o - 0x080035e8 0x080035e8 0x00000056 Code RO 2921 .text.DMA1_Stream1_IRQHandler1 remote_control.o - 0x0800363e 0x0800363e 0x00000002 PAD - 0x08003640 0x08003640 0x00000010 Code RO 190 .text.DMA2_Stream2_IRQHandler stm32f4xx_it.o - 0x08003650 0x08003650 0x00000010 Code RO 192 .text.DMA2_Stream3_IRQHandler stm32f4xx_it.o - 0x08003660 0x08003660 0x00000056 Code RO 472 .text.DMA_CalcBaseAndBitshift stm32f4xx_hal_dma.o - 0x080036b6 0x080036b6 0x00000002 PAD - 0x080036b8 0x080036b8 0x000000f0 Code RO 470 .text.DMA_CheckFifoParam stm32f4xx_hal_dma.o - 0x080037a8 0x080037a8 0x00000050 Code RO 478 .text.DMA_SetConfig stm32f4xx_hal_dma.o - 0x080037f8 0x080037f8 0x00000002 Code RO 162 .text.DebugMon_Handler stm32f4xx_it.o - 0x080037fa 0x080037fa 0x00000002 PAD - 0x080037fc 0x080037fc 0x0000000a Code RO 166 .text.EXTI0_IRQHandler stm32f4xx_it.o - 0x08003806 0x08003806 0x00000002 PAD - 0x08003808 0x08003808 0x0000000a Code RO 168 .text.EXTI3_IRQHandler stm32f4xx_it.o - 0x08003812 0x08003812 0x00000002 PAD - 0x08003814 0x08003814 0x0000000a Code RO 170 .text.EXTI4_IRQHandler stm32f4xx_it.o - 0x0800381e 0x0800381e 0x00000002 PAD - 0x08003820 0x08003820 0x0000000a Code RO 180 .text.EXTI9_5_IRQHandler stm32f4xx_it.o - 0x0800382a 0x0800382a 0x00000002 PAD - 0x0800382c 0x0800382c 0x00000006 Code RO 15 .text.Error_Handler main.o + 0x080001c4 0x080001c4 0x0000005a Code RO 3585 !!dczerorl2 c_w.l(__dczerorl2.o) + 0x0800021e 0x0800021e 0x00000002 PAD + 0x08000220 0x08000220 0x0000001c Code RO 3589 !!handler_zi c_w.l(__scatter_zi.o) + 0x0800023c 0x0800023c 0x00000002 Code RO 3441 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o) + 0x0800023e 0x0800023e 0x00000004 Code RO 3459 .ARM.Collect$$libinit$$00000001 c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3462 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3465 .ARM.Collect$$libinit$$0000000A c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3467 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3469 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3472 .ARM.Collect$$libinit$$00000011 c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3474 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3476 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3478 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3480 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3482 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3484 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3486 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3488 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3490 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3492 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3496 .ARM.Collect$$libinit$$0000002C c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3498 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3500 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000000 Code RO 3502 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o) + 0x08000242 0x08000242 0x00000002 Code RO 3503 .ARM.Collect$$libinit$$00000033 c_w.l(libinit2.o) + 0x08000244 0x08000244 0x00000002 Code RO 3540 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o) + 0x08000246 0x08000246 0x00000000 Code RO 3568 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o) + 0x08000246 0x08000246 0x00000000 Code RO 3570 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o) + 0x08000246 0x08000246 0x00000000 Code RO 3573 .ARM.Collect$$libshutdown$$00000007 c_w.l(libshutdown2.o) + 0x08000246 0x08000246 0x00000000 Code RO 3576 .ARM.Collect$$libshutdown$$0000000A c_w.l(libshutdown2.o) + 0x08000246 0x08000246 0x00000000 Code RO 3578 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o) + 0x08000246 0x08000246 0x00000000 Code RO 3581 .ARM.Collect$$libshutdown$$0000000F c_w.l(libshutdown2.o) + 0x08000246 0x08000246 0x00000002 Code RO 3582 .ARM.Collect$$libshutdown$$00000010 c_w.l(libshutdown2.o) + 0x08000248 0x08000248 0x00000000 Code RO 3156 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o) + 0x08000248 0x08000248 0x00000000 Code RO 3339 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o) + 0x08000248 0x08000248 0x00000006 Code RO 3351 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o) + 0x0800024e 0x0800024e 0x00000000 Code RO 3341 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o) + 0x0800024e 0x0800024e 0x00000004 Code RO 3342 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o) + 0x08000252 0x08000252 0x00000000 Code RO 3344 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o) + 0x08000252 0x08000252 0x00000008 Code RO 3345 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o) + 0x0800025a 0x0800025a 0x00000002 Code RO 3444 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o) + 0x0800025c 0x0800025c 0x00000000 Code RO 3509 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o) + 0x0800025c 0x0800025c 0x00000004 Code RO 3510 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) + 0x08000260 0x08000260 0x00000006 Code RO 3511 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) + 0x08000266 0x08000266 0x00000002 PAD + 0x08000268 0x08000268 0x00000040 Code RO 4 .text startup_stm32f407xx.o + 0x080002a8 0x080002a8 0x000000f0 Code RO 3072 .text c_w.l(lludivv7m.o) + 0x08000398 0x08000398 0x0000008a Code RO 3084 .text c_w.l(rt_memcpy_v6.o) + 0x08000422 0x08000422 0x00000010 Code RO 3088 .text c_w.l(aeabi_memset4.o) + 0x08000432 0x08000432 0x0000004e Code RO 3092 .text c_w.l(rt_memclr_w.o) + 0x08000480 0x08000480 0x00000006 Code RO 3096 .text c_w.l(heapauxi.o) + 0x08000486 0x08000486 0x00000016 Code RO 3161 .text c_w.l(_rserrno.o) + 0x0800049c 0x0800049c 0x00000064 Code RO 3256 .text c_w.l(rt_memcpy_w.o) + 0x08000500 0x08000500 0x00000008 Code RO 3358 .text c_w.l(rt_errno_addr_intlibspace.o) + 0x08000508 0x08000508 0x00000008 Code RO 3386 .text c_w.l(libspace.o) + 0x08000510 0x08000510 0x0000004a Code RO 3389 .text c_w.l(sys_stackheap_outer.o) + 0x0800055a 0x0800055a 0x00000012 Code RO 3430 .text c_w.l(exit.o) + 0x0800056c 0x0800056c 0x0000000c Code RO 3504 .text c_w.l(sys_exit.o) + 0x08000578 0x08000578 0x00000002 Code RO 3529 .text c_w.l(use_no_semi.o) + 0x0800057a 0x0800057a 0x00000000 Code RO 3531 .text c_w.l(indicate_semi.o) + 0x0800057a 0x0800057a 0x00000002 PAD + 0x0800057c 0x0800057c 0x0000015c Code RO 2480 .text.AHRS_GetEulr ahrs.o + 0x080006d8 0x080006d8 0x00000284 Code RO 2474 .text.AHRS_Init ahrs.o + 0x0800095c 0x0800095c 0x00000012 Code RO 2484 .text.AHRS_ResetEulr ahrs.o + 0x0800096e 0x0800096e 0x00000002 PAD + 0x08000970 0x08000970 0x00000c1a Code RO 2476 .text.AHRS_Update ahrs.o + 0x0800158a 0x0800158a 0x00000002 PAD + 0x0800158c 0x0800158c 0x000005c8 Code RO 2478 .text.AHRS_UpdateIMU ahrs.o + 0x08001b54 0x08001b54 0x0000006a Code RO 2677 .text.AbsClip user_math.o + 0x08001bbe 0x08001bbe 0x00000002 PAD + 0x08001bc0 0x08001bc0 0x00000014 Code RO 2761 .text.BMI088_AcclIntCallback bmi088.o + 0x08001bd4 0x08001bd4 0x0000001e Code RO 2769 .text.BMI088_AcclStartDmaRecv bmi088.o + 0x08001bf2 0x08001bf2 0x00000002 PAD + 0x08001bf4 0x08001bf4 0x00000010 Code RO 2773 .text.BMI088_AcclWaitDmaCplt bmi088.o + 0x08001c04 0x08001c04 0x00000010 Code RO 2783 .text.BMI088_GetUpdateFreq bmi088.o + 0x08001c14 0x08001c14 0x00000014 Code RO 2763 .text.BMI088_GyroIntCallback bmi088.o + 0x08001c28 0x08001c28 0x0000001a Code RO 2775 .text.BMI088_GyroStartDmaRecv bmi088.o + 0x08001c42 0x08001c42 0x00000002 PAD + 0x08001c44 0x08001c44 0x00000010 Code RO 2777 .text.BMI088_GyroWaitDmaCplt bmi088.o + 0x08001c54 0x08001c54 0x00000188 Code RO 2753 .text.BMI088_Init bmi088.o + 0x08001ddc 0x08001ddc 0x000000f4 Code RO 2779 .text.BMI088_ParseAccl bmi088.o + 0x08001ed0 0x08001ed0 0x00000118 Code RO 2781 .text.BMI088_ParseGyro bmi088.o + 0x08001fe8 0x08001fe8 0x00000054 Code RO 2759 .text.BMI088_RxCpltCallback bmi088.o + 0x0800203c 0x0800203c 0x00000010 Code RO 2767 .text.BMI088_WaitNew bmi088.o + 0x0800204c 0x0800204c 0x00000076 Code RO 2771 .text.BMI_Read bmi088.o + 0x080020c2 0x080020c2 0x00000002 PAD + 0x080020c4 0x080020c4 0x000000b2 Code RO 2757 .text.BMI_ReadSingle bmi088.o + 0x08002176 0x08002176 0x00000002 PAD + 0x08002178 0x08002178 0x00000094 Code RO 2755 .text.BMI_WriteSingle bmi088.o + 0x0800220c 0x0800220c 0x00000124 Code RO 2242 .text.BSP_CAN_CreateIdQueue can_1.o + 0x08002330 0x08002330 0x0000000e Code RO 2218 .text.BSP_CAN_DefaultIdParser can_1.o + 0x0800233e 0x0800233e 0x00000002 PAD + 0x08002340 0x08002340 0x00000052 Code RO 2246 .text.BSP_CAN_FindQueue can_1.o + 0x08002392 0x08002392 0x00000002 PAD + 0x08002394 0x08002394 0x0000003a Code RO 2256 .text.BSP_CAN_GetFrameType can_1.o + 0x080023ce 0x080023ce 0x00000002 PAD + 0x080023d0 0x080023d0 0x0000004e Code RO 2228 .text.BSP_CAN_GetHandle can_1.o + 0x0800241e 0x0800241e 0x00000002 PAD + 0x08002420 0x08002420 0x0000009e Code RO 2244 .text.BSP_CAN_GetMessage can_1.o + 0x080024be 0x080024be 0x00000002 PAD + 0x080024c0 0x080024c0 0x00000174 Code RO 2214 .text.BSP_CAN_Init can_1.o + 0x08002634 0x08002634 0x00000042 Code RO 2254 .text.BSP_CAN_ParseId can_1.o + 0x08002676 0x08002676 0x00000002 PAD + 0x08002678 0x08002678 0x00000082 Code RO 2220 .text.BSP_CAN_RegisterCallback can_1.o + 0x080026fa 0x080026fa 0x00000002 PAD + 0x080026fc 0x080026fc 0x00000042 Code RO 2240 .text.BSP_CAN_RegisterId can_1.o + 0x0800273e 0x0800273e 0x00000002 PAD + 0x08002740 0x08002740 0x000000e4 Code RO 2222 .text.BSP_CAN_RxFifo0Callback can_1.o + 0x08002824 0x08002824 0x000000e4 Code RO 2226 .text.BSP_CAN_RxFifo1Callback can_1.o + 0x08002908 0x08002908 0x00000176 Code RO 2230 .text.BSP_CAN_Transmit can_1.o + 0x08002a7e 0x08002a7e 0x00000002 PAD + 0x08002a80 0x08002a80 0x0000003e Code RO 2234 .text.BSP_CAN_TransmitStdDataFrame can_1.o + 0x08002abe 0x08002abe 0x00000002 PAD + 0x08002ac0 0x08002ac0 0x00000078 Code RO 2224 .text.BSP_CAN_TxCompleteCallback can_1.o + 0x08002b38 0x08002b38 0x00000042 Code RO 2216 .text.BSP_CAN_TxQueueInit can_1.o + 0x08002b7a 0x08002b7a 0x00000002 PAD + 0x08002b7c 0x08002b7c 0x00000056 Code RO 2258 .text.BSP_CAN_TxQueueIsEmpty can_1.o + 0x08002bd2 0x08002bd2 0x00000002 PAD + 0x08002bd4 0x08002bd4 0x000000ac Code RO 2260 .text.BSP_CAN_TxQueuePop can_1.o + 0x08002c80 0x08002c80 0x000000ac Code RO 2232 .text.BSP_CAN_TxQueuePush can_1.o + 0x08002d2c 0x08002d2c 0x00000010 Code RO 2344 .text.BSP_Free mm.o + 0x08002d3c 0x08002d3c 0x00000058 Code RO 2281 .text.BSP_GPIO_DisableIRQ gpio_1.o + 0x08002d94 0x08002d94 0x00000058 Code RO 2279 .text.BSP_GPIO_EnableIRQ gpio_1.o + 0x08002dec 0x08002dec 0x0000004a Code RO 2287 .text.BSP_GPIO_ReadPin gpio_1.o + 0x08002e36 0x08002e36 0x00000002 PAD + 0x08002e38 0x08002e38 0x00000090 Code RO 2277 .text.BSP_GPIO_RegisterCallback gpio_1.o + 0x08002ec8 0x08002ec8 0x00000050 Code RO 2283 .text.BSP_GPIO_WritePin gpio_1.o + 0x08002f18 0x08002f18 0x00000010 Code RO 2342 .text.BSP_Malloc mm.o + 0x08002f28 0x08002f28 0x0000013e Code RO 2355 .text.BSP_PWM_SetComp pwm.o + 0x08003066 0x08003066 0x00000002 PAD + 0x08003068 0x08003068 0x00000044 Code RO 2353 .text.BSP_PWM_Start pwm.o + 0x080030ac 0x080030ac 0x00000026 Code RO 2397 .text.BSP_SPI_GetHandle spi_1.o + 0x080030d2 0x080030d2 0x00000002 PAD + 0x080030d4 0x080030d4 0x00000080 Code RO 2403 .text.BSP_SPI_Receive spi_1.o + 0x08003154 0x08003154 0x00000044 Code RO 2399 .text.BSP_SPI_RegisterCallback spi_1.o + 0x08003198 0x08003198 0x00000080 Code RO 2401 .text.BSP_SPI_Transmit spi_1.o + 0x08003218 0x08003218 0x0000008e Code RO 2427 .text.BSP_TIME_Delay_ms time.o + 0x080032a6 0x080032a6 0x00000002 PAD + 0x080032a8 0x080032a8 0x000000aa Code RO 2425 .text.BSP_TIME_Get_us time.o + 0x08003352 0x08003352 0x00000002 PAD + 0x08003354 0x08003354 0x0000006c Code RO 2456 .text.BSP_UART_IRQHandler uart.o + 0x080033c0 0x080033c0 0x00000004 Code RO 158 .text.BusFault_Handler stm32f4xx_it.o + 0x080033c4 0x080033c4 0x00000010 Code RO 176 .text.CAN1_RX0_IRQHandler stm32f4xx_it.o + 0x080033d4 0x080033d4 0x00000010 Code RO 178 .text.CAN1_RX1_IRQHandler stm32f4xx_it.o + 0x080033e4 0x080033e4 0x00000010 Code RO 174 .text.CAN1_TX_IRQHandler stm32f4xx_it.o + 0x080033f4 0x080033f4 0x00000010 Code RO 196 .text.CAN2_RX0_IRQHandler stm32f4xx_it.o + 0x08003404 0x08003404 0x00000010 Code RO 198 .text.CAN2_RX1_IRQHandler stm32f4xx_it.o + 0x08003414 0x08003414 0x00000010 Code RO 194 .text.CAN2_TX_IRQHandler stm32f4xx_it.o + 0x08003424 0x08003424 0x00000056 Code RO 2188 .text.CAN_Get can_1.o + 0x0800347a 0x0800347a 0x00000002 PAD + 0x0800347c 0x0800347c 0x00000084 Code RO 2689 .text.CircleAdd user_math.o + 0x08003500 0x08003500 0x0000009a Code RO 2687 .text.CircleError user_math.o + 0x0800359a 0x0800359a 0x00000002 PAD + 0x0800359c 0x0800359c 0x0000004c Code RO 2681 .text.Clip user_math.o + 0x080035e8 0x080035e8 0x0000000a Code RO 3062 .text.Config_GetRobotParam config.o + 0x080035f2 0x080035f2 0x00000002 PAD + 0x080035f4 0x080035f4 0x00000014 Code RO 172 .text.DMA1_Stream1_IRQHandler stm32f4xx_it.o + 0x08003608 0x08003608 0x00000056 Code RO 2921 .text.DMA1_Stream1_IRQHandler1 remote_control.o + 0x0800365e 0x0800365e 0x00000002 PAD + 0x08003660 0x08003660 0x00000010 Code RO 190 .text.DMA2_Stream2_IRQHandler stm32f4xx_it.o + 0x08003670 0x08003670 0x00000010 Code RO 192 .text.DMA2_Stream3_IRQHandler stm32f4xx_it.o + 0x08003680 0x08003680 0x00000056 Code RO 472 .text.DMA_CalcBaseAndBitshift stm32f4xx_hal_dma.o + 0x080036d6 0x080036d6 0x00000002 PAD + 0x080036d8 0x080036d8 0x000000f0 Code RO 470 .text.DMA_CheckFifoParam stm32f4xx_hal_dma.o + 0x080037c8 0x080037c8 0x00000050 Code RO 478 .text.DMA_SetConfig stm32f4xx_hal_dma.o + 0x08003818 0x08003818 0x00000002 Code RO 162 .text.DebugMon_Handler stm32f4xx_it.o + 0x0800381a 0x0800381a 0x00000002 PAD + 0x0800381c 0x0800381c 0x0000000a Code RO 166 .text.EXTI0_IRQHandler stm32f4xx_it.o + 0x08003826 0x08003826 0x00000002 PAD + 0x08003828 0x08003828 0x0000000a Code RO 168 .text.EXTI3_IRQHandler stm32f4xx_it.o 0x08003832 0x08003832 0x00000002 PAD - 0x08003834 0x08003834 0x00000518 Code RO 3049 .text.Gimbal_Control gimbal.o - 0x08003d4c 0x08003d4c 0x000001d8 Code RO 3043 .text.Gimbal_Init gimbal.o - 0x08003f24 0x08003f24 0x00000112 Code RO 3053 .text.Gimbal_Output gimbal.o - 0x08004036 0x08004036 0x00000002 PAD - 0x08004038 0x08004038 0x000000b4 Code RO 3051 .text.Gimbal_SetMode gimbal.o - 0x080040ec 0x080040ec 0x00000168 Code RO 3045 .text.Gimbal_UpdateFeedback gimbal.o - 0x08004254 0x08004254 0x0000004a Code RO 3047 .text.Gimbal_UpdateIMU gimbal.o - 0x0800429e 0x0800429e 0x00000002 PAD - 0x080042a0 0x080042a0 0x00000052 Code RO 249 .text.HAL_CAN_ActivateNotification stm32f4xx_hal_can.o - 0x080042f2 0x080042f2 0x00000002 PAD - 0x080042f4 0x080042f4 0x00000156 Code RO 235 .text.HAL_CAN_AddTxMessage stm32f4xx_hal_can.o - 0x0800444a 0x0800444a 0x00000002 PAD - 0x0800444c 0x0800444c 0x0000019e Code RO 225 .text.HAL_CAN_ConfigFilter stm32f4xx_hal_can.o - 0x080045ea 0x080045ea 0x00000002 PAD - 0x080045ec 0x080045ec 0x00000050 Code RO 2212 .text.HAL_CAN_ErrorCallback can_1.o - 0x0800463c 0x0800463c 0x00000052 Code RO 247 .text.HAL_CAN_GetRxFifoFillLevel stm32f4xx_hal_can.o - 0x0800468e 0x0800468e 0x00000002 PAD - 0x08004690 0x08004690 0x00000212 Code RO 245 .text.HAL_CAN_GetRxMessage stm32f4xx_hal_can.o - 0x080048a2 0x080048a2 0x00000002 PAD - 0x080048a4 0x080048a4 0x00000070 Code RO 239 .text.HAL_CAN_GetTxMailboxesFreeLevel stm32f4xx_hal_can.o - 0x08004914 0x08004914 0x000003f2 Code RO 253 .text.HAL_CAN_IRQHandler stm32f4xx_hal_can.o - 0x08004d06 0x08004d06 0x00000002 PAD - 0x08004d08 0x08004d08 0x000001de Code RO 215 .text.HAL_CAN_Init stm32f4xx_hal_can.o - 0x08004ee6 0x08004ee6 0x00000002 PAD - 0x08004ee8 0x08004ee8 0x000001d0 Code RO 57 .text.HAL_CAN_MspInit can.o - 0x080050b8 0x080050b8 0x00000050 Code RO 2202 .text.HAL_CAN_RxFifo0FullCallback can_1.o - 0x08005108 0x08005108 0x00000050 Code RO 2200 .text.HAL_CAN_RxFifo0MsgPendingCallback can_1.o - 0x08005158 0x08005158 0x00000050 Code RO 2206 .text.HAL_CAN_RxFifo1FullCallback can_1.o - 0x080051a8 0x080051a8 0x00000050 Code RO 2204 .text.HAL_CAN_RxFifo1MsgPendingCallback can_1.o - 0x080051f8 0x080051f8 0x00000050 Code RO 2208 .text.HAL_CAN_SleepCallback can_1.o - 0x08005248 0x08005248 0x0000008a Code RO 227 .text.HAL_CAN_Start stm32f4xx_hal_can.o - 0x080052d2 0x080052d2 0x00000002 PAD - 0x080052d4 0x080052d4 0x00000050 Code RO 2194 .text.HAL_CAN_TxMailbox0AbortCallback can_1.o - 0x08005324 0x08005324 0x0000004c Code RO 2186 .text.HAL_CAN_TxMailbox0CompleteCallback can_1.o - 0x08005370 0x08005370 0x00000050 Code RO 2196 .text.HAL_CAN_TxMailbox1AbortCallback can_1.o - 0x080053c0 0x080053c0 0x00000050 Code RO 2190 .text.HAL_CAN_TxMailbox1CompleteCallback can_1.o - 0x08005410 0x08005410 0x00000050 Code RO 2198 .text.HAL_CAN_TxMailbox2AbortCallback can_1.o - 0x08005460 0x08005460 0x00000050 Code RO 2192 .text.HAL_CAN_TxMailbox2CompleteCallback can_1.o - 0x080054b0 0x080054b0 0x00000050 Code RO 2210 .text.HAL_CAN_WakeUpFromRxMsgCallback can_1.o - 0x08005500 0x08005500 0x000000ec Code RO 482 .text.HAL_DMA_Abort stm32f4xx_hal_dma.o - 0x080055ec 0x080055ec 0x00000044 Code RO 484 .text.HAL_DMA_Abort_IT stm32f4xx_hal_dma.o - 0x08005630 0x08005630 0x0000000e Code RO 494 .text.HAL_DMA_GetState stm32f4xx_hal_dma.o - 0x0800563e 0x0800563e 0x00000002 PAD - 0x08005640 0x08005640 0x0000031e Code RO 488 .text.HAL_DMA_IRQHandler stm32f4xx_hal_dma.o - 0x0800595e 0x0800595e 0x00000002 PAD - 0x08005960 0x08005960 0x0000016e Code RO 468 .text.HAL_DMA_Init stm32f4xx_hal_dma.o - 0x08005ace 0x08005ace 0x00000002 PAD - 0x08005ad0 0x08005ad0 0x000000c2 Code RO 480 .text.HAL_DMA_Start_IT stm32f4xx_hal_dma.o - 0x08005b92 0x08005b92 0x00000002 PAD - 0x08005b94 0x08005b94 0x00000042 Code RO 663 .text.HAL_Delay stm32f4xx_hal.o - 0x08005bd6 0x08005bd6 0x00000002 PAD - 0x08005bd8 0x08005bd8 0x00000066 Code RO 2275 .text.HAL_GPIO_EXTI_Callback gpio_1.o - 0x08005c3e 0x08005c3e 0x00000002 PAD - 0x08005c40 0x08005c40 0x00000038 Code RO 442 .text.HAL_GPIO_EXTI_IRQHandler stm32f4xx_hal_gpio.o - 0x08005c78 0x08005c78 0x000003b6 Code RO 430 .text.HAL_GPIO_Init stm32f4xx_hal_gpio.o - 0x0800602e 0x0800602e 0x00000002 PAD - 0x08006030 0x08006030 0x0000002e Code RO 434 .text.HAL_GPIO_ReadPin stm32f4xx_hal_gpio.o - 0x0800605e 0x0800605e 0x00000002 PAD - 0x08006060 0x08006060 0x0000002e Code RO 436 .text.HAL_GPIO_WritePin stm32f4xx_hal_gpio.o - 0x0800608e 0x0800608e 0x00000002 PAD - 0x08006090 0x08006090 0x0000000c Code RO 655 .text.HAL_GetTick stm32f4xx_hal.o - 0x0800609c 0x0800609c 0x00000054 Code RO 2316 .text.HAL_I2C_AbortCpltCallback i2c_1.o - 0x080060f0 0x080060f0 0x00000010 Code RO 870 .text.HAL_I2C_AddrCallback stm32f4xx_hal_i2c.o - 0x08006100 0x08006100 0x0000017a Code RO 858 .text.HAL_I2C_ER_IRQHandler stm32f4xx_hal_i2c.o - 0x0800627a 0x0800627a 0x00000002 PAD - 0x0800627c 0x0800627c 0x000003ca Code RO 826 .text.HAL_I2C_EV_IRQHandler stm32f4xx_hal_i2c.o - 0x08006646 0x08006646 0x00000002 PAD - 0x08006648 0x08006648 0x00000054 Code RO 2314 .text.HAL_I2C_ErrorCallback i2c_1.o - 0x0800669c 0x0800669c 0x000002a4 Code RO 732 .text.HAL_I2C_Init stm32f4xx_hal_i2c.o - 0x08006940 0x08006940 0x00000054 Code RO 2308 .text.HAL_I2C_ListenCpltCallback i2c_1.o - 0x08006994 0x08006994 0x00000054 Code RO 2302 .text.HAL_I2C_MasterRxCpltCallback i2c_1.o - 0x080069e8 0x080069e8 0x00000050 Code RO 2298 .text.HAL_I2C_MasterTxCpltCallback i2c_1.o - 0x08006a38 0x08006a38 0x00000054 Code RO 2312 .text.HAL_I2C_MemRxCpltCallback i2c_1.o - 0x08006a8c 0x08006a8c 0x00000054 Code RO 2310 .text.HAL_I2C_MemTxCpltCallback i2c_1.o - 0x08006ae0 0x08006ae0 0x00000134 Code RO 83 .text.HAL_I2C_MspInit i2c.o - 0x08006c14 0x08006c14 0x00000054 Code RO 2306 .text.HAL_I2C_SlaveRxCpltCallback i2c_1.o - 0x08006c68 0x08006c68 0x00000054 Code RO 2304 .text.HAL_I2C_SlaveTxCpltCallback i2c_1.o - 0x08006cbc 0x08006cbc 0x0000001a Code RO 653 .text.HAL_IncTick stm32f4xx_hal.o - 0x08006cd6 0x08006cd6 0x00000002 PAD - 0x08006cd8 0x08006cd8 0x00000036 Code RO 643 .text.HAL_Init stm32f4xx_hal.o - 0x08006d0e 0x08006d0e 0x00000002 PAD - 0x08006d10 0x08006d10 0x00000070 Code RO 645 .text.HAL_InitTick stm32f4xx_hal.o - 0x08006d80 0x08006d80 0x00000058 Code RO 207 .text.HAL_MspInit stm32f4xx_hal_msp.o - 0x08006dd8 0x08006dd8 0x00000014 Code RO 582 .text.HAL_NVIC_DisableIRQ stm32f4xx_hal_cortex.o - 0x08006dec 0x08006dec 0x00000014 Code RO 578 .text.HAL_NVIC_EnableIRQ stm32f4xx_hal_cortex.o - 0x08006e00 0x08006e00 0x00000032 Code RO 570 .text.HAL_NVIC_SetPriority stm32f4xx_hal_cortex.o - 0x08006e32 0x08006e32 0x00000002 PAD - 0x08006e34 0x08006e34 0x00000010 Code RO 566 .text.HAL_NVIC_SetPriorityGrouping stm32f4xx_hal_cortex.o - 0x08006e44 0x08006e44 0x00000262 Code RO 298 .text.HAL_RCC_ClockConfig stm32f4xx_hal_rcc.o - 0x080070a6 0x080070a6 0x00000002 PAD - 0x080070a8 0x080070a8 0x0000000c Code RO 308 .text.HAL_RCC_GetHCLKFreq stm32f4xx_hal_rcc.o - 0x080070b4 0x080070b4 0x00000022 Code RO 310 .text.HAL_RCC_GetPCLK1Freq stm32f4xx_hal_rcc.o - 0x080070d6 0x080070d6 0x00000002 PAD - 0x080070d8 0x080070d8 0x00000022 Code RO 312 .text.HAL_RCC_GetPCLK2Freq stm32f4xx_hal_rcc.o - 0x080070fa 0x080070fa 0x00000002 PAD - 0x080070fc 0x080070fc 0x000000e6 Code RO 300 .text.HAL_RCC_GetSysClockFreq stm32f4xx_hal_rcc.o - 0x080071e2 0x080071e2 0x00000002 PAD - 0x080071e4 0x080071e4 0x000006be Code RO 296 .text.HAL_RCC_OscConfig stm32f4xx_hal_rcc.o - 0x080078a2 0x080078a2 0x00000002 PAD - 0x080078a4 0x080078a4 0x00000054 Code RO 2393 .text.HAL_SPI_ErrorCallback spi_1.o - 0x080078f8 0x080078f8 0x00000100 Code RO 904 .text.HAL_SPI_Init stm32f4xx_hal_spi.o - 0x080079f8 0x080079f8 0x00000210 Code RO 100 .text.HAL_SPI_MspInit spi.o - 0x08007c08 0x08007c08 0x0000024e Code RO 916 .text.HAL_SPI_Receive stm32f4xx_hal_spi.o - 0x08007e56 0x08007e56 0x00000002 PAD - 0x08007e58 0x08007e58 0x00000198 Code RO 952 .text.HAL_SPI_Receive_DMA stm32f4xx_hal_spi.o - 0x08007ff0 0x08007ff0 0x00000054 Code RO 2383 .text.HAL_SPI_RxCpltCallback spi_1.o - 0x08008044 0x08008044 0x00000054 Code RO 2389 .text.HAL_SPI_RxHalfCpltCallback spi_1.o - 0x08008098 0x08008098 0x000002a2 Code RO 912 .text.HAL_SPI_Transmit stm32f4xx_hal_spi.o - 0x0800833a 0x0800833a 0x00000002 PAD - 0x0800833c 0x0800833c 0x000003a2 Code RO 918 .text.HAL_SPI_TransmitReceive stm32f4xx_hal_spi.o - 0x080086de 0x080086de 0x00000002 PAD - 0x080086e0 0x080086e0 0x00000214 Code RO 954 .text.HAL_SPI_TransmitReceive_DMA stm32f4xx_hal_spi.o - 0x080088f4 0x080088f4 0x0000016c Code RO 944 .text.HAL_SPI_Transmit_DMA stm32f4xx_hal_spi.o - 0x08008a60 0x08008a60 0x00000048 Code RO 2379 .text.HAL_SPI_TxCpltCallback spi_1.o - 0x08008aa8 0x08008aa8 0x00000054 Code RO 2387 .text.HAL_SPI_TxHalfCpltCallback spi_1.o - 0x08008afc 0x08008afc 0x00000054 Code RO 2385 .text.HAL_SPI_TxRxCpltCallback spi_1.o - 0x08008b50 0x08008b50 0x00000054 Code RO 2391 .text.HAL_SPI_TxRxHalfCpltCallback spi_1.o - 0x08008ba4 0x08008ba4 0x00000010 Code RO 590 .text.HAL_SYSTICK_Config stm32f4xx_hal_cortex.o - 0x08008bb4 0x08008bb4 0x00000008 Code RO 1344 .text.HAL_TIMEx_BreakCallback stm32f4xx_hal_tim_ex.o - 0x08008bbc 0x08008bbc 0x00000008 Code RO 1340 .text.HAL_TIMEx_CommutCallback stm32f4xx_hal_tim_ex.o - 0x08008bc4 0x08008bc4 0x00000122 Code RO 1334 .text.HAL_TIMEx_MasterConfigSynchronization stm32f4xx_hal_tim_ex.o - 0x08008ce6 0x08008ce6 0x00000002 PAD - 0x08008ce8 0x08008ce8 0x0000009c Code RO 1021 .text.HAL_TIM_Base_Init stm32f4xx_hal_tim.o - 0x08008d84 0x08008d84 0x0000008a Code RO 121 .text.HAL_TIM_Base_MspInit tim.o - 0x08008e0e 0x08008e0e 0x00000002 PAD - 0x08008e10 0x08008e10 0x00000008 Code RO 1157 .text.HAL_TIM_IC_CaptureCallback stm32f4xx_hal_tim.o - 0x08008e18 0x08008e18 0x0000021a Code RO 1155 .text.HAL_TIM_IRQHandler stm32f4xx_hal_tim.o - 0x08009032 0x08009032 0x00000002 PAD - 0x08009034 0x08009034 0x0000006c Code RO 119 .text.HAL_TIM_MspPostInit tim.o - 0x080090a0 0x080090a0 0x00000008 Code RO 1159 .text.HAL_TIM_OC_DelayElapsedCallback stm32f4xx_hal_tim.o - 0x080090a8 0x080090a8 0x00000142 Code RO 1187 .text.HAL_TIM_PWM_ConfigChannel stm32f4xx_hal_tim.o - 0x080091ea 0x080091ea 0x00000002 PAD - 0x080091ec 0x080091ec 0x0000009c Code RO 1075 .text.HAL_TIM_PWM_Init stm32f4xx_hal_tim.o - 0x08009288 0x08009288 0x00000008 Code RO 1077 .text.HAL_TIM_PWM_MspInit stm32f4xx_hal_tim.o - 0x08009290 0x08009290 0x00000008 Code RO 1161 .text.HAL_TIM_PWM_PulseFinishedCallback stm32f4xx_hal_tim.o - 0x08009298 0x08009298 0x000001ca Code RO 1083 .text.HAL_TIM_PWM_Start stm32f4xx_hal_tim.o - 0x08009462 0x08009462 0x00000002 PAD - 0x08009464 0x08009464 0x00000008 Code RO 1163 .text.HAL_TIM_PeriodElapsedCallback stm32f4xx_hal_tim.o - 0x0800946c 0x0800946c 0x00000008 Code RO 1165 .text.HAL_TIM_TriggerCallback stm32f4xx_hal_tim.o - 0x08009474 0x08009474 0x0000000c Code RO 1449 .text.HAL_UARTEx_RxEventCallback stm32f4xx_hal_uart.o - 0x08009480 0x08009480 0x00000054 Code RO 2448 .text.HAL_UART_ErrorCallback uart.o - 0x080094d4 0x080094d4 0x0000045c Code RO 1441 .text.HAL_UART_IRQHandler stm32f4xx_hal_uart.o - 0x08009930 0x08009930 0x0000009e Code RO 1357 .text.HAL_UART_Init stm32f4xx_hal_uart.o - 0x080099ce 0x080099ce 0x00000002 PAD - 0x080099d0 0x080099d0 0x000001cc Code RO 138 .text.HAL_UART_MspInit usart.o - 0x08009b9c 0x08009b9c 0x00000054 Code RO 2444 .text.HAL_UART_RxCpltCallback uart.o - 0x08009bf0 0x08009bf0 0x00000054 Code RO 2438 .text.HAL_UART_TxCpltCallback uart.o - 0x08009c44 0x08009c44 0x00000004 Code RO 154 .text.HardFault_Handler stm32f4xx_it.o - 0x08009c48 0x08009c48 0x00000010 Code RO 184 .text.I2C1_ER_IRQHandler stm32f4xx_it.o - 0x08009c58 0x08009c58 0x00000010 Code RO 182 .text.I2C1_EV_IRQHandler stm32f4xx_it.o - 0x08009c68 0x08009c68 0x00000034 Code RO 828 .text.I2C_ConvertOtherXferOptions stm32f4xx_hal_i2c.o - 0x08009c9c 0x08009c9c 0x00000156 Code RO 812 .text.I2C_DMAAbort stm32f4xx_hal_i2c.o - 0x08009df2 0x08009df2 0x00000002 PAD - 0x08009df4 0x08009df4 0x00000024 Code RO 888 .text.I2C_Flush_DR stm32f4xx_hal_i2c.o - 0x08009e18 0x08009e18 0x00000048 Code RO 2300 .text.I2C_Get i2c_1.o - 0x08009e60 0x08009e60 0x0000027a Code RO 824 .text.I2C_ITError stm32f4xx_hal_i2c.o - 0x0800a0da 0x0800a0da 0x00000002 PAD - 0x0800a0dc 0x0800a0dc 0x000001ac Code RO 844 .text.I2C_MasterReceive_BTF stm32f4xx_hal_i2c.o - 0x0800a288 0x0800a288 0x0000016a Code RO 842 .text.I2C_MasterReceive_RXNE stm32f4xx_hal_i2c.o - 0x0800a3f2 0x0800a3f2 0x00000002 PAD - 0x0800a3f4 0x0800a3f4 0x000000de Code RO 838 .text.I2C_MasterTransmit_BTF stm32f4xx_hal_i2c.o - 0x0800a4d2 0x0800a4d2 0x00000002 PAD - 0x0800a4d4 0x0800a4d4 0x0000013e Code RO 836 .text.I2C_MasterTransmit_TXE stm32f4xx_hal_i2c.o - 0x0800a612 0x0800a612 0x00000002 PAD - 0x0800a614 0x0800a614 0x00000046 Code RO 832 .text.I2C_Master_ADD10 stm32f4xx_hal_i2c.o - 0x0800a65a 0x0800a65a 0x00000002 PAD - 0x0800a65c 0x0800a65c 0x0000033e Code RO 834 .text.I2C_Master_ADDR stm32f4xx_hal_i2c.o - 0x0800a99a 0x0800a99a 0x00000002 PAD - 0x0800a99c 0x0800a99c 0x000000f0 Code RO 830 .text.I2C_Master_SB stm32f4xx_hal_i2c.o - 0x0800aa8c 0x0800aa8c 0x00000128 Code RO 840 .text.I2C_MemoryTransmit_TXE_BTF stm32f4xx_hal_i2c.o - 0x0800abb4 0x0800abb4 0x0000002e Code RO 856 .text.I2C_SlaveReceive_BTF stm32f4xx_hal_i2c.o - 0x0800abe2 0x0800abe2 0x00000002 PAD - 0x0800abe4 0x0800abe4 0x0000006e Code RO 854 .text.I2C_SlaveReceive_RXNE stm32f4xx_hal_i2c.o - 0x0800ac52 0x0800ac52 0x00000002 PAD - 0x0800ac54 0x0800ac54 0x0000002c Code RO 852 .text.I2C_SlaveTransmit_BTF stm32f4xx_hal_i2c.o - 0x0800ac80 0x0800ac80 0x0000006c Code RO 850 .text.I2C_SlaveTransmit_TXE stm32f4xx_hal_i2c.o - 0x0800acec 0x0800acec 0x000000ae Code RO 846 .text.I2C_Slave_ADDR stm32f4xx_hal_i2c.o - 0x0800ad9a 0x0800ad9a 0x00000002 PAD - 0x0800ad9c 0x0800ad9c 0x000000e4 Code RO 860 .text.I2C_Slave_AF stm32f4xx_hal_i2c.o - 0x0800ae80 0x0800ae80 0x0000024a Code RO 848 .text.I2C_Slave_STOPF stm32f4xx_hal_i2c.o - 0x0800b0ca 0x0800b0ca 0x00000002 PAD - 0x0800b0cc 0x0800b0cc 0x00000078 Code RO 890 .text.I2C_WaitOnSTOPRequestThroughIT stm32f4xx_hal_i2c.o - 0x0800b144 0x0800b144 0x00000076 Code RO 2675 .text.InvSqrt user_math.o - 0x0800b1ba 0x0800b1ba 0x00000002 PAD - 0x0800b1bc 0x0800b1bc 0x000000b8 Code RO 2527 .text.LowPassFilter2p_Apply filter.o - 0x0800b274 0x0800b274 0x0000013c Code RO 2525 .text.LowPassFilter2p_Init filter.o - 0x0800b3b0 0x0800b3b0 0x00000092 Code RO 2533 .text.LowPassFilter2p_Reset filter.o - 0x0800b442 0x0800b442 0x00000002 PAD - 0x0800b444 0x0800b444 0x00000096 Code RO 2944 .text.MOTOR_DM_CreateCANManager motor_dm.o - 0x0800b4da 0x0800b4da 0x00000002 PAD - 0x0800b4dc 0x0800b4dc 0x0000007a Code RO 2968 .text.MOTOR_DM_Enable motor_dm.o - 0x0800b556 0x0800b556 0x00000002 PAD - 0x0800b558 0x0800b558 0x00000030 Code RO 2946 .text.MOTOR_DM_GetCANManager motor_dm.o - 0x0800b588 0x0800b588 0x00000086 Code RO 2956 .text.MOTOR_DM_GetMotor motor_dm.o - 0x0800b60e 0x0800b60e 0x00000002 PAD - 0x0800b610 0x0800b610 0x00000048 Code RO 2954 .text.MOTOR_DM_MITCtrl motor_dm.o - 0x0800b658 0x0800b658 0x00000158 Code RO 2950 .text.MOTOR_DM_ParseFeedbackFrame motor_dm.o - 0x0800b7b0 0x0800b7b0 0x0000012c Code RO 2942 .text.MOTOR_DM_Register motor_dm.o - 0x0800b8dc 0x0800b8dc 0x00000144 Code RO 2958 .text.MOTOR_DM_SendMITCmd motor_dm.o - 0x0800ba20 0x0800ba20 0x0000010c Code RO 2948 .text.MOTOR_DM_Update motor_dm.o - 0x0800bb2c 0x0800bb2c 0x00000096 Code RO 2843 .text.MOTOR_RM_CreateCANManager motor_rm.o - 0x0800bbc2 0x0800bbc2 0x00000002 PAD - 0x0800bbc4 0x0800bbc4 0x00000170 Code RO 2861 .text.MOTOR_RM_Ctrl motor_rm.o - 0x0800bd34 0x0800bd34 0x00000030 Code RO 2845 .text.MOTOR_RM_GetCANManager motor_rm.o - 0x0800bd64 0x0800bd64 0x00000052 Code RO 2859 .text.MOTOR_RM_GetLSB motor_rm.o - 0x0800bdb6 0x0800bdb6 0x00000002 PAD - 0x0800bdb8 0x0800bdb8 0x00000080 Code RO 2857 .text.MOTOR_RM_GetLogicalIndex motor_rm.o - 0x0800be38 0x0800be38 0x00000078 Code RO 2855 .text.MOTOR_RM_GetMotor motor_rm.o - 0x0800beb0 0x0800beb0 0x00000050 Code RO 2867 .text.MOTOR_RM_GetRatio motor_rm.o - 0x0800bf00 0x0800bf00 0x00000120 Code RO 2841 .text.MOTOR_RM_Register motor_rm.o - 0x0800c020 0x0800c020 0x0000011a Code RO 2853 .text.MOTOR_RM_SetOutput motor_rm.o - 0x0800c13a 0x0800c13a 0x00000002 PAD - 0x0800c13c 0x0800c13c 0x00000102 Code RO 2847 .text.MOTOR_RM_Update motor_rm.o - 0x0800c23e 0x0800c23e 0x00000002 PAD - 0x0800c240 0x0800c240 0x0000004e Code RO 53 .text.MX_CAN1_Init can.o - 0x0800c28e 0x0800c28e 0x00000002 PAD - 0x0800c290 0x0800c290 0x0000004e Code RO 55 .text.MX_CAN2_Init can.o - 0x0800c2de 0x0800c2de 0x00000002 PAD - 0x0800c2e0 0x0800c2e0 0x00000086 Code RO 71 .text.MX_DMA_Init dma.o - 0x0800c366 0x0800c366 0x00000002 PAD - 0x0800c368 0x0800c368 0x00000040 Code RO 39 .text.MX_FREERTOS_Init freertos.o - 0x0800c3a8 0x0800c3a8 0x0000022a Code RO 25 .text.MX_GPIO_Init gpio.o - 0x0800c5d2 0x0800c5d2 0x00000002 PAD - 0x0800c5d4 0x0800c5d4 0x00000048 Code RO 79 .text.MX_I2C1_Init i2c.o - 0x0800c61c 0x0800c61c 0x00000048 Code RO 81 .text.MX_I2C2_Init i2c.o - 0x0800c664 0x0800c664 0x00000052 Code RO 96 .text.MX_SPI1_Init spi.o - 0x0800c6b6 0x0800c6b6 0x00000002 PAD - 0x0800c6b8 0x0800c6b8 0x00000054 Code RO 98 .text.MX_SPI2_Init spi.o - 0x0800c70c 0x0800c70c 0x0000008e Code RO 117 .text.MX_TIM10_Init tim.o - 0x0800c79a 0x0800c79a 0x00000002 PAD - 0x0800c79c 0x0800c79c 0x00000058 Code RO 115 .text.MX_TIM7_Init tim.o - 0x0800c7f4 0x0800c7f4 0x00000040 Code RO 134 .text.MX_USART1_UART_Init usart.o - 0x0800c834 0x0800c834 0x0000004c Code RO 136 .text.MX_USART3_UART_Init usart.o - 0x0800c880 0x0800c880 0x00000004 Code RO 156 .text.MemManage_Handler stm32f4xx_it.o - 0x0800c884 0x0800c884 0x0000021c Code RO 2849 .text.Motor_RM_Decode motor_rm.o - 0x0800caa0 0x0800caa0 0x00000004 Code RO 152 .text.NMI_Handler stm32f4xx_it.o - 0x0800caa4 0x0800caa4 0x0000006c Code RO 576 .text.NVIC_EncodePriority stm32f4xx_hal_cortex.o - 0x0800cb10 0x0800cb10 0x000002f0 Code RO 2638 .text.PID_Calc pid.o - 0x0800ce00 0x0800ce00 0x00000196 Code RO 2630 .text.PID_Init pid.o - 0x0800cf96 0x0800cf96 0x00000002 PAD - 0x0800cf98 0x0800cf98 0x00000048 Code RO 2636 .text.PID_Reset pid.o - 0x0800cfe0 0x0800cfe0 0x00000064 Code RO 2170 .text.PendSV_Handler port.o - 0x0800d044 0x0800d044 0x00000094 Code RO 2717 .text.RC_Init bsp_rc.o - 0x0800d0d8 0x0800d0d8 0x0000005a Code RO 2721 .text.RC_restart bsp_rc.o - 0x0800d132 0x0800d132 0x00000002 PAD - 0x0800d134 0x0800d134 0x00000034 Code RO 950 .text.SPI_DMAError stm32f4xx_hal_spi.o - 0x0800d168 0x0800d168 0x00000016 Code RO 956 .text.SPI_DMAHalfReceiveCplt stm32f4xx_hal_spi.o - 0x0800d17e 0x0800d17e 0x00000002 PAD - 0x0800d180 0x0800d180 0x00000016 Code RO 946 .text.SPI_DMAHalfTransmitCplt stm32f4xx_hal_spi.o - 0x0800d196 0x0800d196 0x00000002 PAD - 0x0800d198 0x0800d198 0x00000016 Code RO 960 .text.SPI_DMAHalfTransmitReceiveCplt stm32f4xx_hal_spi.o - 0x0800d1ae 0x0800d1ae 0x00000002 PAD - 0x0800d1b0 0x0800d1b0 0x000000a2 Code RO 958 .text.SPI_DMAReceiveCplt stm32f4xx_hal_spi.o - 0x0800d252 0x0800d252 0x00000002 PAD - 0x0800d254 0x0800d254 0x000000a6 Code RO 948 .text.SPI_DMATransmitCplt stm32f4xx_hal_spi.o - 0x0800d2fa 0x0800d2fa 0x00000002 PAD - 0x0800d2fc 0x0800d2fc 0x00000086 Code RO 962 .text.SPI_DMATransmitReceiveCplt stm32f4xx_hal_spi.o - 0x0800d382 0x0800d382 0x00000002 PAD - 0x0800d384 0x0800d384 0x000000e4 Code RO 920 .text.SPI_EndRxTransaction stm32f4xx_hal_spi.o - 0x0800d468 0x0800d468 0x000000cc Code RO 914 .text.SPI_EndRxTxTransaction stm32f4xx_hal_spi.o - 0x0800d534 0x0800d534 0x0000002e Code RO 2381 .text.SPI_Get spi_1.o - 0x0800d562 0x0800d562 0x00000002 PAD - 0x0800d564 0x0800d564 0x0000012c Code RO 1012 .text.SPI_WaitFlagStateUntilTimeout stm32f4xx_hal_spi.o - 0x0800d690 0x0800d690 0x00000024 Code RO 2154 .text.SVC_Handler port.o - 0x0800d6b4 0x0800d6b4 0x0000000e Code RO 1948 .text.SVC_Setup cmsis_os2.o - 0x0800d6c2 0x0800d6c2 0x00000002 PAD - 0x0800d6c4 0x0800d6c4 0x00000012 Code RO 41 .text.StartDefaultTask freertos.o - 0x0800d6d6 0x0800d6d6 0x00000002 PAD - 0x0800d6d8 0x0800d6d8 0x00000052 Code RO 592 .text.SysTick_Config stm32f4xx_hal_cortex.o - 0x0800d72a 0x0800d72a 0x00000002 PAD - 0x0800d72c 0x0800d72c 0x00000018 Code RO 164 .text.SysTick_Handler stm32f4xx_it.o - 0x0800d744 0x0800d744 0x000000bc Code RO 13 .text.SystemClock_Config main.o - 0x0800d800 0x0800d800 0x00000012 Code RO 1488 .text.SystemInit system_stm32f4xx.o - 0x0800d812 0x0800d812 0x00000002 PAD - 0x0800d814 0x0800d814 0x00000010 Code RO 188 .text.TIM7_IRQHandler stm32f4xx_it.o - 0x0800d824 0x0800d824 0x000001a4 Code RO 1025 .text.TIM_Base_SetConfig stm32f4xx_hal_tim.o - 0x0800d9c8 0x0800d9c8 0x00000036 Code RO 1059 .text.TIM_CCxChannelCmd stm32f4xx_hal_tim.o - 0x0800d9fe 0x0800d9fe 0x00000002 PAD - 0x0800da00 0x0800da00 0x000000ea Code RO 1169 .text.TIM_OC1_SetConfig stm32f4xx_hal_tim.o - 0x0800daea 0x0800daea 0x00000002 PAD - 0x0800daec 0x0800daec 0x000000f4 Code RO 1171 .text.TIM_OC2_SetConfig stm32f4xx_hal_tim.o - 0x0800dbe0 0x0800dbe0 0x000000f2 Code RO 1173 .text.TIM_OC3_SetConfig stm32f4xx_hal_tim.o - 0x0800dcd2 0x0800dcd2 0x00000002 PAD - 0x0800dcd4 0x0800dcd4 0x000000a4 Code RO 1175 .text.TIM_OC4_SetConfig stm32f4xx_hal_tim.o - 0x0800dd78 0x0800dd78 0x000000b8 Code RO 2986 .text.Task_Init init.o - 0x0800de30 0x0800de30 0x00000190 Code RO 2994 .text.Task_atti_esti atti_esti.o - 0x0800dfc0 0x0800dfc0 0x000000ec Code RO 3032 .text.Task_gimbal_ctrl gimbal_ctrl.o - 0x0800e0ac 0x0800e0ac 0x00000004 PAD - 0x0800e0b0 0x0800e0b0 0x000000a0 Code RO 3011 .text.Task_remote remote.o - 0x0800e150 0x0800e150 0x0000001c Code RO 1445 .text.UART_DMAAbortOnError stm32f4xx_hal_uart.o - 0x0800e16c 0x0800e16c 0x00000094 Code RO 1405 .text.UART_EndRxTransfer stm32f4xx_hal_uart.o - 0x0800e200 0x0800e200 0x00000026 Code RO 1453 .text.UART_EndTransmit_IT stm32f4xx_hal_uart.o - 0x0800e226 0x0800e226 0x00000002 PAD - 0x0800e228 0x0800e228 0x0000002e Code RO 2440 .text.UART_Get uart.o - 0x0800e256 0x0800e256 0x00000002 PAD - 0x0800e258 0x0800e258 0x00000168 Code RO 1443 .text.UART_Receive_IT stm32f4xx_hal_uart.o - 0x0800e3c0 0x0800e3c0 0x0000013a Code RO 1361 .text.UART_SetConfig stm32f4xx_hal_uart.o - 0x0800e4fa 0x0800e4fa 0x00000002 PAD - 0x0800e4fc 0x0800e4fc 0x00000094 Code RO 1451 .text.UART_Transmit_IT stm32f4xx_hal_uart.o - 0x0800e590 0x0800e590 0x00000020 Code RO 186 .text.USART3_IRQHandler stm32f4xx_it.o - 0x0800e5b0 0x0800e5b0 0x00000022 Code RO 2919 .text.USART3_IRQHandler1 remote_control.o - 0x0800e5d2 0x0800e5d2 0x00000002 PAD - 0x0800e5d4 0x0800e5d4 0x00000004 Code RO 160 .text.UsageFault_Handler stm32f4xx_it.o - 0x0800e5d8 0x0800e5d8 0x0000001e Code RO 2537 .text.__ARM_isfinite filter.o + 0x08003834 0x08003834 0x0000000a Code RO 170 .text.EXTI4_IRQHandler stm32f4xx_it.o + 0x0800383e 0x0800383e 0x00000002 PAD + 0x08003840 0x08003840 0x0000000a Code RO 180 .text.EXTI9_5_IRQHandler stm32f4xx_it.o + 0x0800384a 0x0800384a 0x00000002 PAD + 0x0800384c 0x0800384c 0x00000006 Code RO 15 .text.Error_Handler main.o + 0x08003852 0x08003852 0x00000002 PAD + 0x08003854 0x08003854 0x00000520 Code RO 3049 .text.Gimbal_Control gimbal.o + 0x08003d74 0x08003d74 0x00000190 Code RO 3043 .text.Gimbal_Init gimbal.o + 0x08003f04 0x08003f04 0x00000112 Code RO 3053 .text.Gimbal_Output gimbal.o + 0x08004016 0x08004016 0x00000002 PAD + 0x08004018 0x08004018 0x000000b4 Code RO 3051 .text.Gimbal_SetMode gimbal.o + 0x080040cc 0x080040cc 0x00000168 Code RO 3045 .text.Gimbal_UpdateFeedback gimbal.o + 0x08004234 0x08004234 0x0000004a Code RO 3047 .text.Gimbal_UpdateIMU gimbal.o + 0x0800427e 0x0800427e 0x00000002 PAD + 0x08004280 0x08004280 0x00000052 Code RO 249 .text.HAL_CAN_ActivateNotification stm32f4xx_hal_can.o + 0x080042d2 0x080042d2 0x00000002 PAD + 0x080042d4 0x080042d4 0x00000156 Code RO 235 .text.HAL_CAN_AddTxMessage stm32f4xx_hal_can.o + 0x0800442a 0x0800442a 0x00000002 PAD + 0x0800442c 0x0800442c 0x0000019e Code RO 225 .text.HAL_CAN_ConfigFilter stm32f4xx_hal_can.o + 0x080045ca 0x080045ca 0x00000002 PAD + 0x080045cc 0x080045cc 0x00000050 Code RO 2212 .text.HAL_CAN_ErrorCallback can_1.o + 0x0800461c 0x0800461c 0x00000052 Code RO 247 .text.HAL_CAN_GetRxFifoFillLevel stm32f4xx_hal_can.o + 0x0800466e 0x0800466e 0x00000002 PAD + 0x08004670 0x08004670 0x00000212 Code RO 245 .text.HAL_CAN_GetRxMessage stm32f4xx_hal_can.o + 0x08004882 0x08004882 0x00000002 PAD + 0x08004884 0x08004884 0x00000070 Code RO 239 .text.HAL_CAN_GetTxMailboxesFreeLevel stm32f4xx_hal_can.o + 0x080048f4 0x080048f4 0x000003f2 Code RO 253 .text.HAL_CAN_IRQHandler stm32f4xx_hal_can.o + 0x08004ce6 0x08004ce6 0x00000002 PAD + 0x08004ce8 0x08004ce8 0x000001de Code RO 215 .text.HAL_CAN_Init stm32f4xx_hal_can.o + 0x08004ec6 0x08004ec6 0x00000002 PAD + 0x08004ec8 0x08004ec8 0x000001d0 Code RO 57 .text.HAL_CAN_MspInit can.o + 0x08005098 0x08005098 0x00000050 Code RO 2202 .text.HAL_CAN_RxFifo0FullCallback can_1.o + 0x080050e8 0x080050e8 0x00000050 Code RO 2200 .text.HAL_CAN_RxFifo0MsgPendingCallback can_1.o + 0x08005138 0x08005138 0x00000050 Code RO 2206 .text.HAL_CAN_RxFifo1FullCallback can_1.o + 0x08005188 0x08005188 0x00000050 Code RO 2204 .text.HAL_CAN_RxFifo1MsgPendingCallback can_1.o + 0x080051d8 0x080051d8 0x00000050 Code RO 2208 .text.HAL_CAN_SleepCallback can_1.o + 0x08005228 0x08005228 0x0000008a Code RO 227 .text.HAL_CAN_Start stm32f4xx_hal_can.o + 0x080052b2 0x080052b2 0x00000002 PAD + 0x080052b4 0x080052b4 0x00000050 Code RO 2194 .text.HAL_CAN_TxMailbox0AbortCallback can_1.o + 0x08005304 0x08005304 0x0000004c Code RO 2186 .text.HAL_CAN_TxMailbox0CompleteCallback can_1.o + 0x08005350 0x08005350 0x00000050 Code RO 2196 .text.HAL_CAN_TxMailbox1AbortCallback can_1.o + 0x080053a0 0x080053a0 0x00000050 Code RO 2190 .text.HAL_CAN_TxMailbox1CompleteCallback can_1.o + 0x080053f0 0x080053f0 0x00000050 Code RO 2198 .text.HAL_CAN_TxMailbox2AbortCallback can_1.o + 0x08005440 0x08005440 0x00000050 Code RO 2192 .text.HAL_CAN_TxMailbox2CompleteCallback can_1.o + 0x08005490 0x08005490 0x00000050 Code RO 2210 .text.HAL_CAN_WakeUpFromRxMsgCallback can_1.o + 0x080054e0 0x080054e0 0x000000ec Code RO 482 .text.HAL_DMA_Abort stm32f4xx_hal_dma.o + 0x080055cc 0x080055cc 0x00000044 Code RO 484 .text.HAL_DMA_Abort_IT stm32f4xx_hal_dma.o + 0x08005610 0x08005610 0x0000000e Code RO 494 .text.HAL_DMA_GetState stm32f4xx_hal_dma.o + 0x0800561e 0x0800561e 0x00000002 PAD + 0x08005620 0x08005620 0x0000031e Code RO 488 .text.HAL_DMA_IRQHandler stm32f4xx_hal_dma.o + 0x0800593e 0x0800593e 0x00000002 PAD + 0x08005940 0x08005940 0x0000016e Code RO 468 .text.HAL_DMA_Init stm32f4xx_hal_dma.o + 0x08005aae 0x08005aae 0x00000002 PAD + 0x08005ab0 0x08005ab0 0x000000c2 Code RO 480 .text.HAL_DMA_Start_IT stm32f4xx_hal_dma.o + 0x08005b72 0x08005b72 0x00000002 PAD + 0x08005b74 0x08005b74 0x00000042 Code RO 663 .text.HAL_Delay stm32f4xx_hal.o + 0x08005bb6 0x08005bb6 0x00000002 PAD + 0x08005bb8 0x08005bb8 0x00000066 Code RO 2275 .text.HAL_GPIO_EXTI_Callback gpio_1.o + 0x08005c1e 0x08005c1e 0x00000002 PAD + 0x08005c20 0x08005c20 0x00000038 Code RO 442 .text.HAL_GPIO_EXTI_IRQHandler stm32f4xx_hal_gpio.o + 0x08005c58 0x08005c58 0x000003b6 Code RO 430 .text.HAL_GPIO_Init stm32f4xx_hal_gpio.o + 0x0800600e 0x0800600e 0x00000002 PAD + 0x08006010 0x08006010 0x0000002e Code RO 434 .text.HAL_GPIO_ReadPin stm32f4xx_hal_gpio.o + 0x0800603e 0x0800603e 0x00000002 PAD + 0x08006040 0x08006040 0x0000002e Code RO 436 .text.HAL_GPIO_WritePin stm32f4xx_hal_gpio.o + 0x0800606e 0x0800606e 0x00000002 PAD + 0x08006070 0x08006070 0x0000000c Code RO 655 .text.HAL_GetTick stm32f4xx_hal.o + 0x0800607c 0x0800607c 0x00000054 Code RO 2316 .text.HAL_I2C_AbortCpltCallback i2c_1.o + 0x080060d0 0x080060d0 0x00000010 Code RO 870 .text.HAL_I2C_AddrCallback stm32f4xx_hal_i2c.o + 0x080060e0 0x080060e0 0x0000017a Code RO 858 .text.HAL_I2C_ER_IRQHandler stm32f4xx_hal_i2c.o + 0x0800625a 0x0800625a 0x00000002 PAD + 0x0800625c 0x0800625c 0x000003ca Code RO 826 .text.HAL_I2C_EV_IRQHandler stm32f4xx_hal_i2c.o + 0x08006626 0x08006626 0x00000002 PAD + 0x08006628 0x08006628 0x00000054 Code RO 2314 .text.HAL_I2C_ErrorCallback i2c_1.o + 0x0800667c 0x0800667c 0x000002a4 Code RO 732 .text.HAL_I2C_Init stm32f4xx_hal_i2c.o + 0x08006920 0x08006920 0x00000054 Code RO 2308 .text.HAL_I2C_ListenCpltCallback i2c_1.o + 0x08006974 0x08006974 0x00000054 Code RO 2302 .text.HAL_I2C_MasterRxCpltCallback i2c_1.o + 0x080069c8 0x080069c8 0x00000050 Code RO 2298 .text.HAL_I2C_MasterTxCpltCallback i2c_1.o + 0x08006a18 0x08006a18 0x00000054 Code RO 2312 .text.HAL_I2C_MemRxCpltCallback i2c_1.o + 0x08006a6c 0x08006a6c 0x00000054 Code RO 2310 .text.HAL_I2C_MemTxCpltCallback i2c_1.o + 0x08006ac0 0x08006ac0 0x00000134 Code RO 83 .text.HAL_I2C_MspInit i2c.o + 0x08006bf4 0x08006bf4 0x00000054 Code RO 2306 .text.HAL_I2C_SlaveRxCpltCallback i2c_1.o + 0x08006c48 0x08006c48 0x00000054 Code RO 2304 .text.HAL_I2C_SlaveTxCpltCallback i2c_1.o + 0x08006c9c 0x08006c9c 0x0000001a Code RO 653 .text.HAL_IncTick stm32f4xx_hal.o + 0x08006cb6 0x08006cb6 0x00000002 PAD + 0x08006cb8 0x08006cb8 0x00000036 Code RO 643 .text.HAL_Init stm32f4xx_hal.o + 0x08006cee 0x08006cee 0x00000002 PAD + 0x08006cf0 0x08006cf0 0x00000070 Code RO 645 .text.HAL_InitTick stm32f4xx_hal.o + 0x08006d60 0x08006d60 0x00000058 Code RO 207 .text.HAL_MspInit stm32f4xx_hal_msp.o + 0x08006db8 0x08006db8 0x00000014 Code RO 582 .text.HAL_NVIC_DisableIRQ stm32f4xx_hal_cortex.o + 0x08006dcc 0x08006dcc 0x00000014 Code RO 578 .text.HAL_NVIC_EnableIRQ stm32f4xx_hal_cortex.o + 0x08006de0 0x08006de0 0x00000032 Code RO 570 .text.HAL_NVIC_SetPriority stm32f4xx_hal_cortex.o + 0x08006e12 0x08006e12 0x00000002 PAD + 0x08006e14 0x08006e14 0x00000010 Code RO 566 .text.HAL_NVIC_SetPriorityGrouping stm32f4xx_hal_cortex.o + 0x08006e24 0x08006e24 0x00000262 Code RO 298 .text.HAL_RCC_ClockConfig stm32f4xx_hal_rcc.o + 0x08007086 0x08007086 0x00000002 PAD + 0x08007088 0x08007088 0x0000000c Code RO 308 .text.HAL_RCC_GetHCLKFreq stm32f4xx_hal_rcc.o + 0x08007094 0x08007094 0x00000022 Code RO 310 .text.HAL_RCC_GetPCLK1Freq stm32f4xx_hal_rcc.o + 0x080070b6 0x080070b6 0x00000002 PAD + 0x080070b8 0x080070b8 0x00000022 Code RO 312 .text.HAL_RCC_GetPCLK2Freq stm32f4xx_hal_rcc.o + 0x080070da 0x080070da 0x00000002 PAD + 0x080070dc 0x080070dc 0x000000e6 Code RO 300 .text.HAL_RCC_GetSysClockFreq stm32f4xx_hal_rcc.o + 0x080071c2 0x080071c2 0x00000002 PAD + 0x080071c4 0x080071c4 0x000006be Code RO 296 .text.HAL_RCC_OscConfig stm32f4xx_hal_rcc.o + 0x08007882 0x08007882 0x00000002 PAD + 0x08007884 0x08007884 0x00000054 Code RO 2393 .text.HAL_SPI_ErrorCallback spi_1.o + 0x080078d8 0x080078d8 0x00000100 Code RO 904 .text.HAL_SPI_Init stm32f4xx_hal_spi.o + 0x080079d8 0x080079d8 0x00000210 Code RO 100 .text.HAL_SPI_MspInit spi.o + 0x08007be8 0x08007be8 0x0000024e Code RO 916 .text.HAL_SPI_Receive stm32f4xx_hal_spi.o + 0x08007e36 0x08007e36 0x00000002 PAD + 0x08007e38 0x08007e38 0x00000198 Code RO 952 .text.HAL_SPI_Receive_DMA stm32f4xx_hal_spi.o + 0x08007fd0 0x08007fd0 0x00000054 Code RO 2383 .text.HAL_SPI_RxCpltCallback spi_1.o + 0x08008024 0x08008024 0x00000054 Code RO 2389 .text.HAL_SPI_RxHalfCpltCallback spi_1.o + 0x08008078 0x08008078 0x000002a2 Code RO 912 .text.HAL_SPI_Transmit stm32f4xx_hal_spi.o + 0x0800831a 0x0800831a 0x00000002 PAD + 0x0800831c 0x0800831c 0x000003a2 Code RO 918 .text.HAL_SPI_TransmitReceive stm32f4xx_hal_spi.o + 0x080086be 0x080086be 0x00000002 PAD + 0x080086c0 0x080086c0 0x00000214 Code RO 954 .text.HAL_SPI_TransmitReceive_DMA stm32f4xx_hal_spi.o + 0x080088d4 0x080088d4 0x0000016c Code RO 944 .text.HAL_SPI_Transmit_DMA stm32f4xx_hal_spi.o + 0x08008a40 0x08008a40 0x00000048 Code RO 2379 .text.HAL_SPI_TxCpltCallback spi_1.o + 0x08008a88 0x08008a88 0x00000054 Code RO 2387 .text.HAL_SPI_TxHalfCpltCallback spi_1.o + 0x08008adc 0x08008adc 0x00000054 Code RO 2385 .text.HAL_SPI_TxRxCpltCallback spi_1.o + 0x08008b30 0x08008b30 0x00000054 Code RO 2391 .text.HAL_SPI_TxRxHalfCpltCallback spi_1.o + 0x08008b84 0x08008b84 0x00000010 Code RO 590 .text.HAL_SYSTICK_Config stm32f4xx_hal_cortex.o + 0x08008b94 0x08008b94 0x00000008 Code RO 1344 .text.HAL_TIMEx_BreakCallback stm32f4xx_hal_tim_ex.o + 0x08008b9c 0x08008b9c 0x00000008 Code RO 1340 .text.HAL_TIMEx_CommutCallback stm32f4xx_hal_tim_ex.o + 0x08008ba4 0x08008ba4 0x00000122 Code RO 1334 .text.HAL_TIMEx_MasterConfigSynchronization stm32f4xx_hal_tim_ex.o + 0x08008cc6 0x08008cc6 0x00000002 PAD + 0x08008cc8 0x08008cc8 0x0000009c Code RO 1021 .text.HAL_TIM_Base_Init stm32f4xx_hal_tim.o + 0x08008d64 0x08008d64 0x0000008a Code RO 121 .text.HAL_TIM_Base_MspInit tim.o + 0x08008dee 0x08008dee 0x00000002 PAD + 0x08008df0 0x08008df0 0x00000008 Code RO 1157 .text.HAL_TIM_IC_CaptureCallback stm32f4xx_hal_tim.o + 0x08008df8 0x08008df8 0x0000021a Code RO 1155 .text.HAL_TIM_IRQHandler stm32f4xx_hal_tim.o + 0x08009012 0x08009012 0x00000002 PAD + 0x08009014 0x08009014 0x0000006c Code RO 119 .text.HAL_TIM_MspPostInit tim.o + 0x08009080 0x08009080 0x00000008 Code RO 1159 .text.HAL_TIM_OC_DelayElapsedCallback stm32f4xx_hal_tim.o + 0x08009088 0x08009088 0x00000142 Code RO 1187 .text.HAL_TIM_PWM_ConfigChannel stm32f4xx_hal_tim.o + 0x080091ca 0x080091ca 0x00000002 PAD + 0x080091cc 0x080091cc 0x0000009c Code RO 1075 .text.HAL_TIM_PWM_Init stm32f4xx_hal_tim.o + 0x08009268 0x08009268 0x00000008 Code RO 1077 .text.HAL_TIM_PWM_MspInit stm32f4xx_hal_tim.o + 0x08009270 0x08009270 0x00000008 Code RO 1161 .text.HAL_TIM_PWM_PulseFinishedCallback stm32f4xx_hal_tim.o + 0x08009278 0x08009278 0x000001ca Code RO 1083 .text.HAL_TIM_PWM_Start stm32f4xx_hal_tim.o + 0x08009442 0x08009442 0x00000002 PAD + 0x08009444 0x08009444 0x00000008 Code RO 1163 .text.HAL_TIM_PeriodElapsedCallback stm32f4xx_hal_tim.o + 0x0800944c 0x0800944c 0x00000008 Code RO 1165 .text.HAL_TIM_TriggerCallback stm32f4xx_hal_tim.o + 0x08009454 0x08009454 0x0000000c Code RO 1449 .text.HAL_UARTEx_RxEventCallback stm32f4xx_hal_uart.o + 0x08009460 0x08009460 0x00000054 Code RO 2448 .text.HAL_UART_ErrorCallback uart.o + 0x080094b4 0x080094b4 0x0000045c Code RO 1441 .text.HAL_UART_IRQHandler stm32f4xx_hal_uart.o + 0x08009910 0x08009910 0x0000009e Code RO 1357 .text.HAL_UART_Init stm32f4xx_hal_uart.o + 0x080099ae 0x080099ae 0x00000002 PAD + 0x080099b0 0x080099b0 0x000001cc Code RO 138 .text.HAL_UART_MspInit usart.o + 0x08009b7c 0x08009b7c 0x00000054 Code RO 2444 .text.HAL_UART_RxCpltCallback uart.o + 0x08009bd0 0x08009bd0 0x00000054 Code RO 2438 .text.HAL_UART_TxCpltCallback uart.o + 0x08009c24 0x08009c24 0x00000004 Code RO 154 .text.HardFault_Handler stm32f4xx_it.o + 0x08009c28 0x08009c28 0x00000010 Code RO 184 .text.I2C1_ER_IRQHandler stm32f4xx_it.o + 0x08009c38 0x08009c38 0x00000010 Code RO 182 .text.I2C1_EV_IRQHandler stm32f4xx_it.o + 0x08009c48 0x08009c48 0x00000034 Code RO 828 .text.I2C_ConvertOtherXferOptions stm32f4xx_hal_i2c.o + 0x08009c7c 0x08009c7c 0x00000156 Code RO 812 .text.I2C_DMAAbort stm32f4xx_hal_i2c.o + 0x08009dd2 0x08009dd2 0x00000002 PAD + 0x08009dd4 0x08009dd4 0x00000024 Code RO 888 .text.I2C_Flush_DR stm32f4xx_hal_i2c.o + 0x08009df8 0x08009df8 0x00000048 Code RO 2300 .text.I2C_Get i2c_1.o + 0x08009e40 0x08009e40 0x0000027a Code RO 824 .text.I2C_ITError stm32f4xx_hal_i2c.o + 0x0800a0ba 0x0800a0ba 0x00000002 PAD + 0x0800a0bc 0x0800a0bc 0x000001ac Code RO 844 .text.I2C_MasterReceive_BTF stm32f4xx_hal_i2c.o + 0x0800a268 0x0800a268 0x0000016a Code RO 842 .text.I2C_MasterReceive_RXNE stm32f4xx_hal_i2c.o + 0x0800a3d2 0x0800a3d2 0x00000002 PAD + 0x0800a3d4 0x0800a3d4 0x000000de Code RO 838 .text.I2C_MasterTransmit_BTF stm32f4xx_hal_i2c.o + 0x0800a4b2 0x0800a4b2 0x00000002 PAD + 0x0800a4b4 0x0800a4b4 0x0000013e Code RO 836 .text.I2C_MasterTransmit_TXE stm32f4xx_hal_i2c.o + 0x0800a5f2 0x0800a5f2 0x00000002 PAD + 0x0800a5f4 0x0800a5f4 0x00000046 Code RO 832 .text.I2C_Master_ADD10 stm32f4xx_hal_i2c.o + 0x0800a63a 0x0800a63a 0x00000002 PAD + 0x0800a63c 0x0800a63c 0x0000033e Code RO 834 .text.I2C_Master_ADDR stm32f4xx_hal_i2c.o + 0x0800a97a 0x0800a97a 0x00000002 PAD + 0x0800a97c 0x0800a97c 0x000000f0 Code RO 830 .text.I2C_Master_SB stm32f4xx_hal_i2c.o + 0x0800aa6c 0x0800aa6c 0x00000128 Code RO 840 .text.I2C_MemoryTransmit_TXE_BTF stm32f4xx_hal_i2c.o + 0x0800ab94 0x0800ab94 0x0000002e Code RO 856 .text.I2C_SlaveReceive_BTF stm32f4xx_hal_i2c.o + 0x0800abc2 0x0800abc2 0x00000002 PAD + 0x0800abc4 0x0800abc4 0x0000006e Code RO 854 .text.I2C_SlaveReceive_RXNE stm32f4xx_hal_i2c.o + 0x0800ac32 0x0800ac32 0x00000002 PAD + 0x0800ac34 0x0800ac34 0x0000002c Code RO 852 .text.I2C_SlaveTransmit_BTF stm32f4xx_hal_i2c.o + 0x0800ac60 0x0800ac60 0x0000006c Code RO 850 .text.I2C_SlaveTransmit_TXE stm32f4xx_hal_i2c.o + 0x0800accc 0x0800accc 0x000000ae Code RO 846 .text.I2C_Slave_ADDR stm32f4xx_hal_i2c.o + 0x0800ad7a 0x0800ad7a 0x00000002 PAD + 0x0800ad7c 0x0800ad7c 0x000000e4 Code RO 860 .text.I2C_Slave_AF stm32f4xx_hal_i2c.o + 0x0800ae60 0x0800ae60 0x0000024a Code RO 848 .text.I2C_Slave_STOPF stm32f4xx_hal_i2c.o + 0x0800b0aa 0x0800b0aa 0x00000002 PAD + 0x0800b0ac 0x0800b0ac 0x00000078 Code RO 890 .text.I2C_WaitOnSTOPRequestThroughIT stm32f4xx_hal_i2c.o + 0x0800b124 0x0800b124 0x00000076 Code RO 2675 .text.InvSqrt user_math.o + 0x0800b19a 0x0800b19a 0x00000002 PAD + 0x0800b19c 0x0800b19c 0x000000b8 Code RO 2527 .text.LowPassFilter2p_Apply filter.o + 0x0800b254 0x0800b254 0x0000013c Code RO 2525 .text.LowPassFilter2p_Init filter.o + 0x0800b390 0x0800b390 0x00000092 Code RO 2533 .text.LowPassFilter2p_Reset filter.o + 0x0800b422 0x0800b422 0x00000002 PAD + 0x0800b424 0x0800b424 0x00000096 Code RO 2944 .text.MOTOR_DM_CreateCANManager motor_dm.o + 0x0800b4ba 0x0800b4ba 0x00000002 PAD + 0x0800b4bc 0x0800b4bc 0x0000007a Code RO 2968 .text.MOTOR_DM_Enable motor_dm.o + 0x0800b536 0x0800b536 0x00000002 PAD + 0x0800b538 0x0800b538 0x00000030 Code RO 2946 .text.MOTOR_DM_GetCANManager motor_dm.o + 0x0800b568 0x0800b568 0x00000086 Code RO 2956 .text.MOTOR_DM_GetMotor motor_dm.o + 0x0800b5ee 0x0800b5ee 0x00000002 PAD + 0x0800b5f0 0x0800b5f0 0x00000048 Code RO 2954 .text.MOTOR_DM_MITCtrl motor_dm.o + 0x0800b638 0x0800b638 0x00000158 Code RO 2950 .text.MOTOR_DM_ParseFeedbackFrame motor_dm.o + 0x0800b790 0x0800b790 0x0000012c Code RO 2942 .text.MOTOR_DM_Register motor_dm.o + 0x0800b8bc 0x0800b8bc 0x00000144 Code RO 2958 .text.MOTOR_DM_SendMITCmd motor_dm.o + 0x0800ba00 0x0800ba00 0x0000010c Code RO 2948 .text.MOTOR_DM_Update motor_dm.o + 0x0800bb0c 0x0800bb0c 0x00000096 Code RO 2843 .text.MOTOR_RM_CreateCANManager motor_rm.o + 0x0800bba2 0x0800bba2 0x00000002 PAD + 0x0800bba4 0x0800bba4 0x00000170 Code RO 2861 .text.MOTOR_RM_Ctrl motor_rm.o + 0x0800bd14 0x0800bd14 0x00000030 Code RO 2845 .text.MOTOR_RM_GetCANManager motor_rm.o + 0x0800bd44 0x0800bd44 0x00000052 Code RO 2859 .text.MOTOR_RM_GetLSB motor_rm.o + 0x0800bd96 0x0800bd96 0x00000002 PAD + 0x0800bd98 0x0800bd98 0x00000080 Code RO 2857 .text.MOTOR_RM_GetLogicalIndex motor_rm.o + 0x0800be18 0x0800be18 0x00000078 Code RO 2855 .text.MOTOR_RM_GetMotor motor_rm.o + 0x0800be90 0x0800be90 0x00000050 Code RO 2867 .text.MOTOR_RM_GetRatio motor_rm.o + 0x0800bee0 0x0800bee0 0x00000120 Code RO 2841 .text.MOTOR_RM_Register motor_rm.o + 0x0800c000 0x0800c000 0x0000011a Code RO 2853 .text.MOTOR_RM_SetOutput motor_rm.o + 0x0800c11a 0x0800c11a 0x00000002 PAD + 0x0800c11c 0x0800c11c 0x00000102 Code RO 2847 .text.MOTOR_RM_Update motor_rm.o + 0x0800c21e 0x0800c21e 0x00000002 PAD + 0x0800c220 0x0800c220 0x0000004e Code RO 53 .text.MX_CAN1_Init can.o + 0x0800c26e 0x0800c26e 0x00000002 PAD + 0x0800c270 0x0800c270 0x0000004e Code RO 55 .text.MX_CAN2_Init can.o + 0x0800c2be 0x0800c2be 0x00000002 PAD + 0x0800c2c0 0x0800c2c0 0x00000086 Code RO 71 .text.MX_DMA_Init dma.o + 0x0800c346 0x0800c346 0x00000002 PAD + 0x0800c348 0x0800c348 0x00000040 Code RO 39 .text.MX_FREERTOS_Init freertos.o + 0x0800c388 0x0800c388 0x0000022a Code RO 25 .text.MX_GPIO_Init gpio.o + 0x0800c5b2 0x0800c5b2 0x00000002 PAD + 0x0800c5b4 0x0800c5b4 0x00000048 Code RO 79 .text.MX_I2C1_Init i2c.o + 0x0800c5fc 0x0800c5fc 0x00000048 Code RO 81 .text.MX_I2C2_Init i2c.o + 0x0800c644 0x0800c644 0x00000052 Code RO 96 .text.MX_SPI1_Init spi.o + 0x0800c696 0x0800c696 0x00000002 PAD + 0x0800c698 0x0800c698 0x00000054 Code RO 98 .text.MX_SPI2_Init spi.o + 0x0800c6ec 0x0800c6ec 0x0000008e Code RO 117 .text.MX_TIM10_Init tim.o + 0x0800c77a 0x0800c77a 0x00000002 PAD + 0x0800c77c 0x0800c77c 0x00000058 Code RO 115 .text.MX_TIM7_Init tim.o + 0x0800c7d4 0x0800c7d4 0x00000040 Code RO 134 .text.MX_USART1_UART_Init usart.o + 0x0800c814 0x0800c814 0x0000004c Code RO 136 .text.MX_USART3_UART_Init usart.o + 0x0800c860 0x0800c860 0x00000004 Code RO 156 .text.MemManage_Handler stm32f4xx_it.o + 0x0800c864 0x0800c864 0x0000021c Code RO 2849 .text.Motor_RM_Decode motor_rm.o + 0x0800ca80 0x0800ca80 0x00000004 Code RO 152 .text.NMI_Handler stm32f4xx_it.o + 0x0800ca84 0x0800ca84 0x0000006c Code RO 576 .text.NVIC_EncodePriority stm32f4xx_hal_cortex.o + 0x0800caf0 0x0800caf0 0x000002f0 Code RO 2638 .text.PID_Calc pid.o + 0x0800cde0 0x0800cde0 0x00000196 Code RO 2630 .text.PID_Init pid.o + 0x0800cf76 0x0800cf76 0x00000002 PAD + 0x0800cf78 0x0800cf78 0x00000048 Code RO 2636 .text.PID_Reset pid.o + 0x0800cfc0 0x0800cfc0 0x00000064 Code RO 2170 .text.PendSV_Handler port.o + 0x0800d024 0x0800d024 0x00000094 Code RO 2717 .text.RC_Init bsp_rc.o + 0x0800d0b8 0x0800d0b8 0x0000005a Code RO 2721 .text.RC_restart bsp_rc.o + 0x0800d112 0x0800d112 0x00000002 PAD + 0x0800d114 0x0800d114 0x00000034 Code RO 950 .text.SPI_DMAError stm32f4xx_hal_spi.o + 0x0800d148 0x0800d148 0x00000016 Code RO 956 .text.SPI_DMAHalfReceiveCplt stm32f4xx_hal_spi.o + 0x0800d15e 0x0800d15e 0x00000002 PAD + 0x0800d160 0x0800d160 0x00000016 Code RO 946 .text.SPI_DMAHalfTransmitCplt stm32f4xx_hal_spi.o + 0x0800d176 0x0800d176 0x00000002 PAD + 0x0800d178 0x0800d178 0x00000016 Code RO 960 .text.SPI_DMAHalfTransmitReceiveCplt stm32f4xx_hal_spi.o + 0x0800d18e 0x0800d18e 0x00000002 PAD + 0x0800d190 0x0800d190 0x000000a2 Code RO 958 .text.SPI_DMAReceiveCplt stm32f4xx_hal_spi.o + 0x0800d232 0x0800d232 0x00000002 PAD + 0x0800d234 0x0800d234 0x000000a6 Code RO 948 .text.SPI_DMATransmitCplt stm32f4xx_hal_spi.o + 0x0800d2da 0x0800d2da 0x00000002 PAD + 0x0800d2dc 0x0800d2dc 0x00000086 Code RO 962 .text.SPI_DMATransmitReceiveCplt stm32f4xx_hal_spi.o + 0x0800d362 0x0800d362 0x00000002 PAD + 0x0800d364 0x0800d364 0x000000e4 Code RO 920 .text.SPI_EndRxTransaction stm32f4xx_hal_spi.o + 0x0800d448 0x0800d448 0x000000cc Code RO 914 .text.SPI_EndRxTxTransaction stm32f4xx_hal_spi.o + 0x0800d514 0x0800d514 0x0000002e Code RO 2381 .text.SPI_Get spi_1.o + 0x0800d542 0x0800d542 0x00000002 PAD + 0x0800d544 0x0800d544 0x0000012c Code RO 1012 .text.SPI_WaitFlagStateUntilTimeout stm32f4xx_hal_spi.o + 0x0800d670 0x0800d670 0x00000024 Code RO 2154 .text.SVC_Handler port.o + 0x0800d694 0x0800d694 0x0000000e Code RO 1948 .text.SVC_Setup cmsis_os2.o + 0x0800d6a2 0x0800d6a2 0x00000002 PAD + 0x0800d6a4 0x0800d6a4 0x00000012 Code RO 41 .text.StartDefaultTask freertos.o + 0x0800d6b6 0x0800d6b6 0x00000002 PAD + 0x0800d6b8 0x0800d6b8 0x00000052 Code RO 592 .text.SysTick_Config stm32f4xx_hal_cortex.o + 0x0800d70a 0x0800d70a 0x00000002 PAD + 0x0800d70c 0x0800d70c 0x00000018 Code RO 164 .text.SysTick_Handler stm32f4xx_it.o + 0x0800d724 0x0800d724 0x000000bc Code RO 13 .text.SystemClock_Config main.o + 0x0800d7e0 0x0800d7e0 0x00000012 Code RO 1488 .text.SystemInit system_stm32f4xx.o + 0x0800d7f2 0x0800d7f2 0x00000002 PAD + 0x0800d7f4 0x0800d7f4 0x00000010 Code RO 188 .text.TIM7_IRQHandler stm32f4xx_it.o + 0x0800d804 0x0800d804 0x000001a4 Code RO 1025 .text.TIM_Base_SetConfig stm32f4xx_hal_tim.o + 0x0800d9a8 0x0800d9a8 0x00000036 Code RO 1059 .text.TIM_CCxChannelCmd stm32f4xx_hal_tim.o + 0x0800d9de 0x0800d9de 0x00000002 PAD + 0x0800d9e0 0x0800d9e0 0x000000ea Code RO 1169 .text.TIM_OC1_SetConfig stm32f4xx_hal_tim.o + 0x0800daca 0x0800daca 0x00000002 PAD + 0x0800dacc 0x0800dacc 0x000000f4 Code RO 1171 .text.TIM_OC2_SetConfig stm32f4xx_hal_tim.o + 0x0800dbc0 0x0800dbc0 0x000000f2 Code RO 1173 .text.TIM_OC3_SetConfig stm32f4xx_hal_tim.o + 0x0800dcb2 0x0800dcb2 0x00000002 PAD + 0x0800dcb4 0x0800dcb4 0x000000a4 Code RO 1175 .text.TIM_OC4_SetConfig stm32f4xx_hal_tim.o + 0x0800dd58 0x0800dd58 0x000000b8 Code RO 2986 .text.Task_Init init.o + 0x0800de10 0x0800de10 0x00000190 Code RO 2994 .text.Task_atti_esti atti_esti.o + 0x0800dfa0 0x0800dfa0 0x000000ec Code RO 3032 .text.Task_gimbal_ctrl gimbal_ctrl.o + 0x0800e08c 0x0800e08c 0x00000004 PAD + 0x0800e090 0x0800e090 0x000000a0 Code RO 3011 .text.Task_remote remote.o + 0x0800e130 0x0800e130 0x0000001c Code RO 1445 .text.UART_DMAAbortOnError stm32f4xx_hal_uart.o + 0x0800e14c 0x0800e14c 0x00000094 Code RO 1405 .text.UART_EndRxTransfer stm32f4xx_hal_uart.o + 0x0800e1e0 0x0800e1e0 0x00000026 Code RO 1453 .text.UART_EndTransmit_IT stm32f4xx_hal_uart.o + 0x0800e206 0x0800e206 0x00000002 PAD + 0x0800e208 0x0800e208 0x0000002e Code RO 2440 .text.UART_Get uart.o + 0x0800e236 0x0800e236 0x00000002 PAD + 0x0800e238 0x0800e238 0x00000168 Code RO 1443 .text.UART_Receive_IT stm32f4xx_hal_uart.o + 0x0800e3a0 0x0800e3a0 0x0000013a Code RO 1361 .text.UART_SetConfig stm32f4xx_hal_uart.o + 0x0800e4da 0x0800e4da 0x00000002 PAD + 0x0800e4dc 0x0800e4dc 0x00000094 Code RO 1451 .text.UART_Transmit_IT stm32f4xx_hal_uart.o + 0x0800e570 0x0800e570 0x00000020 Code RO 186 .text.USART3_IRQHandler stm32f4xx_it.o + 0x0800e590 0x0800e590 0x00000022 Code RO 2919 .text.USART3_IRQHandler1 remote_control.o + 0x0800e5b2 0x0800e5b2 0x00000002 PAD + 0x0800e5b4 0x0800e5b4 0x00000004 Code RO 160 .text.UsageFault_Handler stm32f4xx_it.o + 0x0800e5b8 0x0800e5b8 0x0000001e Code RO 2537 .text.__ARM_isfinite filter.o + 0x0800e5d6 0x0800e5d6 0x00000002 PAD + 0x0800e5d8 0x0800e5d8 0x0000001e Code RO 2634 .text.__ARM_isfinite pid.o 0x0800e5f6 0x0800e5f6 0x00000002 PAD - 0x0800e5f8 0x0800e5f8 0x0000001e Code RO 2634 .text.__ARM_isfinite pid.o - 0x0800e616 0x0800e616 0x00000002 PAD - 0x0800e618 0x0800e618 0x00000018 Code RO 2535 .text.__ARM_isfinitef filter.o - 0x0800e630 0x0800e630 0x00000018 Code RO 2632 .text.__ARM_isfinitef pid.o - 0x0800e648 0x0800e648 0x00000034 Code RO 2531 .text.__ARM_isinf filter.o - 0x0800e67c 0x0800e67c 0x0000001c Code RO 2529 .text.__ARM_isinff filter.o - 0x0800e698 0x0800e698 0x00000038 Code RO 584 .text.__NVIC_DisableIRQ stm32f4xx_hal_cortex.o - 0x0800e6d0 0x0800e6d0 0x00000030 Code RO 580 .text.__NVIC_EnableIRQ stm32f4xx_hal_cortex.o - 0x0800e700 0x0800e700 0x00000010 Code RO 572 .text.__NVIC_GetPriorityGrouping stm32f4xx_hal_cortex.o - 0x0800e710 0x0800e710 0x00000042 Code RO 574 .text.__NVIC_SetPriority stm32f4xx_hal_cortex.o - 0x0800e752 0x0800e752 0x00000002 PAD - 0x0800e754 0x0800e754 0x00000042 Code RO 2104 .text.__NVIC_SetPriority cmsis_os2.o - 0x0800e796 0x0800e796 0x00000002 PAD - 0x0800e798 0x0800e798 0x0000003c Code RO 568 .text.__NVIC_SetPriorityGrouping stm32f4xx_hal_cortex.o - 0x0800e7d4 0x0800e7d4 0x00000002 Code RO 33 .text.configureTimerForRunTimeStats freertos.o + 0x0800e5f8 0x0800e5f8 0x00000018 Code RO 2535 .text.__ARM_isfinitef filter.o + 0x0800e610 0x0800e610 0x00000018 Code RO 2632 .text.__ARM_isfinitef pid.o + 0x0800e628 0x0800e628 0x00000034 Code RO 2531 .text.__ARM_isinf filter.o + 0x0800e65c 0x0800e65c 0x0000001c Code RO 2529 .text.__ARM_isinff filter.o + 0x0800e678 0x0800e678 0x00000038 Code RO 584 .text.__NVIC_DisableIRQ stm32f4xx_hal_cortex.o + 0x0800e6b0 0x0800e6b0 0x00000030 Code RO 580 .text.__NVIC_EnableIRQ stm32f4xx_hal_cortex.o + 0x0800e6e0 0x0800e6e0 0x00000010 Code RO 572 .text.__NVIC_GetPriorityGrouping stm32f4xx_hal_cortex.o + 0x0800e6f0 0x0800e6f0 0x00000042 Code RO 574 .text.__NVIC_SetPriority stm32f4xx_hal_cortex.o + 0x0800e732 0x0800e732 0x00000002 PAD + 0x0800e734 0x0800e734 0x00000042 Code RO 2104 .text.__NVIC_SetPriority cmsis_os2.o + 0x0800e776 0x0800e776 0x00000002 PAD + 0x0800e778 0x0800e778 0x0000003c Code RO 568 .text.__NVIC_SetPriorityGrouping stm32f4xx_hal_cortex.o + 0x0800e7b4 0x0800e7b4 0x00000002 Code RO 33 .text.configureTimerForRunTimeStats freertos.o + 0x0800e7b6 0x0800e7b6 0x00000002 PAD + 0x0800e7b8 0x0800e7b8 0x0000001e Code RO 2482 .text.copysignf ahrs.o 0x0800e7d6 0x0800e7d6 0x00000002 PAD - 0x0800e7d8 0x0800e7d8 0x0000001e Code RO 2482 .text.copysignf ahrs.o - 0x0800e7f6 0x0800e7f6 0x00000002 PAD - 0x0800e7f8 0x0800e7f8 0x0000003e Code RO 2702 .text.delay_init bsp_delay.o - 0x0800e836 0x0800e836 0x00000002 PAD - 0x0800e838 0x0800e838 0x000000f6 Code RO 1726 .text.eTaskGetState tasks.o - 0x0800e92e 0x0800e92e 0x00000002 PAD - 0x0800e930 0x0800e930 0x00000058 Code RO 2976 .text.float_to_uint motor_dm.o - 0x0800e988 0x0800e988 0x00000004 Code RO 35 .text.getRunTimeCounterValue freertos.o - 0x0800e98c 0x0800e98c 0x00000050 Code RO 11 .text.main main.o - 0x0800e9dc 0x0800e9dc 0x0000002a Code RO 2742 .text.map calc_lib.o - 0x0800ea06 0x0800ea06 0x00000002 PAD - 0x0800ea08 0x0800ea08 0x00000034 Code RO 2006 .text.osDelay cmsis_os2.o - 0x0800ea3c 0x0800ea3c 0x00000058 Code RO 2008 .text.osDelayUntil cmsis_os2.o - 0x0800ea94 0x0800ea94 0x00000052 Code RO 1944 .text.osKernelGetState cmsis_os2.o - 0x0800eae6 0x0800eae6 0x00000002 PAD - 0x0800eae8 0x0800eae8 0x00000026 Code RO 1956 .text.osKernelGetTickCount cmsis_os2.o - 0x0800eb0e 0x0800eb0e 0x00000002 PAD - 0x0800eb10 0x0800eb10 0x00000006 Code RO 1958 .text.osKernelGetTickFreq cmsis_os2.o - 0x0800eb16 0x0800eb16 0x00000002 PAD - 0x0800eb18 0x0800eb18 0x00000046 Code RO 1940 .text.osKernelInitialize cmsis_os2.o - 0x0800eb5e 0x0800eb5e 0x00000002 PAD - 0x0800eb60 0x0800eb60 0x00000056 Code RO 1950 .text.osKernelLock cmsis_os2.o - 0x0800ebb6 0x0800ebb6 0x00000002 PAD - 0x0800ebb8 0x0800ebb8 0x00000052 Code RO 1946 .text.osKernelStart cmsis_os2.o - 0x0800ec0a 0x0800ec0a 0x00000002 PAD - 0x0800ec0c 0x0800ec0c 0x0000006e Code RO 1952 .text.osKernelUnlock cmsis_os2.o - 0x0800ec7a 0x0800ec7a 0x00000002 PAD - 0x0800ec7c 0x0800ec7c 0x000000c0 Code RO 2060 .text.osMessageQueueGet cmsis_os2.o - 0x0800ed3c 0x0800ed3c 0x000000fe Code RO 2056 .text.osMessageQueueNew cmsis_os2.o - 0x0800ee3a 0x0800ee3a 0x00000002 PAD - 0x0800ee3c 0x0800ee3c 0x000000c4 Code RO 2058 .text.osMessageQueuePut cmsis_os2.o - 0x0800ef00 0x0800ef00 0x00000040 Code RO 2070 .text.osMessageQueueReset cmsis_os2.o - 0x0800ef40 0x0800ef40 0x0000009e Code RO 2038 .text.osMutexAcquire cmsis_os2.o - 0x0800efde 0x0800efde 0x00000002 PAD - 0x0800efe0 0x0800efe0 0x00000128 Code RO 2036 .text.osMutexNew cmsis_os2.o - 0x0800f108 0x0800f108 0x0000007e Code RO 2040 .text.osMutexRelease cmsis_os2.o - 0x0800f186 0x0800f186 0x00000002 PAD - 0x0800f188 0x0800f188 0x000000a4 Code RO 1998 .text.osThreadFlagsSet cmsis_os2.o - 0x0800f22c 0x0800f22c 0x0000011a Code RO 2004 .text.osThreadFlagsWait cmsis_os2.o - 0x0800f346 0x0800f346 0x00000002 PAD - 0x0800f348 0x0800f348 0x00000010 Code RO 1974 .text.osThreadGetId cmsis_os2.o - 0x0800f358 0x0800f358 0x0000015a Code RO 1970 .text.osThreadNew cmsis_os2.o - 0x0800f4b2 0x0800f4b2 0x00000002 PAD - 0x0800f4b4 0x0800f4b4 0x0000005e Code RO 1992 .text.osThreadTerminate cmsis_os2.o - 0x0800f512 0x0800f512 0x00000002 PAD - 0x0800f514 0x0800f514 0x000000d4 Code RO 1720 .text.prvAddCurrentTaskToDelayedList tasks.o - 0x0800f5e8 0x0800f5e8 0x00000122 Code RO 1706 .text.prvAddNewTaskToReadyList tasks.o - 0x0800f70a 0x0800f70a 0x00000002 PAD - 0x0800f70c 0x0800f70c 0x000000a2 Code RO 1871 .text.prvCheckForValidListAndQueue timers.o - 0x0800f7ae 0x0800f7ae 0x00000002 PAD - 0x0800f7b0 0x0800f7b0 0x0000005a Code RO 1836 .text.prvCheckTasksWaitingTermination tasks.o - 0x0800f80a 0x0800f80a 0x00000002 PAD - 0x0800f80c 0x0800f80c 0x00000042 Code RO 1599 .text.prvCopyDataFromQueue queue.o - 0x0800f84e 0x0800f84e 0x00000002 PAD - 0x0800f850 0x0800f850 0x000000cc Code RO 1587 .text.prvCopyDataToQueue queue.o - 0x0800f91c 0x0800f91c 0x0000005e Code RO 1712 .text.prvDeleteTCB tasks.o - 0x0800f97a 0x0800f97a 0x00000002 PAD - 0x0800f97c 0x0800f97c 0x00000026 Code RO 1603 .text.prvGetDisinheritPriorityAfterTimeout queue.o - 0x0800f9a2 0x0800f9a2 0x00000002 PAD - 0x0800f9a4 0x0800f9a4 0x00000040 Code RO 1909 .text.prvGetNextExpireTime timers.o - 0x0800f9e4 0x0800f9e4 0x000000bc Code RO 2121 .text.prvHeapInit heap_4.o - 0x0800faa0 0x0800faa0 0x00000038 Code RO 1746 .text.prvIdleTask tasks.o - 0x0800fad8 0x0800fad8 0x0000002c Code RO 1567 .text.prvInitialiseMutex queue.o - 0x0800fb04 0x0800fb04 0x00000048 Code RO 1561 .text.prvInitialiseNewQueue queue.o - 0x0800fb4c 0x0800fb4c 0x0000012c Code RO 1704 .text.prvInitialiseNewTask tasks.o - 0x0800fc78 0x0800fc78 0x0000008e Code RO 1834 .text.prvInitialiseTaskLists tasks.o - 0x0800fd06 0x0800fd06 0x00000002 PAD - 0x0800fd08 0x0800fd08 0x000000c6 Code RO 2123 .text.prvInsertBlockIntoFreeList heap_4.o - 0x0800fdce 0x0800fdce 0x00000002 PAD - 0x0800fdd0 0x0800fdd0 0x00000086 Code RO 1921 .text.prvInsertTimerInActiveList timers.o - 0x0800fe56 0x0800fe56 0x00000002 PAD - 0x0800fe58 0x0800fe58 0x00000028 Code RO 1601 .text.prvIsQueueEmpty queue.o - 0x0800fe80 0x0800fe80 0x0000002e Code RO 1589 .text.prvIsQueueFull queue.o - 0x0800feae 0x0800feae 0x00000002 PAD - 0x0800feb0 0x0800feb0 0x00000028 Code RO 2162 .text.prvPortStartFirstTask port.o - 0x0800fed8 0x0800fed8 0x0000008e Code RO 1917 .text.prvProcessExpiredTimer timers.o - 0x0800ff66 0x0800ff66 0x00000002 PAD - 0x0800ff68 0x0800ff68 0x00000192 Code RO 1913 .text.prvProcessReceivedCommands timers.o - 0x080100fa 0x080100fa 0x00000002 PAD - 0x080100fc 0x080100fc 0x0000009a Code RO 1911 .text.prvProcessTimerOrBlockTask timers.o - 0x08010196 0x08010196 0x00000002 PAD - 0x08010198 0x08010198 0x00000046 Code RO 1714 .text.prvResetNextTaskUnblockTime tasks.o - 0x080101de 0x080101de 0x00000002 PAD - 0x080101e0 0x080101e0 0x00000044 Code RO 1915 .text.prvSampleTimeNow timers.o - 0x08010224 0x08010224 0x000000d4 Code RO 1919 .text.prvSwitchTimerLists timers.o - 0x080102f8 0x080102f8 0x0000004c Code RO 2152 .text.prvTaskExitError port.o - 0x08010344 0x08010344 0x0000001e Code RO 1873 .text.prvTimerTask timers.o - 0x08010362 0x08010362 0x00000002 PAD - 0x08010364 0x08010364 0x000000ae Code RO 1591 .text.prvUnlockQueue queue.o - 0x08010412 0x08010412 0x00000002 PAD - 0x08010414 0x08010414 0x000001ec Code RO 2119 .text.pvPortMalloc heap_4.o - 0x08010600 0x08010600 0x0000002c Code RO 1818 .text.pvTaskIncrementMutexHeldCount tasks.o - 0x0801062c 0x0801062c 0x0000005e Code RO 2150 .text.pxPortInitialiseStack port.o - 0x0801068a 0x0801068a 0x00000006 PAD - 0x08010690 0x08010690 0x000000b0 Code RO 2934 .text.remote_ParseHost ai.o - 0x08010740 0x08010740 0x00000012 Code RO 2915 .text.remote_control_init remote_control.o - 0x08010752 0x08010752 0x00000006 PAD - 0x08010758 0x08010758 0x00000290 Code RO 2923 .text.sbus_to_rc remote_control.o - 0x080109e8 0x080109e8 0x00000052 Code RO 2974 .text.uint_to_float motor_dm.o - 0x08010a3a 0x08010a3a 0x00000002 PAD - 0x08010a3c 0x08010a3c 0x0000002e Code RO 2732 .text.user_delay_ms calc_lib.o - 0x08010a6a 0x08010a6a 0x00000002 PAD - 0x08010a6c 0x08010a6c 0x00000044 Code RO 2730 .text.user_delay_us calc_lib.o - 0x08010ab0 0x08010ab0 0x00000048 Code RO 1548 .text.uxListRemove list.o - 0x08010af8 0x08010af8 0x0000002a Code RO 2100 .text.vApplicationGetIdleTaskMemory cmsis_os2.o - 0x08010b22 0x08010b22 0x00000002 PAD - 0x08010b24 0x08010b24 0x0000002c Code RO 2102 .text.vApplicationGetTimerTaskMemory cmsis_os2.o - 0x08010b50 0x08010b50 0x0000000a Code RO 37 .text.vApplicationStackOverflowHook freertos.o - 0x08010b5a 0x08010b5a 0x00000002 PAD - 0x08010b5c 0x08010b5c 0x0000002e Code RO 1540 .text.vListInitialise list.o - 0x08010b8a 0x08010b8a 0x00000002 PAD - 0x08010b8c 0x08010b8c 0x0000000e Code RO 1542 .text.vListInitialiseItem list.o - 0x08010b9a 0x08010b9a 0x00000002 PAD - 0x08010b9c 0x08010b9c 0x0000006a Code RO 1546 .text.vListInsert list.o - 0x08010c06 0x08010c06 0x00000002 PAD - 0x08010c08 0x08010c08 0x0000003a Code RO 1544 .text.vListInsertEnd list.o - 0x08010c42 0x08010c42 0x00000002 PAD - 0x08010c44 0x08010c44 0x00000014 Code RO 2160 .text.vPortEnableVFP port.o - 0x08010c58 0x08010c58 0x00000056 Code RO 2166 .text.vPortEnterCritical port.o - 0x08010cae 0x08010cae 0x00000002 PAD - 0x08010cb0 0x08010cb0 0x0000004a Code RO 2168 .text.vPortExitCritical port.o - 0x08010cfa 0x08010cfa 0x00000002 PAD - 0x08010cfc 0x08010cfc 0x000000ce Code RO 2125 .text.vPortFree heap_4.o - 0x08010dca 0x08010dca 0x00000002 PAD - 0x08010dcc 0x08010dcc 0x00000044 Code RO 2158 .text.vPortSetupTimerInterrupt port.o - 0x08010e10 0x08010e10 0x00000084 Code RO 2174 .text.vPortValidateInterruptPriority port.o - 0x08010e94 0x08010e94 0x00000052 Code RO 1631 .text.vQueueAddToRegistry queue.o - 0x08010ee6 0x08010ee6 0x00000002 PAD - 0x08010ee8 0x08010ee8 0x00000064 Code RO 1635 .text.vQueueWaitForMessageRestricted queue.o - 0x08010f4c 0x08010f4c 0x0000006e Code RO 1724 .text.vTaskDelay tasks.o - 0x08010fba 0x08010fba 0x00000002 PAD - 0x08010fbc 0x08010fbc 0x00000114 Code RO 1716 .text.vTaskDelayUntil tasks.o - 0x080110d0 0x080110d0 0x0000010e Code RO 1710 .text.vTaskDelete tasks.o - 0x080111de 0x080111de 0x00000002 PAD - 0x080111e0 0x080111e0 0x00000024 Code RO 1782 .text.vTaskInternalSetTimeOutState tasks.o - 0x08011204 0x08011204 0x0000000e Code RO 1786 .text.vTaskMissedYield tasks.o - 0x08011212 0x08011212 0x00000002 PAD - 0x08011214 0x08011214 0x00000042 Code RO 1770 .text.vTaskPlaceOnEventList tasks.o - 0x08011256 0x08011256 0x00000002 PAD - 0x08011258 0x08011258 0x00000052 Code RO 1774 .text.vTaskPlaceOnEventListRestricted tasks.o - 0x080112aa 0x080112aa 0x00000002 PAD - 0x080112ac 0x080112ac 0x00000134 Code RO 1808 .text.vTaskPriorityDisinheritAfterTimeout tasks.o - 0x080113e0 0x080113e0 0x000000e4 Code RO 1744 .text.vTaskStartScheduler tasks.o - 0x080114c4 0x080114c4 0x00000010 Code RO 1718 .text.vTaskSuspendAll tasks.o - 0x080114d4 0x080114d4 0x00000180 Code RO 1736 .text.vTaskSwitchContext tasks.o - 0x08011654 0x08011654 0x00000156 Code RO 2156 .text.xPortStartScheduler port.o - 0x080117aa 0x080117aa 0x00000002 PAD - 0x080117ac 0x080117ac 0x0000003c Code RO 2172 .text.xPortSysTickHandler port.o - 0x080117e8 0x080117e8 0x00000026 Code RO 1565 .text.xQueueCreateMutex queue.o - 0x0801180e 0x0801180e 0x00000002 PAD - 0x08011810 0x08011810 0x00000032 Code RO 1569 .text.xQueueCreateMutexStatic queue.o - 0x08011842 0x08011842 0x00000002 PAD - 0x08011844 0x08011844 0x00000074 Code RO 1563 .text.xQueueGenericCreate queue.o - 0x080118b8 0x080118b8 0x0000010e Code RO 1559 .text.xQueueGenericCreateStatic queue.o - 0x080119c6 0x080119c6 0x00000002 PAD - 0x080119c8 0x080119c8 0x000000ba Code RO 1557 .text.xQueueGenericReset queue.o - 0x08011a82 0x08011a82 0x00000002 PAD - 0x08011a84 0x08011a84 0x0000022c Code RO 1577 .text.xQueueGenericSend queue.o - 0x08011cb0 0x08011cb0 0x0000014c Code RO 1593 .text.xQueueGenericSendFromISR queue.o - 0x08011dfc 0x08011dfc 0x0000006c Code RO 1575 .text.xQueueGiveMutexRecursive queue.o - 0x08011e68 0x08011e68 0x000001dc Code RO 1597 .text.xQueueReceive queue.o - 0x08012044 0x08012044 0x00000108 Code RO 1607 .text.xQueueReceiveFromISR queue.o - 0x0801214c 0x0801214c 0x0000022c Code RO 1581 .text.xQueueSemaphoreTake queue.o - 0x08012378 0x08012378 0x0000006e Code RO 1579 .text.xQueueTakeMutexRecursive queue.o - 0x080123e6 0x080123e6 0x00000002 PAD - 0x080123e8 0x080123e8 0x000000cc Code RO 1784 .text.xTaskCheckForTimeOut tasks.o - 0x080124b4 0x080124b4 0x0000009e Code RO 1708 .text.xTaskCreate tasks.o - 0x08012552 0x08012552 0x00000002 PAD - 0x08012554 0x08012554 0x000000ce Code RO 1702 .text.xTaskCreateStatic tasks.o - 0x08012622 0x08012622 0x00000002 PAD - 0x08012624 0x08012624 0x00000178 Code RO 1824 .text.xTaskGenericNotify tasks.o - 0x0801279c 0x0801279c 0x000001c4 Code RO 1826 .text.xTaskGenericNotifyFromISR tasks.o - 0x08012960 0x08012960 0x00000014 Code RO 1800 .text.xTaskGetCurrentTaskHandle tasks.o - 0x08012974 0x08012974 0x00000038 Code RO 1802 .text.xTaskGetSchedulerState tasks.o - 0x080129ac 0x080129ac 0x00000014 Code RO 1752 .text.xTaskGetTickCount tasks.o - 0x080129c0 0x080129c0 0x0000001e Code RO 1754 .text.xTaskGetTickCountFromISR tasks.o - 0x080129de 0x080129de 0x00000002 PAD - 0x080129e0 0x080129e0 0x000001c4 Code RO 1750 .text.xTaskIncrementTick tasks.o - 0x08012ba4 0x08012ba4 0x000000d6 Code RO 1822 .text.xTaskNotifyWait tasks.o - 0x08012c7a 0x08012c7a 0x00000002 PAD - 0x08012c7c 0x08012c7c 0x000000ec Code RO 1806 .text.xTaskPriorityDisinherit tasks.o - 0x08012d68 0x08012d68 0x0000010e Code RO 1804 .text.xTaskPriorityInherit tasks.o - 0x08012e76 0x08012e76 0x00000002 PAD - 0x08012e78 0x08012e78 0x000000ce Code RO 1776 .text.xTaskRemoveFromEventList tasks.o - 0x08012f46 0x08012f46 0x00000002 PAD - 0x08012f48 0x08012f48 0x00000186 Code RO 1722 .text.xTaskResumeAll tasks.o - 0x080130ce 0x080130ce 0x00000002 PAD - 0x080130d0 0x080130d0 0x00000094 Code RO 1869 .text.xTimerCreateTimerTask timers.o - 0x08013164 0x08013164 0x000000b0 Code RO 1881 .text.xTimerGenericCommand timers.o - 0x08013214 0x08013214 0x00000030 Code RO 3382 i.__ARM_fpclassify m_wm.l(fpclassify.o) - 0x08013244 0x08013244 0x00000026 Code RO 3312 i.__ARM_fpclassifyf m_wm.l(fpclassifyf.o) - 0x0801326a 0x0801326a 0x00000002 PAD - 0x0801326c 0x0801326c 0x0000012c Code RO 3126 i.__hardfp_asinf m_wm.l(asinf.o) - 0x08013398 0x08013398 0x000002d8 Code RO 3285 i.__hardfp_atan m_wm.l(atan.o) - 0x08013670 0x08013670 0x00000200 Code RO 3132 i.__hardfp_atan2 m_wm.l(atan2.o) - 0x08013870 0x08013870 0x000002ac Code RO 3138 i.__hardfp_atan2f m_wm.l(atan2f.o) - 0x08013b1c 0x08013b1c 0x00000150 Code RO 3144 i.__hardfp_cosf m_wm.l(cosf.o) - 0x08013c6c 0x08013c6c 0x0000017c Code RO 3150 i.__hardfp_tanf m_wm.l(tanf.o) - 0x08013de8 0x08013de8 0x000000f8 Code RO 3384 i.__kernel_poly m_wm.l(poly.o) - 0x08013ee0 0x08013ee0 0x00000014 Code RO 3293 i.__mathlib_dbl_infnan m_wm.l(dunder.o) - 0x08013ef4 0x08013ef4 0x00000014 Code RO 3294 i.__mathlib_dbl_infnan2 m_wm.l(dunder.o) - 0x08013f08 0x08013f08 0x00000020 Code RO 3298 i.__mathlib_dbl_underflow m_wm.l(dunder.o) - 0x08013f28 0x08013f28 0x00000006 Code RO 3315 i.__mathlib_flt_infnan m_wm.l(funder.o) - 0x08013f2e 0x08013f2e 0x00000006 Code RO 3316 i.__mathlib_flt_infnan2 m_wm.l(funder.o) - 0x08013f34 0x08013f34 0x00000010 Code RO 3317 i.__mathlib_flt_invalid m_wm.l(funder.o) - 0x08013f44 0x08013f44 0x00000010 Code RO 3320 i.__mathlib_flt_underflow m_wm.l(funder.o) - 0x08013f54 0x08013f54 0x00000154 Code RO 3329 i.__mathlib_rredf2 m_wm.l(rredf.o) - 0x080140a8 0x080140a8 0x00000010 Code RO 3287 i.atan m_wm.l(atan.o) - 0x080140b8 0x080140b8 0x00000018 Code RO 3308 i.fabs m_wm.l(fabs.o) - 0x080140d0 0x080140d0 0x0000003e Code RO 3334 i.sqrtf m_wm.l(sqrtf.o) - 0x0801410e 0x0801410e 0x00000018 Code RO 3258 x$fpl$basic fz_wm.l(basic.o) - 0x08014126 0x08014126 0x00000002 PAD - 0x08014128 0x08014128 0x00000062 Code RO 3100 x$fpl$d2f fz_wm.l(d2f.o) - 0x0801418a 0x0801418a 0x00000002 PAD - 0x0801418c 0x0801418c 0x00000150 Code RO 3260 x$fpl$dadd fz_wm.l(daddsub_clz.o) - 0x080142dc 0x080142dc 0x00000018 Code RO 3380 x$fpl$dcmpinf fz_wm.l(dcmpi.o) - 0x080142f4 0x080142f4 0x000002b4 Code RO 3103 x$fpl$ddiv fz_wm.l(ddiv.o) - 0x080145a8 0x080145a8 0x00000078 Code RO 3266 x$fpl$deqf fz_wm.l(deqf.o) - 0x08014620 0x08014620 0x0000005e Code RO 3106 x$fpl$dfix fz_wm.l(dfix.o) - 0x0801467e 0x0801467e 0x00000002 PAD - 0x08014680 0x08014680 0x0000005a Code RO 3110 x$fpl$dfixu fz_wm.l(dfixu.o) - 0x080146da 0x080146da 0x0000002e Code RO 3115 x$fpl$dflt fz_wm.l(dflt_clz.o) - 0x08014708 0x08014708 0x00000026 Code RO 3114 x$fpl$dfltu fz_wm.l(dflt_clz.o) - 0x0801472e 0x0801472e 0x00000002 PAD - 0x08014730 0x08014730 0x00000154 Code RO 3120 x$fpl$dmul fz_wm.l(dmul.o) - 0x08014884 0x08014884 0x0000009c Code RO 3268 x$fpl$dnaninf fz_wm.l(dnaninf.o) - 0x08014920 0x08014920 0x0000000c Code RO 3270 x$fpl$dretinf fz_wm.l(dretinf.o) - 0x0801492c 0x0801492c 0x00000016 Code RO 3261 x$fpl$drsb fz_wm.l(daddsub_clz.o) - 0x08014942 0x08014942 0x00000002 PAD - 0x08014944 0x08014944 0x000001dc Code RO 3262 x$fpl$dsub fz_wm.l(daddsub_clz.o) - 0x08014b20 0x08014b20 0x00000056 Code RO 3122 x$fpl$f2d fz_wm.l(f2d.o) - 0x08014b76 0x08014b76 0x00000060 Code RO 3124 x$fpl$ffltll fz_wm.l(ffltll_clz.o) - 0x08014bd6 0x08014bd6 0x0000008c Code RO 3272 x$fpl$fnaninf fz_wm.l(fnaninf.o) - 0x08014c62 0x08014c62 0x0000001a Code RO 3523 x$fpl$fpinit fz_wm.l(fpinit.o) - 0x08014c7c 0x08014c7c 0x0000000a Code RO 3274 x$fpl$fretinf fz_wm.l(fretinf.o) - 0x08014c86 0x08014c86 0x00000000 Code RO 3284 x$fpl$usenofp fz_wm.l(usenofp.o) - 0x08014c86 0x08014c86 0x00000002 PAD - 0x08014c88 0x08014c88 0x00000098 Data RO 3288 .constdata m_wm.l(atan.o) - 0x08014d20 0x08014d20 0x00000008 Data RO 3328 .constdata m_wm.l(qnan.o) - 0x08014d28 0x08014d28 0x00000020 Data RO 3330 .constdata m_wm.l(rredf.o) - 0x08014d48 0x08014d48 0x00000010 Data RO 1493 .rodata.AHBPrescTable system_stm32f4xx.o - 0x08014d58 0x08014d58 0x00000008 Data RO 1494 .rodata.APBPrescTable system_stm32f4xx.o - 0x08014d60 0x08014d60 0x00000008 Data RO 498 .rodata.DMA_CalcBaseAndBitshift.flagBitshiftOffset stm32f4xx_hal_dma.o - 0x08014d68 0x08014d68 0x00000038 Data RO 2290 .rodata.GPIO_Map gpio_1.o - 0x08014da0 0x08014da0 0x00000008 Data RO 2371 .rodata.PWM_Map pwm.o - 0x08014da8 0x08014da8 0x00000024 Data RO 3023 .rodata.attr_atti_esti user_task.o - 0x08014dcc 0x08014dcc 0x00000024 Data RO 3024 .rodata.attr_gimbal_ctrl user_task.o - 0x08014df0 0x08014df0 0x00000024 Data RO 3022 .rodata.attr_init user_task.o - 0x08014e14 0x08014e14 0x00000024 Data RO 3025 .rodata.attr_remote user_task.o - 0x08014e38 0x08014e38 0x00000024 Data RO 44 .rodata.defaultTask_attributes freertos.o - 0x08014e5c 0x08014e5c 0x00000020 Data RO 3001 .rodata.imu_temp_ctrl_pid_param atti_esti.o - 0x08014e7c 0x08014e7c 0x0000000c Data RO 43 .rodata.str1.1 freertos.o - 0x08014e88 0x08014e88 0x00000005 Data RO 1852 .rodata.str1.1 tasks.o - 0x08014e8d 0x08014e8d 0x0000000d Data RO 1924 .rodata.str1.1 timers.o - 0x08014e9a 0x08014e9a 0x00000027 Data RO 3021 .rodata.str1.1 user_task.o - 0x08014ec1 0x08014ec1 0x00000003 PAD - 0x08014ec4 0x08014ec4 0x00000020 Data RO 3584 Region$$Table anon$$obj.o + 0x0800e7d8 0x0800e7d8 0x0000003e Code RO 2702 .text.delay_init bsp_delay.o + 0x0800e816 0x0800e816 0x00000002 PAD + 0x0800e818 0x0800e818 0x000000f6 Code RO 1726 .text.eTaskGetState tasks.o + 0x0800e90e 0x0800e90e 0x00000002 PAD + 0x0800e910 0x0800e910 0x00000058 Code RO 2976 .text.float_to_uint motor_dm.o + 0x0800e968 0x0800e968 0x00000004 Code RO 35 .text.getRunTimeCounterValue freertos.o + 0x0800e96c 0x0800e96c 0x00000050 Code RO 11 .text.main main.o + 0x0800e9bc 0x0800e9bc 0x0000002a Code RO 2742 .text.map calc_lib.o + 0x0800e9e6 0x0800e9e6 0x00000002 PAD + 0x0800e9e8 0x0800e9e8 0x00000034 Code RO 2006 .text.osDelay cmsis_os2.o + 0x0800ea1c 0x0800ea1c 0x00000058 Code RO 2008 .text.osDelayUntil cmsis_os2.o + 0x0800ea74 0x0800ea74 0x00000052 Code RO 1944 .text.osKernelGetState cmsis_os2.o + 0x0800eac6 0x0800eac6 0x00000002 PAD + 0x0800eac8 0x0800eac8 0x00000026 Code RO 1956 .text.osKernelGetTickCount cmsis_os2.o + 0x0800eaee 0x0800eaee 0x00000002 PAD + 0x0800eaf0 0x0800eaf0 0x00000006 Code RO 1958 .text.osKernelGetTickFreq cmsis_os2.o + 0x0800eaf6 0x0800eaf6 0x00000002 PAD + 0x0800eaf8 0x0800eaf8 0x00000046 Code RO 1940 .text.osKernelInitialize cmsis_os2.o + 0x0800eb3e 0x0800eb3e 0x00000002 PAD + 0x0800eb40 0x0800eb40 0x00000056 Code RO 1950 .text.osKernelLock cmsis_os2.o + 0x0800eb96 0x0800eb96 0x00000002 PAD + 0x0800eb98 0x0800eb98 0x00000052 Code RO 1946 .text.osKernelStart cmsis_os2.o + 0x0800ebea 0x0800ebea 0x00000002 PAD + 0x0800ebec 0x0800ebec 0x0000006e Code RO 1952 .text.osKernelUnlock cmsis_os2.o + 0x0800ec5a 0x0800ec5a 0x00000002 PAD + 0x0800ec5c 0x0800ec5c 0x000000c0 Code RO 2060 .text.osMessageQueueGet cmsis_os2.o + 0x0800ed1c 0x0800ed1c 0x000000fe Code RO 2056 .text.osMessageQueueNew cmsis_os2.o + 0x0800ee1a 0x0800ee1a 0x00000002 PAD + 0x0800ee1c 0x0800ee1c 0x000000c4 Code RO 2058 .text.osMessageQueuePut cmsis_os2.o + 0x0800eee0 0x0800eee0 0x00000040 Code RO 2070 .text.osMessageQueueReset cmsis_os2.o + 0x0800ef20 0x0800ef20 0x0000009e Code RO 2038 .text.osMutexAcquire cmsis_os2.o + 0x0800efbe 0x0800efbe 0x00000002 PAD + 0x0800efc0 0x0800efc0 0x00000128 Code RO 2036 .text.osMutexNew cmsis_os2.o + 0x0800f0e8 0x0800f0e8 0x0000007e Code RO 2040 .text.osMutexRelease cmsis_os2.o + 0x0800f166 0x0800f166 0x00000002 PAD + 0x0800f168 0x0800f168 0x000000a4 Code RO 1998 .text.osThreadFlagsSet cmsis_os2.o + 0x0800f20c 0x0800f20c 0x0000011a Code RO 2004 .text.osThreadFlagsWait cmsis_os2.o + 0x0800f326 0x0800f326 0x00000002 PAD + 0x0800f328 0x0800f328 0x00000010 Code RO 1974 .text.osThreadGetId cmsis_os2.o + 0x0800f338 0x0800f338 0x0000015a Code RO 1970 .text.osThreadNew cmsis_os2.o + 0x0800f492 0x0800f492 0x00000002 PAD + 0x0800f494 0x0800f494 0x0000005e Code RO 1992 .text.osThreadTerminate cmsis_os2.o + 0x0800f4f2 0x0800f4f2 0x00000002 PAD + 0x0800f4f4 0x0800f4f4 0x000000d4 Code RO 1720 .text.prvAddCurrentTaskToDelayedList tasks.o + 0x0800f5c8 0x0800f5c8 0x00000122 Code RO 1706 .text.prvAddNewTaskToReadyList tasks.o + 0x0800f6ea 0x0800f6ea 0x00000002 PAD + 0x0800f6ec 0x0800f6ec 0x000000a2 Code RO 1871 .text.prvCheckForValidListAndQueue timers.o + 0x0800f78e 0x0800f78e 0x00000002 PAD + 0x0800f790 0x0800f790 0x0000005a Code RO 1836 .text.prvCheckTasksWaitingTermination tasks.o + 0x0800f7ea 0x0800f7ea 0x00000002 PAD + 0x0800f7ec 0x0800f7ec 0x00000042 Code RO 1599 .text.prvCopyDataFromQueue queue.o + 0x0800f82e 0x0800f82e 0x00000002 PAD + 0x0800f830 0x0800f830 0x000000cc Code RO 1587 .text.prvCopyDataToQueue queue.o + 0x0800f8fc 0x0800f8fc 0x0000005e Code RO 1712 .text.prvDeleteTCB tasks.o + 0x0800f95a 0x0800f95a 0x00000002 PAD + 0x0800f95c 0x0800f95c 0x00000026 Code RO 1603 .text.prvGetDisinheritPriorityAfterTimeout queue.o + 0x0800f982 0x0800f982 0x00000002 PAD + 0x0800f984 0x0800f984 0x00000040 Code RO 1909 .text.prvGetNextExpireTime timers.o + 0x0800f9c4 0x0800f9c4 0x000000bc Code RO 2121 .text.prvHeapInit heap_4.o + 0x0800fa80 0x0800fa80 0x00000038 Code RO 1746 .text.prvIdleTask tasks.o + 0x0800fab8 0x0800fab8 0x0000002c Code RO 1567 .text.prvInitialiseMutex queue.o + 0x0800fae4 0x0800fae4 0x00000048 Code RO 1561 .text.prvInitialiseNewQueue queue.o + 0x0800fb2c 0x0800fb2c 0x0000012c Code RO 1704 .text.prvInitialiseNewTask tasks.o + 0x0800fc58 0x0800fc58 0x0000008e Code RO 1834 .text.prvInitialiseTaskLists tasks.o + 0x0800fce6 0x0800fce6 0x00000002 PAD + 0x0800fce8 0x0800fce8 0x000000c6 Code RO 2123 .text.prvInsertBlockIntoFreeList heap_4.o + 0x0800fdae 0x0800fdae 0x00000002 PAD + 0x0800fdb0 0x0800fdb0 0x00000086 Code RO 1921 .text.prvInsertTimerInActiveList timers.o + 0x0800fe36 0x0800fe36 0x00000002 PAD + 0x0800fe38 0x0800fe38 0x00000028 Code RO 1601 .text.prvIsQueueEmpty queue.o + 0x0800fe60 0x0800fe60 0x0000002e Code RO 1589 .text.prvIsQueueFull queue.o + 0x0800fe8e 0x0800fe8e 0x00000002 PAD + 0x0800fe90 0x0800fe90 0x00000028 Code RO 2162 .text.prvPortStartFirstTask port.o + 0x0800feb8 0x0800feb8 0x0000008e Code RO 1917 .text.prvProcessExpiredTimer timers.o + 0x0800ff46 0x0800ff46 0x00000002 PAD + 0x0800ff48 0x0800ff48 0x00000192 Code RO 1913 .text.prvProcessReceivedCommands timers.o + 0x080100da 0x080100da 0x00000002 PAD + 0x080100dc 0x080100dc 0x0000009a Code RO 1911 .text.prvProcessTimerOrBlockTask timers.o + 0x08010176 0x08010176 0x00000002 PAD + 0x08010178 0x08010178 0x00000046 Code RO 1714 .text.prvResetNextTaskUnblockTime tasks.o + 0x080101be 0x080101be 0x00000002 PAD + 0x080101c0 0x080101c0 0x00000044 Code RO 1915 .text.prvSampleTimeNow timers.o + 0x08010204 0x08010204 0x000000d4 Code RO 1919 .text.prvSwitchTimerLists timers.o + 0x080102d8 0x080102d8 0x0000004c Code RO 2152 .text.prvTaskExitError port.o + 0x08010324 0x08010324 0x0000001e Code RO 1873 .text.prvTimerTask timers.o + 0x08010342 0x08010342 0x00000002 PAD + 0x08010344 0x08010344 0x000000ae Code RO 1591 .text.prvUnlockQueue queue.o + 0x080103f2 0x080103f2 0x00000002 PAD + 0x080103f4 0x080103f4 0x000001ec Code RO 2119 .text.pvPortMalloc heap_4.o + 0x080105e0 0x080105e0 0x0000002c Code RO 1818 .text.pvTaskIncrementMutexHeldCount tasks.o + 0x0801060c 0x0801060c 0x0000005e Code RO 2150 .text.pxPortInitialiseStack port.o + 0x0801066a 0x0801066a 0x00000006 PAD + 0x08010670 0x08010670 0x000000b0 Code RO 2934 .text.remote_ParseHost ai.o + 0x08010720 0x08010720 0x00000012 Code RO 2915 .text.remote_control_init remote_control.o + 0x08010732 0x08010732 0x00000006 PAD + 0x08010738 0x08010738 0x00000290 Code RO 2923 .text.sbus_to_rc remote_control.o + 0x080109c8 0x080109c8 0x00000052 Code RO 2974 .text.uint_to_float motor_dm.o + 0x08010a1a 0x08010a1a 0x00000002 PAD + 0x08010a1c 0x08010a1c 0x0000002e Code RO 2732 .text.user_delay_ms calc_lib.o + 0x08010a4a 0x08010a4a 0x00000002 PAD + 0x08010a4c 0x08010a4c 0x00000044 Code RO 2730 .text.user_delay_us calc_lib.o + 0x08010a90 0x08010a90 0x00000048 Code RO 1548 .text.uxListRemove list.o + 0x08010ad8 0x08010ad8 0x0000002a Code RO 2100 .text.vApplicationGetIdleTaskMemory cmsis_os2.o + 0x08010b02 0x08010b02 0x00000002 PAD + 0x08010b04 0x08010b04 0x0000002c Code RO 2102 .text.vApplicationGetTimerTaskMemory cmsis_os2.o + 0x08010b30 0x08010b30 0x0000000a Code RO 37 .text.vApplicationStackOverflowHook freertos.o + 0x08010b3a 0x08010b3a 0x00000002 PAD + 0x08010b3c 0x08010b3c 0x0000002e Code RO 1540 .text.vListInitialise list.o + 0x08010b6a 0x08010b6a 0x00000002 PAD + 0x08010b6c 0x08010b6c 0x0000000e Code RO 1542 .text.vListInitialiseItem list.o + 0x08010b7a 0x08010b7a 0x00000002 PAD + 0x08010b7c 0x08010b7c 0x0000006a Code RO 1546 .text.vListInsert list.o + 0x08010be6 0x08010be6 0x00000002 PAD + 0x08010be8 0x08010be8 0x0000003a Code RO 1544 .text.vListInsertEnd list.o + 0x08010c22 0x08010c22 0x00000002 PAD + 0x08010c24 0x08010c24 0x00000014 Code RO 2160 .text.vPortEnableVFP port.o + 0x08010c38 0x08010c38 0x00000056 Code RO 2166 .text.vPortEnterCritical port.o + 0x08010c8e 0x08010c8e 0x00000002 PAD + 0x08010c90 0x08010c90 0x0000004a Code RO 2168 .text.vPortExitCritical port.o + 0x08010cda 0x08010cda 0x00000002 PAD + 0x08010cdc 0x08010cdc 0x000000ce Code RO 2125 .text.vPortFree heap_4.o + 0x08010daa 0x08010daa 0x00000002 PAD + 0x08010dac 0x08010dac 0x00000044 Code RO 2158 .text.vPortSetupTimerInterrupt port.o + 0x08010df0 0x08010df0 0x00000084 Code RO 2174 .text.vPortValidateInterruptPriority port.o + 0x08010e74 0x08010e74 0x00000052 Code RO 1631 .text.vQueueAddToRegistry queue.o + 0x08010ec6 0x08010ec6 0x00000002 PAD + 0x08010ec8 0x08010ec8 0x00000064 Code RO 1635 .text.vQueueWaitForMessageRestricted queue.o + 0x08010f2c 0x08010f2c 0x0000006e Code RO 1724 .text.vTaskDelay tasks.o + 0x08010f9a 0x08010f9a 0x00000002 PAD + 0x08010f9c 0x08010f9c 0x00000114 Code RO 1716 .text.vTaskDelayUntil tasks.o + 0x080110b0 0x080110b0 0x0000010e Code RO 1710 .text.vTaskDelete tasks.o + 0x080111be 0x080111be 0x00000002 PAD + 0x080111c0 0x080111c0 0x00000024 Code RO 1782 .text.vTaskInternalSetTimeOutState tasks.o + 0x080111e4 0x080111e4 0x0000000e Code RO 1786 .text.vTaskMissedYield tasks.o + 0x080111f2 0x080111f2 0x00000002 PAD + 0x080111f4 0x080111f4 0x00000042 Code RO 1770 .text.vTaskPlaceOnEventList tasks.o + 0x08011236 0x08011236 0x00000002 PAD + 0x08011238 0x08011238 0x00000052 Code RO 1774 .text.vTaskPlaceOnEventListRestricted tasks.o + 0x0801128a 0x0801128a 0x00000002 PAD + 0x0801128c 0x0801128c 0x00000134 Code RO 1808 .text.vTaskPriorityDisinheritAfterTimeout tasks.o + 0x080113c0 0x080113c0 0x000000e4 Code RO 1744 .text.vTaskStartScheduler tasks.o + 0x080114a4 0x080114a4 0x00000010 Code RO 1718 .text.vTaskSuspendAll tasks.o + 0x080114b4 0x080114b4 0x00000180 Code RO 1736 .text.vTaskSwitchContext tasks.o + 0x08011634 0x08011634 0x00000156 Code RO 2156 .text.xPortStartScheduler port.o + 0x0801178a 0x0801178a 0x00000002 PAD + 0x0801178c 0x0801178c 0x0000003c Code RO 2172 .text.xPortSysTickHandler port.o + 0x080117c8 0x080117c8 0x00000026 Code RO 1565 .text.xQueueCreateMutex queue.o + 0x080117ee 0x080117ee 0x00000002 PAD + 0x080117f0 0x080117f0 0x00000032 Code RO 1569 .text.xQueueCreateMutexStatic queue.o + 0x08011822 0x08011822 0x00000002 PAD + 0x08011824 0x08011824 0x00000074 Code RO 1563 .text.xQueueGenericCreate queue.o + 0x08011898 0x08011898 0x0000010e Code RO 1559 .text.xQueueGenericCreateStatic queue.o + 0x080119a6 0x080119a6 0x00000002 PAD + 0x080119a8 0x080119a8 0x000000ba Code RO 1557 .text.xQueueGenericReset queue.o + 0x08011a62 0x08011a62 0x00000002 PAD + 0x08011a64 0x08011a64 0x0000022c Code RO 1577 .text.xQueueGenericSend queue.o + 0x08011c90 0x08011c90 0x0000014c Code RO 1593 .text.xQueueGenericSendFromISR queue.o + 0x08011ddc 0x08011ddc 0x0000006c Code RO 1575 .text.xQueueGiveMutexRecursive queue.o + 0x08011e48 0x08011e48 0x000001dc Code RO 1597 .text.xQueueReceive queue.o + 0x08012024 0x08012024 0x00000108 Code RO 1607 .text.xQueueReceiveFromISR queue.o + 0x0801212c 0x0801212c 0x0000022c Code RO 1581 .text.xQueueSemaphoreTake queue.o + 0x08012358 0x08012358 0x0000006e Code RO 1579 .text.xQueueTakeMutexRecursive queue.o + 0x080123c6 0x080123c6 0x00000002 PAD + 0x080123c8 0x080123c8 0x000000cc Code RO 1784 .text.xTaskCheckForTimeOut tasks.o + 0x08012494 0x08012494 0x0000009e Code RO 1708 .text.xTaskCreate tasks.o + 0x08012532 0x08012532 0x00000002 PAD + 0x08012534 0x08012534 0x000000ce Code RO 1702 .text.xTaskCreateStatic tasks.o + 0x08012602 0x08012602 0x00000002 PAD + 0x08012604 0x08012604 0x00000178 Code RO 1824 .text.xTaskGenericNotify tasks.o + 0x0801277c 0x0801277c 0x000001c4 Code RO 1826 .text.xTaskGenericNotifyFromISR tasks.o + 0x08012940 0x08012940 0x00000014 Code RO 1800 .text.xTaskGetCurrentTaskHandle tasks.o + 0x08012954 0x08012954 0x00000038 Code RO 1802 .text.xTaskGetSchedulerState tasks.o + 0x0801298c 0x0801298c 0x00000014 Code RO 1752 .text.xTaskGetTickCount tasks.o + 0x080129a0 0x080129a0 0x0000001e Code RO 1754 .text.xTaskGetTickCountFromISR tasks.o + 0x080129be 0x080129be 0x00000002 PAD + 0x080129c0 0x080129c0 0x000001c4 Code RO 1750 .text.xTaskIncrementTick tasks.o + 0x08012b84 0x08012b84 0x000000d6 Code RO 1822 .text.xTaskNotifyWait tasks.o + 0x08012c5a 0x08012c5a 0x00000002 PAD + 0x08012c5c 0x08012c5c 0x000000ec Code RO 1806 .text.xTaskPriorityDisinherit tasks.o + 0x08012d48 0x08012d48 0x0000010e Code RO 1804 .text.xTaskPriorityInherit tasks.o + 0x08012e56 0x08012e56 0x00000002 PAD + 0x08012e58 0x08012e58 0x000000ce Code RO 1776 .text.xTaskRemoveFromEventList tasks.o + 0x08012f26 0x08012f26 0x00000002 PAD + 0x08012f28 0x08012f28 0x00000186 Code RO 1722 .text.xTaskResumeAll tasks.o + 0x080130ae 0x080130ae 0x00000002 PAD + 0x080130b0 0x080130b0 0x00000094 Code RO 1869 .text.xTimerCreateTimerTask timers.o + 0x08013144 0x08013144 0x000000b0 Code RO 1881 .text.xTimerGenericCommand timers.o + 0x080131f4 0x080131f4 0x00000030 Code RO 3382 i.__ARM_fpclassify m_wm.l(fpclassify.o) + 0x08013224 0x08013224 0x00000026 Code RO 3312 i.__ARM_fpclassifyf m_wm.l(fpclassifyf.o) + 0x0801324a 0x0801324a 0x00000002 PAD + 0x0801324c 0x0801324c 0x0000012c Code RO 3126 i.__hardfp_asinf m_wm.l(asinf.o) + 0x08013378 0x08013378 0x000002d8 Code RO 3285 i.__hardfp_atan m_wm.l(atan.o) + 0x08013650 0x08013650 0x00000200 Code RO 3132 i.__hardfp_atan2 m_wm.l(atan2.o) + 0x08013850 0x08013850 0x000002ac Code RO 3138 i.__hardfp_atan2f m_wm.l(atan2f.o) + 0x08013afc 0x08013afc 0x00000150 Code RO 3144 i.__hardfp_cosf m_wm.l(cosf.o) + 0x08013c4c 0x08013c4c 0x0000017c Code RO 3150 i.__hardfp_tanf m_wm.l(tanf.o) + 0x08013dc8 0x08013dc8 0x000000f8 Code RO 3384 i.__kernel_poly m_wm.l(poly.o) + 0x08013ec0 0x08013ec0 0x00000014 Code RO 3293 i.__mathlib_dbl_infnan m_wm.l(dunder.o) + 0x08013ed4 0x08013ed4 0x00000014 Code RO 3294 i.__mathlib_dbl_infnan2 m_wm.l(dunder.o) + 0x08013ee8 0x08013ee8 0x00000020 Code RO 3298 i.__mathlib_dbl_underflow m_wm.l(dunder.o) + 0x08013f08 0x08013f08 0x00000006 Code RO 3315 i.__mathlib_flt_infnan m_wm.l(funder.o) + 0x08013f0e 0x08013f0e 0x00000006 Code RO 3316 i.__mathlib_flt_infnan2 m_wm.l(funder.o) + 0x08013f14 0x08013f14 0x00000010 Code RO 3317 i.__mathlib_flt_invalid m_wm.l(funder.o) + 0x08013f24 0x08013f24 0x00000010 Code RO 3320 i.__mathlib_flt_underflow m_wm.l(funder.o) + 0x08013f34 0x08013f34 0x00000154 Code RO 3329 i.__mathlib_rredf2 m_wm.l(rredf.o) + 0x08014088 0x08014088 0x00000010 Code RO 3287 i.atan m_wm.l(atan.o) + 0x08014098 0x08014098 0x00000018 Code RO 3308 i.fabs m_wm.l(fabs.o) + 0x080140b0 0x080140b0 0x0000003e Code RO 3334 i.sqrtf m_wm.l(sqrtf.o) + 0x080140ee 0x080140ee 0x00000018 Code RO 3258 x$fpl$basic fz_wm.l(basic.o) + 0x08014106 0x08014106 0x00000002 PAD + 0x08014108 0x08014108 0x00000062 Code RO 3100 x$fpl$d2f fz_wm.l(d2f.o) + 0x0801416a 0x0801416a 0x00000002 PAD + 0x0801416c 0x0801416c 0x00000150 Code RO 3260 x$fpl$dadd fz_wm.l(daddsub_clz.o) + 0x080142bc 0x080142bc 0x00000018 Code RO 3380 x$fpl$dcmpinf fz_wm.l(dcmpi.o) + 0x080142d4 0x080142d4 0x000002b4 Code RO 3103 x$fpl$ddiv fz_wm.l(ddiv.o) + 0x08014588 0x08014588 0x00000078 Code RO 3266 x$fpl$deqf fz_wm.l(deqf.o) + 0x08014600 0x08014600 0x0000005e Code RO 3106 x$fpl$dfix fz_wm.l(dfix.o) + 0x0801465e 0x0801465e 0x00000002 PAD + 0x08014660 0x08014660 0x0000005a Code RO 3110 x$fpl$dfixu fz_wm.l(dfixu.o) + 0x080146ba 0x080146ba 0x0000002e Code RO 3115 x$fpl$dflt fz_wm.l(dflt_clz.o) + 0x080146e8 0x080146e8 0x00000026 Code RO 3114 x$fpl$dfltu fz_wm.l(dflt_clz.o) + 0x0801470e 0x0801470e 0x00000002 PAD + 0x08014710 0x08014710 0x00000154 Code RO 3120 x$fpl$dmul fz_wm.l(dmul.o) + 0x08014864 0x08014864 0x0000009c Code RO 3268 x$fpl$dnaninf fz_wm.l(dnaninf.o) + 0x08014900 0x08014900 0x0000000c Code RO 3270 x$fpl$dretinf fz_wm.l(dretinf.o) + 0x0801490c 0x0801490c 0x00000016 Code RO 3261 x$fpl$drsb fz_wm.l(daddsub_clz.o) + 0x08014922 0x08014922 0x00000002 PAD + 0x08014924 0x08014924 0x000001dc Code RO 3262 x$fpl$dsub fz_wm.l(daddsub_clz.o) + 0x08014b00 0x08014b00 0x00000056 Code RO 3122 x$fpl$f2d fz_wm.l(f2d.o) + 0x08014b56 0x08014b56 0x00000060 Code RO 3124 x$fpl$ffltll fz_wm.l(ffltll_clz.o) + 0x08014bb6 0x08014bb6 0x0000008c Code RO 3272 x$fpl$fnaninf fz_wm.l(fnaninf.o) + 0x08014c42 0x08014c42 0x0000001a Code RO 3523 x$fpl$fpinit fz_wm.l(fpinit.o) + 0x08014c5c 0x08014c5c 0x0000000a Code RO 3274 x$fpl$fretinf fz_wm.l(fretinf.o) + 0x08014c66 0x08014c66 0x00000000 Code RO 3284 x$fpl$usenofp fz_wm.l(usenofp.o) + 0x08014c66 0x08014c66 0x00000002 PAD + 0x08014c68 0x08014c68 0x00000098 Data RO 3288 .constdata m_wm.l(atan.o) + 0x08014d00 0x08014d00 0x00000008 Data RO 3328 .constdata m_wm.l(qnan.o) + 0x08014d08 0x08014d08 0x00000020 Data RO 3330 .constdata m_wm.l(rredf.o) + 0x08014d28 0x08014d28 0x00000010 Data RO 1493 .rodata.AHBPrescTable system_stm32f4xx.o + 0x08014d38 0x08014d38 0x00000008 Data RO 1494 .rodata.APBPrescTable system_stm32f4xx.o + 0x08014d40 0x08014d40 0x00000008 Data RO 498 .rodata.DMA_CalcBaseAndBitshift.flagBitshiftOffset stm32f4xx_hal_dma.o + 0x08014d48 0x08014d48 0x00000038 Data RO 2290 .rodata.GPIO_Map gpio_1.o + 0x08014d80 0x08014d80 0x00000008 Data RO 2371 .rodata.PWM_Map pwm.o + 0x08014d88 0x08014d88 0x00000024 Data RO 3023 .rodata.attr_atti_esti user_task.o + 0x08014dac 0x08014dac 0x00000024 Data RO 3024 .rodata.attr_gimbal_ctrl user_task.o + 0x08014dd0 0x08014dd0 0x00000024 Data RO 3022 .rodata.attr_init user_task.o + 0x08014df4 0x08014df4 0x00000024 Data RO 3025 .rodata.attr_remote user_task.o + 0x08014e18 0x08014e18 0x00000024 Data RO 44 .rodata.defaultTask_attributes freertos.o + 0x08014e3c 0x08014e3c 0x00000020 Data RO 3001 .rodata.imu_temp_ctrl_pid_param atti_esti.o + 0x08014e5c 0x08014e5c 0x0000000c Data RO 43 .rodata.str1.1 freertos.o + 0x08014e68 0x08014e68 0x00000005 Data RO 1852 .rodata.str1.1 tasks.o + 0x08014e6d 0x08014e6d 0x0000000d Data RO 1924 .rodata.str1.1 timers.o + 0x08014e7a 0x08014e7a 0x00000027 Data RO 3021 .rodata.str1.1 user_task.o + 0x08014ea1 0x08014ea1 0x00000003 PAD + 0x08014ea4 0x08014ea4 0x00000020 Data RO 3584 Region$$Table anon$$obj.o - Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08014ee8, Size: 0x00008788, Max: 0x0001c000, ABSOLUTE, COMPRESSED[0x00000098]) + Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08014ec8, Size: 0x00008788, Max: 0x0001c000, ABSOLUTE, COMPRESSED[0x00000078]) Exec Addr Load Addr Size Type Attr Idx E Section Name Object @@ -8666,7 +8666,7 @@ Memory Map of the image 0x20008388 - 0x00000400 Zero RW 1 STACK startup_stm32f407xx.o - Execution Region RW_IRAM2 (Exec base: 0x2001c000, Load base: 0x08014f80, Size: 0x00000000, Max: 0x00004000, ABSOLUTE) + Execution Region RW_IRAM2 (Exec base: 0x2001c000, Load base: 0x08014f40, Size: 0x00000000, Max: 0x00004000, ABSOLUTE) **** No section assigned to this execution region **** @@ -8688,12 +8688,12 @@ Image component sizes 620 0 0 0 84 6422 can.o 3946 4 0 0 2181 14234 can_1.o 2968 0 0 0 1740 35206 cmsis_os2.o - 10 0 0 400 0 2789 config.o + 10 0 0 400 0 2785 config.o 134 0 0 0 0 3297 dma.o 780 8 0 0 0 3412 filter.o 98 0 48 0 4 3084 freertos.o - 2664 40 0 0 0 8578 gimbal.o - 236 12 0 0 780 5095 gimbal_ctrl.o + 2600 40 0 0 0 8456 gimbal.o + 236 12 0 0 780 5075 gimbal_ctrl.o 554 0 0 0 0 4164 gpio.o 576 12 56 0 64 4722 gpio_1.o 1084 0 0 0 24608 4434 heap_4.o @@ -8738,7 +8738,7 @@ Image component sizes 0 0 183 0 80 3063 user_task.o ---------------------------------------------------------------------- - 77048 302 804 420 34180 454309 Object Totals + 76984 302 804 420 34180 454163 Object Totals 0 0 32 0 0 0 (incl. Generated) 390 4 3 3 30 0 (incl. Padding) @@ -8746,7 +8746,7 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug Library Member Name - 58 0 0 0 0 0 __dczerorl.o + 90 0 0 0 0 0 __dczerorl2.o 8 0 0 0 0 68 __main.o 0 0 0 0 0 0 __rtentry.o 12 0 0 0 0 0 __rtentry2.o @@ -8808,19 +8808,19 @@ Image component sizes 380 58 0 0 0 200 tanf.o ---------------------------------------------------------------------- - 7688 676 192 0 96 6964 Library Totals + 7720 676 192 0 96 6964 Library Totals 20 0 0 0 0 0 (incl. Padding) ---------------------------------------------------------------------- Code (inc. data) RO Data RW Data ZI Data Debug Library Name - 910 20 0 0 96 1148 c_w.l + 942 20 0 0 96 1148 c_w.l 2926 196 0 0 0 2888 fz_wm.l 3832 460 192 0 0 2928 m_wm.l ---------------------------------------------------------------------- - 7688 676 192 0 96 6964 Library Totals + 7720 676 192 0 96 6964 Library Totals ---------------------------------------------------------------------- @@ -8829,15 +8829,15 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug - 84736 978 996 420 34276 456073 Grand Totals - 84736 978 996 152 34276 456073 ELF Image Totals (compressed) - 84736 978 996 152 0 0 ROM Totals + 84704 978 996 420 34276 455927 Grand Totals + 84704 978 996 120 34276 455927 ELF Image Totals (compressed) + 84704 978 996 120 0 0 ROM Totals ============================================================================== - Total RO Size (Code + RO Data) 85732 ( 83.72kB) + Total RO Size (Code + RO Data) 85700 ( 83.69kB) Total RW Size (RW Data + ZI Data) 34696 ( 33.88kB) - Total ROM Size (Code + RO Data + RW Data) 85884 ( 83.87kB) + Total ROM Size (Code + RO Data + RW Data) 85820 ( 83.81kB) ============================================================================== diff --git a/MDK-ARM/gimbal/gimbal.o b/MDK-ARM/gimbal/gimbal.o index a4279e626d5c1107c49c879a6ccda3e4a4942602..a7bddf11524ba249c3dcd261903254f316cb66a9 100644 GIT binary patch delta 3306 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 delta 1665 zcmYk6e`u9u6vxl=yzhD5_ul(ncZb*QZnJr}yIrE3IMJighig{ScJRxv07_m2#sNRW)Om_*w5x!cpaaL@ZW-{(B% zJi})mXQuBbzY4DWhcRY^RM33t| zMe(U^|>ZGcdUu7bbI_Kz2WQNbj$$1#X{G%5xbVw)Ii+%UH@Gkn}R+%ESN2bz$S%o6C6@i&g z(1cDIZnnA2@Cz*l*;okK_!nx)SWJO<3M`9y36Bn=(mtUEsH2m)$oLgt0n&4@ZC1+uawzy zkDDUCgcbb()ry5=)dN0-pbBS>qVhvMa4B>UR)kK#N(yX3l=n6YwVFT$fIvdU135f} zb)7koOMKOEp3T<`=ezv7;e{UmnKI685uP?&80EhW$738q{!G#$6gY(!u7MzzVrHv& z)$E!?i&h)1w#jlackMdv0H$T%+-&dv-)#5WoceE!UU%ol$j6Hskl?yb(5IHk-CTg4 z?bNf}Lwp7e*`m2OrsDF|O!CXx-!qdu!+RrW&udVR>m<8yS#mp@^&DDN$ zD4JRWg~ID#Q{hKoJHyYw?g+mG+Y#=8Z4bW*yFGja_7;8)xvPO}&(rU}iobX=4I!8( zM3(IL&S!WUMMPx3`>pm0Z_If1ui7iV36HWp{RmruAkj~dMZJ3|o$Wns*$*YRZA@>= zniNh8sBLqrzcxFjG&gNcKb2h=5nKGOqE_*of1_xf*yT4CUlV=)^2F`p4?mem$l!c` mZ=y`B@`n=Tu#>O@z9=adYyHKr7yb3H8~irdLI2&7+u8 diff --git a/MDK-ARM/gimbal/gimbal_gimbal.dep b/MDK-ARM/gimbal/gimbal_gimbal.dep index 2a61709..d27286a 100644 --- a/MDK-ARM/gimbal/gimbal_gimbal.dep +++ b/MDK-ARM/gimbal/gimbal_gimbal.dep @@ -2126,7 +2126,7 @@ I (D:\Keil_v5\ARM\ARMCLANG\include\math.h)(0x6035A4A8) I (D:\Keil_v5\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8) I (D:\Keil_v5\ARM\ARMCLANG\include\stdint.h)(0x6035A4A8) I (D:\Keil_v5\ARM\ARMCLANG\include\stddef.h)(0x6035A4A8) -I (..\User\module\gimbal.h)(0x691489EC) +I (..\User\module\gimbal.h)(0x691491D4) I (..\User\component\ahrs.h)(0x68F3410E) I (..\User\component\filter.h)(0x68F22FA9) I (..\User\component\pid.h)(0x68F22FA9) @@ -2264,7 +2264,7 @@ I (..\Middlewares\Third_Party\FreeRTOS\Source\portable\RVDS\ARM_CM4F\portmacro.h I (..\Middlewares\Third_Party\FreeRTOS\Source\include\mpu_wrappers.h)(0x68B055DB) I (..\Middlewares\Third_Party\FreeRTOS\Source\include\task.h)(0x68B055DB) I (..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h)(0x68B055DB) -I (..\User\module\gimbal.h)(0x691489EC) +I (..\User\module\gimbal.h)(0x691491D4) I (..\User\component\ahrs.h)(0x68F3410E) I (..\User\component\user_math.h)(0x68F22FA9) I (D:\Keil_v5\ARM\ARMCLANG\include\float.h)(0x6035A4A0) @@ -2376,7 +2376,7 @@ I (..\User\component\pid.h)(0x68F22FA9) I (..\User\component\filter.h)(0x68F22FA9) I (..\User\device\bmi088.h)(0x68F22F87) I (..\User\device\device.h)(0x68F22FA9) -I (..\User\module\gimbal.h)(0x691489EC) +I (..\User\module\gimbal.h)(0x691491D4) I (..\User\device\motor.h)(0x68F22F87) I (..\User\device\motor_dm.h)(0x68F22F87) I (..\User\bsp\can.h)(0x68F22FA9) @@ -2407,7 +2407,7 @@ I (..\User\component\user_math.h)(0x68F22FA9) I (D:\Keil_v5\ARM\ARMCLANG\include\float.h)(0x6035A4A0) I (D:\Keil_v5\ARM\ARMCLANG\include\math.h)(0x6035A4A8) I (D:\Keil_v5\ARM\ARMCLANG\include\stdbool.h)(0x6035A4A8) -I (..\User\module\gimbal.h)(0x691489EC) +I (..\User\module\gimbal.h)(0x691491D4) I (..\User\component\ahrs.h)(0x68F3410E) I (..\User\component\filter.h)(0x68F22FA9) I (..\User\component\pid.h)(0x68F22FA9) @@ -2481,7 +2481,7 @@ I (..\Middlewares\Third_Party\FreeRTOS\Source\portable\RVDS\ARM_CM4F\portmacro.h I (..\Middlewares\Third_Party\FreeRTOS\Source\include\mpu_wrappers.h)(0x68B055DB) I (..\Middlewares\Third_Party\FreeRTOS\Source\include\task.h)(0x68B055DB) I (..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h)(0x68B055DB) -I (..\User\module\gimbal.h)(0x691489EC) +I (..\User\module\gimbal.h)(0x691491D4) I (..\User\component\ahrs.h)(0x68F3410E) I (..\User\component\user_math.h)(0x68F22FA9) I (D:\Keil_v5\ARM\ARMCLANG\include\float.h)(0x6035A4A0) @@ -2534,8 +2534,8 @@ I (..\User\device\motor_rm.h)(0x68F22F87) I (..\User\module\config.h)(0x68DD3463) I (..\User\device\motor_lz.h)(0x68F22F87) I (..\User\device\motor_lk.h)(0x68F22F87) -F (..\User\module\gimbal.c)(0x69148AFD)(-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 -O0 -ffunction-sections -w -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 ../User/bsp -I ../User/component -I ../User/device -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/task -I ../User -I ../User/module -I./RTE/_gimbal -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o gimbal/gimbal.o -MD) -I (..\User\module\gimbal.h)(0x691489EC) +F (..\User\module\gimbal.c)(0x691495F0)(-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 -O0 -ffunction-sections -w -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 ../User/bsp -I ../User/component -I ../User/device -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/task -I ../User -I ../User/module -I./RTE/_gimbal -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o gimbal/gimbal.o -MD) +I (..\User\module\gimbal.h)(0x691491D4) I (..\User\component\ahrs.h)(0x68F3410E) I (..\User\component\user_math.h)(0x68F22FA9) I (D:\Keil_v5\ARM\ARMCLANG\include\float.h)(0x6035A4A0) @@ -2598,7 +2598,7 @@ I (..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h)(0x68B055DB) I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68B055DB) I (..\User\device\motor_rm.h)(0x68F22F87) I (..\User\bsp\time.h)(0x68F22FA9) -F (..\User\module\config.c)(0x691488E2)(-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 -O0 -ffunction-sections -w -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 ../User/bsp -I ../User/component -I ../User/device -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/task -I ../User -I ../User/module -I./RTE/_gimbal -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o gimbal/config.o -MD) +F (..\User\module\config.c)(0x691493B1)(-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 -O0 -ffunction-sections -w -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 ../User/bsp -I ../User/component -I ../User/device -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/task -I ../User -I ../User/module -I./RTE/_gimbal -ID:/Keil_v5/Arm/Packs/ARM/CMSIS/5.7.0/CMSIS/Core/Include -ID:/Keil_v5/Arm/Packs/Keil/STM32F4xx_DFP/2.17.1/Drivers/CMSIS/Device/ST/STM32F4xx/Include -D__UVISION_VERSION="534" -D_RTE_ -DSTM32F407xx -D_RTE_ -DUSE_HAL_DRIVER -DSTM32F407xx -o gimbal/config.o -MD) I (..\User\component\user_math.h)(0x68F22FA9) I (D:\Keil_v5\ARM\ARMCLANG\include\float.h)(0x6035A4A0) I (D:\Keil_v5\ARM\ARMCLANG\include\math.h)(0x6035A4A8) @@ -2658,7 +2658,7 @@ I (..\Middlewares\Third_Party\FreeRTOS\Source\include\task.h)(0x68B055DB) I (..\Middlewares\Third_Party\FreeRTOS\Source\include\list.h)(0x68B055DB) I (..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS_V2\cmsis_os2.h)(0x68B055DB) I (..\User\device\motor_lk.h)(0x68F22F87) -I (..\User\module\gimbal.h)(0x691489EC) +I (..\User\module\gimbal.h)(0x691491D4) I (..\User\component\ahrs.h)(0x68F3410E) I (..\User\component\filter.h)(0x68F22FA9) I (..\User\component\pid.h)(0x68F22FA9) diff --git a/MDK-ARM/gimbal/remote.o b/MDK-ARM/gimbal/remote.o index b142e47565171c4d719005390239a8dd4b3e4240..88fd4bd53941cb7c68e520a193bddbf45ac47fa7 100644 GIT binary patch delta 41 ucmaDO`$l$y2a`-Aiv(jGD=Q-d!z~5|2F7{@Rv93h4~Q8XHm5Lk@BjeDTnGsO delta 41 ucmaDO`$l$y2a`+-iv(jMD=Q-d!z~5|2F4}^Rv93h4~Q9?H>WUl@BjeEUI-Nc diff --git a/User/module/config.c b/User/module/config.c index 5fe5f93..ea73f96 100644 --- a/User/module/config.c +++ b/User/module/config.c @@ -20,11 +20,11 @@ Config_RobotParam_t robot_config = { .gimbal_param = { /*欧拉角限位和电机角度限位*/ - .Set_Limit_t= { + .Limit_t= { .pit_max=0.69, .pit_min=-0.47, -// .yaw_max= 1.0,//yaw的 -// .yaw_min=-1.0, + .yaw_max= 1.0,//yaw的 + .yaw_min=-1.0, }, diff --git a/User/module/gimbal.c b/User/module/gimbal.c index b8abdfe..b9e77ce 100644 --- a/User/module/gimbal.c +++ b/User/module/gimbal.c @@ -106,29 +106,16 @@ int8_t Gimbal_Init(Gimbal_t *g,Gimbal_Params_t *param, PID_Init(&(g->pid.pit_velocity), KPID_MODE_CALC_D, target_freq, &(g->param->pid.pit_velocity)); - + g->limit.yaw.max = g->param->Limit_t.yaw_max; + g->limit.yaw.min = g->param->Limit_t.yaw_min; + LowPassFilter2p_Init(&g->filter_out.yaw, target_freq, g->param->low_pass_cutoff_freq.out); LowPassFilter2p_Init(&g->filter_out.pit, target_freq, g->param->low_pass_cutoff_freq.out); -// g->limit.yaw.max = g->param->mech_zero.yaw + g->param->travel.yaw; -// g->limit.yaw.min = g->param->mech_zero.yaw; -// g->limit.pit.max = g->param->mech_zero.pit + g->param->travel.pit; -// g->limit.pit.min = g->param->mech_zero.pit; - /*输出限位*/ - g->limit.set_pit.max=g->param->Set_Limit_t.pit_max; - g->limit.set_pit.min=g->param->Set_Limit_t.pit_min; - g->limit.set_yaw.max=g->param->Set_Limit_t.yaw_max; - g->limit.set_yaw.min=g->param->Set_Limit_t.yaw_min; - - g->zero.yaw=g->param->zero.yaw; - g->zero.pit=g->param->zero.pit; - g->zero.yaw_encoder=g->param->zero.yaw_encoder; - g->zero.pit_encoder=g->param->zero.pit_encoder; - g->zero.travel.yaw=g->param->zero.travel.yaw; - g->zero.travel.pit=g->param->zero.travel.pit; + BSP_CAN_Init(); /*大疆电机注册*/ @@ -249,9 +236,9 @@ int8_t Gimbal_Control(Gimbal_t *g, Gimbal_CMD_t *g_cmd) { if (motor_imu_offset > M_PI) motor_imu_offset -= M_2PI; if (motor_imu_offset < -M_PI) motor_imu_offset += M_2PI; /* 计算到限位边界的距离 (这个限位给yaw)*/ - float delta_max = CircleError(g->limit.set_yaw.max, + float delta_max = CircleError(g->limit.yaw.max, (g->setpoint.eulr.yaw + motor_imu_offset + delta_yaw), M_2PI); - float delta_min = CircleError(g->limit.set_yaw.min, + float delta_min = CircleError(g->limit.yaw.min, (g->setpoint.eulr.yaw + motor_imu_offset + delta_yaw), M_2PI); switch (g->mode) { @@ -271,10 +258,9 @@ int8_t Gimbal_Control(Gimbal_t *g, Gimbal_CMD_t *g_cmd) { /* 处理pitch控制命令,软件限位 - 使用电机绝对角度 */ g->setpoint.eulr.pit+=delta_pit; - - if (g->param->motor.limit_pit == true) - /* 限制pit控制命令 */ - Clip(&(g->setpoint.eulr.pit),g->limit.set_pit.min,g->limit.set_pit.max); + /* 限制pit控制命令 */ + if (g->param->motor.limit_pit == true) + Clip(&(g->setpoint.eulr.pit),g->param->Limit_t.pit_min,g->param->Limit_t.pit_max); yaw_omega_set_point = PID_Calc(&(g->pid.yaw_angle), g->setpoint.eulr.yaw, g->feedback.imu.eulr.yaw, 0.0f, g->dt); @@ -295,12 +281,12 @@ int8_t Gimbal_Control(Gimbal_t *g, Gimbal_CMD_t *g_cmd) { break; case GIMBAL_MODE_RELATIVE: /*计算零点*/ - g->zero.yaw = g->zero.yaw_encoder - g->zero.travel.yaw; - g->zero.pit = g->zero.pit_encoder - g->zero.travel.pit; + g->zero.yaw = g->param->zero.yaw_encoder - g->param->zero.travel.yaw; + g->zero.pit = g->param->zero.pit_encoder - g->param->zero.travel.pit; /*基于零点的设定角度*/ /*加的相对角度应该限制在3.14~-3.14*/ CircleAdd(&(g->relative_angle.yaw),delta_yaw,M_2PI); - if((g->relative_angle.yaw)>=M_2PI)g->relative_angle.yaw-=(M_2PI); + if((g->relative_angle.yaw)>=M_2PI)g->relative_angle.yaw-=M_2PI; g->relative_angle.pit=+delta_pit; @@ -309,14 +295,14 @@ int8_t Gimbal_Control(Gimbal_t *g, Gimbal_CMD_t *g_cmd) { /*yaw的限位*/ if (g->param->motor.limit_yaw==true) - Clip(&(g->setpoint.eulr.yaw),g->limit.set_yaw.min,g->limit.set_yaw.max); + Clip(&(g->setpoint.eulr.yaw),delta_min,delta_max); else{ /*限制在-3.14~3.14*/ if(g->setpoint.eulr.yaw > M_PI) g->setpoint.eulr.yaw -= M_2PI; } /* pit限制控制命令 */ if (g->param->motor.limit_pit==true) - Clip(&(g->setpoint.eulr.pit),g->limit.set_pit.min,g->limit.set_pit.max); + Clip(&(g->setpoint.eulr.pit),g->param->Limit_t.pit_min,g->param->Limit_t.pit_max); yaw_omega_set_point = PID_Calc(&(g->pid.yaw_angle), g->setpoint.eulr.yaw, g->feedback.imu.eulr.yaw, 0.0f, g->dt); diff --git a/User/module/gimbal.h b/User/module/gimbal.h index 1b47995..ca78768 100644 --- a/User/module/gimbal.h +++ b/User/module/gimbal.h @@ -113,10 +113,7 @@ typedef struct { float pit_min; float yaw_max; /*yaw的限位*/ float yaw_min; - }Set_Limit_t; - - - + }Limit_t; struct { MOTOR_MIT_Output_t yaw_dm; /*达妙的参数*/ @@ -182,8 +179,8 @@ typedef struct { } pid; struct { - Gimbal_Limit_t set_yaw; - Gimbal_Limit_t set_pit; + Gimbal_Limit_t yaw; + Gimbal_Limit_t pit; } limit; struct {