working on sirius 1 firmware

This commit is contained in:
dekunukem
2022-11-10 10:05:14 +00:00
parent da4c92cd85
commit 053f6701d2
12 changed files with 995 additions and 928 deletions

View File

Binary file not shown.

View File

@@ -93,8 +93,8 @@
<flags>2</flags> <flags>2</flags>
<showCmd>3</showCmd> <showCmd>3</showCmd>
<MinPosition> <MinPosition>
<xPos>-1</xPos> <xPos>-32000</xPos>
<yPos>-1</yPos> <yPos>-32000</yPos>
</MinPosition> </MinPosition>
<MaxPosition> <MaxPosition>
<xPos>-1</xPos> <xPos>-1</xPos>
@@ -3607,8 +3607,8 @@
<Doc> <Doc>
<Name>../Src/main.c</Name> <Name>../Src/main.c</Name>
<ColumnNumber>0</ColumnNumber> <ColumnNumber>0</ColumnNumber>
<TopLine>205</TopLine> <TopLine>201</TopLine>
<CurrentLine>206</CurrentLine> <CurrentLine>202</CurrentLine>
<Folding>1</Folding> <Folding>1</Folding>
<ContractedFolders></ContractedFolders> <ContractedFolders></ContractedFolders>
<PaneID>0</PaneID> <PaneID>0</PaneID>

View File

Binary file not shown.

View File

Binary file not shown.

View File

Binary file not shown.

View File

@@ -28,15 +28,15 @@ Project File Date: 11/09/2022
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin' *** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
Build target 'my_adb' Build target 'my_adb'
compiling main.c... compiling main.c...
../Src/main.c(209): warning: #111-D: statement is unreachable ../Src/main.c(208): warning: #185-D: dynamic initialization in unreachable code
uint32_t entry_time = HAL_GetTick();
../Src/main.c(216): warning: #111-D: statement is unreachable
return KB_WRITE_ERROR; return KB_WRITE_ERROR;
../Src/main.c(214): warning: #188-D: enumerated type mixed with another type ../Src/main.c(221): warning: #188-D: enumerated type mixed with another type
HAL_GPIO_WritePin(KBDATA_GPIO_Port, KBDATA_Pin, value); HAL_GPIO_WritePin(KBDATA_GPIO_Port, KBDATA_Pin, bit);
../Src/main.c(221): warning: #940-D: missing return statement at end of non-void function "SendBit"
}
../Src/main.c: 3 warnings, 0 errors ../Src/main.c: 3 warnings, 0 errors
linking... linking...
Program Size: Code=7812 RO-data=308 RW-data=32 ZI-data=1904 Program Size: Code=7840 RO-data=308 RW-data=32 ZI-data=1904
FromELF: creating hex file... FromELF: creating hex file...
"my_adb\my_adb.axf" - 0 Error(s), 3 Warning(s). "my_adb\my_adb.axf" - 0 Error(s), 3 Warning(s).

View File

@@ -1,36 +1,36 @@
:020000040800F2 :020000040800F2
:1000000090070020D500000855120008ED100008E8 :1000000090070020D500000849120008E110000800
:1000100000000000000000000000000000000000E0 :1000100000000000000000000000000000000000E0
:100020000000000000000000000000009315000820 :10002000000000000000000000000000871500082C
:1000300000000000000000009D120008CB15000821 :10003000000000000000000091120008891500086F
:100040000501000805010008050100080501000878 :100040000501000805010008050100080501000878
:100050000501000805010008050100080501000868 :100050000501000805010008050100080501000868
:100060000501000805010008050100080501000858 :100060000501000805010008050100080501000858
:100070000501000805010008050100080501000848 :100070000501000805010008050100080501000848
:100080000501000800000000000000000501000854 :100080000501000800000000000000000501000854
:100090000000000005010008050100080501000836 :100090000000000005010008050100080501000836
:1000A00000000000A1120008050100080501000879 :1000A0000000000095120008050100080501000885
:1000B0000501000800000000050100080501000816 :1000B0000501000800000000050100080501000816
:1000C0000348854600F05AF800480047391D0008EB :1000C0000348854600F05AF800480047091D00081B
:1000D000900700200C4880F308880C480168090E3E :1000D000900700200C4880F308880C480168090E3E
:1000E0000B4A914205D10B480B4901600B480C4962 :1000E0000B4A914205D10B480B4901600B480C4962
:1000F00001600C4880470C480047FEE7FEE7FEE73A :1000F00001600C4880470C480047FEE7FEE7FEE73A
:10010000FEE7FEE7FEE70000900700200400000085 :10010000FEE7FEE7FEE70000900700200400000085
:100110001F00000018100240010000000000014014 :100110001F00000018100240010000000000014014
:100120000000000031160008C100000830B50B4681 :1001200000000000F1150008C100000830B50B46C2
:10013000014600202022012409E00D46D5409D42C1 :10013000014600202022012409E00D46D5409D42C1
:1001400005D31D469540491B254695404019154647 :1001400005D31D469540491B254695404019154647
:10015000521E002DF1DC30BDD2B201E00270401C15 :10015000521E002DF1DC30BDD2B201E00270401C15
:10016000491EFBD270470022F6E710B513460A4637 :10016000491EFBD270470022F6E710B513460A4637
:1001700004461946FFF7F0FF204610BD064C012546 :1001700004461946FFF7F0FF204610BD064C012546
:10018000064E05E0E36807CC2B430C3C984710343F :10018000064E05E0E36807CC2B430C3C984710343F
:10019000B442F7D3FFF798FF981F0008B81F000874 :10019000B442F7D3FFF798FFB41F0008D41F00083C
:1001A00070B50024014620314A78022A03D0042188 :1001A00070B50024014620314A78022A03D0042188
:1001B0008163012416E0026813680E25AB431360C7 :1001B0008163012416E0026813680E25AB431360C7
:1001C000026813685B085B0013600122056C13462C :1001C000026813685B085B0013600122056C13462C
:1001D000AB40C56B6B604A7000220A70416B00290E :1001D000AB40C56B6B604A7000220A70416B00290E
:1001E00000D08847204670BD31B500F0B9F8009CBA :1001E00000D08847204670BD31B500F0B3F8009CC0
:1001F0000546601C00D0641C00F0B2F8401BA04211 :1001F0000546601C00D0641C00F0ACF8401BA04217
:10020000FAD338BDF8B5002389E001249C402A4682 :10020000FAD338BDF8B5002389E001249C402A4682
:10021000A44622407ED04C68022C01D0122C0CD176 :10021000A44622407ED04C68022C01D0122C0CD176
:10022000DC08A40027183C6A5D07ED0E0F26AE40DF :10022000DC08A40027183C6A5D07ED0E0F26AE40DF
@@ -51,463 +51,465 @@
:10031000B60200E002E000D51543E5605B1C0A6808 :10031000B60200E002E000D51543E5605B1C0A6808
:100320001546DA4000D070E7F8BD0000001002402A :100320001546DA4000D070E7F8BD0000001002402A
:10033000000001400004004800080048000401409B :10033000000001400004004800080048000401409B
:100340000069084000D00120704742694A4042617C :1003400042694A4042617047002A01D0816170478A
:100350007047002A01D081617047816270470000B8 :100350008162704701480068704700000C0000206F
:1003600001480068704700000C00002070B50400D0 :1003600070B5040005D025466035687A002802D0B3
:1003700005D025466035687A002802D006E00120C5 :1003700006E0012070BD00202872204600F028FE13
:1003800070BD00202872204600F028FE24206872EC :1003800024206872206801684908490001602046FD
:1003900020680168490849000160204601F088FA98 :1003900001F06EFA0128EDD0606A002802D02046F4
:1003A0000128EDD0606A002802D0204601F0E7F96C :1003A00001F0CDF9206841680922D20291434160F1
:1003B000206841680922D202914341602068816827 :1003B0002068816822229143816020688168082238
:1003C0002222914381602068816808221143816064 :1003C00011438160206801680122114301602046C9
:1003D00020680168012211430160204601F034FACF :1003D00001F01AFA70BD000002480168491C016072
:1003E00070BD000002480168491C016070470000B0 :1003E000704700000C00002010B50648016810227C
:1003F0000C00002010B5064801681022114301606E :1003F00011430160002000F007F800F017F800201A
:10040000002000F007F800F017F8002010BD0000F1 :1004000010BD00000020024010B5044600F0E8F8DE
:100410000020024010B5044600F0E8F87D21C90034 :100410007D21C900FFF78AFE00F0EAFC0022214698
:10042000FFF784FE00F0EAFC00222146501E00F097 :10042000501E00F02FF8002010BD000008B50F4846
:100430002FF8002010BD000008B50F488169012287 :100430008169012211438161816911400091C26982
:1004400011438161816911400091C26901040A432D :1004400001040A43C261C0690022084000901146BD
:10045000C261C0690022084000901146501F00F0A0 :10045000501F00F017F800221146901E00F012F80D
:1004600017F800221146901E00F012F800221146E3 :1004600000221146501E00F00DF808BD0010024099
:10047000501E00F00DF808BD00100240C106C90E64 :10047000C106C90E0120884001490860704700008C
:1004800001208840014908607047000000E100E059 :1004800000E100E010B500F0E1FE10BDF8B5054652
:1004900010B500F0E1FE10BDF8B505464E480E4619 :100490004E480E460068C007C00FB0420AD24B4813
:1004A0000068C007C00FB0420AD24B480168490833 :1004A000016849084900314301600068C007C00F76
:1004B0004900314301600068C007C00FB04270D1ED :1004B000B04270D12878464C800705D56068F0219D
:1004C0002878464C800705D56068F0218843A968E4 :1004C0008843A968084360602878C00753D06868EB
:1004D000084360602878C00753D06868012817D0A7 :1004D000012817D0022818D0032819D021688907CD
:1004E000022818D0032819D021688907002958DA72 :1004E000002958DA61688908890001436160FFF7D3
:1004F00061688908890001436160FFF731FF69681D :1004F00031FF69680746012913D002291DD003295D
:100500000746012913D002291DD0032927D034E042 :1005000027D034E021688903EAE721688901E7E719
:1005100021688903EAE721688901E7E7616BC9037C :10051000616BC903E4E7FFF71DFFC11B2D48814252
:10052000E4E7FFF71DFFC11B2D48814223D8606817 :1005200023D860680007800F0128F4D123E0FFF78B
:100530000007800F0128F4D123E0FFF711FFC11B52 :1005300011FFC11B2748814217D860680007800F50
:100540002748814217D860680007800F0228F4D13D :100540000228F4D117E0FFF705FFC11B21488142C3
:1005500017E0FFF705FFC11B214881420BD86068F7 :100550000BD860680007800F0328F4D10BE0FFF789
:100560000007800F0328F4D10BE0FFF7F9FEC11B51 :10056000F9FEC11B1B48814201D90320F8BD606818
:100570001B48814201D90320F8BD60680007800F45 :100570000007800FF3D115480168C907C90FB142C0
:10058000F3D115480168C907C90FB1420BD90168F9 :100580000BD9016849084900314301600068C00780
:1005900049084900314301600068C007C00FB042FC :10059000C00FB04201D00120F8BD2878400706D531
:1005A00001D00120F8BD2878400706D560680721F2 :1005A0006068072109028843E9680843606000F039
:1005B00009028843E9680843606000F02DF861682B :1005B0002DF86168084A0906090F515CC8400749CF
:1005C000084A0906090F515CC84007490860002025 :1005C00008600020FFF720FF0020F8BD0020024057
:1005D000FFF720FF0020F8BD00200240001002407D :1005D00000100240881300009B1F0008100000203C
:1005E000881300007F1F00081000002001480068E9 :1005E00001480068704700001000002004480549D9
:1005F0007047000010000020044805490068496861 :1005F00000684968044A4905490F515CC840704782
:10060000044A4905490F515CC8407047100000205A :100600001000002000100240AB1F000830B516A3F8
:10061000001002408F1F000830B516A30FCB89B021 :100610000FCB89B06C460FC417A30FCB0FC41A4978
:100620006C460FC417A30FCB0FC41A494A680C209D :100620004A680C20144604401848042C05D0184B86
:10063000144604401848042C05D0184B082C04D04C :10063000082C04D00C2C00D1184609B030BD94020F
:100640000C2C00D1184609B030BD9402240F6D4621 :10064000240F6D462C5DC96A04AD0907090FD2035A
:100650002C5DC96A04AD0907090FD203695C920FCA :10065000695C920F022A02D0032A00D11846FFF7E4
:10066000022A02D0032A00D11846FFF75FFD60433B :1006600065FD6043E9E70000020304050607080989
:10067000E9E7000002030405060708090A0B0C0D50 :100670000A0B0C0D0E0F10100102030405060708EB
:100680000E0F10100102030405060708090A0B0CDF :10068000090A0B0C0D0E0F100010024000127A0028
:100690000D0E0F100010024000127A00006CDC02F8 :10069000006CDC02FEB504460078F04EF04DC00759
:1006A000FEB504460078F04EF04DC00748D06868AB :1006A00048D068680007800F01281FD068680007DD
:1006B0000007800F01281FD068680007800F0228FC :1006B000800F022804D16868C003800F022815D07B
:1006C00004D16868C003800F022815D06168012931 :1006C0006168012919D001208004002901D0052981
:1006D00019D001208004002901D0052917D02968EC :1006D00017D02968B143296029688143296060687F
:1006E000B1432960296881432960606800281BD0D4 :1006E00000281BD0FFF736FE074613E0286880037A
:1006F000FFF736FE074613E02868800320D56068C0 :1006F00020D56068002876D01CE028683043286048
:10070000002876D01CE0286830432860EDE729688F :10070000EDE7296801432960F7E7FFF723FEC01BE7
:1007100001432960F7E7FFF723FEC01B642869D86F :10071000642869D828688003F7D50BE0FFF71AFE34
:1007200028688003F7D50BE0FFF71AFE074604E0C0 :10072000074604E0FFF716FEC01B6428F1D82868CE
:10073000FFF716FEC01B6428F1D828688003F7D4A1 :100730008003F7D4207880073ED568680007800FD3
:10074000207880073ED568680007800F14D068685D :1007400014D068680007800F022804D16868C003CD
:100750000007800F022804D16868C003800F0128B9 :10075000800F01280AD0E068002828681DD00121F8
:100760000AD0E068002828681DD0012108432860CD :1007600008432860FFF7F6FD07460BE0286880077E
:10077000FFF7F6FD07460BE0286880070BD5E06819 :100770000BD5E068012836D107E0FFF7EBFDC01B81
:10078000012836D107E0FFF7EBFDC01B0228C6D8D1 :100780000228C6D828688007F7D52868F82188434A
:1007900028688007F7D52868F82188432169C900AF :100790002169C900084328600EE040084000286035
:1007A000084328600EE0400840002860FFF7D8FDAD :1007A000FFF7D8FD074604E0FFF7D4FDC01B022881
:1007B000074604E0FFF7D4FDC01B0228AFD8286825 :1007B000AFD828688007F7D42078000724D5E069EF
:1007C0008007F7D42078000724D5E0690028686AFC :1007C0000028686A11D0012108436862FFF7C2FD62
:1007D00011D0012108436862FFF7C2FD074604E01B :1007D000074604E0FFF7BEFDC01B022899D8686AEF
:1007E000FFF7BEFDC01B022899D8686A8007F7D5BD :1007E0008007F7D510E036E1D1E0400840006862AC
:1007F00010E036E1D1E0400840006862FFF7B0FD4C :1007F000FFF7B0FD074604E0FFF7ACFDC01B022881
:10080000074604E0FFF7ACFDC01B022887D8686AE2 :1008000087D8686A8007F7D4207804274007002833
:100810008007F7D4207804274007002861DA0020F9 :1008100061DA00200190E869C00008D4E969B806EF
:100820000190E869C00008D4E969B8060143E961AC :100820000143E961E96901400120009101908D488F
:10083000E96901400120009101908D480168C905D6 :100830000168C90511D40168821511430160FFF7F1
:1008400011D40168821511430160FFF789FD009002 :1008400089FD009005E0FFF785FD0099401A6428B6
:1008500005E0FFF785FD0099401A642897D8844881 :1008500097D884480068C005F5D5A06801280AD05B
:100860000068C005F5D5A06801280AD0002801D08D :10086000002801D0052811D0286A400840002862DD
:10087000052811D0286A400840002862286AB84339 :10087000286AB84302E0286A012108432862A06878
:1008800002E0286A012108432862A068002812D0EB :10088000002812D0FFF766FD00900AE0286A38437E
:10089000FFF766FD00900AE0286A38432862F0E717 :100890002862F0E7FFF75EFD0099411A7248814235
:1008A000FFF75EFD0099411A7248814275D8286AA7 :1008A00075D8286A8007F5D50DE0FFF753FD009055
:1008B0008007F5D50DE0FFF753FD009006E0FFF748 :1008B00006E0FFF74FFD0099411A6B48814266D868
:1008C0004FFD0099411A6B48814266D8286A80071B :1008C000286A8007F5D40198002804D0E96901203E
:1008D000F5D40198002804D0E9690120000781437C :1008D00000078143E9612078C00635D560690128A9
:1008E000E9612078C00635D5606901280CD0401D2B :1008E0000CD0401D686B24D038436863686B4008A7
:1008F000686B24D038436863686B400840006863C5 :1008F00040006863FFF72EFD074622E0686B38432F
:10090000FFF72EFD074622E0686B38436863686B8B :100900006863686B012108436863FFF723FD0746AE
:10091000012108436863FFF723FD074604E0FFF762 :1009100004E0FFF71FFDC01B022838D8686B800772
:100920001FFDC01B022838D8686B8007F7D5686B9D :10092000F7D5686BF8218843A169C900084368635B
:10093000F8218843A169C900084368630AE0B84305 :100930000AE0B8436863F4E7FFF70CFDC01B022828
:100940006863F4E7FFF70CFDC01B022825D8686B2D :1009400025D8686B8007F7D42078800637D568688B
:100950008007F7D42078800637D568680007800FB5 :100950000007800F032813D068680007800F022863
:10096000032813D068680007800F022804D1686844 :1009600004D16868C003800F032809D0206A0028DA
:10097000C003800F032809D0206A0028686B16D0B6 :10097000686B16D030436863FFF7ECFC06460CE06A
:1009800030436863FFF7ECFC06460CE0686BC0037D :10098000686BC0031BD5206A012864D117E05BE0C7
:100990001BD5206A012864D117E05BE0FFF7E0FC7B :10099000FFF7E0FC801B022856D8686BC003F7D530
:1009A000801B022856D8686BC003F7D50DE0B04312 :1009A0000DE0B0436863FFF7D5FC064604E0FFF7AF
:1009B0006863FFF7D5FC064604E0FFF7D1FC801B17 :1009B000D1FC801B022847D8686BC003F7D4606A5B
:1009C000022847D8686BC003F7D4606A002846D075 :1009C000002846D069680907890F022943D001260B
:1009D00069680907890F022943D0012636060228D3 :1009D00036060228286805D0B0432860FFF7BAFC25
:1009E000286805D0B0432860FFF7BAFC044633E01E :1009E000044633E0B0432860FFF7B4FC074604E058
:1009F000B0432860FFF7B4FC074604E0FFF7B0FC03 :1009F000FFF7B0FCC01B022826D828688001F7D476
:100A0000C01B022826D828688001F7D4E86A216B29 :100A0000E86A216B000900010843E862A16AE06A14
:100A1000000900010843E862A16AE06A08436968C6 :100A1000084369687B22D2039143084368602868D1
:100A20007B22D203914308436860286830432860E2 :100A200030432860FFF796FC044604E0FFF792FC91
:100A3000FFF796FC044604E0FFF792FC001B022837 :100A3000001B022808D828688001F7D509E0FFF7D5
:100A400008D828688001F7D509E0FFF789FC001B6A :100A400089FC001B022801D90320FEBD2868800113
:100A5000022801D90320FEBD28688001F5D40020BA :100A5000F5D40020FEBD0120FEBD00000000010015
:100A6000FEBD0120FEBD000000000100001002409C :100A60000010024000700040881300007047000032
:100A7000007000408813000070470000F8B504467D :100A7000F8B504460068426881684B0605D4CB0788
:100A80000068426881684B0605D4CB0703D0530643 :100A800003D0530601D5E16C04E08B0705D51306AE
:100A900001D5E16C04E08B0705D5130603D5216D64 :100A900003D5216D20468847F8BDFF2361331942F5
:100AA00020468847F8BDFF2361331942FAD09306E8 :100AA000FAD09306F8D523464D064033002D09DAD7
:100AB000F8D523464D064033002D09DA5D7F032D1E :100AB0005D7F032D3CD0256E042635432566C56831
:100AC0003CD0256E042635432566C56885680095AB :100AC000856800958E060125002E08DA266E2E43D5
:100AD0008E060125002E08DA266E2E4326668668CD :100AD00026668668009606684027BE430660C805FD
:100AE000009606684027BE430660C80506D5206EFE :100AE00006D5206E082108432066206880680090A3
:100AF000082108432066206880680090206E002846 :100AF000206E0028D0D020684168E026B1434160D4
:100B0000D0D020684168E026B14341605D7790070E :100B00005D77900718D020684168890889004160A6
:100B100018D020684168890889004160A06D0B4D9C :100B1000A06D0B4D002803D04563A06DFFF740FB8F
:100B2000002803D04563A06DFFF73AFB606D0028F5 :100B2000606D0028B8D04563606DFFF739FBF8BDF4
:100B3000B8D04563606DFFF733FBF8BDC1688068CE :100B3000C16880680090F8BD2046FFF797FFF8BDB8
:100B40000090F8BD2046FFF797FFF8BD131400088A :100B400007140008F8B5040007D0002625464035F4
:100B5000F8B5040007D0002625464035A662687F18 :100B5000A662687F002802D005E00120F8BD2E774C
:100B6000002802D005E00120F8BD2E77204600F0D5 :100B6000204600F04BF802236B7720680168402292
:100B70004BF802236B7720680168402291430160A3 :100B7000914301600721E0680902884201D90022FF
:100B80000721E0680902884201D9002201E0012220 :100B800001E0012212030F273F02B84202D088423F
:100B900012030F273F02B84202D0884200D0A6625B :100B900000D0A662276B002F05D1884201D92363BC
:100BA000276B002F05D1884201D9236301E0012082 :100BA00001E001202063A16860686369084321694E
:100BB0002063A16860686369084321691943084399 :100BB000194308430123A1695B0219400843E16915
:100BC0000123A1695B0219400843E1690843216AD6 :100BC0000843216A0843A16A084321680860616BF1
:100BD0000843A16A084321680860616B606AA369E1 :100BD000606AA36908431B0C0427E1683B40194382
:100BE00008431B0C0427E1683B4019430843216874 :100BE00008432168104348602068C1697A02914334
:100BF000104348602068C1697A029143C16126664A :100BF000C1612666012068770020F8BD00B5006855
:100C0000012068770020F8BD00B50068114987B061 :100C0000114987B088421DD11048826981140A4376
:100C100088421DD11048826981140A43826180692B :100C10008261806908400590F020009002200190D8
:100C200008400590F0200090022001900021032050 :100C20000021032003900291049109206946C00627
:100C300003900291049109206946C006FFF7E2FA89 :100C3000FFF7E8FA002211461920FFF723FC1920DC
:100C4000002211461920FFF723FC1920FFF716FC9C :100C4000FFF716FC07B000BD003001400010024065
:100C500007B000BD003001400010024070470000A6 :100C500070470000F0B504468C464034217F0025E3
:100C6000F0B504468C464034217F0025C76896467F :100C6000C768964601290CD001212177667F41682B
:100C700001290CD001212177667F4168012E0CD01B :100C7000012E0CD0CA1FFD3A07D18168002904D18A
:100C8000CA1FFD3A07D18168002904D101E0022082 :100C800001E00220F0BD042E01D0022540E06146C3
:100C9000F0BD042E01D0022540E0614600291BD0A2 :100C900000291BD07146002918D0002B16D0617F87
:100CA0007146002918D0002B16D0617F042901D08D :100CA000042901D005216177002101666146816335
:100CB0000521617700210166614681638387C387CF :100CB0008387C38771460164A380E380072109020B
:100CC00071460164A380E380072109028F4205D9A0 :100CC0008F4205D9144AC264144A04E001251FE08A
:100CD000144AC264144A04E001251FE0134AC264A6 :100CD000134AC264134A0265012212038F4202D8EA
:100CE000134A0265012212038F4202D8E1880229C9 :100CE000E188022903D301684B68934302E001685D
:100CF00003D301684B68934302E001684B681343D8 :100CF0004B6813434B6001684A68E0231A434A601B
:100D00004B6001684A68E0231A434A600068016842 :100D000000680168490603D401684022114301606C
:100D1000490603D401684022114301600020207776 :100D1000002020772846F0BDA512000839130008EE
:100D20002846F0BDB112000845130008E71200087C :100D2000DB1200086D13000870B50122110225487E
:100D30007913000870B5012211022548FFF709FB5D :100D3000FFF70AFBFFF70EFB23491E30234C4860E8
:100D4000FFF70EFB23491E30234C48602078012515 :100D400020780125DE2800D00D70A078082802D078
:100D5000DE2800D00D70A078082802D0012807D026 :100D5000012807D02EE01D48A2792179203000F02B
:100D60002EE01D48A2792179203000F08FFF27E086 :100D60007DFF27E0194820212038FFF7FCF91748BC
:100D7000194820212038FFF7F6F91748CD212038EF :100D7000CD21203801706178417080268670052170
:100D8000017061784170802686700521C170002154 :100D8000C17000214171817108220446C5714C3443
:100D90004171817108220446C5714C34635C002B9B :100D9000635C002B0BD0022B02D0012B02D004E0AD
:100DA0000BD0022B02D0012B02D004E0815402E0D0 :100DA000815402E00B4633438354521CD2B2491C97
:100DB0000B4633438354521CD2B2491C1029EDDB3D :100DB0001029EDDB054A2023D11A0548FFF74AFF29
:100DC000054A2023D11A0548FFF74AFF70BD0000ED :100DC00070BD000000040048040000205401002011
:100DD00000040048040000205401002020000020EE :100DD00020000020042204490428086902D090431E
:100DE000042204490428086902D09043086170472E :100DE000086170471043FBE700E000E07047000037
:100DF0001043FBE700E000E070470000094910B530 :100DF000094910B5401E884201D9012010BD074C99
:100E0000401E884201D9012010BD074C60610321BA :100E000060610321081F00F021FA0020A061072083
:100E1000081F00F021FA0020A061072020610020B7 :100E10002061002010BD0000FFFFFF0000E000E0A7
:100E200010BD0000FFFFFF0000E000E010B5FFF77D :100E200010B5FFF7E3FF10BD70B502462032137F07
:100E3000E3FF10BD70B502462032137F012B1BD09B :100E3000012B1BD0012313770224547704686568C3
:100E40000123137702245477046865687026B5433C :100E40007026B5436560046865680E683543656063
:100E50006560046865680E68354365600468A56868 :100E50000468A5688026B543A56000688468496871
:100E60008026B543A5600068846849680C438460A7 :100E60000C43846053770020107770BD022070BD62
:100E700053770020107770BD022070BD70B504005C :100E700070B5040005D025462035687F002802D0D3
:100E800005D025462035687F002802D006E00120E5 :100E800006E0012070BD00202877204600F00AF817
:100E900070BD00202877204600F00AF8022068770D :100E900002206877211D206800F0D8FB01206877C8
:100EA000211D206800F0F2FB01206877002070BD52 :100EA000002070BD08B5006801218907884207D17C
:100EB00008B5006801218907884207D10448C16943 :100EB0000448C16901221143C161C069104000901A
:100EC00001221143C161C0691040009008BD0000BB :100EC00008BD0000001002400222014620314A778E
:100ED000001002400222014620314A77026813685E :100ED00002681368012003431360487700207047BD
:100EE000012003431360487700207047F8B505469A :100EE000F8B5054604462035287F012817D001278C
:100EF00004462035287F012817D001272F770220AC :100EF0002F7702206877226890687726FF23B04317
:100F00006877226890687726FF23B0431B029843D6 :100F00001B02984390600868502837D00EDC2028D8
:100F100090600868502837D00EDC202857D006DCB7 :100F100057D006DC00284ED0102840D14EE00220E9
:100F200000284ED0102840D14EE00220F8BD3028D5 :100F2000F8BD302850D0402839D13CE060282DD081
:100F300050D0402839D13CE060282DD0702817D0FF :100F3000702817D001221203801A0ED090422ED1B1
:100F400001221203801A0ED090422ED1CB684A683B :100F4000CB684A688968206800F0C2FB2068816825
:100F50008968206800F0DCFB206881680122920328 :100F5000012292031143816021E020688168C90861
:100F60001143816021E020688168C908C900F8E761 :100F6000C900F8E7CB684A688968206800F0B0FBE0
:100F7000CB684A688968206800F0CAFB21688868E5 :100F700021688868B0433043886010E0CA684968D7
:100F8000B0433043886010E0CA684968206800F0C8 :100F8000206800F0B8FB5021206806E0CA68496874
:100F9000D2FB5021206806E0CA684968206800F04A :100F9000206800F0C1FB6021206800F0A4FB6F779F
:100FA000DBFB6021206800F0BEFB6F770020287714 :100FA00000202877F8BDCA684968206800F0A3FBD4
:100FB000F8BDCA684968206800F0BDFB4021206880 :100FB00040212068F1E700212068EEE71021206839
:100FC000F1E700212068EEE710212068EBE72021FF :100FC000EBE720212068E8E730212068E5E7000012
:100FD0002068E8E730212068E5E7000000B50068F8 :100FD00000B500680E4987B0884216D10D48C26935
:100FE0000E4987B0884216D10D48C26901214904D3 :100FE000012149040A43C261C069084005900420F8
:100FF0000A43C261C0690840059004200090122095 :100FF000009012200190012103200390029104919E
:101000000190012103200390029104910920694677 :1010000009206946C006FFF7FDF807B000BD0000E3
:10101000C006FFF7F7F807B000BD0000004400402D :101010000044004000100240FFB50646044660361A
:1010200000100240FFB5064604466036707A83B071 :10102000707A83B00D46202858D1002D0CD0059839
:101030000D46202858D1002D0CD00598002809D045 :10103000002809D00120A1680003814207D120695E
:101040000120A1680003814207D12069002804D152 :10104000002804D1E80702D0012007B0F0BD307AB3
:10105000E80702D0012007B0F0BD307A012843D064 :10105000012843D0012030720020E0662120707208
:10106000012030720020E06621207072FFF778F9CD :10106000FFF778F9019027464037059838820598B0
:10107000019027464037059838820598788218E015 :10107000788218E0788A401E7882069800900022D4
:10108000788A401E788206980090002280212046AF :1010800080212046019B00F08BFC002818D1012014
:10109000019B00F0A5FC002818D10120A1680003E5 :10109000A1680003814202D12069002812D0216892
:1010A000814202D12069002812D021682878088561 :1010A000287808856D1C788A0028E3D1069800907E
:1010B0006D1C788A0028E3D1069800900022402118 :1010B000002240212046019B00F072FC002808D04D
:1010C0002046019B00F08CFC002808D00320C2E7DA :1010C0000320C2E728882168C005C00D0885AD1C33
:1010D00028882168C005C00D0885AD1CE9E72020DF :1010D000E9E72020707200203072B6E70220B4E702
:1010E000707200203072B6E70220B4E7FEE700001D :1010E000FEE70000F0B5244887B042690121890479
:1010F000F0B5244887B04269012189040A4342615E :1010F0000A43426142690A400592426949100A4323
:1011000042690A400592426949100A4342614069B6 :10110000426140694C1208400590002221461B486C
:101110004C1208400590002221461B48FFF719F9A0 :10111000FFF71AF90921CF0601223846FFF714F923
:101120000921CF0601223846FFF713F900220221D8 :10112000002202213846FFF70FF900940024012520
:101130003846FFF70EF9009400240125019502942A :1011300001950294694611480394FFF763F809206A
:10114000694611480394FFF75DF8092000901120CB :101140000090112001900294694603943846FFF7FD
:1011500001900294694603943846FFF753F802263B :1011500059F8022602946946384600960195039490
:10116000029469463846009601950394FFF74AF8C1 :10116000FFF750F801946946044800960294FFF78F
:1011700001946946044800960294FFF743F807B0CB :1011700049F807B0F0BD000000100240000400482C
:10118000F0BD0000001002400004004810B50D48FA :1011800010B50D480B49016000214160816001618B
:101190000B49016000214160816001614161816111 :10119000416181610722016212024162C260816283
:1011A0000722016212024162C2608162072201636A :1011A00007220163C2624163FFF7CCFC002800D034
:1011B000C2624163FFF7CCFC002800D0FEE710BDFF :1011B000FEE710BD003001402000002010B50121E5
:1011C000003001402000002010B50121124886B0F7 :1011C000124886B08907016000242F2184604160A5
:1011D0008907016000242F21846041600461611E41 :1011D0000461611E8461C160FFF74AFE002800D0EF
:1011E0008461C160FFF74AFE002800D0FEE70120BD :1011E000FEE701200003009069460848FFF778FEFB
:1011F0000003009069460848FFF778FE002800D0F9 :1011F000002800D0FEE7049404A904480594FFF7F2
:10120000FEE7049404A904480594FFF713FE0028A0 :1012000013FE002800D0FEE706B010BD84000020C9
:1012100000D0FEE706B010BD8400002010B50C48D9 :1012100010B50C480A490160E121490241600021F2
:101220000A490160E1214902416000218160C160F9 :101220008160C16001618161C16108220162426126
:1012300001618161C1610822016242614162FFF77F :101230004162FFF795F8002800D0FEE710BD0000DE
:1012400095F8002800D0FEE710BD000000440040E3 :1012400000440040C4000020704700008307FF22D4
:10125000C4000020704700008307FF22DB0E9A4085 :10125000DB0E9A408907090E994000280BDA000737
:101260008907090E994000280BDA0007000F08389B :10126000000F0838830808489B001818C369934387
:10127000830808489B001818C36993430B43C36154 :101270000B43C3617047830804489B001B18186820
:101280007047830804489B001B1818689043084364 :10128000904308431860704700ED00E000E400E080
:101290001860704700ED00E000E400E070470000D7 :101290007047000010B50248FFF7EAFB10BD0000E0
:1012A00010B50248FFF7EAFB10BD00002000002047 :1012A0002000002010B50168C968026C1180016C33
:1012B00010B50168C968026C1180016C891C016459 :1012B000891C016401464031CA88521ECA80C9880F
:1012C00001464031CA88521ECA80C988002909D106 :1012C000002909D101684A6840239A434A60C18FC6
:1012D00001684A6840239A434A60C18F002901D1BE :1012D000002901D100F06EF810BD10B50146403173
:1012E00000F06EF810BD10B501464031CC8803689F :1012E000CC880368026C012C11D9DB681380026C76
:1012F000026C012C11D9DB681380026C921C026411 :1012F000921C0264CA88921ECA80CA88012A0DD133
:10130000CA88921ECA80CA88012A0DD10268536811 :1013000002685368012424032343536006E01C7BD6
:10131000012424032343536006E01C7B531C036415 :10131000531C03641470CA88521ECA80C9880029ED
:101320001470CA88521ECA80C988002909D1016870 :1013200009D101684A6860239A434A60C18F002945
:101330004A6860239A434A60C18F002901D100F0B6 :1013300001D100F03FF810BD10B5816B026809883B
:101340003FF810BD10B5816B02680988D160816BD0 :10134000D160816B891C8163C18F491EC187C18FA8
:10135000891C8163C18F491EC187C18F00290AD1B1 :1013500000290AD101684A6880239A434A604621DD
:1013600001684A6880239A434A604621095A002945 :10136000095A002901D100F025F810BD10B5C38F2E
:1013700001D100F025F810BD10B5C38F0268816B54 :101370000268816B022B07D30988D160816B891CBD
:10138000022B07D30988D160816B891C8163C18FCF :101380008163C18F891E05E04B1C8363097811734B
:10139000891E05E04B1C836309781173C18F491EB8 :10139000C18F491EC187C18F00290AD101684A68DF
:1013A000C187C18F00290AD101684A6880239A4306 :1013A00080239A434A604621095A002901D100F05E
:1013B0004A604621095A002901D100F001F810BD08 :1013B00001F810BD70B50446FEF7CCFF0246206868
:1013C00070B50446FEF7CCFF024620684168202530 :1013C00041682025A94341606421204600F024F8AB
:1013D000A94341606421204600F024F8002802D08F :1013D000002802D0206E28432066226E204601217C
:1013E000206E28432066226E204601214030002ACC :1013E0004030002A04D041772046FFF73FFB70BD14
:1013F00004D041772046FFF73FFB70BD427F417725 :1013F000427F4177042A204602D0FFF795FC70BD5A
:10140000042A204602D0FFF795FC70BDFFF726FCAA :10140000FFF726FC70BD10B5406A0021462211523C
:1014100070BD10B5406A002146221152C187FFF706 :10141000C187FFF72BFB10BDF8B50F460B461546ED
:101420002BFB10BDF8B50F460B4615460092032165 :101420000092032104460022C90200F01BF8202686
:1014300004460022C90200F01BF82026002812D121 :10143000002812D13B46002280212046009500F072
:101440003B46002280212046009500F05CF80028F1 :101440005CF8002809D103213B46002249022046CE
:1014500009D103213B46002249022046009500F0B5 :10145000009500F007F8002803D0206E3043206686
:1014600007F8002803D0206E304320660320F8BD23 :101460000320F8BDF8B51D4617460E4604463DE07C
:10147000F8B51D4617460E4604463DE003214902D5 :10147000032149028E4205D1002F03D1017B68462A
:101480008E4205D1002F03D1017B684601700078A0 :1014800001700078681C31D0002D05D0FEF762FF96
:10149000681C31D0002D05D0FEF762FF0699401A76 :101490000699401AA84229D320684168E022914366
:1014A000A84229D320684168E022914341606068E6 :1014A00041606068C11FFD390CD10121A068C903EA
:1014B000C11FFD390CD10121A068C903884202D0A7 :1014B000884202D04911884204D120680168402244
:1014C0004911884204D1206801684022914301609B :1014C000914301600120A16A4003814207D1216854
:1014D0000120A16A4003814207D121680A68824342 :1014D0000A6882430A6021680A6802430A600120A0
:1014E0000A6021680A6802430A600120403460777C :1014E00040346077002020770320F8BD20688168B1
:1014F000002020770320F8BD206881683140B94280 :1014F0003140B942BCD10020F8BDF8B51D461746B1
:10150000BCD10020F8BDF8B51D4617460E4604466E :101500000E46044633E0681C31D0002D05D0FEF7AE
:1015100033E0681C31D0002D05D0FEF721FF06997D :1015100021FF0699401AA84229D320684168E02299
:10152000401AA84229D320684168E02291434160D3 :10152000914341606068C11FFD390CD10121A06861
:101530006068C11FFD390CD10121A068C903884230 :10153000C903884202D04911884204D12068016859
:1015400002D04911884204D12068016840229143A9 :101540004022914301600120A16A4003814207D1FA
:1015500001600120A16A4003814207D121680A6825 :1015500021680A6882430A6021680A6802430A60B7
:1015600082430A6021680A6802430A60012040340D :10156000012040346077002020770320F8BD2068F8
:101570006077002020770320F8BD2068816830461E :1015700081683046884304D00020B842C3D100209F
:10158000884304D00020B842C3D10020F8BD012018 :10158000F8BD0120F9E7704710B5FEF725FFFFF71A
:10159000F9E7704770B509240246E40601212046A8 :1015900047FC10BD10B592B020200090012000241F
:1015A000FEF7D7FE002208212046FEF7D2FEFF25D7 :1015A000089009946846FFF775F8002800D0FEE718
:1015B0009135284600F04CFB012208212046FEF719 :1015B00007200D9003200E900F94012110940DA888
:1015C000C8FE284600F044FB70BD10B5FEF70AFFC8 :1015C000FEF764FF002800D0FEE7FFF709F87D2151
:1015D000FFF72CFC10BD10B592B020200090012028 :1015D000C900FEF7ABFDFFF70BFC0420FFF7FAFB99
:1015E0000024089009946846FFF75AF8002800D0B4 :1015E00000221146501EFEF74DFF12B010BD000044
:1015F000FEE707200D9003200E900F940121109418 :1015F000134801680122114301604168114A1140FA
:101600000DA8FEF749FF002800D0FEE7FEF7EEFF29 :1016000041600168104A11400160016801229204A2
:101610007D21C900FEF78AFDFFF7F0FB0420FFF7EC :101610009143016041683F22120491434160C16AD5
:10162000DFFB00221146501EFEF732FF12B010BD44 :1016200009090901C162016BFF22D43291430163B0
:10163000134801680122114301604168114A1140B9 :10163000416B490849004163002181607047000007
:1016400041600168104A1140016001680122920462 :10164000001002400CB8FF08FFFFF6FEF0B502687C
:101650009143016041683F22120491434160C16A95 :101650001A4B0124A4071A4D984203D0A04201D08E
:1016600009090901C162016BFF22D4329143016370 :10166000A84203D17026B2434E683243154E164F3E
:10167000416B4908490041630021816070470000C7 :1016700098420AD0A04208D0A84206D0134CA042FB
:10168000001002400CB8FF08FFFFF6FEF0B502683C :1016800003D0B04201D0B84204D103242402A243C3
:101690001A4B0124A4071A4D984203D0A04201D04E :10169000CC6822438024A2434C69224302608A68BA
:1016A000A84203D17026B2434E683243154E164FFE :1016A000C2620A688262984203D0B04201D0B84256
:1016B00098420AD0A04208D0A84206D0134CA042BB :1016B00001D10969016301214161F0BD002C0140A4
:1016C00003D0B04201D0B84204D103242402A24383 :1016C0000004004000440140004801400020004068
:1016D000CC6822438024A2434C69224302608A687A :1016D00030B58468FF252D021B021343AC430B4336
:1016E000C2620A688262984203D0B04201D0B84216 :1016E0002343836030BD826870239A430A430721F5
:1016F00001D10969016301214161F0BD002C014064 :1016F0000A438260704730B5036A046A6408640074
:101700000004004000440140004801400020004027 :1017000004628469F025AC43120122430A24A343F6
:1017100030B58468FF252D021B021343AC430B43F5 :101710000B438261036230BD30B5036A1024A343DA
:101720002343836030BD826870239A430A430721B4 :1017200003628469036A0F252D031203AC4322432D
:101730000A438260704730B5036A046A6408640033 :10173000A024A343090119438261016230BD10B5A1
:1017400004628469F025AC43120122430A24A343B6 :10174000818CC90707D001684A6801235B049A436A
:101750000B438261036230BD30B5036A1024A3439A :10175000836A1A434A60818C890707D501684A6801
:1017600003628469036A0F252D031203AC432243ED :1017600001231B049A43C36A1A434A60818C4907C8
:10177000A024A343090119438261016230BD10B561 :1017700007D501684A6801239B049A43036B1A4307
:10178000818CC90707D001684A6801235B049A432A :101780004A60818C090707D501684A680123DB0399
:10179000836A1A434A60818C890707D501684A68C1 :101790009A43436B1A434A60818CC90607D5026895
:1017A00001231B049A43C36A1A434A60818C490788 :1017A000916801231B039943836B19439160818CDA
:1017B00007D501684A6801239B049A43036B1A43C7 :1017B000890607D501688A6801235B039A43C36BD6
:1017C0004A60818C090707D501684A680123DB0359 :1017C0001A438A60818C490612D503685A68012140
:1017D0009A43436B1A434A60818CC90607D5026855 :1017D0000905046C8A4322435A60026C8A4207D18D
:1017E000916801231B039943836B19439160818C9A :1017E0000268516803235B059943436C19435160B8
:1017F000890607D501688A6801235B039A43C36B96 :1017F000818C090607D501684A680123DB04806CE7
:101800001A438A60818C490612D503685A680121FF :101800009A4302434A6010BDF8B500260446C666F6
:101810000905046C8A4322435A60026C8A4207D14C :10181000FEF7A0FD05461449206888421DD10068E6
:101820000268516803235B059943436C1943516077 :10182000124F000709D501212B4600224905204609
:10183000818C090607D501684A680123DB04806CA6 :10183000009700F0B5F800280DD120680068400737
:101840009A4302434A6010BDF8B500260446C666B6 :101840000BD501212B46002289052046009700F088
:10185000FEF786FD05461449206888421DD10068C0 :10185000A7F8002801D00320F8BD20206034607272
:10186000124F000709D501212B46002249052046C9 :10186000A07226720020F8BD00380140FFFFFF0182
:10187000009700F0B5F800280DD1206800684007F7 :10187000F8B504462369A268E5691A436369102034
:101880000BD501212B46002289052046009700F048 :101880002B43002125681A432B680E463E4F3B40F0
:10189000A7F8002801D00320F8BD20206034607232 :1018900013432B6023685A6803252D03AA43E56888
:1018A000A07226720020F8BD00380140FFFFFF0142 :1018A0002A435A60236AA26925681A43AB680B274A
:1018B000F8B504462369A268E5691A4363691020F4 :1018B0003F02BB431343AB60344A2568954210D1C5
:1018C0002B43002125681A432B680E463E4F3B40B0 :1018C000334A126B9207920F0ED0012A05D0022ADA
:1018D00013432B6023685A6803252D03AA43E56848 :1018D00005D0032A09D1022007E0042005E00820F2
:1018E0002A435A60236AA26925681A43AB680B270A :1018E00003E02C4A954200D100200122E369D20393
:1018F0003F02BB431343AB60344A2568954210D185 :1018F000934224D100280CD002280DD0042813D004
:10190000334A126B9207920F0ED0012A05D0022A99 :10190000082817D001260A0912010807400F1043C2
:1019100005D0032A09D1022007E0042005E00820B1 :101910002FE0FEF76BFE09E061681F4A4808801857
:1019200003E02C4A954200D100200122E369D20352 :10192000FEF704FC81B2EEE7FEF770FE616840004E
:10193000934224D100280CD002280DD0042813D0C3 :101930004A08F4E76168012248081204EFE700282A
:10194000082817D001260A0912010807400F104382 :1019400008D0022809D004280BD0082814D001267A
:101950002FE0FEF751FE09E061681F4A4808801831 :101950003046F8BDFEF74AFE05E061680F4A4808C8
:10196000FEF7E4FB81B2EEE7FEF756FE6168400049 :101960000CE0FEF753FE61684A088018FEF7DEFBC4
:101970004A08F4E76168012248081204EFE70028EA :1019700080B22168C860EBE7616848088018FEF70C
:1019800008D0022809D004280BD0082814D001263A :10198000D5FB80B2E860E3E7F369FFEF0038014080
:101990003046F8BDFEF730FE05E061680F4A4808A2 :1019900000100240004400400024F40000127A00CD
:1019A0000CE0FEF739FE61684A088018FEF7BEFBBE :1019A000FFB581B017460E4604460A9D1DE0681C2F
:1019B00080B22168C860EBE7616848088018FEF7CC :1019B0001BD0002D05D0FEF7CDFC0499401AA8429B
:1019C000B5FB80B2E860E3E7F369FFEF0038014060 :1019C00013D920680168FF22A13291430160206889
:1019D00000100240004400400024F40000127A008D :1019D0008168490849008160202060346072A072EB
:1019E000FFB581B017460E4604460A9D1DE0681CEF :1019E00000202072032005B0F0BD2068C169304698
:1019F0001BD0002D05D0FEF7B3FC0499401AA84275 :1019F000884304D00020B842D9D00020F3E701206A
:101A000013D920680168FF22A13291430160206848 :101A0000F9E700000FB410B503A9044B044A02988B
:101A10008168490849008160202060346072A072AA :101A100000F018F810BC08BC04B01847351C0008CA
:101A200000202072032005B0F0BD2068C169304657 :101A20001400002002E008C8121F08C1002AFAD1E1
:101A3000884304D00020B842D9D00020F3E7012029 :101A300070477047002001E001C1121F002AFBD14E
:101A4000F9E700000FB410B503A9044B044A02984B :101A400070470000FFB58DB00F460546002606E042
:101A500000F018F810BC08BC04B01847751C00084A :101A500025280AD0109A0F9990476D1C761C28787B
:101A60001400002002E008C8121F08C1002AFAD1A1 :101A60000028F5D1304611B0F0BD00240121674AAD
:101A700070477047002001E001C1121F002AFBD10E :101A7000009400E004436D1C2B780846203B9840FE
:101A800070470000FFB58DB00F460546002606E002 :101A80001042F7D128782E2815D104200443687815
:101A900025280AD0109A0F9990476D1C761C28783B :101A90006D1C2A280AD101CF6D1C00900BE0009923
:101AA0000028F5D1304611B0F0BD00240121674A6D :101AA0000A225143303940186D1C009028780146B5
:101AB000009400E004436D1C2B780846203B9840BE :101AB00030390929F3D92878692843D006DC002871
:101AC0001042F7D128782E2815D1042004436878D5 :101AC000D0D063280BD0642804D13BE073280FD01A
:101AD0006D1C2A280AD101CF6D1C00900BE00099E3 :101AD00075284CD0109A0F999047761C94E038786E
:101AE0000A225143303940186D1C00902878014675 :101AE000694608720020487202A80190012003E0B4
:101AF00030390929F3D92878692843D006DC002831 :101AF000386801900020C0433F1D61070CD50024C9
:101B0000D0D063280BD0642804D13BE073280FD0D9 :101B000000E0641C00998C420FDA8442F9DB0199F1
:101B100075284CD0109A0F999047761C94E038782D :101B1000095D0029F5D108E0002400E0641C84423E
:101B2000694608720020487202A80190012003E073 :101B2000FCDB0199095D0029F8D1361907E001981D
:101B3000386801900020C0433F1D61070CD5002488 :101B300001990078491C0191109A0F999047641EF1
:101B400000E0641C00998C420FDA8442F9DB0199B1 :101B4000F5D261E00A20019001CF002802DA40427C
:101B5000095D0029F5D108E0002400E0641C8442FE :101B50002D2102E0210504D52B216A4611720121B5
:101B6000FCDB0199095D0029F8D1361907E00198DD :101B600003E0E10701D02021F7E70C9104E00A200F
:101B700001990078491C0191109A0F999047641EB1 :101B7000019001CF00210C910BA90B9108E0019974
:101B8000F5D261E00A20019001CF002802DA40423C :101B8000FEF7D4FA0A460B993032491E0B910A70BF
:101B90002D2102E0210504D52B216A461172012175 :101B90000028F4D10B9803A9081A2030019060079F
:101BA00003E0E10701D02021F7E70C9104E00A20CF :101BA00001D5009801E0012000900199884203DDF1
:101BB000019001CF00210C910BA90B9108E0019934 :101BB00001460198081A00E000200024009006E089
:101BC000FEF7B4FA0A460B993032491E0B910A709F :101BC00002A8109A005D0F999047641C761C0C982F
:101BD0000028F4D10B9803A9081A2030019060075F :101BD0008442F5DB04E0109A30200F999047761C80
:101BE00001D5009801E0012000900199884203DDB1 :101BE0000099481E00900029F5DC08E00B980B993D
:101BF00001460198081A00E000200024009006E049 :101BF0000078491C0B91109A0F999047761C019917
:101C000002A8109A005D0F999047641C761C0C98EE :101C0000481E01900029F1DC6D1C28E7092801001D
:101C10008442F5DB04E0109A30200F999047761C3F :101C100000B5014600F00EF9411800F00BF98842BA
:101C20000099481E00900029F5DC08E00B980B99FC :101C2000FBD300BD10B502490860FFF74DF910BDA8
:101C30000078491C0B91109A0F999047761C0199D6 :101C30000000002013B50A23012269460248FFF77D
:101C4000481E01900029F1DC6D1C28E709280100DD :101C4000EBF900981CBD0000C400002001228A406E
:101C500000B5014600F00CF9411800F009F988427E :101C5000024201D0012070470020704710B50C46A9
:101C6000FBD300BD10B502490860FFF733F910BD82 :101C6000034600F01FF8002801D0012010BD1978AC
:101C70000000002013B50A23012269460248FFF73D :101C7000586844541978986842541878401C4007B2
:101C8000D1F900981CBD0000C400002010B50C461E :101C8000400F1870002010BD10B50446082000F069
:101C9000034600F01FF8002801D0012010BD19787C :101C90009BF86060082000F097F8A060204600F0F4
:101CA000586844541978986842541878401C400782 :101CA00025F810BD41780078401C4007400F814264
:101CB000400F1870002010BD10B50446082000F039 :101CB00001D1012070470020704710B543780478A7
:101CC000A1F86060082000F09DF8A060204600F0B8 :101CC000A34201D1012010BD4468E35C0B70816820
:101CD00025F810BD41780078401C4007400F814234 :101CD0004078085C1070002010BD41780278914275
:101CE00001D1012070470020704710B54378047877 :101CE00003D0491C4907490F4170704710B504469D
:101CF000A34201D1012010BD4468E35C0B708168F0 :101CF00000202070607008216068FEF734FA082127
:101D00004078085C1070002010BD41780278914244 :101D0000A068FEF730FA10BD0EB5FEF76DFBFFF7C9
:101D100003D0491C4907490F4170704710B504466C :101D100041FCFFF7E7F9FFF733FAFFF779FAFFF72E
:101D200000202070607008216068FEF71CFA08210E :101D20004DFA0120002300901A461F491FA0FFF71B
:101D3000A068FEF718FA10BD0EB5FEF75BFBFFF7C3 :101D300069FE2248FFF776FF00F084F81F48F03074
:101D40004AFCFFF7D5F9FFF721FAFFF767FAFFF72B :101D4000FFF7A2FF1D482021B030FEF70CFA1B4A16
:101D50003BFA0120002300901A46214921A0FFF7F9 :101D50001A482023D032D11A6438FEF77BFF184C82
:101D600071FE2448FFF77EFF00F08AF82148F0302A :101D6000FF25184E01352078002801D000F09EF89C
:101D7000FFF7A2FF1F482021B030FEF7F4F91D4AFB :101D7000FEF7F0FA6168884204D90022294630460D
:101D80001C482023D032D11A6438FEF769FF1A4C60 :101D8000FEF7E2FA0D4801AA02A9F030FFF795FF2D
:101D9000FF251A4E01352078002801D000F07EF88A :101D90000028E8D168460179282000F06FF807484C
:101DA000FEF7DEFA6168884204D9002229463046EF :101DA000F030FFF79AFFDEE7601F0008257320760A
:101DB000FEF7CFFA0F4802AA01A9F030FFF795FF0E :101DB00025642E25642E25640A000000840000207E
:101DC000002806D10120FFF7E5FB0A48F030FFF7B5 :101DC0000400002000040048F0B50B30C108C90031
:101DD0009CFF00F0A1F8014609A0FFF733FEDAE707 :101DD000144F0026144A0FE003688B420BD38B424A
:101DE000441F00082573207625642E25642E256463 :101DE00005D95C1A4318456830C3083B00E04368D6
:101DF0000A000000840000200400002000040048C5 :101DF000136002C004E0021D10680028ECD13046D8
:101E000025640A00F0B50B30C108C900144F002644 :101E0000002803D13868002801D00020F0BD064A20
:101E1000144A0FE003688B420BD38B4205D95C1A3E :101E100006481060064A121AD208D20044C00120B7
:101E20004318456830C3083B00E04368136002C0B4 :101E20003860D7E71C000020180000209401002033
:101E300004E0021D10680028ECD13046002803D1D0 :101E300090030020024800680068406A7047000074
:101E40003868002801D00020F0BD064A064810601E :101E40000000002005480021016641668166C166E8
:101E5000064A121AD208D20044C001203860D7E7DF :101E5000024901206031C873704700002001002052
:101E60001C00002018000020940100209003002096 :101E600010B509240122E40611462046FEF76CFA5B
:101E7000024800680068406A7047000000000020C7 :101E7000012208212046FEF767FA10BD70B545061D
:101E800005480021016641668166C166024901205C :101E80006D0E002901D0802005430024E1B22846D0
:101E90006031C873704700002001002012A0FFF7D6 :101E9000FFF7DCFE00F048F8641C082CF6DB00209D
:101EA000D1FD144D0024295D13A0FFF7CBFD641C68 :101EA00000F042F8FFF7DCFF002070BD12A0FFF742
:101EB000202CF8DB11A0FFF7C5FD0024FF25134EF1 :101EB000A9FD144D0024295D13A0FFF7A3FD641CA8
:101EC000013529463046FEF740FA6420FEF78CF9CA :101EC000202CF8DB11A0FFF79DFD0024FF25134E09
:101ED000641C642CF5DBBFF34F8F0E490C48C860BF :101ED000013529463046FEF733FA6420FEF784F9CF
:101EE000BFF34F8F00BFFDE7535049204552524F7B :101EE000641C642CF5DBBFF34F8F0E490C48C860AF
:101EF000520A000054010020256420000A72656225 :101EF000BFF34F8F00BFFDE7535049204552524F6B
:101F00006F6F74696E672E2E2E0A00000004004861 :101F0000520A000054010020256420000A72656214
:101F10000400FA0500ED00E070B5FEF721FA084D67 :101F10006F6F74696E672E2E2E0A00000004004851
:101F2000044602212846FEF70BFA012806D0FEF7E8 :101F20000400FA0500ED00E070B509240246E4065D
:101F300017FA001B1428F4D9012070BD002070BDD1 :101F300001212046FEF708FA002208212046FEF77C
:101F4000000400485553423456432050726F746F5A :101F400003FAFF2591352846FFF762FE012208219A
:101F5000636F6C20436172640A5369726975732000 :101F50002046FEF7F9F92846FFF75AFE002070BD2B
:101F600031202F20566963746F7220393030300A67 :101F60005553423456432050726F746F636F6C2028
:101F700064656B754E756B656D20323032320000D2 :101F7000436172640A5369726975732031202F209E
:101F80000000000000000001020304060708090029 :101F8000566963746F7220393030300A64656B753E
:101F90000000000102030400B81F00080000002038 :101F90004E756B656D20323032320000000000005B
:101FA00020000000641A0008D81F0008200000204C :101FA0000000000102030406070809000000000108
:101FB00070070000741A0008000000000000000014 :101FB00002030400D41F00080000002020000000DD
:101FC000000000000000000000127A000000000085 :101FC000241A0008F41F00082000002070070000F9
:081FD000000000000000000009 :101FD000341A0008000000000000000000000000AB
:101FE0000000000000127A00000000000000000065
:041FF00000000000ED
:04000005080000C12E :04000005080000C12E
:00000001FF :00000001FF

View File

@@ -3,7 +3,7 @@
<title>Static Call Graph - [my_adb\my_adb.axf]</title></head> <title>Static Call Graph - [my_adb\my_adb.axf]</title></head>
<body><HR> <body><HR>
<H1>Static Call Graph for image my_adb\my_adb.axf</H1><HR> <H1>Static Call Graph for image my_adb\my_adb.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060750: Last Updated: Wed Nov 09 23:43:47 2022 <BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060750: Last Updated: Thu Nov 10 09:59:00 2022
<BR><P> <BR><P>
<H3>Maximum Stack Usage = 180 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3> <H3>Maximum Stack Usage = 180 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3> Call chain for Maximum Stack Depth:</H3>
@@ -68,7 +68,7 @@ Global Symbols
<P><STRONG><a name="[23]"></a>__main</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000)) <P><STRONG><a name="[23]"></a>__main</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f042x6.o(.text) <BR>[Address Reference Count : 1]<UL><LI> startup_stm32f042x6.o(.text)
</UL> </UL>
<P><STRONG><a name="[7b]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001)) <P><STRONG><a name="[7c]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
<P><STRONG><a name="[2a]"></a>_main_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004)) <P><STRONG><a name="[2a]"></a>_main_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
<BR><BR>[Calls]<UL><LI><a href="#[2b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload <BR><BR>[Calls]<UL><LI><a href="#[2b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
@@ -78,15 +78,15 @@ Global Symbols
<BR><BR>[Called By]<UL><LI><a href="#[2b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload <BR><BR>[Called By]<UL><LI><a href="#[2b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
</UL> </UL>
<P><STRONG><a name="[7c]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008)) <P><STRONG><a name="[7d]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
<P><STRONG><a name="[7d]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A)) <P><STRONG><a name="[7e]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
<P><STRONG><a name="[7e]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B)) <P><STRONG><a name="[7f]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
<P><STRONG><a name="[7f]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D)) <P><STRONG><a name="[80]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))
<P><STRONG><a name="[80]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F)) <P><STRONG><a name="[81]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F))
<P><STRONG><a name="[0]"></a>Reset_Handler</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, startup_stm32f042x6.o(.text)) <P><STRONG><a name="[0]"></a>Reset_Handler</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, startup_stm32f042x6.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f042x6.o(RESET) <BR>[Address Reference Count : 1]<UL><LI> startup_stm32f042x6.o(RESET)
@@ -173,16 +173,16 @@ Global Symbols
<P><STRONG><a name="[6]"></a>WWDG_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f042x6.o(.text)) <P><STRONG><a name="[6]"></a>WWDG_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f042x6.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f042x6.o(RESET) <BR>[Address Reference Count : 1]<UL><LI> startup_stm32f042x6.o(RESET)
</UL> </UL>
<P><STRONG><a name="[81]"></a>__aeabi_uidiv</STRONG> (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED) <P><STRONG><a name="[82]"></a>__aeabi_uidiv</STRONG> (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
<P><STRONG><a name="[3b]"></a>__aeabi_uidivmod</STRONG> (Thumb, 44 bytes, Stack size 12 bytes, uidiv.o(.text)) <P><STRONG><a name="[3b]"></a>__aeabi_uidivmod</STRONG> (Thumb, 44 bytes, Stack size 12 bytes, uidiv.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = __aeabi_uidivmod <BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = __aeabi_uidivmod
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config <BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
<LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_InitTick <LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_InitTick
<LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_GetSysClockFreq <LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_GetSysClockFreq
<LI><a href="#[34]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_SetConfig <LI><a href="#[34]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_SetConfig
<LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core <LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
</UL> </UL>
<P><STRONG><a name="[2d]"></a>__aeabi_memset</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text)) <P><STRONG><a name="[2d]"></a>__aeabi_memset</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text))
@@ -190,14 +190,14 @@ Global Symbols
<LI><a href="#[2c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr <LI><a href="#[2c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr
</UL> </UL>
<P><STRONG><a name="[82]"></a>__aeabi_memset4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) <P><STRONG><a name="[83]"></a>__aeabi_memset4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
<P><STRONG><a name="[83]"></a>__aeabi_memset8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) <P><STRONG><a name="[84]"></a>__aeabi_memset8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
<P><STRONG><a name="[2c]"></a>__aeabi_memclr</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text)) <P><STRONG><a name="[2c]"></a>__aeabi_memclr</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text))
<BR><BR>[Calls]<UL><LI><a href="#[2d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memset <BR><BR>[Calls]<UL><LI><a href="#[2d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memset
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_reset <BR>[Called By]<UL><LI><a href="#[71]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_reset
</UL> </UL>
<P><STRONG><a name="[4c]"></a>__aeabi_memclr4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text)) <P><STRONG><a name="[4c]"></a>__aeabi_memclr4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))
@@ -205,7 +205,7 @@ Global Symbols
<LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_TxRxCpltCallback <LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_TxRxCpltCallback
</UL> </UL>
<P><STRONG><a name="[84]"></a>__aeabi_memclr8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) <P><STRONG><a name="[85]"></a>__aeabi_memclr8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
<P><STRONG><a name="[2e]"></a>_memset$wrapper</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED) <P><STRONG><a name="[2e]"></a>_memset$wrapper</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[2d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memset <BR><BR>[Calls]<UL><LI><a href="#[2d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memset
@@ -217,7 +217,7 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[2a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_main_scatterload <BR>[Called By]<UL><LI><a href="#[2a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_main_scatterload
</UL> </UL>
<P><STRONG><a name="[85]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED) <P><STRONG><a name="[86]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
<P><STRONG><a name="[43]"></a>HAL_DMA_Abort_IT</STRONG> (Thumb, 72 bytes, Stack size 16 bytes, stm32f0xx_hal_dma.o(i.HAL_DMA_Abort_IT)) <P><STRONG><a name="[43]"></a>HAL_DMA_Abort_IT</STRONG> (Thumb, 72 bytes, Stack size 16 bytes, stm32f0xx_hal_dma.o(i.HAL_DMA_Abort_IT))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = HAL_DMA_Abort_IT <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = HAL_DMA_Abort_IT
@@ -230,7 +230,7 @@ Global Symbols
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[31]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GetTick <BR>[Calls]<UL><LI><a href="#[31]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GetTick
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[75]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spi_error_dump_reboot <BR>[Called By]<UL><LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spi_error_dump_reboot
</UL> </UL>
<P><STRONG><a name="[47]"></a>HAL_GPIO_Init</STRONG> (Thumb, 294 bytes, Stack size 24 bytes, stm32f0xx_hal_gpio.o(i.HAL_GPIO_Init)) <P><STRONG><a name="[47]"></a>HAL_GPIO_Init</STRONG> (Thumb, 294 bytes, Stack size 24 bytes, stm32f0xx_hal_gpio.o(i.HAL_GPIO_Init))
@@ -241,17 +241,14 @@ Global Symbols
<LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_GPIO_Init <LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_GPIO_Init
</UL> </UL>
<P><STRONG><a name="[7a]"></a>HAL_GPIO_ReadPin</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, stm32f0xx_hal_gpio.o(i.HAL_GPIO_ReadPin)) <P><STRONG><a name="[7b]"></a>HAL_GPIO_TogglePin</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, stm32f0xx_hal_gpio.o(i.HAL_GPIO_TogglePin))
<BR><BR>[Called By]<UL><LI><a href="#[78]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;wait_for_KBACK <BR><BR>[Called By]<UL><LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spi_error_dump_reboot
</UL>
<P><STRONG><a name="[79]"></a>HAL_GPIO_TogglePin</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, stm32f0xx_hal_gpio.o(i.HAL_GPIO_TogglePin))
<BR><BR>[Called By]<UL><LI><a href="#[75]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spi_error_dump_reboot
</UL> </UL>
<P><STRONG><a name="[4a]"></a>HAL_GPIO_WritePin</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin)) <P><STRONG><a name="[4a]"></a>HAL_GPIO_WritePin</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin))
<BR><BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main <BR><BR>[Called By]<UL><LI><a href="#[7a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;write_bit
<LI><a href="#[64]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SendBit <LI><a href="#[78]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;release_kb_line
<LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
<LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_TxRxCpltCallback <LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_TxRxCpltCallback
<LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_GPIO_Init <LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_GPIO_Init
</UL> </UL>
@@ -264,7 +261,6 @@ Global Symbols
<LI><a href="#[41]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_OscConfig <LI><a href="#[41]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_OscConfig
<LI><a href="#[3f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_ClockConfig <LI><a href="#[3f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_ClockConfig
<LI><a href="#[30]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_Delay <LI><a href="#[30]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_Delay
<LI><a href="#[78]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;wait_for_KBACK
<LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main <LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
<LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_TxRxCpltCallback <LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_TxRxCpltCallback
<LI><a href="#[59]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_WaitOnFlagUntilTimeout <LI><a href="#[59]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_WaitOnFlagUntilTimeout
@@ -282,7 +278,7 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_USART2_UART_Init <BR>[Called By]<UL><LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_USART2_UART_Init
</UL> </UL>
<P><STRONG><a name="[66]"></a>HAL_IncTick</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, stm32f0xx_hal.o(i.HAL_IncTick)) <P><STRONG><a name="[64]"></a>HAL_IncTick</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, stm32f0xx_hal.o(i.HAL_IncTick))
<BR><BR>[Called By]<UL><LI><a href="#[5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SysTick_Handler <BR><BR>[Called By]<UL><LI><a href="#[5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SysTick_Handler
</UL> </UL>
@@ -326,7 +322,7 @@ Global Symbols
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_MspInit <BR>[Called By]<UL><LI><a href="#[46]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_MspInit
<LI><a href="#[39]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_MspInit <LI><a href="#[39]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_MspInit
<LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config <LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
<LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_InitTick <LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_InitTick
</UL> </UL>
@@ -337,15 +333,15 @@ Global Symbols
<LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_InitTick <LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_InitTick
<LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_GetSysClockFreq <LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_GetSysClockFreq
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config <BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
</UL> </UL>
<P><STRONG><a name="[3a]"></a>HAL_RCC_GetHCLKFreq</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f0xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq)) <P><STRONG><a name="[3a]"></a>HAL_RCC_GetHCLKFreq</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f0xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq))
<BR><BR>[Called By]<UL><LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config <BR><BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
<LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_InitTick <LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_InitTick
</UL> </UL>
<P><STRONG><a name="[69]"></a>HAL_RCC_GetPCLK1Freq</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, stm32f0xx_hal_rcc.o(i.HAL_RCC_GetPCLK1Freq)) <P><STRONG><a name="[67]"></a>HAL_RCC_GetPCLK1Freq</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, stm32f0xx_hal_rcc.o(i.HAL_RCC_GetPCLK1Freq))
<BR><BR>[Called By]<UL><LI><a href="#[34]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_SetConfig <BR><BR>[Called By]<UL><LI><a href="#[34]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_SetConfig
</UL> </UL>
@@ -363,7 +359,7 @@ Global Symbols
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[31]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GetTick <BR>[Calls]<UL><LI><a href="#[31]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GetTick
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config <BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
</UL> </UL>
<P><STRONG><a name="[44]"></a>HAL_SPI_ErrorCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f0xx_hal_spi.o(i.HAL_SPI_ErrorCallback)) <P><STRONG><a name="[44]"></a>HAL_SPI_ErrorCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f0xx_hal_spi.o(i.HAL_SPI_ErrorCallback))
@@ -422,8 +418,8 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[5f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_CloseRxTx_ISR <BR>[Called By]<UL><LI><a href="#[5f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_CloseRxTx_ISR
</UL> </UL>
<P><STRONG><a name="[68]"></a>HAL_SYSTICK_CLKSourceConfig</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_CLKSourceConfig)) <P><STRONG><a name="[66]"></a>HAL_SYSTICK_CLKSourceConfig</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_CLKSourceConfig))
<BR><BR>[Called By]<UL><LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config <BR><BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
</UL> </UL>
<P><STRONG><a name="[4f]"></a>HAL_SYSTICK_Callback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Callback)) <P><STRONG><a name="[4f]"></a>HAL_SYSTICK_Callback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Callback))
@@ -435,7 +431,7 @@ Global Symbols
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[3e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;NVIC_SetPriority <BR>[Calls]<UL><LI><a href="#[3e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;NVIC_SetPriority
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config <BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
<LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_InitTick <LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_InitTick
</UL> </UL>
@@ -468,8 +464,8 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_TIM_Base_Init <BR>[Called By]<UL><LI><a href="#[50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_TIM_Base_Init
</UL> </UL>
<P><STRONG><a name="[6e]"></a>HAL_TIM_Base_Start</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, stm32f0xx_hal_tim.o(i.HAL_TIM_Base_Start)) <P><STRONG><a name="[6d]"></a>HAL_TIM_Base_Start</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, stm32f0xx_hal_tim.o(i.HAL_TIM_Base_Start))
<BR><BR>[Called By]<UL><LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us_init <BR><BR>[Called By]<UL><LI><a href="#[6c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us_init
</UL> </UL>
<P><STRONG><a name="[53]"></a>HAL_TIM_ConfigClockSource</STRONG> (Thumb, 238 bytes, Stack size 24 bytes, stm32f0xx_hal_tim.o(i.HAL_TIM_ConfigClockSource)) <P><STRONG><a name="[53]"></a>HAL_TIM_ConfigClockSource</STRONG> (Thumb, 238 bytes, Stack size 24 bytes, stm32f0xx_hal_tim.o(i.HAL_TIM_ConfigClockSource))
@@ -523,28 +519,19 @@ Global Symbols
<P><STRONG><a name="[3]"></a>SVC_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f0xx_it.o(i.SVC_Handler)) <P><STRONG><a name="[3]"></a>SVC_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f0xx_it.o(i.SVC_Handler))
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f042x6.o(RESET) <BR>[Address Reference Count : 1]<UL><LI> startup_stm32f042x6.o(RESET)
</UL> </UL>
<P><STRONG><a name="[64]"></a>SendBit</STRONG> (Thumb, 54 bytes, Stack size 16 bytes, main.o(i.SendBit))
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = SendBit &rArr; delay_us
</UL>
<BR>[Calls]<UL><LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
<LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
</UL>
<BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>
<P><STRONG><a name="[5]"></a>SysTick_Handler</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, stm32f0xx_it.o(i.SysTick_Handler)) <P><STRONG><a name="[5]"></a>SysTick_Handler</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, stm32f0xx_it.o(i.SysTick_Handler))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = SysTick_Handler &rArr; HAL_SYSTICK_IRQHandler <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = SysTick_Handler &rArr; HAL_SYSTICK_IRQHandler
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[4e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SYSTICK_IRQHandler <BR>[Calls]<UL><LI><a href="#[4e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SYSTICK_IRQHandler
<LI><a href="#[66]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_IncTick <LI><a href="#[64]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_IncTick
</UL> </UL>
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f042x6.o(RESET) <BR>[Address Reference Count : 1]<UL><LI> startup_stm32f042x6.o(RESET)
</UL> </UL>
<P><STRONG><a name="[67]"></a>SystemClock_Config</STRONG> (Thumb, 90 bytes, Stack size 80 bytes, main.o(i.SystemClock_Config)) <P><STRONG><a name="[65]"></a>SystemClock_Config</STRONG> (Thumb, 90 bytes, Stack size 80 bytes, main.o(i.SystemClock_Config))
<BR><BR>[Stack]<UL><LI>Max Depth = 164<LI>Call Chain = SystemClock_Config &rArr; HAL_RCC_ClockConfig &rArr; HAL_RCC_GetSysClockFreq &rArr; __aeabi_uidivmod <BR><BR>[Stack]<UL><LI>Max Depth = 164<LI>Call Chain = SystemClock_Config &rArr; HAL_RCC_ClockConfig &rArr; HAL_RCC_GetSysClockFreq &rArr; __aeabi_uidivmod
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SYSTICK_Config <BR>[Calls]<UL><LI><a href="#[3c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SYSTICK_Config
<LI><a href="#[68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SYSTICK_CLKSourceConfig <LI><a href="#[66]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SYSTICK_CLKSourceConfig
<LI><a href="#[41]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_OscConfig <LI><a href="#[41]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_OscConfig
<LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_GetHCLKFreq <LI><a href="#[3a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_GetHCLKFreq
<LI><a href="#[3f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_ClockConfig <LI><a href="#[3f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_ClockConfig
@@ -588,7 +575,7 @@ Global Symbols
<BR><BR>[Stack]<UL><LI>Max Depth = 84<LI>Call Chain = UART_SetConfig &rArr; HAL_RCC_GetSysClockFreq &rArr; __aeabi_uidivmod <BR><BR>[Stack]<UL><LI>Max Depth = 84<LI>Call Chain = UART_SetConfig &rArr; HAL_RCC_GetSysClockFreq &rArr; __aeabi_uidivmod
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_GetSysClockFreq <BR>[Calls]<UL><LI><a href="#[40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_GetSysClockFreq
<LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_GetPCLK1Freq <LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_RCC_GetPCLK1Freq
<LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uidivmod <LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uidivmod
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[32]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_HalfDuplex_Init <BR>[Called By]<UL><LI><a href="#[32]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_HalfDuplex_Init
@@ -603,37 +590,37 @@ Global Symbols
<LI><a href="#[36]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_CheckIdleState <LI><a href="#[36]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UART_CheckIdleState
</UL> </UL>
<P><STRONG><a name="[6a]"></a>__0printf$3</STRONG> (Thumb, 24 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3), UNUSED) <P><STRONG><a name="[68]"></a>__0printf$3</STRONG> (Thumb, 24 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core <BR><BR>[Calls]<UL><LI><a href="#[69]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_printf_core
</UL> </UL>
<P><STRONG><a name="[86]"></a>__1printf$3</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3), UNUSED) <P><STRONG><a name="[87]"></a>__1printf$3</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3), UNUSED)
<P><STRONG><a name="[73]"></a>__2printf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3)) <P><STRONG><a name="[72]"></a>__2printf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = __2printf <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = __2printf
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[75]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spi_error_dump_reboot <BR>[Called By]<UL><LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spi_error_dump_reboot
<LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main <LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL> </UL>
<P><STRONG><a name="[87]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED) <P><STRONG><a name="[88]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
<P><STRONG><a name="[88]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED) <P><STRONG><a name="[89]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
<P><STRONG><a name="[89]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED) <P><STRONG><a name="[8a]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
<P><STRONG><a name="[65]"></a>delay_us</STRONG> (Thumb, 20 bytes, Stack size 4 bytes, delay_us.o(i.delay_us)) <P><STRONG><a name="[6a]"></a>delay_us</STRONG> (Thumb, 20 bytes, Stack size 4 bytes, delay_us.o(i.delay_us))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = delay_us <BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = delay_us
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[6c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;micros <BR>[Calls]<UL><LI><a href="#[6b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;micros
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[64]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SendBit <BR>[Called By]<UL><LI><a href="#[7a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;write_bit
</UL> </UL>
<P><STRONG><a name="[6d]"></a>delay_us_init</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, delay_us.o(i.delay_us_init)) <P><STRONG><a name="[6c]"></a>delay_us_init</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, delay_us.o(i.delay_us_init))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = delay_us_init <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = delay_us_init
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_TIM_Base_Start <BR>[Calls]<UL><LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_TIM_Base_Start
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main <BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL> </UL>
@@ -645,28 +632,32 @@ Global Symbols
</UL> </UL>
<BR>[Address Reference Count : 1]<UL><LI> printf3.o(i.__0printf$3) <BR>[Address Reference Count : 1]<UL><LI> printf3.o(i.__0printf$3)
</UL> </UL>
<P><STRONG><a name="[79]"></a>get_bit</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, main.o(i.get_bit))
<BR><BR>[Called By]<UL><LI><a href="#[76]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_key
</UL>
<P><STRONG><a name="[4b]"></a>kb_buf_add</STRONG> (Thumb, 44 bytes, Stack size 8 bytes, helpers.o(i.kb_buf_add)) <P><STRONG><a name="[4b]"></a>kb_buf_add</STRONG> (Thumb, 44 bytes, Stack size 8 bytes, helpers.o(i.kb_buf_add))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = kb_buf_add <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = kb_buf_add
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_is_full <BR>[Calls]<UL><LI><a href="#[6e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_is_full
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_TxRxCpltCallback <BR>[Called By]<UL><LI><a href="#[49]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_TxRxCpltCallback
</UL> </UL>
<P><STRONG><a name="[70]"></a>kb_buf_init</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, helpers.o(i.kb_buf_init)) <P><STRONG><a name="[6f]"></a>kb_buf_init</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, helpers.o(i.kb_buf_init))
<BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = kb_buf_init &rArr; malloc <BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = kb_buf_init &rArr; malloc
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_reset <BR>[Calls]<UL><LI><a href="#[71]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_reset
<LI><a href="#[71]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;malloc <LI><a href="#[70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;malloc
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main <BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL> </UL>
<P><STRONG><a name="[6f]"></a>kb_buf_is_full</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, helpers.o(i.kb_buf_is_full)) <P><STRONG><a name="[6e]"></a>kb_buf_is_full</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, helpers.o(i.kb_buf_is_full))
<BR><BR>[Called By]<UL><LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_add <BR><BR>[Called By]<UL><LI><a href="#[4b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_add
</UL> </UL>
<P><STRONG><a name="[76]"></a>kb_buf_peek</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, helpers.o(i.kb_buf_peek)) <P><STRONG><a name="[75]"></a>kb_buf_peek</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, helpers.o(i.kb_buf_peek))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = kb_buf_peek <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = kb_buf_peek
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main <BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
@@ -676,71 +667,88 @@ Global Symbols
<BR><BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main <BR><BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL> </UL>
<P><STRONG><a name="[72]"></a>kb_buf_reset</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, helpers.o(i.kb_buf_reset)) <P><STRONG><a name="[71]"></a>kb_buf_reset</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, helpers.o(i.kb_buf_reset))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = kb_buf_reset <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = kb_buf_reset
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[2c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr <BR>[Calls]<UL><LI><a href="#[2c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_init <BR>[Called By]<UL><LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_init
</UL> </UL>
<P><STRONG><a name="[21]"></a>main</STRONG> (Thumb, 168 bytes, Stack size 16 bytes, main.o(i.main)) <P><STRONG><a name="[21]"></a>main</STRONG> (Thumb, 160 bytes, Stack size 16 bytes, main.o(i.main))
<BR><BR>[Stack]<UL><LI>Max Depth = 180<LI>Call Chain = main &rArr; SystemClock_Config &rArr; HAL_RCC_ClockConfig &rArr; HAL_RCC_GetSysClockFreq &rArr; __aeabi_uidivmod <BR><BR>[Stack]<UL><LI>Max Depth = 180<LI>Call Chain = main &rArr; SystemClock_Config &rArr; HAL_RCC_ClockConfig &rArr; HAL_RCC_GetSysClockFreq &rArr; __aeabi_uidivmod
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[4d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_TransmitReceive_IT <BR>[Calls]<UL><LI><a href="#[4d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_TransmitReceive_IT
<LI><a href="#[37]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_Init <LI><a href="#[37]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_Init
<LI><a href="#[31]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GetTick <LI><a href="#[31]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GetTick
<LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin <LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
<LI><a href="#[78]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;wait_for_KBACK <LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spi_error_dump_reboot
<LI><a href="#[75]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;spi_error_dump_reboot <LI><a href="#[76]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_key
<LI><a href="#[74]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;protocol_status_lookup_init <LI><a href="#[73]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;protocol_status_lookup_init
<LI><a href="#[67]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config <LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SystemClock_Config
<LI><a href="#[64]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SendBit
<LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_USART2_UART_Init <LI><a href="#[5e]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_USART2_UART_Init
<LI><a href="#[5c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_TIM2_Init <LI><a href="#[5c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_TIM2_Init
<LI><a href="#[5b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_SPI1_Init <LI><a href="#[5b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_SPI1_Init
<LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_GPIO_Init <LI><a href="#[5a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_GPIO_Init
<LI><a href="#[77]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_pop <LI><a href="#[77]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_pop
<LI><a href="#[76]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_peek <LI><a href="#[75]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_peek
<LI><a href="#[70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_init <LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_init
<LI><a href="#[6d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us_init <LI><a href="#[6c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us_init
<LI><a href="#[73]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2printf <LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2printf
<LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4 <LI><a href="#[4c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memclr4
</UL> </UL>
<BR>[Address Reference Count : 1]<UL><LI> entry9a.o(.ARM.Collect$$$$0000000B) <BR>[Address Reference Count : 1]<UL><LI> entry9a.o(.ARM.Collect$$$$0000000B)
</UL> </UL>
<P><STRONG><a name="[71]"></a>malloc</STRONG> (Thumb, 92 bytes, Stack size 20 bytes, malloc.o(i.malloc)) <P><STRONG><a name="[70]"></a>malloc</STRONG> (Thumb, 92 bytes, Stack size 20 bytes, malloc.o(i.malloc))
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = malloc <BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = malloc
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_init <BR>[Called By]<UL><LI><a href="#[6f]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_init
</UL> </UL>
<P><STRONG><a name="[6c]"></a>micros</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, delay_us.o(i.micros)) <P><STRONG><a name="[6b]"></a>micros</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, delay_us.o(i.micros))
<BR><BR>[Called By]<UL><LI><a href="#[65]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us <BR><BR>[Called By]<UL><LI><a href="#[6a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
</UL> </UL>
<P><STRONG><a name="[74]"></a>protocol_status_lookup_init</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, main.o(i.protocol_status_lookup_init)) <P><STRONG><a name="[73]"></a>protocol_status_lookup_init</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, main.o(i.protocol_status_lookup_init))
<BR><BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main <BR><BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL> </UL>
<P><STRONG><a name="[75]"></a>spi_error_dump_reboot</STRONG> (Thumb, 76 bytes, Stack size 0 bytes, main.o(i.spi_error_dump_reboot)) <P><STRONG><a name="[78]"></a>release_kb_line</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, main.o(i.release_kb_line))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = spi_error_dump_reboot &rArr; __2printf <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = release_kb_line
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[79]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_TogglePin <BR>[Calls]<UL><LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
<LI><a href="#[30]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_Delay </UL>
<LI><a href="#[73]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2printf <BR>[Called By]<UL><LI><a href="#[76]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_key
</UL>
<P><STRONG><a name="[76]"></a>send_key</STRONG> (Thumb, 48 bytes, Stack size 16 bytes, main.o(i.send_key))
<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = send_key &rArr; write_bit &rArr; delay_us
</UL>
<BR>[Calls]<UL><LI><a href="#[7a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;write_bit
<LI><a href="#[78]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;release_kb_line
<LI><a href="#[79]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_bit
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main <BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL> </UL>
<P><STRONG><a name="[78]"></a>wait_for_KBACK</STRONG> (Thumb, 40 bytes, Stack size 16 bytes, main.o(i.wait_for_KBACK)) <P><STRONG><a name="[74]"></a>spi_error_dump_reboot</STRONG> (Thumb, 76 bytes, Stack size 0 bytes, main.o(i.spi_error_dump_reboot))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = wait_for_KBACK <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = spi_error_dump_reboot &rArr; __2printf
</UL> </UL>
<BR>[Calls]<UL><LI><a href="#[31]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GetTick <BR>[Calls]<UL><LI><a href="#[7b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_TogglePin
<LI><a href="#[7a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_ReadPin <LI><a href="#[30]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_Delay
<LI><a href="#[72]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__2printf
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main <BR>[Called By]<UL><LI><a href="#[21]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL> </UL>
<P><STRONG><a name="[7a]"></a>write_bit</STRONG> (Thumb, 56 bytes, Stack size 16 bytes, main.o(i.write_bit))
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = write_bit &rArr; delay_us
</UL>
<BR>[Calls]<UL><LI><a href="#[4a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
<LI><a href="#[6a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
</UL>
<BR>[Called By]<UL><LI><a href="#[76]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;send_key
</UL>
<P> <P>
<H3> <H3>
Local Symbols Local Symbols
@@ -876,10 +884,10 @@ Local Symbols
<LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_NVIC_SetPriority <LI><a href="#[3d]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_NVIC_SetPriority
</UL> </UL>
<P><STRONG><a name="[6b]"></a>_printf_core</STRONG> (Thumb, 456 bytes, Stack size 88 bytes, printf3.o(i._printf_core), UNUSED) <P><STRONG><a name="[69]"></a>_printf_core</STRONG> (Thumb, 456 bytes, Stack size 88 bytes, printf3.o(i._printf_core), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uidivmod <BR><BR>[Calls]<UL><LI><a href="#[3b]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uidivmod
</UL> </UL>
<BR>[Called By]<UL><LI><a href="#[6a]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__0printf$3 <BR>[Called By]<UL><LI><a href="#[68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__0printf$3
</UL> </UL>
<P> <P>
<H3> <H3>

View File

@@ -44,8 +44,6 @@ Section Cross References
main.o(i.MX_TIM2_Init) refers to main.o(.bss) for .bss main.o(i.MX_TIM2_Init) refers to main.o(.bss) for .bss
main.o(i.MX_USART2_UART_Init) refers to stm32f0xx_hal_uart.o(i.HAL_HalfDuplex_Init) for HAL_HalfDuplex_Init main.o(i.MX_USART2_UART_Init) refers to stm32f0xx_hal_uart.o(i.HAL_HalfDuplex_Init) for HAL_HalfDuplex_Init
main.o(i.MX_USART2_UART_Init) refers to main.o(.bss) for .bss main.o(i.MX_USART2_UART_Init) refers to main.o(.bss) for .bss
main.o(i.SendBit) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin) for HAL_GPIO_WritePin
main.o(i.SendBit) refers to delay_us.o(i.delay_us) for delay_us
main.o(i.SystemClock_Config) refers to stm32f0xx_hal_rcc.o(i.HAL_RCC_OscConfig) for HAL_RCC_OscConfig main.o(i.SystemClock_Config) refers to stm32f0xx_hal_rcc.o(i.HAL_RCC_OscConfig) for HAL_RCC_OscConfig
main.o(i.SystemClock_Config) refers to stm32f0xx_hal_rcc.o(i.HAL_RCC_ClockConfig) for HAL_RCC_ClockConfig main.o(i.SystemClock_Config) refers to stm32f0xx_hal_rcc.o(i.HAL_RCC_ClockConfig) for HAL_RCC_ClockConfig
main.o(i.SystemClock_Config) refers to stm32f0xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq) for HAL_RCC_GetHCLKFreq main.o(i.SystemClock_Config) refers to stm32f0xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq) for HAL_RCC_GetHCLKFreq
@@ -74,19 +72,22 @@ Section Cross References
main.o(i.main) refers to stm32f0xx_hal.o(i.HAL_GetTick) for HAL_GetTick main.o(i.main) refers to stm32f0xx_hal.o(i.HAL_GetTick) for HAL_GetTick
main.o(i.main) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin) for HAL_GPIO_WritePin main.o(i.main) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin) for HAL_GPIO_WritePin
main.o(i.main) refers to helpers.o(i.kb_buf_peek) for kb_buf_peek main.o(i.main) refers to helpers.o(i.kb_buf_peek) for kb_buf_peek
main.o(i.main) refers to main.o(i.SendBit) for SendBit main.o(i.main) refers to main.o(i.send_key) for send_key
main.o(i.main) refers to helpers.o(i.kb_buf_pop) for kb_buf_pop main.o(i.main) refers to helpers.o(i.kb_buf_pop) for kb_buf_pop
main.o(i.main) refers to main.o(i.wait_for_KBACK) for wait_for_KBACK
main.o(i.main) refers to main.o(.constdata) for .constdata main.o(i.main) refers to main.o(.constdata) for .constdata
main.o(i.main) refers to main.o(.bss) for .bss main.o(i.main) refers to main.o(.bss) for .bss
main.o(i.main) refers to main.o(.data) for .data main.o(i.main) refers to main.o(.data) for .data
main.o(i.protocol_status_lookup_init) refers to main.o(.bss) for .bss main.o(i.protocol_status_lookup_init) refers to main.o(.bss) for .bss
main.o(i.release_kb_line) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin) for HAL_GPIO_WritePin
main.o(i.send_key) refers to main.o(i.get_bit) for get_bit
main.o(i.send_key) refers to main.o(i.write_bit) for write_bit
main.o(i.send_key) refers to main.o(i.release_kb_line) for release_kb_line
main.o(i.spi_error_dump_reboot) refers to printf3.o(i.__0printf$3) for __2printf main.o(i.spi_error_dump_reboot) refers to printf3.o(i.__0printf$3) for __2printf
main.o(i.spi_error_dump_reboot) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_TogglePin) for HAL_GPIO_TogglePin main.o(i.spi_error_dump_reboot) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_TogglePin) for HAL_GPIO_TogglePin
main.o(i.spi_error_dump_reboot) refers to stm32f0xx_hal.o(i.HAL_Delay) for HAL_Delay main.o(i.spi_error_dump_reboot) refers to stm32f0xx_hal.o(i.HAL_Delay) for HAL_Delay
main.o(i.spi_error_dump_reboot) refers to main.o(.bss) for .bss main.o(i.spi_error_dump_reboot) refers to main.o(.bss) for .bss
main.o(i.wait_for_KBACK) refers to stm32f0xx_hal.o(i.HAL_GetTick) for HAL_GetTick main.o(i.write_bit) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin) for HAL_GPIO_WritePin
main.o(i.wait_for_KBACK) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_ReadPin) for HAL_GPIO_ReadPin main.o(i.write_bit) refers to delay_us.o(i.delay_us) for delay_us
stm32f0xx_it.o(i.SPI1_IRQHandler) refers to stm32f0xx_hal_spi.o(i.HAL_SPI_IRQHandler) for HAL_SPI_IRQHandler stm32f0xx_it.o(i.SPI1_IRQHandler) refers to stm32f0xx_hal_spi.o(i.HAL_SPI_IRQHandler) for HAL_SPI_IRQHandler
stm32f0xx_it.o(i.SPI1_IRQHandler) refers to main.o(.bss) for hspi1 stm32f0xx_it.o(i.SPI1_IRQHandler) refers to main.o(.bss) for hspi1
stm32f0xx_it.o(i.SysTick_Handler) refers to stm32f0xx_hal.o(i.HAL_IncTick) for HAL_IncTick stm32f0xx_it.o(i.SysTick_Handler) refers to stm32f0xx_hal.o(i.HAL_IncTick) for HAL_IncTick
@@ -1037,6 +1038,7 @@ Removing Unused input sections from the image.
Removing main.o(i.byte_to_int16_t), (8 bytes). Removing main.o(i.byte_to_int16_t), (8 bytes).
Removing main.o(i.handle_protocol_switch), (60 bytes). Removing main.o(i.handle_protocol_switch), (60 bytes).
Removing main.o(i.is_protocol_enabled), (20 bytes). Removing main.o(i.is_protocol_enabled), (20 bytes).
Removing main.o(i.wait_for_KBACK), (4 bytes).
Removing main.o(.constdata), (1 bytes). Removing main.o(.constdata), (1 bytes).
Removing main.o(.constdata), (1 bytes). Removing main.o(.constdata), (1 bytes).
Removing main.o(.constdata), (1 bytes). Removing main.o(.constdata), (1 bytes).
@@ -1425,6 +1427,7 @@ Removing Unused input sections from the image.
Removing stm32f0xx_hal_gpio.o(i.HAL_GPIO_EXTI_Callback), (2 bytes). Removing stm32f0xx_hal_gpio.o(i.HAL_GPIO_EXTI_Callback), (2 bytes).
Removing stm32f0xx_hal_gpio.o(i.HAL_GPIO_EXTI_IRQHandler), (24 bytes). Removing stm32f0xx_hal_gpio.o(i.HAL_GPIO_EXTI_IRQHandler), (24 bytes).
Removing stm32f0xx_hal_gpio.o(i.HAL_GPIO_LockPin), (36 bytes). Removing stm32f0xx_hal_gpio.o(i.HAL_GPIO_LockPin), (36 bytes).
Removing stm32f0xx_hal_gpio.o(i.HAL_GPIO_ReadPin), (10 bytes).
Removing stm32f0xx_hal_dma.o(.rev16_text), (4 bytes). Removing stm32f0xx_hal_dma.o(.rev16_text), (4 bytes).
Removing stm32f0xx_hal_dma.o(.revsh_text), (4 bytes). Removing stm32f0xx_hal_dma.o(.revsh_text), (4 bytes).
Removing stm32f0xx_hal_dma.o(i.DMA_CalcBaseAndBitshift), (36 bytes). Removing stm32f0xx_hal_dma.o(i.DMA_CalcBaseAndBitshift), (36 bytes).
@@ -1514,7 +1517,7 @@ Removing Unused input sections from the image.
Removing stm32f0xx_hal_tim.o(i.__ARM_common_switch8), (26 bytes). Removing stm32f0xx_hal_tim.o(i.__ARM_common_switch8), (26 bytes).
Removing depilogue.o(i.__ARM_clz), (46 bytes). Removing depilogue.o(i.__ARM_clz), (46 bytes).
494 unused section(s) (total 34928 bytes) removed from the image. 496 unused section(s) (total 34942 bytes) removed from the image.
============================================================================== ==============================================================================
@@ -1548,42 +1551,42 @@ Image Symbol Table
../Src/stm32f0xx_it.c 0x00000000 Number 0 stm32f0xx_it.o ABSOLUTE ../Src/stm32f0xx_it.c 0x00000000 Number 0 stm32f0xx_it.o ABSOLUTE
../clib/microlib/division.c 0x00000000 Number 0 uldiv.o ABSOLUTE ../clib/microlib/division.c 0x00000000 Number 0 uldiv.o ABSOLUTE
../clib/microlib/division.c 0x00000000 Number 0 uidiv.o ABSOLUTE ../clib/microlib/division.c 0x00000000 Number 0 uidiv.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7a.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry7a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.o ABSOLUTE ../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE ../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE
../clib/microlib/malloc/malloc.c 0x00000000 Number 0 malloca.o ABSOLUTE ../clib/microlib/malloc/malloc.c 0x00000000 Number 0 malloca.o ABSOLUTE
../clib/microlib/malloc/malloc.c 0x00000000 Number 0 mallocr.o ABSOLUTE
../clib/microlib/malloc/malloc.c 0x00000000 Number 0 mallocra.o ABSOLUTE ../clib/microlib/malloc/malloc.c 0x00000000 Number 0 mallocra.o ABSOLUTE
../clib/microlib/malloc/malloc.c 0x00000000 Number 0 malloc.o ABSOLUTE ../clib/microlib/malloc/malloc.c 0x00000000 Number 0 malloc.o ABSOLUTE
../clib/microlib/malloc/malloc.c 0x00000000 Number 0 mallocr.o ABSOLUTE
../clib/microlib/malloc/mvars.c 0x00000000 Number 0 mvars.o ABSOLUTE ../clib/microlib/malloc/mvars.c 0x00000000 Number 0 mvars.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf7.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf6.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf5.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf4.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf3.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf8.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printfa.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf2.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf1.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf1.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf0.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf0.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printfa.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf8.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf7.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf6.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf5.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf3.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf2.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf4.o ABSOLUTE
../clib/microlib/printf/stubs.s 0x00000000 Number 0 stubs.o ABSOLUTE ../clib/microlib/printf/stubs.s 0x00000000 Number 0 stubs.o ABSOLUTE
../clib/microlib/stdio/streams.c 0x00000000 Number 0 stdout.o ABSOLUTE ../clib/microlib/stdio/streams.c 0x00000000 Number 0 stdout.o ABSOLUTE
../clib/microlib/string/memcpy.c 0x00000000 Number 0 memcpyb.o ABSOLUTE
../clib/microlib/string/memcpy.c 0x00000000 Number 0 memcpya.o ABSOLUTE ../clib/microlib/string/memcpy.c 0x00000000 Number 0 memcpya.o ABSOLUTE
../clib/microlib/string/memcpy.c 0x00000000 Number 0 memcpyb.o ABSOLUTE
../clib/microlib/string/memset.c 0x00000000 Number 0 memseta.o ABSOLUTE ../clib/microlib/string/memset.c 0x00000000 Number 0 memseta.o ABSOLUTE
../clib/microlib/stubs.s 0x00000000 Number 0 iusefp.o ABSOLUTE ../clib/microlib/stubs.s 0x00000000 Number 0 iusefp.o ABSOLUTE
../fplib/microlib/fpadd.c 0x00000000 Number 0 dadd.o ABSOLUTE ../fplib/microlib/fpadd.c 0x00000000 Number 0 dadd.o ABSOLUTE
@@ -1640,113 +1643,114 @@ Image Symbol Table
i.HAL_DMA_Abort_IT 0x080001a0 Section 0 stm32f0xx_hal_dma.o(i.HAL_DMA_Abort_IT) i.HAL_DMA_Abort_IT 0x080001a0 Section 0 stm32f0xx_hal_dma.o(i.HAL_DMA_Abort_IT)
i.HAL_Delay 0x080001e8 Section 0 stm32f0xx_hal.o(i.HAL_Delay) i.HAL_Delay 0x080001e8 Section 0 stm32f0xx_hal.o(i.HAL_Delay)
i.HAL_GPIO_Init 0x08000204 Section 0 stm32f0xx_hal_gpio.o(i.HAL_GPIO_Init) i.HAL_GPIO_Init 0x08000204 Section 0 stm32f0xx_hal_gpio.o(i.HAL_GPIO_Init)
i.HAL_GPIO_ReadPin 0x08000340 Section 0 stm32f0xx_hal_gpio.o(i.HAL_GPIO_ReadPin) i.HAL_GPIO_TogglePin 0x08000340 Section 0 stm32f0xx_hal_gpio.o(i.HAL_GPIO_TogglePin)
i.HAL_GPIO_TogglePin 0x0800034a Section 0 stm32f0xx_hal_gpio.o(i.HAL_GPIO_TogglePin) i.HAL_GPIO_WritePin 0x08000348 Section 0 stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin)
i.HAL_GPIO_WritePin 0x08000352 Section 0 stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin) i.HAL_GetTick 0x08000354 Section 0 stm32f0xx_hal.o(i.HAL_GetTick)
i.HAL_GetTick 0x08000360 Section 0 stm32f0xx_hal.o(i.HAL_GetTick) i.HAL_HalfDuplex_Init 0x08000360 Section 0 stm32f0xx_hal_uart.o(i.HAL_HalfDuplex_Init)
i.HAL_HalfDuplex_Init 0x0800036c Section 0 stm32f0xx_hal_uart.o(i.HAL_HalfDuplex_Init) i.HAL_IncTick 0x080003d8 Section 0 stm32f0xx_hal.o(i.HAL_IncTick)
i.HAL_IncTick 0x080003e4 Section 0 stm32f0xx_hal.o(i.HAL_IncTick) i.HAL_Init 0x080003e8 Section 0 stm32f0xx_hal.o(i.HAL_Init)
i.HAL_Init 0x080003f4 Section 0 stm32f0xx_hal.o(i.HAL_Init) i.HAL_InitTick 0x08000408 Section 0 stm32f0xx_hal.o(i.HAL_InitTick)
i.HAL_InitTick 0x08000414 Section 0 stm32f0xx_hal.o(i.HAL_InitTick) i.HAL_MspInit 0x0800042c Section 0 stm32f0xx_hal_msp.o(i.HAL_MspInit)
i.HAL_MspInit 0x08000438 Section 0 stm32f0xx_hal_msp.o(i.HAL_MspInit) i.HAL_NVIC_EnableIRQ 0x08000470 Section 0 stm32f0xx_hal_cortex.o(i.HAL_NVIC_EnableIRQ)
i.HAL_NVIC_EnableIRQ 0x0800047c Section 0 stm32f0xx_hal_cortex.o(i.HAL_NVIC_EnableIRQ) i.HAL_NVIC_SetPriority 0x08000484 Section 0 stm32f0xx_hal_cortex.o(i.HAL_NVIC_SetPriority)
i.HAL_NVIC_SetPriority 0x08000490 Section 0 stm32f0xx_hal_cortex.o(i.HAL_NVIC_SetPriority) i.HAL_RCC_ClockConfig 0x0800048c Section 0 stm32f0xx_hal_rcc.o(i.HAL_RCC_ClockConfig)
i.HAL_RCC_ClockConfig 0x08000498 Section 0 stm32f0xx_hal_rcc.o(i.HAL_RCC_ClockConfig) i.HAL_RCC_GetHCLKFreq 0x080005e0 Section 0 stm32f0xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq)
i.HAL_RCC_GetHCLKFreq 0x080005ec Section 0 stm32f0xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq) i.HAL_RCC_GetPCLK1Freq 0x080005ec Section 0 stm32f0xx_hal_rcc.o(i.HAL_RCC_GetPCLK1Freq)
i.HAL_RCC_GetPCLK1Freq 0x080005f8 Section 0 stm32f0xx_hal_rcc.o(i.HAL_RCC_GetPCLK1Freq) i.HAL_RCC_GetSysClockFreq 0x0800060c Section 0 stm32f0xx_hal_rcc.o(i.HAL_RCC_GetSysClockFreq)
i.HAL_RCC_GetSysClockFreq 0x08000618 Section 0 stm32f0xx_hal_rcc.o(i.HAL_RCC_GetSysClockFreq) i.HAL_RCC_OscConfig 0x08000694 Section 0 stm32f0xx_hal_rcc.o(i.HAL_RCC_OscConfig)
i.HAL_RCC_OscConfig 0x080006a0 Section 0 stm32f0xx_hal_rcc.o(i.HAL_RCC_OscConfig) i.HAL_SPI_ErrorCallback 0x08000a6c Section 0 stm32f0xx_hal_spi.o(i.HAL_SPI_ErrorCallback)
i.HAL_SPI_ErrorCallback 0x08000a78 Section 0 stm32f0xx_hal_spi.o(i.HAL_SPI_ErrorCallback) i.HAL_SPI_IRQHandler 0x08000a70 Section 0 stm32f0xx_hal_spi.o(i.HAL_SPI_IRQHandler)
i.HAL_SPI_IRQHandler 0x08000a7c Section 0 stm32f0xx_hal_spi.o(i.HAL_SPI_IRQHandler) i.HAL_SPI_Init 0x08000b44 Section 0 stm32f0xx_hal_spi.o(i.HAL_SPI_Init)
i.HAL_SPI_Init 0x08000b50 Section 0 stm32f0xx_hal_spi.o(i.HAL_SPI_Init) i.HAL_SPI_MspInit 0x08000bfc Section 0 stm32f0xx_hal_msp.o(i.HAL_SPI_MspInit)
i.HAL_SPI_MspInit 0x08000c08 Section 0 stm32f0xx_hal_msp.o(i.HAL_SPI_MspInit) i.HAL_SPI_RxCpltCallback 0x08000c50 Section 0 stm32f0xx_hal_spi.o(i.HAL_SPI_RxCpltCallback)
i.HAL_SPI_RxCpltCallback 0x08000c5c Section 0 stm32f0xx_hal_spi.o(i.HAL_SPI_RxCpltCallback) i.HAL_SPI_TransmitReceive_IT 0x08000c54 Section 0 stm32f0xx_hal_spi.o(i.HAL_SPI_TransmitReceive_IT)
i.HAL_SPI_TransmitReceive_IT 0x08000c60 Section 0 stm32f0xx_hal_spi.o(i.HAL_SPI_TransmitReceive_IT) i.HAL_SPI_TxRxCpltCallback 0x08000d28 Section 0 main.o(i.HAL_SPI_TxRxCpltCallback)
i.HAL_SPI_TxRxCpltCallback 0x08000d34 Section 0 main.o(i.HAL_SPI_TxRxCpltCallback) i.HAL_SYSTICK_CLKSourceConfig 0x08000dd4 Section 0 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_CLKSourceConfig)
i.HAL_SYSTICK_CLKSourceConfig 0x08000de0 Section 0 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_CLKSourceConfig) i.HAL_SYSTICK_Callback 0x08000dec Section 0 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Callback)
i.HAL_SYSTICK_Callback 0x08000df8 Section 0 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Callback) i.HAL_SYSTICK_Config 0x08000df0 Section 0 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Config)
i.HAL_SYSTICK_Config 0x08000dfc Section 0 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Config) i.HAL_SYSTICK_IRQHandler 0x08000e20 Section 0 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_IRQHandler)
i.HAL_SYSTICK_IRQHandler 0x08000e2c Section 0 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_IRQHandler) i.HAL_TIMEx_MasterConfigSynchronization 0x08000e28 Section 0 stm32f0xx_hal_tim_ex.o(i.HAL_TIMEx_MasterConfigSynchronization)
i.HAL_TIMEx_MasterConfigSynchronization 0x08000e34 Section 0 stm32f0xx_hal_tim_ex.o(i.HAL_TIMEx_MasterConfigSynchronization) i.HAL_TIM_Base_Init 0x08000e70 Section 0 stm32f0xx_hal_tim.o(i.HAL_TIM_Base_Init)
i.HAL_TIM_Base_Init 0x08000e7c Section 0 stm32f0xx_hal_tim.o(i.HAL_TIM_Base_Init) i.HAL_TIM_Base_MspInit 0x08000ea4 Section 0 stm32f0xx_hal_msp.o(i.HAL_TIM_Base_MspInit)
i.HAL_TIM_Base_MspInit 0x08000eb0 Section 0 stm32f0xx_hal_msp.o(i.HAL_TIM_Base_MspInit) i.HAL_TIM_Base_Start 0x08000ec8 Section 0 stm32f0xx_hal_tim.o(i.HAL_TIM_Base_Start)
i.HAL_TIM_Base_Start 0x08000ed4 Section 0 stm32f0xx_hal_tim.o(i.HAL_TIM_Base_Start) i.HAL_TIM_ConfigClockSource 0x08000ee0 Section 0 stm32f0xx_hal_tim.o(i.HAL_TIM_ConfigClockSource)
i.HAL_TIM_ConfigClockSource 0x08000eec Section 0 stm32f0xx_hal_tim.o(i.HAL_TIM_ConfigClockSource) i.HAL_UART_MspInit 0x08000fd0 Section 0 stm32f0xx_hal_msp.o(i.HAL_UART_MspInit)
i.HAL_UART_MspInit 0x08000fdc Section 0 stm32f0xx_hal_msp.o(i.HAL_UART_MspInit) i.HAL_UART_Transmit 0x08001018 Section 0 stm32f0xx_hal_uart.o(i.HAL_UART_Transmit)
i.HAL_UART_Transmit 0x08001024 Section 0 stm32f0xx_hal_uart.o(i.HAL_UART_Transmit) i.HardFault_Handler 0x080010e0 Section 0 stm32f0xx_it.o(i.HardFault_Handler)
i.HardFault_Handler 0x080010ec Section 0 stm32f0xx_it.o(i.HardFault_Handler) i.MX_GPIO_Init 0x080010e4 Section 0 main.o(i.MX_GPIO_Init)
i.MX_GPIO_Init 0x080010f0 Section 0 main.o(i.MX_GPIO_Init) MX_GPIO_Init 0x080010e5 Thumb Code 146 main.o(i.MX_GPIO_Init)
MX_GPIO_Init 0x080010f1 Thumb Code 146 main.o(i.MX_GPIO_Init) i.MX_SPI1_Init 0x08001180 Section 0 main.o(i.MX_SPI1_Init)
i.MX_SPI1_Init 0x0800118c Section 0 main.o(i.MX_SPI1_Init) MX_SPI1_Init 0x08001181 Thumb Code 52 main.o(i.MX_SPI1_Init)
MX_SPI1_Init 0x0800118d Thumb Code 52 main.o(i.MX_SPI1_Init) i.MX_TIM2_Init 0x080011bc Section 0 main.o(i.MX_TIM2_Init)
i.MX_TIM2_Init 0x080011c8 Section 0 main.o(i.MX_TIM2_Init) MX_TIM2_Init 0x080011bd Thumb Code 80 main.o(i.MX_TIM2_Init)
MX_TIM2_Init 0x080011c9 Thumb Code 80 main.o(i.MX_TIM2_Init) i.MX_USART2_UART_Init 0x08001210 Section 0 main.o(i.MX_USART2_UART_Init)
i.MX_USART2_UART_Init 0x0800121c Section 0 main.o(i.MX_USART2_UART_Init) MX_USART2_UART_Init 0x08001211 Thumb Code 46 main.o(i.MX_USART2_UART_Init)
MX_USART2_UART_Init 0x0800121d Thumb Code 46 main.o(i.MX_USART2_UART_Init) i.NMI_Handler 0x08001248 Section 0 stm32f0xx_it.o(i.NMI_Handler)
i.NMI_Handler 0x08001254 Section 0 stm32f0xx_it.o(i.NMI_Handler) i.NVIC_SetPriority 0x0800124c Section 0 stm32f0xx_hal_cortex.o(i.NVIC_SetPriority)
i.NVIC_SetPriority 0x08001258 Section 0 stm32f0xx_hal_cortex.o(i.NVIC_SetPriority) NVIC_SetPriority 0x0800124d Thumb Code 60 stm32f0xx_hal_cortex.o(i.NVIC_SetPriority)
NVIC_SetPriority 0x08001259 Thumb Code 60 stm32f0xx_hal_cortex.o(i.NVIC_SetPriority) i.PendSV_Handler 0x08001290 Section 0 stm32f0xx_it.o(i.PendSV_Handler)
i.PendSV_Handler 0x0800129c Section 0 stm32f0xx_it.o(i.PendSV_Handler) i.SPI1_IRQHandler 0x08001294 Section 0 stm32f0xx_it.o(i.SPI1_IRQHandler)
i.SPI1_IRQHandler 0x080012a0 Section 0 stm32f0xx_it.o(i.SPI1_IRQHandler) i.SPI_2linesRxISR_16BIT 0x080012a4 Section 0 stm32f0xx_hal_spi.o(i.SPI_2linesRxISR_16BIT)
i.SPI_2linesRxISR_16BIT 0x080012b0 Section 0 stm32f0xx_hal_spi.o(i.SPI_2linesRxISR_16BIT) SPI_2linesRxISR_16BIT 0x080012a5 Thumb Code 54 stm32f0xx_hal_spi.o(i.SPI_2linesRxISR_16BIT)
SPI_2linesRxISR_16BIT 0x080012b1 Thumb Code 54 stm32f0xx_hal_spi.o(i.SPI_2linesRxISR_16BIT) i.SPI_2linesRxISR_8BIT 0x080012da Section 0 stm32f0xx_hal_spi.o(i.SPI_2linesRxISR_8BIT)
i.SPI_2linesRxISR_8BIT 0x080012e6 Section 0 stm32f0xx_hal_spi.o(i.SPI_2linesRxISR_8BIT) SPI_2linesRxISR_8BIT 0x080012db Thumb Code 94 stm32f0xx_hal_spi.o(i.SPI_2linesRxISR_8BIT)
SPI_2linesRxISR_8BIT 0x080012e7 Thumb Code 94 stm32f0xx_hal_spi.o(i.SPI_2linesRxISR_8BIT) i.SPI_2linesTxISR_16BIT 0x08001338 Section 0 stm32f0xx_hal_spi.o(i.SPI_2linesTxISR_16BIT)
i.SPI_2linesTxISR_16BIT 0x08001344 Section 0 stm32f0xx_hal_spi.o(i.SPI_2linesTxISR_16BIT) SPI_2linesTxISR_16BIT 0x08001339 Thumb Code 52 stm32f0xx_hal_spi.o(i.SPI_2linesTxISR_16BIT)
SPI_2linesTxISR_16BIT 0x08001345 Thumb Code 52 stm32f0xx_hal_spi.o(i.SPI_2linesTxISR_16BIT) i.SPI_2linesTxISR_8BIT 0x0800136c Section 0 stm32f0xx_hal_spi.o(i.SPI_2linesTxISR_8BIT)
i.SPI_2linesTxISR_8BIT 0x08001378 Section 0 stm32f0xx_hal_spi.o(i.SPI_2linesTxISR_8BIT) SPI_2linesTxISR_8BIT 0x0800136d Thumb Code 72 stm32f0xx_hal_spi.o(i.SPI_2linesTxISR_8BIT)
SPI_2linesTxISR_8BIT 0x08001379 Thumb Code 72 stm32f0xx_hal_spi.o(i.SPI_2linesTxISR_8BIT) i.SPI_CloseRxTx_ISR 0x080013b4 Section 0 stm32f0xx_hal_spi.o(i.SPI_CloseRxTx_ISR)
i.SPI_CloseRxTx_ISR 0x080013c0 Section 0 stm32f0xx_hal_spi.o(i.SPI_CloseRxTx_ISR) SPI_CloseRxTx_ISR 0x080013b5 Thumb Code 82 stm32f0xx_hal_spi.o(i.SPI_CloseRxTx_ISR)
SPI_CloseRxTx_ISR 0x080013c1 Thumb Code 82 stm32f0xx_hal_spi.o(i.SPI_CloseRxTx_ISR) i.SPI_DMAAbortOnError 0x08001406 Section 0 stm32f0xx_hal_spi.o(i.SPI_DMAAbortOnError)
i.SPI_DMAAbortOnError 0x08001412 Section 0 stm32f0xx_hal_spi.o(i.SPI_DMAAbortOnError) SPI_DMAAbortOnError 0x08001407 Thumb Code 18 stm32f0xx_hal_spi.o(i.SPI_DMAAbortOnError)
SPI_DMAAbortOnError 0x08001413 Thumb Code 18 stm32f0xx_hal_spi.o(i.SPI_DMAAbortOnError) i.SPI_EndRxTxTransaction 0x08001418 Section 0 stm32f0xx_hal_spi.o(i.SPI_EndRxTxTransaction)
i.SPI_EndRxTxTransaction 0x08001424 Section 0 stm32f0xx_hal_spi.o(i.SPI_EndRxTxTransaction) SPI_EndRxTxTransaction 0x08001419 Thumb Code 76 stm32f0xx_hal_spi.o(i.SPI_EndRxTxTransaction)
SPI_EndRxTxTransaction 0x08001425 Thumb Code 76 stm32f0xx_hal_spi.o(i.SPI_EndRxTxTransaction) i.SPI_WaitFifoStateUntilTimeout 0x08001464 Section 0 stm32f0xx_hal_spi.o(i.SPI_WaitFifoStateUntilTimeout)
i.SPI_WaitFifoStateUntilTimeout 0x08001470 Section 0 stm32f0xx_hal_spi.o(i.SPI_WaitFifoStateUntilTimeout) SPI_WaitFifoStateUntilTimeout 0x08001465 Thumb Code 150 stm32f0xx_hal_spi.o(i.SPI_WaitFifoStateUntilTimeout)
SPI_WaitFifoStateUntilTimeout 0x08001471 Thumb Code 150 stm32f0xx_hal_spi.o(i.SPI_WaitFifoStateUntilTimeout) i.SPI_WaitFlagStateUntilTimeout 0x080014fa Section 0 stm32f0xx_hal_spi.o(i.SPI_WaitFlagStateUntilTimeout)
i.SPI_WaitFlagStateUntilTimeout 0x08001506 Section 0 stm32f0xx_hal_spi.o(i.SPI_WaitFlagStateUntilTimeout) SPI_WaitFlagStateUntilTimeout 0x080014fb Thumb Code 140 stm32f0xx_hal_spi.o(i.SPI_WaitFlagStateUntilTimeout)
SPI_WaitFlagStateUntilTimeout 0x08001507 Thumb Code 140 stm32f0xx_hal_spi.o(i.SPI_WaitFlagStateUntilTimeout) i.SVC_Handler 0x08001586 Section 0 stm32f0xx_it.o(i.SVC_Handler)
i.SVC_Handler 0x08001592 Section 0 stm32f0xx_it.o(i.SVC_Handler) i.SysTick_Handler 0x08001588 Section 0 stm32f0xx_it.o(i.SysTick_Handler)
i.SendBit 0x08001594 Section 0 main.o(i.SendBit) i.SystemClock_Config 0x08001594 Section 0 main.o(i.SystemClock_Config)
i.SysTick_Handler 0x080015ca Section 0 stm32f0xx_it.o(i.SysTick_Handler) i.SystemInit 0x080015f0 Section 0 system_stm32f0xx.o(i.SystemInit)
i.SystemClock_Config 0x080015d6 Section 0 main.o(i.SystemClock_Config) i.TIM_Base_SetConfig 0x0800164c Section 0 stm32f0xx_hal_tim.o(i.TIM_Base_SetConfig)
i.SystemInit 0x08001630 Section 0 system_stm32f0xx.o(i.SystemInit) i.TIM_ETR_SetConfig 0x080016d0 Section 0 stm32f0xx_hal_tim.o(i.TIM_ETR_SetConfig)
i.TIM_Base_SetConfig 0x0800168c Section 0 stm32f0xx_hal_tim.o(i.TIM_Base_SetConfig) i.TIM_ITRx_SetConfig 0x080016e6 Section 0 stm32f0xx_hal_tim.o(i.TIM_ITRx_SetConfig)
i.TIM_ETR_SetConfig 0x08001710 Section 0 stm32f0xx_hal_tim.o(i.TIM_ETR_SetConfig) TIM_ITRx_SetConfig 0x080016e7 Thumb Code 16 stm32f0xx_hal_tim.o(i.TIM_ITRx_SetConfig)
i.TIM_ITRx_SetConfig 0x08001726 Section 0 stm32f0xx_hal_tim.o(i.TIM_ITRx_SetConfig) i.TIM_TI1_ConfigInputStage 0x080016f6 Section 0 stm32f0xx_hal_tim.o(i.TIM_TI1_ConfigInputStage)
TIM_ITRx_SetConfig 0x08001727 Thumb Code 16 stm32f0xx_hal_tim.o(i.TIM_ITRx_SetConfig) TIM_TI1_ConfigInputStage 0x080016f7 Thumb Code 34 stm32f0xx_hal_tim.o(i.TIM_TI1_ConfigInputStage)
i.TIM_TI1_ConfigInputStage 0x08001736 Section 0 stm32f0xx_hal_tim.o(i.TIM_TI1_ConfigInputStage) i.TIM_TI2_ConfigInputStage 0x08001718 Section 0 stm32f0xx_hal_tim.o(i.TIM_TI2_ConfigInputStage)
TIM_TI1_ConfigInputStage 0x08001737 Thumb Code 34 stm32f0xx_hal_tim.o(i.TIM_TI1_ConfigInputStage) TIM_TI2_ConfigInputStage 0x08001719 Thumb Code 38 stm32f0xx_hal_tim.o(i.TIM_TI2_ConfigInputStage)
i.TIM_TI2_ConfigInputStage 0x08001758 Section 0 stm32f0xx_hal_tim.o(i.TIM_TI2_ConfigInputStage) i.UART_AdvFeatureConfig 0x0800173e Section 0 stm32f0xx_hal_uart.o(i.UART_AdvFeatureConfig)
TIM_TI2_ConfigInputStage 0x08001759 Thumb Code 38 stm32f0xx_hal_tim.o(i.TIM_TI2_ConfigInputStage) i.UART_CheckIdleState 0x08001808 Section 0 stm32f0xx_hal_uart.o(i.UART_CheckIdleState)
i.UART_AdvFeatureConfig 0x0800177e Section 0 stm32f0xx_hal_uart.o(i.UART_AdvFeatureConfig) i.UART_SetConfig 0x08001870 Section 0 stm32f0xx_hal_uart.o(i.UART_SetConfig)
i.UART_CheckIdleState 0x08001848 Section 0 stm32f0xx_hal_uart.o(i.UART_CheckIdleState) i.UART_WaitOnFlagUntilTimeout 0x080019a0 Section 0 stm32f0xx_hal_uart.o(i.UART_WaitOnFlagUntilTimeout)
i.UART_SetConfig 0x080018b0 Section 0 stm32f0xx_hal_uart.o(i.UART_SetConfig) i.__0printf$3 0x08001a04 Section 0 printf3.o(i.__0printf$3)
i.UART_WaitOnFlagUntilTimeout 0x080019e0 Section 0 stm32f0xx_hal_uart.o(i.UART_WaitOnFlagUntilTimeout) i.__scatterload_copy 0x08001a24 Section 14 handlers.o(i.__scatterload_copy)
i.__0printf$3 0x08001a44 Section 0 printf3.o(i.__0printf$3) i.__scatterload_null 0x08001a32 Section 2 handlers.o(i.__scatterload_null)
i.__scatterload_copy 0x08001a64 Section 14 handlers.o(i.__scatterload_copy) i.__scatterload_zeroinit 0x08001a34 Section 14 handlers.o(i.__scatterload_zeroinit)
i.__scatterload_null 0x08001a72 Section 2 handlers.o(i.__scatterload_null) i._printf_core 0x08001a44 Section 0 printf3.o(i._printf_core)
i.__scatterload_zeroinit 0x08001a74 Section 14 handlers.o(i.__scatterload_zeroinit) _printf_core 0x08001a45 Thumb Code 456 printf3.o(i._printf_core)
i._printf_core 0x08001a84 Section 0 printf3.o(i._printf_core) i.delay_us 0x08001c10 Section 0 delay_us.o(i.delay_us)
_printf_core 0x08001a85 Thumb Code 456 printf3.o(i._printf_core) i.delay_us_init 0x08001c24 Section 0 delay_us.o(i.delay_us_init)
i.delay_us 0x08001c50 Section 0 delay_us.o(i.delay_us) i.fputc 0x08001c34 Section 0 main.o(i.fputc)
i.delay_us_init 0x08001c64 Section 0 delay_us.o(i.delay_us_init) i.get_bit 0x08001c4c Section 0 main.o(i.get_bit)
i.fputc 0x08001c74 Section 0 main.o(i.fputc) i.kb_buf_add 0x08001c5c Section 0 helpers.o(i.kb_buf_add)
i.kb_buf_add 0x08001c8c Section 0 helpers.o(i.kb_buf_add) i.kb_buf_init 0x08001c88 Section 0 helpers.o(i.kb_buf_init)
i.kb_buf_init 0x08001cb8 Section 0 helpers.o(i.kb_buf_init) i.kb_buf_is_full 0x08001ca4 Section 0 helpers.o(i.kb_buf_is_full)
i.kb_buf_is_full 0x08001cd4 Section 0 helpers.o(i.kb_buf_is_full) i.kb_buf_peek 0x08001cba Section 0 helpers.o(i.kb_buf_peek)
i.kb_buf_peek 0x08001cea Section 0 helpers.o(i.kb_buf_peek) i.kb_buf_pop 0x08001cda Section 0 helpers.o(i.kb_buf_pop)
i.kb_buf_pop 0x08001d0a Section 0 helpers.o(i.kb_buf_pop) i.kb_buf_reset 0x08001cec Section 0 helpers.o(i.kb_buf_reset)
i.kb_buf_reset 0x08001d1c Section 0 helpers.o(i.kb_buf_reset) i.main 0x08001d08 Section 0 main.o(i.main)
i.main 0x08001d38 Section 0 main.o(i.main) i.malloc 0x08001dc8 Section 0 malloc.o(i.malloc)
i.malloc 0x08001e04 Section 0 malloc.o(i.malloc) i.micros 0x08001e34 Section 0 delay_us.o(i.micros)
i.micros 0x08001e70 Section 0 delay_us.o(i.micros) i.protocol_status_lookup_init 0x08001e44 Section 0 main.o(i.protocol_status_lookup_init)
i.protocol_status_lookup_init 0x08001e80 Section 0 main.o(i.protocol_status_lookup_init) i.release_kb_line 0x08001e60 Section 0 main.o(i.release_kb_line)
i.spi_error_dump_reboot 0x08001e9c Section 0 main.o(i.spi_error_dump_reboot) i.send_key 0x08001e7c Section 0 main.o(i.send_key)
i.wait_for_KBACK 0x08001f18 Section 0 main.o(i.wait_for_KBACK) i.spi_error_dump_reboot 0x08001eac Section 0 main.o(i.spi_error_dump_reboot)
.constdata 0x08001f44 Section 59 main.o(.constdata) i.write_bit 0x08001f28 Section 0 main.o(i.write_bit)
.constdata 0x08001f7f Section 16 system_stm32f0xx.o(.constdata) .constdata 0x08001f60 Section 59 main.o(.constdata)
.constdata 0x08001f8f Section 8 system_stm32f0xx.o(.constdata) .constdata 0x08001f9b Section 16 system_stm32f0xx.o(.constdata)
.constdata 0x08001fab Section 8 system_stm32f0xx.o(.constdata)
.data 0x20000000 Section 4 delay_us.o(.data) .data 0x20000000 Section 4 delay_us.o(.data)
.data 0x20000004 Section 8 main.o(.data) .data 0x20000004 Section 8 main.o(.data)
.data 0x2000000c Section 4 stm32f0xx_hal.o(.data) .data 0x2000000c Section 4 stm32f0xx_hal.o(.data)
@@ -1863,81 +1867,82 @@ Image Symbol Table
HAL_DMA_Abort_IT 0x080001a1 Thumb Code 72 stm32f0xx_hal_dma.o(i.HAL_DMA_Abort_IT) HAL_DMA_Abort_IT 0x080001a1 Thumb Code 72 stm32f0xx_hal_dma.o(i.HAL_DMA_Abort_IT)
HAL_Delay 0x080001e9 Thumb Code 28 stm32f0xx_hal.o(i.HAL_Delay) HAL_Delay 0x080001e9 Thumb Code 28 stm32f0xx_hal.o(i.HAL_Delay)
HAL_GPIO_Init 0x08000205 Thumb Code 294 stm32f0xx_hal_gpio.o(i.HAL_GPIO_Init) HAL_GPIO_Init 0x08000205 Thumb Code 294 stm32f0xx_hal_gpio.o(i.HAL_GPIO_Init)
HAL_GPIO_ReadPin 0x08000341 Thumb Code 10 stm32f0xx_hal_gpio.o(i.HAL_GPIO_ReadPin) HAL_GPIO_TogglePin 0x08000341 Thumb Code 8 stm32f0xx_hal_gpio.o(i.HAL_GPIO_TogglePin)
HAL_GPIO_TogglePin 0x0800034b Thumb Code 8 stm32f0xx_hal_gpio.o(i.HAL_GPIO_TogglePin) HAL_GPIO_WritePin 0x08000349 Thumb Code 12 stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin)
HAL_GPIO_WritePin 0x08000353 Thumb Code 12 stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin) HAL_GetTick 0x08000355 Thumb Code 6 stm32f0xx_hal.o(i.HAL_GetTick)
HAL_GetTick 0x08000361 Thumb Code 6 stm32f0xx_hal.o(i.HAL_GetTick) HAL_HalfDuplex_Init 0x08000361 Thumb Code 118 stm32f0xx_hal_uart.o(i.HAL_HalfDuplex_Init)
HAL_HalfDuplex_Init 0x0800036d Thumb Code 118 stm32f0xx_hal_uart.o(i.HAL_HalfDuplex_Init) HAL_IncTick 0x080003d9 Thumb Code 10 stm32f0xx_hal.o(i.HAL_IncTick)
HAL_IncTick 0x080003e5 Thumb Code 10 stm32f0xx_hal.o(i.HAL_IncTick) HAL_Init 0x080003e9 Thumb Code 26 stm32f0xx_hal.o(i.HAL_Init)
HAL_Init 0x080003f5 Thumb Code 26 stm32f0xx_hal.o(i.HAL_Init) HAL_InitTick 0x08000409 Thumb Code 34 stm32f0xx_hal.o(i.HAL_InitTick)
HAL_InitTick 0x08000415 Thumb Code 34 stm32f0xx_hal.o(i.HAL_InitTick) HAL_MspInit 0x0800042d Thumb Code 64 stm32f0xx_hal_msp.o(i.HAL_MspInit)
HAL_MspInit 0x08000439 Thumb Code 64 stm32f0xx_hal_msp.o(i.HAL_MspInit) HAL_NVIC_EnableIRQ 0x08000471 Thumb Code 14 stm32f0xx_hal_cortex.o(i.HAL_NVIC_EnableIRQ)
HAL_NVIC_EnableIRQ 0x0800047d Thumb Code 14 stm32f0xx_hal_cortex.o(i.HAL_NVIC_EnableIRQ) HAL_NVIC_SetPriority 0x08000485 Thumb Code 8 stm32f0xx_hal_cortex.o(i.HAL_NVIC_SetPriority)
HAL_NVIC_SetPriority 0x08000491 Thumb Code 8 stm32f0xx_hal_cortex.o(i.HAL_NVIC_SetPriority) HAL_RCC_ClockConfig 0x0800048d Thumb Code 320 stm32f0xx_hal_rcc.o(i.HAL_RCC_ClockConfig)
HAL_RCC_ClockConfig 0x08000499 Thumb Code 320 stm32f0xx_hal_rcc.o(i.HAL_RCC_ClockConfig) HAL_RCC_GetHCLKFreq 0x080005e1 Thumb Code 6 stm32f0xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq)
HAL_RCC_GetHCLKFreq 0x080005ed Thumb Code 6 stm32f0xx_hal_rcc.o(i.HAL_RCC_GetHCLKFreq) HAL_RCC_GetPCLK1Freq 0x080005ed Thumb Code 20 stm32f0xx_hal_rcc.o(i.HAL_RCC_GetPCLK1Freq)
HAL_RCC_GetPCLK1Freq 0x080005f9 Thumb Code 20 stm32f0xx_hal_rcc.o(i.HAL_RCC_GetPCLK1Freq) HAL_RCC_GetSysClockFreq 0x0800060d Thumb Code 90 stm32f0xx_hal_rcc.o(i.HAL_RCC_GetSysClockFreq)
HAL_RCC_GetSysClockFreq 0x08000619 Thumb Code 90 stm32f0xx_hal_rcc.o(i.HAL_RCC_GetSysClockFreq) HAL_RCC_OscConfig 0x08000695 Thumb Code 966 stm32f0xx_hal_rcc.o(i.HAL_RCC_OscConfig)
HAL_RCC_OscConfig 0x080006a1 Thumb Code 966 stm32f0xx_hal_rcc.o(i.HAL_RCC_OscConfig) HAL_SPI_ErrorCallback 0x08000a6d Thumb Code 2 stm32f0xx_hal_spi.o(i.HAL_SPI_ErrorCallback)
HAL_SPI_ErrorCallback 0x08000a79 Thumb Code 2 stm32f0xx_hal_spi.o(i.HAL_SPI_ErrorCallback) HAL_SPI_IRQHandler 0x08000a71 Thumb Code 208 stm32f0xx_hal_spi.o(i.HAL_SPI_IRQHandler)
HAL_SPI_IRQHandler 0x08000a7d Thumb Code 208 stm32f0xx_hal_spi.o(i.HAL_SPI_IRQHandler) HAL_SPI_Init 0x08000b45 Thumb Code 184 stm32f0xx_hal_spi.o(i.HAL_SPI_Init)
HAL_SPI_Init 0x08000b51 Thumb Code 184 stm32f0xx_hal_spi.o(i.HAL_SPI_Init) HAL_SPI_MspInit 0x08000bfd Thumb Code 76 stm32f0xx_hal_msp.o(i.HAL_SPI_MspInit)
HAL_SPI_MspInit 0x08000c09 Thumb Code 76 stm32f0xx_hal_msp.o(i.HAL_SPI_MspInit) HAL_SPI_RxCpltCallback 0x08000c51 Thumb Code 2 stm32f0xx_hal_spi.o(i.HAL_SPI_RxCpltCallback)
HAL_SPI_RxCpltCallback 0x08000c5d Thumb Code 2 stm32f0xx_hal_spi.o(i.HAL_SPI_RxCpltCallback) HAL_SPI_TransmitReceive_IT 0x08000c55 Thumb Code 196 stm32f0xx_hal_spi.o(i.HAL_SPI_TransmitReceive_IT)
HAL_SPI_TransmitReceive_IT 0x08000c61 Thumb Code 196 stm32f0xx_hal_spi.o(i.HAL_SPI_TransmitReceive_IT) HAL_SPI_TxRxCpltCallback 0x08000d29 Thumb Code 154 main.o(i.HAL_SPI_TxRxCpltCallback)
HAL_SPI_TxRxCpltCallback 0x08000d35 Thumb Code 154 main.o(i.HAL_SPI_TxRxCpltCallback) HAL_SYSTICK_CLKSourceConfig 0x08000dd5 Thumb Code 20 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_CLKSourceConfig)
HAL_SYSTICK_CLKSourceConfig 0x08000de1 Thumb Code 20 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_CLKSourceConfig) HAL_SYSTICK_Callback 0x08000ded Thumb Code 2 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Callback)
HAL_SYSTICK_Callback 0x08000df9 Thumb Code 2 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Callback) HAL_SYSTICK_Config 0x08000df1 Thumb Code 38 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Config)
HAL_SYSTICK_Config 0x08000dfd Thumb Code 38 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Config) HAL_SYSTICK_IRQHandler 0x08000e21 Thumb Code 8 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_IRQHandler)
HAL_SYSTICK_IRQHandler 0x08000e2d Thumb Code 8 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_IRQHandler) HAL_TIMEx_MasterConfigSynchronization 0x08000e29 Thumb Code 72 stm32f0xx_hal_tim_ex.o(i.HAL_TIMEx_MasterConfigSynchronization)
HAL_TIMEx_MasterConfigSynchronization 0x08000e35 Thumb Code 72 stm32f0xx_hal_tim_ex.o(i.HAL_TIMEx_MasterConfigSynchronization) HAL_TIM_Base_Init 0x08000e71 Thumb Code 52 stm32f0xx_hal_tim.o(i.HAL_TIM_Base_Init)
HAL_TIM_Base_Init 0x08000e7d Thumb Code 52 stm32f0xx_hal_tim.o(i.HAL_TIM_Base_Init) HAL_TIM_Base_MspInit 0x08000ea5 Thumb Code 30 stm32f0xx_hal_msp.o(i.HAL_TIM_Base_MspInit)
HAL_TIM_Base_MspInit 0x08000eb1 Thumb Code 30 stm32f0xx_hal_msp.o(i.HAL_TIM_Base_MspInit) HAL_TIM_Base_Start 0x08000ec9 Thumb Code 24 stm32f0xx_hal_tim.o(i.HAL_TIM_Base_Start)
HAL_TIM_Base_Start 0x08000ed5 Thumb Code 24 stm32f0xx_hal_tim.o(i.HAL_TIM_Base_Start) HAL_TIM_ConfigClockSource 0x08000ee1 Thumb Code 238 stm32f0xx_hal_tim.o(i.HAL_TIM_ConfigClockSource)
HAL_TIM_ConfigClockSource 0x08000eed Thumb Code 238 stm32f0xx_hal_tim.o(i.HAL_TIM_ConfigClockSource) HAL_UART_MspInit 0x08000fd1 Thumb Code 62 stm32f0xx_hal_msp.o(i.HAL_UART_MspInit)
HAL_UART_MspInit 0x08000fdd Thumb Code 62 stm32f0xx_hal_msp.o(i.HAL_UART_MspInit) HAL_UART_Transmit 0x08001019 Thumb Code 200 stm32f0xx_hal_uart.o(i.HAL_UART_Transmit)
HAL_UART_Transmit 0x08001025 Thumb Code 200 stm32f0xx_hal_uart.o(i.HAL_UART_Transmit) HardFault_Handler 0x080010e1 Thumb Code 2 stm32f0xx_it.o(i.HardFault_Handler)
HardFault_Handler 0x080010ed Thumb Code 2 stm32f0xx_it.o(i.HardFault_Handler) NMI_Handler 0x08001249 Thumb Code 2 stm32f0xx_it.o(i.NMI_Handler)
NMI_Handler 0x08001255 Thumb Code 2 stm32f0xx_it.o(i.NMI_Handler) PendSV_Handler 0x08001291 Thumb Code 2 stm32f0xx_it.o(i.PendSV_Handler)
PendSV_Handler 0x0800129d Thumb Code 2 stm32f0xx_it.o(i.PendSV_Handler) SPI1_IRQHandler 0x08001295 Thumb Code 10 stm32f0xx_it.o(i.SPI1_IRQHandler)
SPI1_IRQHandler 0x080012a1 Thumb Code 10 stm32f0xx_it.o(i.SPI1_IRQHandler) SVC_Handler 0x08001587 Thumb Code 2 stm32f0xx_it.o(i.SVC_Handler)
SVC_Handler 0x08001593 Thumb Code 2 stm32f0xx_it.o(i.SVC_Handler) SysTick_Handler 0x08001589 Thumb Code 12 stm32f0xx_it.o(i.SysTick_Handler)
SendBit 0x08001595 Thumb Code 54 main.o(i.SendBit) SystemClock_Config 0x08001595 Thumb Code 90 main.o(i.SystemClock_Config)
SysTick_Handler 0x080015cb Thumb Code 12 stm32f0xx_it.o(i.SysTick_Handler) SystemInit 0x080015f1 Thumb Code 78 system_stm32f0xx.o(i.SystemInit)
SystemClock_Config 0x080015d7 Thumb Code 90 main.o(i.SystemClock_Config) TIM_Base_SetConfig 0x0800164d Thumb Code 112 stm32f0xx_hal_tim.o(i.TIM_Base_SetConfig)
SystemInit 0x08001631 Thumb Code 78 system_stm32f0xx.o(i.SystemInit) TIM_ETR_SetConfig 0x080016d1 Thumb Code 22 stm32f0xx_hal_tim.o(i.TIM_ETR_SetConfig)
TIM_Base_SetConfig 0x0800168d Thumb Code 112 stm32f0xx_hal_tim.o(i.TIM_Base_SetConfig) UART_AdvFeatureConfig 0x0800173f Thumb Code 202 stm32f0xx_hal_uart.o(i.UART_AdvFeatureConfig)
TIM_ETR_SetConfig 0x08001711 Thumb Code 22 stm32f0xx_hal_tim.o(i.TIM_ETR_SetConfig) UART_CheckIdleState 0x08001809 Thumb Code 96 stm32f0xx_hal_uart.o(i.UART_CheckIdleState)
UART_AdvFeatureConfig 0x0800177f Thumb Code 202 stm32f0xx_hal_uart.o(i.UART_AdvFeatureConfig) UART_SetConfig 0x08001871 Thumb Code 280 stm32f0xx_hal_uart.o(i.UART_SetConfig)
UART_CheckIdleState 0x08001849 Thumb Code 96 stm32f0xx_hal_uart.o(i.UART_CheckIdleState) UART_WaitOnFlagUntilTimeout 0x080019a1 Thumb Code 98 stm32f0xx_hal_uart.o(i.UART_WaitOnFlagUntilTimeout)
UART_SetConfig 0x080018b1 Thumb Code 280 stm32f0xx_hal_uart.o(i.UART_SetConfig) __0printf$3 0x08001a05 Thumb Code 24 printf3.o(i.__0printf$3)
UART_WaitOnFlagUntilTimeout 0x080019e1 Thumb Code 98 stm32f0xx_hal_uart.o(i.UART_WaitOnFlagUntilTimeout) __1printf$3 0x08001a05 Thumb Code 0 printf3.o(i.__0printf$3)
__0printf$3 0x08001a45 Thumb Code 24 printf3.o(i.__0printf$3) __2printf 0x08001a05 Thumb Code 0 printf3.o(i.__0printf$3)
__1printf$3 0x08001a45 Thumb Code 0 printf3.o(i.__0printf$3) __scatterload_copy 0x08001a25 Thumb Code 14 handlers.o(i.__scatterload_copy)
__2printf 0x08001a45 Thumb Code 0 printf3.o(i.__0printf$3) __scatterload_null 0x08001a33 Thumb Code 2 handlers.o(i.__scatterload_null)
__scatterload_copy 0x08001a65 Thumb Code 14 handlers.o(i.__scatterload_copy) __scatterload_zeroinit 0x08001a35 Thumb Code 14 handlers.o(i.__scatterload_zeroinit)
__scatterload_null 0x08001a73 Thumb Code 2 handlers.o(i.__scatterload_null) delay_us 0x08001c11 Thumb Code 20 delay_us.o(i.delay_us)
__scatterload_zeroinit 0x08001a75 Thumb Code 14 handlers.o(i.__scatterload_zeroinit) delay_us_init 0x08001c25 Thumb Code 12 delay_us.o(i.delay_us_init)
delay_us 0x08001c51 Thumb Code 20 delay_us.o(i.delay_us) fputc 0x08001c35 Thumb Code 18 main.o(i.fputc)
delay_us_init 0x08001c65 Thumb Code 12 delay_us.o(i.delay_us_init) get_bit 0x08001c4d Thumb Code 16 main.o(i.get_bit)
fputc 0x08001c75 Thumb Code 18 main.o(i.fputc) kb_buf_add 0x08001c5d Thumb Code 44 helpers.o(i.kb_buf_add)
kb_buf_add 0x08001c8d Thumb Code 44 helpers.o(i.kb_buf_add) kb_buf_init 0x08001c89 Thumb Code 28 helpers.o(i.kb_buf_init)
kb_buf_init 0x08001cb9 Thumb Code 28 helpers.o(i.kb_buf_init) kb_buf_is_full 0x08001ca5 Thumb Code 22 helpers.o(i.kb_buf_is_full)
kb_buf_is_full 0x08001cd5 Thumb Code 22 helpers.o(i.kb_buf_is_full) kb_buf_peek 0x08001cbb Thumb Code 32 helpers.o(i.kb_buf_peek)
kb_buf_peek 0x08001ceb Thumb Code 32 helpers.o(i.kb_buf_peek) kb_buf_pop 0x08001cdb Thumb Code 18 helpers.o(i.kb_buf_pop)
kb_buf_pop 0x08001d0b Thumb Code 18 helpers.o(i.kb_buf_pop) kb_buf_reset 0x08001ced Thumb Code 28 helpers.o(i.kb_buf_reset)
kb_buf_reset 0x08001d1d Thumb Code 28 helpers.o(i.kb_buf_reset) main 0x08001d09 Thumb Code 160 main.o(i.main)
main 0x08001d39 Thumb Code 168 main.o(i.main) malloc 0x08001dc9 Thumb Code 92 malloc.o(i.malloc)
malloc 0x08001e05 Thumb Code 92 malloc.o(i.malloc) micros 0x08001e35 Thumb Code 10 delay_us.o(i.micros)
micros 0x08001e71 Thumb Code 10 delay_us.o(i.micros) protocol_status_lookup_init 0x08001e45 Thumb Code 22 main.o(i.protocol_status_lookup_init)
protocol_status_lookup_init 0x08001e81 Thumb Code 22 main.o(i.protocol_status_lookup_init) release_kb_line 0x08001e61 Thumb Code 28 main.o(i.release_kb_line)
spi_error_dump_reboot 0x08001e9d Thumb Code 76 main.o(i.spi_error_dump_reboot) send_key 0x08001e7d Thumb Code 48 main.o(i.send_key)
wait_for_KBACK 0x08001f19 Thumb Code 40 main.o(i.wait_for_KBACK) spi_error_dump_reboot 0x08001ead Thumb Code 76 main.o(i.spi_error_dump_reboot)
boot_message 0x08001f44 Data 59 main.o(.constdata) write_bit 0x08001f29 Thumb Code 56 main.o(i.write_bit)
AHBPrescTable 0x08001f7f Data 16 system_stm32f0xx.o(.constdata) boot_message 0x08001f60 Data 59 main.o(.constdata)
APBPrescTable 0x08001f8f Data 8 system_stm32f0xx.o(.constdata) AHBPrescTable 0x08001f9b Data 16 system_stm32f0xx.o(.constdata)
Region$$Table$$Base 0x08001f98 Number 0 anon$$obj.o(Region$$Table) APBPrescTable 0x08001fab Data 8 system_stm32f0xx.o(.constdata)
Region$$Table$$Limit 0x08001fb8 Number 0 anon$$obj.o(Region$$Table) Region$$Table$$Base 0x08001fb4 Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x08001fd4 Number 0 anon$$obj.o(Region$$Table)
us_timer 0x20000000 Data 4 delay_us.o(.data) us_timer 0x20000000 Data 4 delay_us.o(.data)
spi_error_occured 0x20000004 Data 1 main.o(.data) spi_error_occured 0x20000004 Data 1 main.o(.data)
led_off_after 0x20000008 Data 4 main.o(.data) led_off_after 0x20000008 Data 4 main.o(.data)
@@ -1965,146 +1970,147 @@ Memory Map of the image
Image Entry point : 0x080000c1 Image Entry point : 0x080000c1
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00001fd8, Max: 0x00008000, ABSOLUTE) Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00001ff4, Max: 0x00008000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00001fb8, Max: 0x00008000, ABSOLUTE) Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00001fd4, Max: 0x00008000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x08000000 0x08000000 0x000000c0 Data RO 3 RESET startup_stm32f042x6.o 0x08000000 0x08000000 0x000000c0 Data RO 3 RESET startup_stm32f042x6.o
0x080000c0 0x080000c0 0x00000000 Code RO 3502 * .ARM.Collect$$$$00000000 mc_p.l(entry.o) 0x080000c0 0x080000c0 0x00000000 Code RO 3518 * .ARM.Collect$$$$00000000 mc_p.l(entry.o)
0x080000c0 0x080000c0 0x00000004 Code RO 3800 .ARM.Collect$$$$00000001 mc_p.l(entry2.o) 0x080000c0 0x080000c0 0x00000004 Code RO 3816 .ARM.Collect$$$$00000001 mc_p.l(entry2.o)
0x080000c4 0x080000c4 0x00000004 Code RO 3803 .ARM.Collect$$$$00000004 mc_p.l(entry5.o) 0x080000c4 0x080000c4 0x00000004 Code RO 3819 .ARM.Collect$$$$00000004 mc_p.l(entry5.o)
0x080000c8 0x080000c8 0x00000000 Code RO 3805 .ARM.Collect$$$$00000008 mc_p.l(entry7b.o) 0x080000c8 0x080000c8 0x00000000 Code RO 3821 .ARM.Collect$$$$00000008 mc_p.l(entry7b.o)
0x080000c8 0x080000c8 0x00000000 Code RO 3807 .ARM.Collect$$$$0000000A mc_p.l(entry8b.o) 0x080000c8 0x080000c8 0x00000000 Code RO 3823 .ARM.Collect$$$$0000000A mc_p.l(entry8b.o)
0x080000c8 0x080000c8 0x00000008 Code RO 3808 .ARM.Collect$$$$0000000B mc_p.l(entry9a.o) 0x080000c8 0x080000c8 0x00000008 Code RO 3824 .ARM.Collect$$$$0000000B mc_p.l(entry9a.o)
0x080000d0 0x080000d0 0x00000000 Code RO 3810 .ARM.Collect$$$$0000000D mc_p.l(entry10a.o) 0x080000d0 0x080000d0 0x00000000 Code RO 3826 .ARM.Collect$$$$0000000D mc_p.l(entry10a.o)
0x080000d0 0x080000d0 0x00000000 Code RO 3812 .ARM.Collect$$$$0000000F mc_p.l(entry11a.o) 0x080000d0 0x080000d0 0x00000000 Code RO 3828 .ARM.Collect$$$$0000000F mc_p.l(entry11a.o)
0x080000d0 0x080000d0 0x00000004 Code RO 3801 .ARM.Collect$$$$00002712 mc_p.l(entry2.o) 0x080000d0 0x080000d0 0x00000004 Code RO 3817 .ARM.Collect$$$$00002712 mc_p.l(entry2.o)
0x080000d4 0x080000d4 0x00000058 Code RO 4 .text startup_stm32f042x6.o 0x080000d4 0x080000d4 0x00000058 Code RO 4 .text startup_stm32f042x6.o
0x0800012c 0x0800012c 0x0000002c Code RO 3505 .text mc_p.l(uidiv.o) 0x0800012c 0x0800012c 0x0000002c Code RO 3521 .text mc_p.l(uidiv.o)
0x08000158 0x08000158 0x00000024 Code RO 3509 .text mc_p.l(memseta.o) 0x08000158 0x08000158 0x00000024 Code RO 3525 .text mc_p.l(memseta.o)
0x0800017c 0x0800017c 0x00000024 Code RO 3834 .text mc_p.l(init.o) 0x0800017c 0x0800017c 0x00000024 Code RO 3850 .text mc_p.l(init.o)
0x080001a0 0x080001a0 0x00000048 Code RO 2959 i.HAL_DMA_Abort_IT stm32f0xx_hal_dma.o 0x080001a0 0x080001a0 0x00000048 Code RO 2975 i.HAL_DMA_Abort_IT stm32f0xx_hal_dma.o
0x080001e8 0x080001e8 0x0000001c Code RO 2288 i.HAL_Delay stm32f0xx_hal.o 0x080001e8 0x080001e8 0x0000001c Code RO 2304 i.HAL_Delay stm32f0xx_hal.o
0x08000204 0x08000204 0x0000013c Code RO 2897 i.HAL_GPIO_Init stm32f0xx_hal_gpio.o 0x08000204 0x08000204 0x0000013c Code RO 2913 i.HAL_GPIO_Init stm32f0xx_hal_gpio.o
0x08000340 0x08000340 0x0000000a Code RO 2899 i.HAL_GPIO_ReadPin stm32f0xx_hal_gpio.o 0x08000340 0x08000340 0x00000008 Code RO 2916 i.HAL_GPIO_TogglePin stm32f0xx_hal_gpio.o
0x0800034a 0x0800034a 0x00000008 Code RO 2900 i.HAL_GPIO_TogglePin stm32f0xx_hal_gpio.o 0x08000348 0x08000348 0x0000000c Code RO 2917 i.HAL_GPIO_WritePin stm32f0xx_hal_gpio.o
0x08000352 0x08000352 0x0000000c Code RO 2901 i.HAL_GPIO_WritePin stm32f0xx_hal_gpio.o 0x08000354 0x08000354 0x0000000c Code RO 2308 i.HAL_GetTick stm32f0xx_hal.o
0x0800035e 0x0800035e 0x00000002 PAD 0x08000360 0x08000360 0x00000076 Code RO 1723 i.HAL_HalfDuplex_Init stm32f0xx_hal_uart.o
0x08000360 0x08000360 0x0000000c Code RO 2292 i.HAL_GetTick stm32f0xx_hal.o 0x080003d6 0x080003d6 0x00000002 PAD
0x0800036c 0x0800036c 0x00000076 Code RO 1707 i.HAL_HalfDuplex_Init stm32f0xx_hal_uart.o 0x080003d8 0x080003d8 0x00000010 Code RO 2312 i.HAL_IncTick stm32f0xx_hal.o
0x080003e2 0x080003e2 0x00000002 PAD 0x080003e8 0x080003e8 0x00000020 Code RO 2313 i.HAL_Init stm32f0xx_hal.o
0x080003e4 0x080003e4 0x00000010 Code RO 2296 i.HAL_IncTick stm32f0xx_hal.o 0x08000408 0x08000408 0x00000022 Code RO 2314 i.HAL_InitTick stm32f0xx_hal.o
0x080003f4 0x080003f4 0x00000020 Code RO 2297 i.HAL_Init stm32f0xx_hal.o 0x0800042a 0x0800042a 0x00000002 PAD
0x08000414 0x08000414 0x00000022 Code RO 2298 i.HAL_InitTick stm32f0xx_hal.o 0x0800042c 0x0800042c 0x00000044 Code RO 446 i.HAL_MspInit stm32f0xx_hal_msp.o
0x08000436 0x08000436 0x00000002 PAD 0x08000470 0x08000470 0x00000014 Code RO 3070 i.HAL_NVIC_EnableIRQ stm32f0xx_hal_cortex.o
0x08000438 0x08000438 0x00000044 Code RO 430 i.HAL_MspInit stm32f0xx_hal_msp.o 0x08000484 0x08000484 0x00000008 Code RO 3074 i.HAL_NVIC_SetPriority stm32f0xx_hal_cortex.o
0x0800047c 0x0800047c 0x00000014 Code RO 3054 i.HAL_NVIC_EnableIRQ stm32f0xx_hal_cortex.o 0x0800048c 0x0800048c 0x00000154 Code RO 2122 i.HAL_RCC_ClockConfig stm32f0xx_hal_rcc.o
0x08000490 0x08000490 0x00000008 Code RO 3058 i.HAL_NVIC_SetPriority stm32f0xx_hal_cortex.o 0x080005e0 0x080005e0 0x0000000c Code RO 2127 i.HAL_RCC_GetHCLKFreq stm32f0xx_hal_rcc.o
0x08000498 0x08000498 0x00000154 Code RO 2106 i.HAL_RCC_ClockConfig stm32f0xx_hal_rcc.o 0x080005ec 0x080005ec 0x00000020 Code RO 2129 i.HAL_RCC_GetPCLK1Freq stm32f0xx_hal_rcc.o
0x080005ec 0x080005ec 0x0000000c Code RO 2111 i.HAL_RCC_GetHCLKFreq stm32f0xx_hal_rcc.o 0x0800060c 0x0800060c 0x00000088 Code RO 2130 i.HAL_RCC_GetSysClockFreq stm32f0xx_hal_rcc.o
0x080005f8 0x080005f8 0x00000020 Code RO 2113 i.HAL_RCC_GetPCLK1Freq stm32f0xx_hal_rcc.o 0x08000694 0x08000694 0x000003d8 Code RO 2133 i.HAL_RCC_OscConfig stm32f0xx_hal_rcc.o
0x08000618 0x08000618 0x00000088 Code RO 2114 i.HAL_RCC_GetSysClockFreq stm32f0xx_hal_rcc.o 0x08000a6c 0x08000a6c 0x00000002 Code RO 509 i.HAL_SPI_ErrorCallback stm32f0xx_hal_spi.o
0x080006a0 0x080006a0 0x000003d8 Code RO 2117 i.HAL_RCC_OscConfig stm32f0xx_hal_rcc.o 0x08000a6e 0x08000a6e 0x00000002 PAD
0x08000a78 0x08000a78 0x00000002 Code RO 493 i.HAL_SPI_ErrorCallback stm32f0xx_hal_spi.o 0x08000a70 0x08000a70 0x000000d4 Code RO 512 i.HAL_SPI_IRQHandler stm32f0xx_hal_spi.o
0x08000a7a 0x08000a7a 0x00000002 PAD 0x08000b44 0x08000b44 0x000000b8 Code RO 513 i.HAL_SPI_Init stm32f0xx_hal_spi.o
0x08000a7c 0x08000a7c 0x000000d4 Code RO 496 i.HAL_SPI_IRQHandler stm32f0xx_hal_spi.o 0x08000bfc 0x08000bfc 0x00000054 Code RO 448 i.HAL_SPI_MspInit stm32f0xx_hal_msp.o
0x08000b50 0x08000b50 0x000000b8 Code RO 497 i.HAL_SPI_Init stm32f0xx_hal_spi.o 0x08000c50 0x08000c50 0x00000002 Code RO 519 i.HAL_SPI_RxCpltCallback stm32f0xx_hal_spi.o
0x08000c08 0x08000c08 0x00000054 Code RO 432 i.HAL_SPI_MspInit stm32f0xx_hal_msp.o 0x08000c52 0x08000c52 0x00000002 PAD
0x08000c5c 0x08000c5c 0x00000002 Code RO 503 i.HAL_SPI_RxCpltCallback stm32f0xx_hal_spi.o 0x08000c54 0x08000c54 0x000000d4 Code RO 524 i.HAL_SPI_TransmitReceive_IT stm32f0xx_hal_spi.o
0x08000c5e 0x08000c5e 0x00000002 PAD 0x08000d28 0x08000d28 0x000000ac Code RO 257 i.HAL_SPI_TxRxCpltCallback main.o
0x08000c60 0x08000c60 0x000000d4 Code RO 508 i.HAL_SPI_TransmitReceive_IT stm32f0xx_hal_spi.o 0x08000dd4 0x08000dd4 0x00000018 Code RO 3076 i.HAL_SYSTICK_CLKSourceConfig stm32f0xx_hal_cortex.o
0x08000d34 0x08000d34 0x000000ac Code RO 257 i.HAL_SPI_TxRxCpltCallback main.o 0x08000dec 0x08000dec 0x00000002 Code RO 3077 i.HAL_SYSTICK_Callback stm32f0xx_hal_cortex.o
0x08000de0 0x08000de0 0x00000018 Code RO 3060 i.HAL_SYSTICK_CLKSourceConfig stm32f0xx_hal_cortex.o 0x08000dee 0x08000dee 0x00000002 PAD
0x08000df8 0x08000df8 0x00000002 Code RO 3061 i.HAL_SYSTICK_Callback stm32f0xx_hal_cortex.o 0x08000df0 0x08000df0 0x00000030 Code RO 3078 i.HAL_SYSTICK_Config stm32f0xx_hal_cortex.o
0x08000dfa 0x08000dfa 0x00000002 PAD 0x08000e20 0x08000e20 0x00000008 Code RO 3079 i.HAL_SYSTICK_IRQHandler stm32f0xx_hal_cortex.o
0x08000dfc 0x08000dfc 0x00000030 Code RO 3062 i.HAL_SYSTICK_Config stm32f0xx_hal_cortex.o 0x08000e28 0x08000e28 0x00000048 Code RO 1503 i.HAL_TIMEx_MasterConfigSynchronization stm32f0xx_hal_tim_ex.o
0x08000e2c 0x08000e2c 0x00000008 Code RO 3063 i.HAL_SYSTICK_IRQHandler stm32f0xx_hal_cortex.o 0x08000e70 0x08000e70 0x00000034 Code RO 847 i.HAL_TIM_Base_Init stm32f0xx_hal_tim.o
0x08000e34 0x08000e34 0x00000048 Code RO 1487 i.HAL_TIMEx_MasterConfigSynchronization stm32f0xx_hal_tim_ex.o 0x08000ea4 0x08000ea4 0x00000024 Code RO 450 i.HAL_TIM_Base_MspInit stm32f0xx_hal_msp.o
0x08000e7c 0x08000e7c 0x00000034 Code RO 831 i.HAL_TIM_Base_Init stm32f0xx_hal_tim.o 0x08000ec8 0x08000ec8 0x00000018 Code RO 850 i.HAL_TIM_Base_Start stm32f0xx_hal_tim.o
0x08000eb0 0x08000eb0 0x00000024 Code RO 434 i.HAL_TIM_Base_MspInit stm32f0xx_hal_msp.o 0x08000ee0 0x08000ee0 0x000000ee Code RO 856 i.HAL_TIM_ConfigClockSource stm32f0xx_hal_tim.o
0x08000ed4 0x08000ed4 0x00000018 Code RO 834 i.HAL_TIM_Base_Start stm32f0xx_hal_tim.o 0x08000fce 0x08000fce 0x00000002 PAD
0x08000eec 0x08000eec 0x000000ee Code RO 840 i.HAL_TIM_ConfigClockSource stm32f0xx_hal_tim.o 0x08000fd0 0x08000fd0 0x00000048 Code RO 452 i.HAL_UART_MspInit stm32f0xx_hal_msp.o
0x08000fda 0x08000fda 0x00000002 PAD 0x08001018 0x08001018 0x000000c8 Code RO 1753 i.HAL_UART_Transmit stm32f0xx_hal_uart.o
0x08000fdc 0x08000fdc 0x00000048 Code RO 436 i.HAL_UART_MspInit stm32f0xx_hal_msp.o 0x080010e0 0x080010e0 0x00000002 Code RO 392 i.HardFault_Handler stm32f0xx_it.o
0x08001024 0x08001024 0x000000c8 Code RO 1737 i.HAL_UART_Transmit stm32f0xx_hal_uart.o 0x080010e2 0x080010e2 0x00000002 PAD
0x080010ec 0x080010ec 0x00000002 Code RO 376 i.HardFault_Handler stm32f0xx_it.o 0x080010e4 0x080010e4 0x0000009c Code RO 258 i.MX_GPIO_Init main.o
0x080010ee 0x080010ee 0x00000002 PAD 0x08001180 0x08001180 0x0000003c Code RO 259 i.MX_SPI1_Init main.o
0x080010f0 0x080010f0 0x0000009c Code RO 258 i.MX_GPIO_Init main.o 0x080011bc 0x080011bc 0x00000054 Code RO 260 i.MX_TIM2_Init main.o
0x0800118c 0x0800118c 0x0000003c Code RO 259 i.MX_SPI1_Init main.o 0x08001210 0x08001210 0x00000038 Code RO 261 i.MX_USART2_UART_Init main.o
0x080011c8 0x080011c8 0x00000054 Code RO 260 i.MX_TIM2_Init main.o 0x08001248 0x08001248 0x00000002 Code RO 393 i.NMI_Handler stm32f0xx_it.o
0x0800121c 0x0800121c 0x00000038 Code RO 261 i.MX_USART2_UART_Init main.o 0x0800124a 0x0800124a 0x00000002 PAD
0x08001254 0x08001254 0x00000002 Code RO 377 i.NMI_Handler stm32f0xx_it.o 0x0800124c 0x0800124c 0x00000044 Code RO 3080 i.NVIC_SetPriority stm32f0xx_hal_cortex.o
0x08001256 0x08001256 0x00000002 PAD 0x08001290 0x08001290 0x00000002 Code RO 394 i.PendSV_Handler stm32f0xx_it.o
0x08001258 0x08001258 0x00000044 Code RO 3064 i.NVIC_SetPriority stm32f0xx_hal_cortex.o 0x08001292 0x08001292 0x00000002 PAD
0x0800129c 0x0800129c 0x00000002 Code RO 378 i.PendSV_Handler stm32f0xx_it.o 0x08001294 0x08001294 0x00000010 Code RO 395 i.SPI1_IRQHandler stm32f0xx_it.o
0x0800129e 0x0800129e 0x00000002 PAD 0x080012a4 0x080012a4 0x00000036 Code RO 531 i.SPI_2linesRxISR_16BIT stm32f0xx_hal_spi.o
0x080012a0 0x080012a0 0x00000010 Code RO 379 i.SPI1_IRQHandler stm32f0xx_it.o 0x080012da 0x080012da 0x0000005e Code RO 532 i.SPI_2linesRxISR_8BIT stm32f0xx_hal_spi.o
0x080012b0 0x080012b0 0x00000036 Code RO 515 i.SPI_2linesRxISR_16BIT stm32f0xx_hal_spi.o 0x08001338 0x08001338 0x00000034 Code RO 533 i.SPI_2linesTxISR_16BIT stm32f0xx_hal_spi.o
0x080012e6 0x080012e6 0x0000005e Code RO 516 i.SPI_2linesRxISR_8BIT stm32f0xx_hal_spi.o 0x0800136c 0x0800136c 0x00000048 Code RO 534 i.SPI_2linesTxISR_8BIT stm32f0xx_hal_spi.o
0x08001344 0x08001344 0x00000034 Code RO 517 i.SPI_2linesTxISR_16BIT stm32f0xx_hal_spi.o 0x080013b4 0x080013b4 0x00000052 Code RO 537 i.SPI_CloseRxTx_ISR stm32f0xx_hal_spi.o
0x08001378 0x08001378 0x00000048 Code RO 518 i.SPI_2linesTxISR_8BIT stm32f0xx_hal_spi.o 0x08001406 0x08001406 0x00000012 Code RO 540 i.SPI_DMAAbortOnError stm32f0xx_hal_spi.o
0x080013c0 0x080013c0 0x00000052 Code RO 521 i.SPI_CloseRxTx_ISR stm32f0xx_hal_spi.o 0x08001418 0x08001418 0x0000004c Code RO 551 i.SPI_EndRxTxTransaction stm32f0xx_hal_spi.o
0x08001412 0x08001412 0x00000012 Code RO 524 i.SPI_DMAAbortOnError stm32f0xx_hal_spi.o 0x08001464 0x08001464 0x00000096 Code RO 556 i.SPI_WaitFifoStateUntilTimeout stm32f0xx_hal_spi.o
0x08001424 0x08001424 0x0000004c Code RO 535 i.SPI_EndRxTxTransaction stm32f0xx_hal_spi.o 0x080014fa 0x080014fa 0x0000008c Code RO 557 i.SPI_WaitFlagStateUntilTimeout stm32f0xx_hal_spi.o
0x08001470 0x08001470 0x00000096 Code RO 540 i.SPI_WaitFifoStateUntilTimeout stm32f0xx_hal_spi.o 0x08001586 0x08001586 0x00000002 Code RO 396 i.SVC_Handler stm32f0xx_it.o
0x08001506 0x08001506 0x0000008c Code RO 541 i.SPI_WaitFlagStateUntilTimeout stm32f0xx_hal_spi.o 0x08001588 0x08001588 0x0000000c Code RO 397 i.SysTick_Handler stm32f0xx_it.o
0x08001592 0x08001592 0x00000002 Code RO 380 i.SVC_Handler stm32f0xx_it.o 0x08001594 0x08001594 0x0000005a Code RO 262 i.SystemClock_Config main.o
0x08001594 0x08001594 0x00000036 Code RO 262 i.SendBit main.o 0x080015ee 0x080015ee 0x00000002 PAD
0x080015ca 0x080015ca 0x0000000c Code RO 381 i.SysTick_Handler stm32f0xx_it.o 0x080015f0 0x080015f0 0x0000005c Code RO 3487 i.SystemInit system_stm32f0xx.o
0x080015d6 0x080015d6 0x0000005a Code RO 263 i.SystemClock_Config main.o 0x0800164c 0x0800164c 0x00000084 Code RO 933 i.TIM_Base_SetConfig stm32f0xx_hal_tim.o
0x08001630 0x08001630 0x0000005c Code RO 3471 i.SystemInit system_stm32f0xx.o 0x080016d0 0x080016d0 0x00000016 Code RO 940 i.TIM_ETR_SetConfig stm32f0xx_hal_tim.o
0x0800168c 0x0800168c 0x00000084 Code RO 917 i.TIM_Base_SetConfig stm32f0xx_hal_tim.o 0x080016e6 0x080016e6 0x00000010 Code RO 941 i.TIM_ITRx_SetConfig stm32f0xx_hal_tim.o
0x08001710 0x08001710 0x00000016 Code RO 924 i.TIM_ETR_SetConfig stm32f0xx_hal_tim.o 0x080016f6 0x080016f6 0x00000022 Code RO 947 i.TIM_TI1_ConfigInputStage stm32f0xx_hal_tim.o
0x08001726 0x08001726 0x00000010 Code RO 925 i.TIM_ITRx_SetConfig stm32f0xx_hal_tim.o 0x08001718 0x08001718 0x00000026 Code RO 949 i.TIM_TI2_ConfigInputStage stm32f0xx_hal_tim.o
0x08001736 0x08001736 0x00000022 Code RO 931 i.TIM_TI1_ConfigInputStage stm32f0xx_hal_tim.o 0x0800173e 0x0800173e 0x000000ca Code RO 1758 i.UART_AdvFeatureConfig stm32f0xx_hal_uart.o
0x08001758 0x08001758 0x00000026 Code RO 933 i.TIM_TI2_ConfigInputStage stm32f0xx_hal_tim.o 0x08001808 0x08001808 0x00000068 Code RO 1759 i.UART_CheckIdleState stm32f0xx_hal_uart.o
0x0800177e 0x0800177e 0x000000ca Code RO 1742 i.UART_AdvFeatureConfig stm32f0xx_hal_uart.o 0x08001870 0x08001870 0x00000130 Code RO 1774 i.UART_SetConfig stm32f0xx_hal_uart.o
0x08001848 0x08001848 0x00000068 Code RO 1743 i.UART_CheckIdleState stm32f0xx_hal_uart.o 0x080019a0 0x080019a0 0x00000062 Code RO 1776 i.UART_WaitOnFlagUntilTimeout stm32f0xx_hal_uart.o
0x080018b0 0x080018b0 0x00000130 Code RO 1758 i.UART_SetConfig stm32f0xx_hal_uart.o 0x08001a02 0x08001a02 0x00000002 PAD
0x080019e0 0x080019e0 0x00000062 Code RO 1760 i.UART_WaitOnFlagUntilTimeout stm32f0xx_hal_uart.o 0x08001a04 0x08001a04 0x00000020 Code RO 3616 i.__0printf$3 mc_p.l(printf3.o)
0x08001a24 0x08001a24 0x0000000e Code RO 3862 i.__scatterload_copy mc_p.l(handlers.o)
0x08001a32 0x08001a32 0x00000002 Code RO 3863 i.__scatterload_null mc_p.l(handlers.o)
0x08001a34 0x08001a34 0x0000000e Code RO 3864 i.__scatterload_zeroinit mc_p.l(handlers.o)
0x08001a42 0x08001a42 0x00000002 PAD 0x08001a42 0x08001a42 0x00000002 PAD
0x08001a44 0x08001a44 0x00000020 Code RO 3600 i.__0printf$3 mc_p.l(printf3.o) 0x08001a44 0x08001a44 0x000001cc Code RO 3623 i._printf_core mc_p.l(printf3.o)
0x08001a64 0x08001a64 0x0000000e Code RO 3846 i.__scatterload_copy mc_p.l(handlers.o) 0x08001c10 0x08001c10 0x00000014 Code RO 12 i.delay_us delay_us.o
0x08001a72 0x08001a72 0x00000002 Code RO 3847 i.__scatterload_null mc_p.l(handlers.o) 0x08001c24 0x08001c24 0x00000010 Code RO 13 i.delay_us_init delay_us.o
0x08001a74 0x08001a74 0x0000000e Code RO 3848 i.__scatterload_zeroinit mc_p.l(handlers.o) 0x08001c34 0x08001c34 0x00000018 Code RO 265 i.fputc main.o
0x08001a82 0x08001a82 0x00000002 PAD 0x08001c4c 0x08001c4c 0x00000010 Code RO 266 i.get_bit main.o
0x08001a84 0x08001a84 0x000001cc Code RO 3607 i._printf_core mc_p.l(printf3.o) 0x08001c5c 0x08001c5c 0x0000002c Code RO 149 i.kb_buf_add helpers.o
0x08001c50 0x08001c50 0x00000014 Code RO 12 i.delay_us delay_us.o 0x08001c88 0x08001c88 0x0000001c Code RO 150 i.kb_buf_init helpers.o
0x08001c64 0x08001c64 0x00000010 Code RO 13 i.delay_us_init delay_us.o 0x08001ca4 0x08001ca4 0x00000016 Code RO 152 i.kb_buf_is_full helpers.o
0x08001c74 0x08001c74 0x00000018 Code RO 266 i.fputc main.o 0x08001cba 0x08001cba 0x00000020 Code RO 153 i.kb_buf_peek helpers.o
0x08001c8c 0x08001c8c 0x0000002c Code RO 149 i.kb_buf_add helpers.o 0x08001cda 0x08001cda 0x00000012 Code RO 154 i.kb_buf_pop helpers.o
0x08001cb8 0x08001cb8 0x0000001c Code RO 150 i.kb_buf_init helpers.o 0x08001cec 0x08001cec 0x0000001c Code RO 155 i.kb_buf_reset helpers.o
0x08001cd4 0x08001cd4 0x00000016 Code RO 152 i.kb_buf_is_full helpers.o 0x08001d08 0x08001d08 0x000000c0 Code RO 269 i.main main.o
0x08001cea 0x08001cea 0x00000020 Code RO 153 i.kb_buf_peek helpers.o 0x08001dc8 0x08001dc8 0x0000006c Code RO 3789 i.malloc mc_p.l(malloc.o)
0x08001d0a 0x08001d0a 0x00000012 Code RO 154 i.kb_buf_pop helpers.o 0x08001e34 0x08001e34 0x00000010 Code RO 14 i.micros delay_us.o
0x08001d1c 0x08001d1c 0x0000001c Code RO 155 i.kb_buf_reset helpers.o 0x08001e44 0x08001e44 0x0000001c Code RO 270 i.protocol_status_lookup_init main.o
0x08001d38 0x08001d38 0x000000cc Code RO 269 i.main main.o 0x08001e60 0x08001e60 0x0000001c Code RO 271 i.release_kb_line main.o
0x08001e04 0x08001e04 0x0000006c Code RO 3773 i.malloc mc_p.l(malloc.o) 0x08001e7c 0x08001e7c 0x00000030 Code RO 272 i.send_key main.o
0x08001e70 0x08001e70 0x00000010 Code RO 14 i.micros delay_us.o 0x08001eac 0x08001eac 0x0000007c Code RO 273 i.spi_error_dump_reboot main.o
0x08001e80 0x08001e80 0x0000001c Code RO 270 i.protocol_status_lookup_init main.o 0x08001f28 0x08001f28 0x00000038 Code RO 275 i.write_bit main.o
0x08001e9c 0x08001e9c 0x0000007c Code RO 271 i.spi_error_dump_reboot main.o 0x08001f60 0x08001f60 0x0000003b Data RO 281 .constdata main.o
0x08001f18 0x08001f18 0x0000002c Code RO 272 i.wait_for_KBACK main.o 0x08001f9b 0x08001f9b 0x00000010 Data RO 3488 .constdata system_stm32f0xx.o
0x08001f44 0x08001f44 0x0000003b Data RO 278 .constdata main.o 0x08001fab 0x08001fab 0x00000008 Data RO 3489 .constdata system_stm32f0xx.o
0x08001f7f 0x08001f7f 0x00000010 Data RO 3472 .constdata system_stm32f0xx.o 0x08001fb3 0x08001fb3 0x00000001 PAD
0x08001f8f 0x08001f8f 0x00000008 Data RO 3473 .constdata system_stm32f0xx.o 0x08001fb4 0x08001fb4 0x00000020 Data RO 3860 Region$$Table anon$$obj.o
0x08001f97 0x08001f97 0x00000001 PAD
0x08001f98 0x08001f98 0x00000020 Data RO 3844 Region$$Table anon$$obj.o
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08001fb8, Size: 0x00000790, Max: 0x00001800, ABSOLUTE) Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08001fd4, Size: 0x00000790, Max: 0x00001800, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x20000000 0x08001fb8 0x00000004 Data RW 15 .data delay_us.o 0x20000000 0x08001fd4 0x00000004 Data RW 15 .data delay_us.o
0x20000004 0x08001fbc 0x00000008 Data RW 279 .data main.o 0x20000004 0x08001fd8 0x00000008 Data RW 282 .data main.o
0x2000000c 0x08001fc4 0x00000004 Data RW 2303 .data stm32f0xx_hal.o 0x2000000c 0x08001fe0 0x00000004 Data RW 2319 .data stm32f0xx_hal.o
0x20000010 0x08001fc8 0x00000004 Data RW 3474 .data system_stm32f0xx.o 0x20000010 0x08001fe4 0x00000004 Data RW 3490 .data system_stm32f0xx.o
0x20000014 0x08001fcc 0x00000004 Data RW 3814 .data mc_p.l(stdout.o) 0x20000014 0x08001fe8 0x00000004 Data RW 3830 .data mc_p.l(stdout.o)
0x20000018 0x08001fd0 0x00000004 Data RW 3821 .data mc_p.l(mvars.o) 0x20000018 0x08001fec 0x00000004 Data RW 3837 .data mc_p.l(mvars.o)
0x2000001c 0x08001fd4 0x00000004 Data RW 3822 .data mc_p.l(mvars.o) 0x2000001c 0x08001ff0 0x00000004 Data RW 3838 .data mc_p.l(mvars.o)
0x20000020 - 0x00000170 Zero RW 273 .bss main.o 0x20000020 - 0x00000170 Zero RW 276 .bss main.o
0x20000190 - 0x00000200 Zero RW 2 HEAP startup_stm32f042x6.o 0x20000190 - 0x00000200 Zero RW 2 HEAP startup_stm32f042x6.o
0x20000390 - 0x00000400 Zero RW 1 STACK startup_stm32f042x6.o 0x20000390 - 0x00000400 Zero RW 1 STACK startup_stm32f042x6.o
@@ -2118,12 +2124,12 @@ Image component sizes
52 10 0 4 0 449275 delay_us.o 52 10 0 4 0 449275 delay_us.o
172 0 0 0 0 4930 helpers.o 172 0 0 0 0 4930 helpers.o
1096 150 59 8 368 14721 main.o 1134 142 59 8 368 15794 main.o
88 38 192 0 1536 644 startup_stm32f042x6.o 88 38 192 0 1536 644 startup_stm32f042x6.o
122 18 0 4 0 3619 stm32f0xx_hal.o 122 18 0 4 0 3619 stm32f0xx_hal.o
178 28 0 0 0 10515 stm32f0xx_hal_cortex.o 178 28 0 0 0 10515 stm32f0xx_hal_cortex.o
72 0 0 0 0 1099 stm32f0xx_hal_dma.o 72 0 0 0 0 1099 stm32f0xx_hal_dma.o
346 22 0 0 0 3432 stm32f0xx_hal_gpio.o 336 22 0 0 0 2813 stm32f0xx_hal_gpio.o
260 28 0 0 0 2666 stm32f0xx_hal_msp.o 260 28 0 0 0 2666 stm32f0xx_hal_msp.o
1504 102 0 0 0 5169 stm32f0xx_hal_rcc.o 1504 102 0 0 0 5169 stm32f0xx_hal_rcc.o
1350 20 0 0 0 10502 stm32f0xx_hal_spi.o 1350 20 0 0 0 10502 stm32f0xx_hal_spi.o
@@ -2134,7 +2140,7 @@ Image component sizes
92 14 24 4 0 1135 system_stm32f0xx.o 92 14 24 4 0 1135 system_stm32f0xx.o
---------------------------------------------------------------------- ----------------------------------------------------------------------
7044 488 308 20 1904 523893 Object Totals 7072 480 308 20 1904 524347 Object Totals
0 0 32 0 0 0 (incl. Generated) 0 0 32 0 0 0 (incl. Generated)
22 0 1 0 0 0 (incl. Padding) 22 0 1 0 0 0 (incl. Padding)
@@ -2179,15 +2185,15 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug Code (inc. data) RO Data RW Data ZI Data Debug
7812 532 308 32 1904 520965 Grand Totals 7840 524 308 32 1904 521375 Grand Totals
7812 532 308 32 1904 520965 ELF Image Totals 7840 524 308 32 1904 521375 ELF Image Totals
7812 532 308 32 0 0 ROM Totals 7840 524 308 32 0 0 ROM Totals
============================================================================== ==============================================================================
Total RO Size (Code + RO Data) 8120 ( 7.93kB) Total RO Size (Code + RO Data) 8148 ( 7.96kB)
Total RW Size (RW Data + ZI Data) 1936 ( 1.89kB) Total RW Size (RW Data + ZI Data) 1936 ( 1.89kB)
Total ROM Size (Code + RO Data + RW Data) 8152 ( 7.96kB) Total ROM Size (Code + RO Data + RW Data) 8180 ( 7.99kB)
============================================================================== ==============================================================================

View File

@@ -75,7 +75,7 @@ I (../Inc/shared.h)(0x617487BD)
I (../Inc/main.h)(0x636C271F) I (../Inc/main.h)(0x636C271F)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_rcc.h)(0x5DFA0893) I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_rcc.h)(0x5DFA0893)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_def.h)(0x5DFA0893) I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_def.h)(0x5DFA0893)
I (../Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f0xx.h)(0x5DFA0880) I (../Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f0xx.h)(0x5DFA0880)
I (../Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f042x6.h)(0x5DFA0880) I (../Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f042x6.h)(0x5DFA0880)
I (../Drivers/CMSIS/Include/core_cm0.h)(0x5DFA0892) I (../Drivers/CMSIS/Include/core_cm0.h)(0x5DFA0892)
I (C:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x5D9B4298) I (C:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x5D9B4298)

View File

@@ -196,12 +196,19 @@ void protocol_status_lookup_init(void)
#define KB_WRITE_ERROR 2 #define KB_WRITE_ERROR 2
#define SIRIUS_1_KB_BIT_ACK_TIMEOUT_MS 20 #define SIRIUS_1_KB_BIT_ACK_TIMEOUT_MS 20
uint8_t wait_for_KBACK(void) void release_kb_line(void)
{ {
HAL_GPIO_WritePin(KBDATA_GPIO_Port, KBDATA_Pin, GPIO_PIN_SET);
HAL_GPIO_WritePin(KBRDY_GPIO_Port, KBRDY_Pin, GPIO_PIN_SET);
}
uint8_t wait_for_KBACK(uint8_t level)
{
return KB_WRITE_SUCCESS;
uint32_t entry_time = HAL_GetTick(); uint32_t entry_time = HAL_GetTick();
while(1) while(1)
{ {
if(HAL_GPIO_ReadPin(KBACK_GPIO_Port, KBACK_Pin) == GPIO_PIN_SET) if(HAL_GPIO_ReadPin(KBACK_GPIO_Port, KBACK_Pin) == level)
return KB_WRITE_SUCCESS; return KB_WRITE_SUCCESS;
if(HAL_GetTick() - entry_time > SIRIUS_1_KB_BIT_ACK_TIMEOUT_MS) if(HAL_GetTick() - entry_time > SIRIUS_1_KB_BIT_ACK_TIMEOUT_MS)
return KB_WRITE_TIMEOUT; return KB_WRITE_TIMEOUT;
@@ -209,15 +216,35 @@ uint8_t wait_for_KBACK(void)
return KB_WRITE_ERROR; return KB_WRITE_ERROR;
} }
uint8_t SendBit(uint8_t value) uint8_t write_bit(uint8_t bit)
{ {
HAL_GPIO_WritePin(KBDATA_GPIO_Port, KBDATA_Pin, value); HAL_GPIO_WritePin(KBDATA_GPIO_Port, KBDATA_Pin, bit);
HAL_GPIO_WritePin(KBRDY_GPIO_Port, KBRDY_Pin, GPIO_PIN_RESET); HAL_GPIO_WritePin(KBRDY_GPIO_Port, KBRDY_Pin, GPIO_PIN_RESET);
// while(HAL_GPIO_ReadPin(KBACK_GPIO_Port, KBACK_Pin)); if(wait_for_KBACK(GPIO_PIN_RESET) != KB_WRITE_SUCCESS)
return KB_WRITE_TIMEOUT;
delay_us(400); delay_us(400);
HAL_GPIO_WritePin(KBRDY_GPIO_Port, KBRDY_Pin, GPIO_PIN_SET); HAL_GPIO_WritePin(KBRDY_GPIO_Port, KBRDY_Pin, GPIO_PIN_SET);
// while(!digitalRead(KBACK)); if(wait_for_KBACK(GPIO_PIN_SET) != KB_WRITE_SUCCESS)
return KB_WRITE_TIMEOUT;
delay_us(400); delay_us(400);
return KB_WRITE_SUCCESS;
}
uint8_t get_bit(uint8_t x, uint8_t n)
{
return (x & (1 << n)) ? 1 : 0;
}
uint8_t send_key(uint8_t data, uint8_t key_status)
{
data &= 0x7f;
if(key_status)
data |= 0x80;
for (int i = 0; i < 8; ++i)
write_bit(get_bit(data, i));
write_bit(0); // stop bit
release_kb_line();
return KB_WRITE_SUCCESS;
} }
/* USER CODE END 0 */ /* USER CODE END 0 */
@@ -278,12 +305,9 @@ int main(void)
/* USER CODE BEGIN 3 */ /* USER CODE BEGIN 3 */
if(kb_buf_peek(&my_kb_buf, &buffered_code, &buffered_value) == 0) if(kb_buf_peek(&my_kb_buf, &buffered_code, &buffered_value) == 0)
{ {
SendBit(1); send_key(0x28, buffered_value);
kb_buf_pop(&my_kb_buf); kb_buf_pop(&my_kb_buf);
} }
printf("%d\n", wait_for_KBACK());
} }
/* USER CODE END 3 */ /* USER CODE END 3 */

View File

@@ -1,3 +1,30 @@
HAL_GPIO_TogglePin(KBDATA_GPIO_Port, KBDATA_Pin); HAL_GPIO_TogglePin(KBDATA_GPIO_Port, KBDATA_Pin);
HAL_GPIO_TogglePin(KBRDY_GPIO_Port, KBRDY_Pin); HAL_GPIO_TogglePin(KBRDY_GPIO_Port, KBRDY_Pin);
HAL_Delay(10); HAL_Delay(10);
// uint8_t write_stop_bit()
// {
// HAL_GPIO_WritePin(KBDATA_GPIO_Port, KBDATA_Pin, GPIO_PIN_RESET);
// HAL_GPIO_WritePin(KBRDY_GPIO_Port, KBRDY_Pin, GPIO_PIN_RESET);
// if(wait_for_KBACK(GPIO_PIN_RESET) != KB_WRITE_SUCCESS)
// return KB_WRITE_TIMEOUT;
// HAL_GPIO_WritePin(KBDATA_GPIO_Port, KBDATA_Pin, GPIO_PIN_SET);
// HAL_GPIO_WritePin(KBRDY_GPIO_Port, KBRDY_Pin, GPIO_PIN_SET);
// HAL_Delay(1);
// if(wait_for_KBACK(GPIO_PIN_SET) != KB_WRITE_SUCCESS)
// return KB_WRITE_TIMEOUT;
// return KB_WRITE_SUCCESS;
// }
uint8_t send_key(uint8_t data, uint8_t key_status)
{
for (int i = 0; i < 7; ++i)
{
if(write_bit(get_bit(data, i)) != KB_WRITE_SUCCESS)
return KB_WRITE_TIMEOUT;
}
if(write_bit(key_status) != KB_WRITE_SUCCESS)
return KB_WRITE_TIMEOUT
if(write_bit(0) != KB_WRITE_SUCCESS) // stop bit
return KB_WRITE_TIMEOUT
return KB_WRITE_SUCCESS;
}