mirror of
https://github.com/dekuNukem/USB4VC.git
synced 2025-10-31 11:26:46 -07:00
working on adb read
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
#include "stm32f0xx_hal.h"
|
||||
|
||||
void adb_init(GPIO_TypeDef* data_port, uint16_t data_pin, GPIO_TypeDef* psw_port, uint16_t psw_pin);
|
||||
void adb_recv_cmd(void);
|
||||
uint8_t adb_recv_cmd(uint8_t srq);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -110,8 +110,8 @@
|
||||
<MDIClientArea>
|
||||
<RegID>0</RegID>
|
||||
<MDITabState>
|
||||
<Len>348</Len>
|
||||
<Data>01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000002000000010000000100000041433A5C55736572735C616C6C656E5C4465736B746F705C7265706F735C757362327073325C6669726D776172655C6164625F663034325C5372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF40433A5C55736572735C616C6C656E5C4465736B746F705C7265706F735C757362327073325C6669726D776172655C6164625F663034325C5372635C6164622E6300000000056164622E6300000000FFDC7800FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000F4000000660000008007000026030000</Data>
|
||||
<Len>494</Len>
|
||||
<Data>01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000003000000010000000100000041433A5C55736572735C616C6C656E5C4465736B746F705C7265706F735C757362327073325C6669726D776172655C6164625F663034325C5372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF40433A5C55736572735C616C6C656E5C4465736B746F705C7265706F735C757362327073325C6669726D776172655C6164625F663034325C5372635C6164622E6300000000056164622E6300000000FFDC7800FFFFFFFF6C433A5C55736572735C616C6C656E5C4465736B746F705C7265706F735C757362327073325C6669726D776172655C6164625F663034325C447269766572735C53544D3332463078785F48414C5F4472697665725C496E635C73746D3332663078785F68616C5F6770696F2E68000000001473746D3332663078785F68616C5F6770696F2E6800000000BECEA100FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000F4000000660000008007000026030000</Data>
|
||||
</MDITabState>
|
||||
</MDIClientArea>
|
||||
<ViewEx>
|
||||
@@ -1874,9 +1874,18 @@
|
||||
</Doc>
|
||||
<Doc>
|
||||
<Name>..\Src\adb.c</Name>
|
||||
<ColumnNumber>25</ColumnNumber>
|
||||
<TopLine>27</TopLine>
|
||||
<CurrentLine>61</CurrentLine>
|
||||
<ColumnNumber>32</ColumnNumber>
|
||||
<TopLine>41</TopLine>
|
||||
<CurrentLine>66</CurrentLine>
|
||||
<Folding>1</Folding>
|
||||
<ContractedFolders></ContractedFolders>
|
||||
<PaneID>0</PaneID>
|
||||
</Doc>
|
||||
<Doc>
|
||||
<Name>../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_gpio.h</Name>
|
||||
<ColumnNumber>6</ColumnNumber>
|
||||
<TopLine>74</TopLine>
|
||||
<CurrentLine>95</CurrentLine>
|
||||
<Folding>1</Folding>
|
||||
<ContractedFolders></ContractedFolders>
|
||||
<PaneID>0</PaneID>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -28,11 +28,11 @@ Project File Date: 11/16/2021
|
||||
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
|
||||
Build target 'spitestf042'
|
||||
compiling adb.c...
|
||||
..\Src\adb.c(87): warning: #1-D: last line of file ends without a newline
|
||||
..\Src\adb.c(119): warning: #1-D: last line of file ends without a newline
|
||||
}
|
||||
..\Src\adb.c: 1 warning, 0 errors
|
||||
linking...
|
||||
Program Size: Code=6080 RO-data=248 RW-data=28 ZI-data=1332
|
||||
Program Size: Code=6224 RO-data=248 RW-data=28 ZI-data=1332
|
||||
FromELF: creating hex file...
|
||||
"spitestf042\spitestf042.axf" - 0 Error(s), 1 Warning(s).
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
:100090000000000005010008050100080501000836
|
||||
:1000A00000000000211200080501000805010008F9
|
||||
:1000B0000501000800000000050100080501000816
|
||||
:1000C0000348854600F05AF8004800470D1800081C
|
||||
:1000C0000348854600F05AF80048004745180008E4
|
||||
:1000D000500500200C4880F308880C480168090E80
|
||||
:1000E0000B4A914205D10B480B4901600B480C4962
|
||||
:1000F00001600C4880470C480047FEE7FEE7FEE73A
|
||||
@@ -24,7 +24,7 @@
|
||||
:10016000491EFBD270470022F6E710B513460A4637
|
||||
:1001700004461946FFF7F0FF204610BD064C012546
|
||||
:10018000064E05E0E36807CC2B430C3C984710343F
|
||||
:10019000B442F7D3FFF798FF98180008B818000882
|
||||
:10019000B442F7D3FFF798FF281900084819000860
|
||||
:1001A00070B50024014620314A78022A03D0042188
|
||||
:1001B0008163012416E0026813680E25AB431360C7
|
||||
:1001C000026813685B085B0013600122056C13462C
|
||||
@@ -102,10 +102,10 @@
|
||||
:10064000E9680843606000F02DF86168084A09060F
|
||||
:10065000090F515CC840074908600020FFF79AFE67
|
||||
:100660000020F8BD00200240001002408813000066
|
||||
:10067000801800081400002001480068704700003E
|
||||
:1006700010190008140000200148006870470000AD
|
||||
:10068000140000200448054900684968044A4905E7
|
||||
:10069000490F515CC8407047140000200010024010
|
||||
:1006A0009018000830B516A30FCB89B06C460FC464
|
||||
:1006A0002019000830B516A30FCB89B06C460FC4D3
|
||||
:1006B00017A30FCB0FC41A494A680C2014460440F4
|
||||
:1006C0001848042C05D0184B082C04D00C2C00D151
|
||||
:1006D000184609B030BD9402240F6D462C5DC96ADE
|
||||
@@ -364,38 +364,47 @@
|
||||
:1016A00049008160202060346072A07200202072A6
|
||||
:1016B000032005B0F0BD2068C1693046884304D0DE
|
||||
:1016C0000020B842D9D00020F3E70120F9E700005C
|
||||
:1016D00010B5024A024900F014F810BD8D17000839
|
||||
:1016D00010B5024A024900F014F810BDE9170008DD
|
||||
:1016E0001800002002E008C8121F08C1002AFAD121
|
||||
:1016F00070477047002001E001C1121F002AFBD192
|
||||
:101700007047F8B516460F460446002503E03946F3
|
||||
:10171000B047641C6D1C20780028F8D12846F8BD1D
|
||||
:1017200010B5044C62602380A060618000F016F860
|
||||
:1017300010BD00000400002010B509240122E406B9
|
||||
:1017400011462046FEF701FE012000F02BF8002292
|
||||
:1017500001212046FEF7F9FD10BD000010B5064C32
|
||||
:10176000012221886068FEF7F0FD01226188A068EF
|
||||
:10177000FEF7EBFD10BD00000400002010B502498B
|
||||
:101780000860FFF72BFB10BD0000002013B5642399
|
||||
:10179000012269460248FFF701FC00981CBD0000C9
|
||||
:1017A000C000002070B50546164C01E0002D0AD09F
|
||||
:1017B0006188A068FEF7C4FD0128F7D000F058F852
|
||||
:1017C0000546114E06E0012070BD00F051F8401BA7
|
||||
:1017D000B04212D86188A068FEF7B2FD0028F4D0AC
|
||||
:1017E00000F046F8AF21401B8900884201D2032057
|
||||
:1017F00070BD7D210901884201D9022070BD002001
|
||||
:1018000070BD000004000020B80B0000FEF7B2FD20
|
||||
:10181000FFF71EFDFFF728FCFFF7C0FCFFF776FC83
|
||||
:10182000FFF792FC0C48FFF7A9FF0B482021B030CE
|
||||
:10183000FEF799FC0948012302460221FFF770FFD9
|
||||
:1018400007A0FFF745FFFFF777FFFFF775FF32208F
|
||||
:10185000FEF7CAFCF7E700008000002000140048F3
|
||||
:1018600068656C6C6F20776F726C640A0000000012
|
||||
:10187000024800680068406A7047000000000020CD
|
||||
:101880000000000000000000010203040607080930
|
||||
:101890000000000001020304B81800080000002046
|
||||
:1018A0001C000000E4160008D41800081C000020EA
|
||||
:1018B00034050000F41600080000000000000000DD
|
||||
:1018C00000000000000000000000000000127A008C
|
||||
:0418D0000000000014
|
||||
:1017200010B5044C62602380A060618000F044F832
|
||||
:1017300010BD00000400002070B50D48418880688D
|
||||
:10174000FEF7FEFD00280FD10A4D284600F0BEF836
|
||||
:101750000446284600F0BAF8611C05D0411C03D0AD
|
||||
:10176000A04203DD012070BD042070BD002070BDCB
|
||||
:10177000040000201027000070B5054600F040F876
|
||||
:10178000002807D10B4E304600F0A0F83238292847
|
||||
:1017900001D3042070BD0024FFF7CEFF0428F9D048
|
||||
:1017A000641C082CF8DB002D02D1304600F08EF8C6
|
||||
:1017B000002070BD1027000010B5064C01222188C2
|
||||
:1017C0006068FEF7C2FD01226188A068FEF7BDFDDA
|
||||
:1017D00010BD00000400002010B502490860FFF7AA
|
||||
:1017E000FDFA10BD0000002013B5642301226946F4
|
||||
:1017F0000248FFF7D3FB00981CBD0000C00000208A
|
||||
:1018000010B50E4841888068FEF79AFD012802D184
|
||||
:10181000002000F05BF80A4800F058F87D2109012B
|
||||
:10182000884207DC411C05D04B21C900884203DAFD
|
||||
:10183000032010BD022010BD002010BD04000020B8
|
||||
:1018400010270000FEF796FDFFF702FDFFF70CFCE6
|
||||
:10185000FFF7A4FCFFF75AFCFFF776FC1148FFF7EF
|
||||
:10186000BBFF10482021B030FEF77DFC0E4801235D
|
||||
:1018700002460221FFF754FF0CA0FFF729FF0924BD
|
||||
:10188000E406012211462046FEF75FFD0020FFF727
|
||||
:1018900073FF002201212046FEF757FD0620FEF7C8
|
||||
:1018A000A3FCEEE7800000200014004868656C6C23
|
||||
:1018B0006F20776F726C640A0000000002480068B5
|
||||
:1018C0000068406A7047000000000020F8B5074635
|
||||
:1018D000FFF7F4FF0D4C00906188A068FEF730FD23
|
||||
:1018E00005460AE0FFF7EAFF0099461A002F04D0E8
|
||||
:1018F000BE4202D90020C043F8BD6188A068FEF74F
|
||||
:101900001FFDA842EED03046F8BD000004000020C4
|
||||
:10191000000000000000000001020304060708099F
|
||||
:101920000000000001020304481900080000002024
|
||||
:101930001C000000E4160008641900081C000020C8
|
||||
:1019400034050000F416000800000000000000004C
|
||||
:1019500000000000000000000000000000127A00FB
|
||||
:041960000000000083
|
||||
:04000005080000C12E
|
||||
:00000001FF
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<title>Static Call Graph - [spitestf042\spitestf042.axf]</title></head>
|
||||
<body><HR>
|
||||
<H1>Static Call Graph for image spitestf042\spitestf042.axf</H1><HR>
|
||||
<BR><P>#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Tue Nov 16 09:59:06 2021
|
||||
<BR><P>#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Tue Nov 16 11:05:34 2021
|
||||
<BR><P>
|
||||
<H3>Maximum Stack Usage = 188 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
|
||||
Call chain for Maximum Stack Depth:</H3>
|
||||
@@ -64,7 +64,7 @@ Global Symbols
|
||||
<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)
|
||||
</UL>
|
||||
<P><STRONG><a name="[68]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
|
||||
<P><STRONG><a name="[6a]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
|
||||
|
||||
<P><STRONG><a name="[26]"></a>_main_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[27]">>></a> __scatterload
|
||||
@@ -74,15 +74,15 @@ Global Symbols
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[27]">>></a> __scatterload
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[69]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
|
||||
<P><STRONG><a name="[6b]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
|
||||
|
||||
<P><STRONG><a name="[6a]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
|
||||
<P><STRONG><a name="[6c]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
|
||||
|
||||
<P><STRONG><a name="[6b]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
|
||||
<P><STRONG><a name="[6d]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
|
||||
|
||||
<P><STRONG><a name="[6c]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))
|
||||
<P><STRONG><a name="[6e]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))
|
||||
|
||||
<P><STRONG><a name="[6d]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F))
|
||||
<P><STRONG><a name="[6f]"></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))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f042x6.o(RESET)
|
||||
@@ -169,7 +169,7 @@ Global Symbols
|
||||
<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)
|
||||
</UL>
|
||||
<P><STRONG><a name="[6e]"></a>__aeabi_uidiv</STRONG> (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[70]"></a>__aeabi_uidiv</STRONG> (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[32]"></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
|
||||
@@ -185,19 +185,19 @@ Global Symbols
|
||||
<LI><a href="#[28]">>></a> __aeabi_memclr
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[6f]"></a>__aeabi_memset4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[71]"></a>__aeabi_memset4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[70]"></a>__aeabi_memset8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[72]"></a>__aeabi_memset8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[28]"></a>__aeabi_memclr</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[29]">>></a> __aeabi_memset
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[66]"></a>__aeabi_memclr4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))
|
||||
<P><STRONG><a name="[67]"></a>__aeabi_memclr4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[21]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[71]"></a>__aeabi_memclr8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[73]"></a>__aeabi_memclr8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[2a]"></a>_memset$wrapper</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[29]">>></a> __aeabi_memset
|
||||
@@ -209,7 +209,7 @@ Global Symbols
|
||||
<BR>[Called By]<UL><LI><a href="#[26]">>></a> _main_scatterload
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[72]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[74]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[3b]"></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
|
||||
@@ -233,13 +233,15 @@ Global Symbols
|
||||
<LI><a href="#[52]">>></a> MX_GPIO_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[64]"></a>HAL_GPIO_ReadPin</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, stm32f0xx_hal_gpio.o(i.HAL_GPIO_ReadPin))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[61]">>></a> look_for_atten
|
||||
<P><STRONG><a name="[61]"></a>HAL_GPIO_ReadPin</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, stm32f0xx_hal_gpio.o(i.HAL_GPIO_ReadPin))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[62]">>></a> wait_until_change
|
||||
<LI><a href="#[64]">>></a> look_for_atten
|
||||
<LI><a href="#[60]">>></a> adb_read_bit
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[53]"></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="#[5f]">>></a> adb_release_lines
|
||||
<LI><a href="#[60]">>></a> adb_recv_cmd
|
||||
<LI><a href="#[21]">>></a> main
|
||||
<LI><a href="#[52]">>></a> MX_GPIO_Init
|
||||
</UL>
|
||||
|
||||
@@ -423,8 +425,8 @@ Global Symbols
|
||||
<BR>[Called By]<UL><LI><a href="#[43]">>></a> HAL_TIM_Base_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[63]"></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="#[62]">>></a> delay_us_init
|
||||
<P><STRONG><a name="[66]"></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="#[65]">>></a> delay_us_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[46]"></a>HAL_TIM_ConfigClockSource</STRONG> (Thumb, 238 bytes, Stack size 24 bytes, stm32f0xx_hal_tim.o(i.HAL_TIM_ConfigClockSource))
|
||||
@@ -565,19 +567,19 @@ Global Symbols
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[5d]">>></a> _printf_core
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[73]"></a>__1printf$bare</STRONG> (Thumb, 0 bytes, Stack size 8 bytes, printfb.o(i.__0printf$bare), UNUSED)
|
||||
<P><STRONG><a name="[75]"></a>__1printf$bare</STRONG> (Thumb, 0 bytes, Stack size 8 bytes, printfb.o(i.__0printf$bare), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[67]"></a>__2printf</STRONG> (Thumb, 0 bytes, Stack size 8 bytes, printfb.o(i.__0printf$bare))
|
||||
<P><STRONG><a name="[68]"></a>__2printf</STRONG> (Thumb, 0 bytes, Stack size 8 bytes, printfb.o(i.__0printf$bare))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[21]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[74]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
|
||||
<P><STRONG><a name="[76]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[75]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
|
||||
<P><STRONG><a name="[77]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[76]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
|
||||
<P><STRONG><a name="[78]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[5e]"></a>adb_init</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, adb.o(i.adb_init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = adb_init ⇒ adb_release_lines
|
||||
@@ -587,11 +589,21 @@ Global Symbols
|
||||
<BR>[Called By]<UL><LI><a href="#[21]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[60]"></a>adb_recv_cmd</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, adb.o(i.adb_recv_cmd))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = adb_recv_cmd ⇒ look_for_atten
|
||||
<P><STRONG><a name="[60]"></a>adb_read_bit</STRONG> (Thumb, 56 bytes, Stack size 16 bytes, adb.o(i.adb_read_bit))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = adb_read_bit ⇒ wait_until_change
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[61]">>></a> look_for_atten
|
||||
<LI><a href="#[53]">>></a> HAL_GPIO_WritePin
|
||||
<BR>[Calls]<UL><LI><a href="#[61]">>></a> HAL_GPIO_ReadPin
|
||||
<LI><a href="#[62]">>></a> wait_until_change
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[63]">>></a> adb_recv_cmd
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[63]"></a>adb_recv_cmd</STRONG> (Thumb, 60 bytes, Stack size 16 bytes, adb.o(i.adb_recv_cmd))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = adb_recv_cmd ⇒ adb_read_bit ⇒ wait_until_change
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[62]">>></a> wait_until_change
|
||||
<LI><a href="#[64]">>></a> look_for_atten
|
||||
<LI><a href="#[60]">>></a> adb_read_bit
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[21]">>></a> main
|
||||
</UL>
|
||||
@@ -604,10 +616,10 @@ Global Symbols
|
||||
<BR>[Called By]<UL><LI><a href="#[5e]">>></a> adb_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[62]"></a>delay_us_init</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, delay_us.o(i.delay_us_init))
|
||||
<P><STRONG><a name="[65]"></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
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[63]">>></a> HAL_TIM_Base_Start
|
||||
<BR>[Calls]<UL><LI><a href="#[66]">>></a> HAL_TIM_Base_Start
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[21]">>></a> main
|
||||
</UL>
|
||||
@@ -619,35 +631,47 @@ Global Symbols
|
||||
</UL>
|
||||
<BR>[Address Reference Count : 1]<UL><LI> printfb.o(i.__0printf$bare)
|
||||
</UL>
|
||||
<P><STRONG><a name="[61]"></a>look_for_atten</STRONG> (Thumb, 94 bytes, Stack size 16 bytes, adb.o(i.look_for_atten))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = look_for_atten
|
||||
<P><STRONG><a name="[64]"></a>look_for_atten</STRONG> (Thumb, 60 bytes, Stack size 8 bytes, adb.o(i.look_for_atten))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = look_for_atten ⇒ wait_until_change
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[64]">>></a> HAL_GPIO_ReadPin
|
||||
<LI><a href="#[65]">>></a> micros
|
||||
<BR>[Calls]<UL><LI><a href="#[61]">>></a> HAL_GPIO_ReadPin
|
||||
<LI><a href="#[62]">>></a> wait_until_change
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[60]">>></a> adb_recv_cmd
|
||||
<BR>[Called By]<UL><LI><a href="#[63]">>></a> adb_recv_cmd
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[21]"></a>main</STRONG> (Thumb, 74 bytes, Stack size 0 bytes, main.o(i.main))
|
||||
<P><STRONG><a name="[21]"></a>main</STRONG> (Thumb, 96 bytes, Stack size 0 bytes, main.o(i.main))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 188<LI>Call Chain = main ⇒ SystemClock_Config ⇒ HAL_RCC_ClockConfig ⇒ HAL_RCC_GetSysClockFreq ⇒ __aeabi_uidivmod
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[60]">>></a> adb_recv_cmd
|
||||
<BR>[Calls]<UL><LI><a href="#[63]">>></a> adb_recv_cmd
|
||||
<LI><a href="#[5e]">>></a> adb_init
|
||||
<LI><a href="#[2e]">>></a> HAL_Init
|
||||
<LI><a href="#[53]">>></a> HAL_GPIO_WritePin
|
||||
<LI><a href="#[2c]">>></a> HAL_Delay
|
||||
<LI><a href="#[59]">>></a> SystemClock_Config
|
||||
<LI><a href="#[57]">>></a> MX_USART1_UART_Init
|
||||
<LI><a href="#[55]">>></a> MX_TIM2_Init
|
||||
<LI><a href="#[54]">>></a> MX_SPI1_Init
|
||||
<LI><a href="#[52]">>></a> MX_GPIO_Init
|
||||
<LI><a href="#[62]">>></a> delay_us_init
|
||||
<LI><a href="#[67]">>></a> __2printf
|
||||
<LI><a href="#[66]">>></a> __aeabi_memclr4
|
||||
<LI><a href="#[65]">>></a> delay_us_init
|
||||
<LI><a href="#[68]">>></a> __2printf
|
||||
<LI><a href="#[67]">>></a> __aeabi_memclr4
|
||||
</UL>
|
||||
<BR>[Address Reference Count : 1]<UL><LI> entry9a.o(.ARM.Collect$$$$0000000B)
|
||||
</UL>
|
||||
<P><STRONG><a name="[65]"></a>micros</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, delay_us.o(i.micros))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[61]">>></a> look_for_atten
|
||||
<P><STRONG><a name="[69]"></a>micros</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, delay_us.o(i.micros))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[62]">>></a> wait_until_change
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[62]"></a>wait_until_change</STRONG> (Thumb, 62 bytes, Stack size 24 bytes, adb.o(i.wait_until_change))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = wait_until_change
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[61]">>></a> HAL_GPIO_ReadPin
|
||||
<LI><a href="#[69]">>></a> micros
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[64]">>></a> look_for_atten
|
||||
<LI><a href="#[60]">>></a> adb_read_bit
|
||||
<LI><a href="#[63]">>></a> adb_recv_cmd
|
||||
</UL>
|
||||
<P>
|
||||
<H3>
|
||||
|
||||
@@ -64,6 +64,7 @@ Section Cross References
|
||||
main.o(i.main) refers to memseta.o(.text) for __aeabi_memclr4
|
||||
main.o(i.main) refers to adb.o(i.adb_init) for adb_init
|
||||
main.o(i.main) refers to printfb.o(i.__0printf$bare) for __2printf
|
||||
main.o(i.main) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin) for HAL_GPIO_WritePin
|
||||
main.o(i.main) refers to adb.o(i.adb_recv_cmd) for adb_recv_cmd
|
||||
main.o(i.main) refers to stm32f0xx_hal.o(i.HAL_Delay) for HAL_Delay
|
||||
main.o(i.main) refers to main.o(.bss) for .bss
|
||||
@@ -81,13 +82,20 @@ Section Cross References
|
||||
stm32f0xx_hal_msp.o(i.HAL_UART_MspInit) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_Init) for HAL_GPIO_Init
|
||||
adb.o(i.adb_init) refers to adb.o(i.adb_release_lines) for adb_release_lines
|
||||
adb.o(i.adb_init) refers to adb.o(.data) for .data
|
||||
adb.o(i.adb_recv_cmd) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin) for HAL_GPIO_WritePin
|
||||
adb.o(i.adb_read_bit) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_ReadPin) for HAL_GPIO_ReadPin
|
||||
adb.o(i.adb_read_bit) refers to adb.o(i.wait_until_change) for wait_until_change
|
||||
adb.o(i.adb_read_bit) refers to adb.o(.data) for .data
|
||||
adb.o(i.adb_recv_cmd) refers to adb.o(i.look_for_atten) for look_for_atten
|
||||
adb.o(i.adb_recv_cmd) refers to adb.o(i.wait_until_change) for wait_until_change
|
||||
adb.o(i.adb_recv_cmd) refers to adb.o(i.adb_read_bit) for adb_read_bit
|
||||
adb.o(i.adb_release_lines) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin) for HAL_GPIO_WritePin
|
||||
adb.o(i.adb_release_lines) refers to adb.o(.data) for .data
|
||||
adb.o(i.look_for_atten) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_ReadPin) for HAL_GPIO_ReadPin
|
||||
adb.o(i.look_for_atten) refers to delay_us.o(i.micros) for micros
|
||||
adb.o(i.look_for_atten) refers to adb.o(i.wait_until_change) for wait_until_change
|
||||
adb.o(i.look_for_atten) refers to adb.o(.data) for .data
|
||||
adb.o(i.wait_until_change) refers to delay_us.o(i.micros) for micros
|
||||
adb.o(i.wait_until_change) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_ReadPin) for HAL_GPIO_ReadPin
|
||||
adb.o(i.wait_until_change) refers to adb.o(.data) for .data
|
||||
stm32f0xx_hal_spi.o(i.HAL_SPI_Abort) refers to uidiv.o(.text) for __aeabi_uidivmod
|
||||
stm32f0xx_hal_spi.o(i.HAL_SPI_Abort) refers to stm32f0xx_hal_dma.o(i.HAL_DMA_Abort) for HAL_DMA_Abort
|
||||
stm32f0xx_hal_spi.o(i.HAL_SPI_Abort) refers to stm32f0xx_hal.o(i.HAL_GetTick) for HAL_GetTick
|
||||
@@ -1553,41 +1561,41 @@ Image Symbol Table
|
||||
../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 uidiv.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE
|
||||
../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE
|
||||
../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE
|
||||
../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.o ABSOLUTE
|
||||
../clib/microlib/longlong.c 0x00000000 Number 0 llshl.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/malloc.c 0x00000000 Number 0 mallocra.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 malloc.o ABSOLUTE
|
||||
../clib/microlib/malloc/mvars.c 0x00000000 Number 0 mvars.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf4.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 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 printf6.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.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 printf2.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf4.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/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 memcpyb.o ABSOLUTE
|
||||
../clib/microlib/string/memset.c 0x00000000 Number 0 memseta.o ABSOLUTE
|
||||
../clib/microlib/stubs.s 0x00000000 Number 0 iusefp.o ABSOLUTE
|
||||
../fplib/microlib/fpadd.c 0x00000000 Number 0 dadd.o ABSOLUTE
|
||||
@@ -1716,15 +1724,17 @@ Image Symbol Table
|
||||
i._printf_core 0x08001702 Section 0 printfb.o(i._printf_core)
|
||||
_printf_core 0x08001703 Thumb Code 30 printfb.o(i._printf_core)
|
||||
i.adb_init 0x08001720 Section 0 adb.o(i.adb_init)
|
||||
i.adb_recv_cmd 0x08001738 Section 0 adb.o(i.adb_recv_cmd)
|
||||
i.adb_release_lines 0x0800175c Section 0 adb.o(i.adb_release_lines)
|
||||
i.delay_us_init 0x0800177c Section 0 delay_us.o(i.delay_us_init)
|
||||
i.fputc 0x0800178c Section 0 main.o(i.fputc)
|
||||
i.look_for_atten 0x080017a4 Section 0 adb.o(i.look_for_atten)
|
||||
i.main 0x0800180c Section 0 main.o(i.main)
|
||||
i.micros 0x08001870 Section 0 delay_us.o(i.micros)
|
||||
.constdata 0x08001880 Section 16 system_stm32f0xx.o(.constdata)
|
||||
.constdata 0x08001890 Section 8 system_stm32f0xx.o(.constdata)
|
||||
i.adb_read_bit 0x08001738 Section 0 adb.o(i.adb_read_bit)
|
||||
i.adb_recv_cmd 0x08001778 Section 0 adb.o(i.adb_recv_cmd)
|
||||
i.adb_release_lines 0x080017b8 Section 0 adb.o(i.adb_release_lines)
|
||||
i.delay_us_init 0x080017d8 Section 0 delay_us.o(i.delay_us_init)
|
||||
i.fputc 0x080017e8 Section 0 main.o(i.fputc)
|
||||
i.look_for_atten 0x08001800 Section 0 adb.o(i.look_for_atten)
|
||||
i.main 0x08001844 Section 0 main.o(i.main)
|
||||
i.micros 0x080018bc Section 0 delay_us.o(i.micros)
|
||||
i.wait_until_change 0x080018cc Section 0 adb.o(i.wait_until_change)
|
||||
.constdata 0x08001910 Section 16 system_stm32f0xx.o(.constdata)
|
||||
.constdata 0x08001920 Section 8 system_stm32f0xx.o(.constdata)
|
||||
.data 0x20000000 Section 4 delay_us.o(.data)
|
||||
.data 0x20000004 Section 12 adb.o(.data)
|
||||
.data 0x20000010 Section 4 stm32f0xx_hal.o(.data)
|
||||
@@ -1849,17 +1859,19 @@ Image Symbol Table
|
||||
__scatterload_null 0x080016f3 Thumb Code 2 handlers.o(i.__scatterload_null)
|
||||
__scatterload_zeroinit 0x080016f5 Thumb Code 14 handlers.o(i.__scatterload_zeroinit)
|
||||
adb_init 0x08001721 Thumb Code 18 adb.o(i.adb_init)
|
||||
adb_recv_cmd 0x08001739 Thumb Code 34 adb.o(i.adb_recv_cmd)
|
||||
adb_release_lines 0x0800175d Thumb Code 26 adb.o(i.adb_release_lines)
|
||||
delay_us_init 0x0800177d Thumb Code 12 delay_us.o(i.delay_us_init)
|
||||
fputc 0x0800178d Thumb Code 18 main.o(i.fputc)
|
||||
look_for_atten 0x080017a5 Thumb Code 94 adb.o(i.look_for_atten)
|
||||
main 0x0800180d Thumb Code 74 main.o(i.main)
|
||||
micros 0x08001871 Thumb Code 10 delay_us.o(i.micros)
|
||||
AHBPrescTable 0x08001880 Data 16 system_stm32f0xx.o(.constdata)
|
||||
APBPrescTable 0x08001890 Data 8 system_stm32f0xx.o(.constdata)
|
||||
Region$$Table$$Base 0x08001898 Number 0 anon$$obj.o(Region$$Table)
|
||||
Region$$Table$$Limit 0x080018b8 Number 0 anon$$obj.o(Region$$Table)
|
||||
adb_read_bit 0x08001739 Thumb Code 56 adb.o(i.adb_read_bit)
|
||||
adb_recv_cmd 0x08001779 Thumb Code 60 adb.o(i.adb_recv_cmd)
|
||||
adb_release_lines 0x080017b9 Thumb Code 26 adb.o(i.adb_release_lines)
|
||||
delay_us_init 0x080017d9 Thumb Code 12 delay_us.o(i.delay_us_init)
|
||||
fputc 0x080017e9 Thumb Code 18 main.o(i.fputc)
|
||||
look_for_atten 0x08001801 Thumb Code 60 adb.o(i.look_for_atten)
|
||||
main 0x08001845 Thumb Code 96 main.o(i.main)
|
||||
micros 0x080018bd Thumb Code 10 delay_us.o(i.micros)
|
||||
wait_until_change 0x080018cd Thumb Code 62 adb.o(i.wait_until_change)
|
||||
AHBPrescTable 0x08001910 Data 16 system_stm32f0xx.o(.constdata)
|
||||
APBPrescTable 0x08001920 Data 8 system_stm32f0xx.o(.constdata)
|
||||
Region$$Table$$Base 0x08001928 Number 0 anon$$obj.o(Region$$Table)
|
||||
Region$$Table$$Limit 0x08001948 Number 0 anon$$obj.o(Region$$Table)
|
||||
us_timer 0x20000000 Data 4 delay_us.o(.data)
|
||||
adb_psw_pin 0x20000004 Data 2 adb.o(.data)
|
||||
adb_data_pin 0x20000006 Data 2 adb.o(.data)
|
||||
@@ -1882,65 +1894,65 @@ Memory Map of the image
|
||||
|
||||
Image Entry point : 0x080000c1
|
||||
|
||||
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x000018d4, Max: 0x00008000, ABSOLUTE)
|
||||
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00001964, Max: 0x00008000, ABSOLUTE)
|
||||
|
||||
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x000018b8, Max: 0x00008000, ABSOLUTE)
|
||||
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00001948, Max: 0x00008000, ABSOLUTE)
|
||||
|
||||
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
|
||||
|
||||
0x08000000 0x08000000 0x000000c0 Data RO 3 RESET startup_stm32f042x6.o
|
||||
0x080000c0 0x080000c0 0x00000000 Code RO 3498 * .ARM.Collect$$$$00000000 mc_p.l(entry.o)
|
||||
0x080000c0 0x080000c0 0x00000004 Code RO 3799 .ARM.Collect$$$$00000001 mc_p.l(entry2.o)
|
||||
0x080000c4 0x080000c4 0x00000004 Code RO 3802 .ARM.Collect$$$$00000004 mc_p.l(entry5.o)
|
||||
0x080000c8 0x080000c8 0x00000000 Code RO 3804 .ARM.Collect$$$$00000008 mc_p.l(entry7b.o)
|
||||
0x080000c8 0x080000c8 0x00000000 Code RO 3806 .ARM.Collect$$$$0000000A mc_p.l(entry8b.o)
|
||||
0x080000c8 0x080000c8 0x00000008 Code RO 3807 .ARM.Collect$$$$0000000B mc_p.l(entry9a.o)
|
||||
0x080000d0 0x080000d0 0x00000000 Code RO 3809 .ARM.Collect$$$$0000000D mc_p.l(entry10a.o)
|
||||
0x080000d0 0x080000d0 0x00000000 Code RO 3811 .ARM.Collect$$$$0000000F mc_p.l(entry11a.o)
|
||||
0x080000d0 0x080000d0 0x00000004 Code RO 3800 .ARM.Collect$$$$00002712 mc_p.l(entry2.o)
|
||||
0x080000c0 0x080000c0 0x00000000 Code RO 3510 * .ARM.Collect$$$$00000000 mc_p.l(entry.o)
|
||||
0x080000c0 0x080000c0 0x00000004 Code RO 3811 .ARM.Collect$$$$00000001 mc_p.l(entry2.o)
|
||||
0x080000c4 0x080000c4 0x00000004 Code RO 3814 .ARM.Collect$$$$00000004 mc_p.l(entry5.o)
|
||||
0x080000c8 0x080000c8 0x00000000 Code RO 3816 .ARM.Collect$$$$00000008 mc_p.l(entry7b.o)
|
||||
0x080000c8 0x080000c8 0x00000000 Code RO 3818 .ARM.Collect$$$$0000000A mc_p.l(entry8b.o)
|
||||
0x080000c8 0x080000c8 0x00000008 Code RO 3819 .ARM.Collect$$$$0000000B mc_p.l(entry9a.o)
|
||||
0x080000d0 0x080000d0 0x00000000 Code RO 3821 .ARM.Collect$$$$0000000D mc_p.l(entry10a.o)
|
||||
0x080000d0 0x080000d0 0x00000000 Code RO 3823 .ARM.Collect$$$$0000000F mc_p.l(entry11a.o)
|
||||
0x080000d0 0x080000d0 0x00000004 Code RO 3812 .ARM.Collect$$$$00002712 mc_p.l(entry2.o)
|
||||
0x080000d4 0x080000d4 0x00000058 Code RO 4 .text startup_stm32f042x6.o
|
||||
0x0800012c 0x0800012c 0x0000002c Code RO 3501 .text mc_p.l(uidiv.o)
|
||||
0x08000158 0x08000158 0x00000024 Code RO 3507 .text mc_p.l(memseta.o)
|
||||
0x0800017c 0x0800017c 0x00000024 Code RO 3829 .text mc_p.l(init.o)
|
||||
0x080001a0 0x080001a0 0x00000048 Code RO 2955 i.HAL_DMA_Abort_IT stm32f0xx_hal_dma.o
|
||||
0x080001e8 0x080001e8 0x0000001c Code RO 2284 i.HAL_Delay stm32f0xx_hal.o
|
||||
0x08000204 0x08000204 0x0000013c Code RO 2893 i.HAL_GPIO_Init stm32f0xx_hal_gpio.o
|
||||
0x08000340 0x08000340 0x0000000a Code RO 2895 i.HAL_GPIO_ReadPin stm32f0xx_hal_gpio.o
|
||||
0x0800034a 0x0800034a 0x0000000c Code RO 2897 i.HAL_GPIO_WritePin stm32f0xx_hal_gpio.o
|
||||
0x0800012c 0x0800012c 0x0000002c Code RO 3513 .text mc_p.l(uidiv.o)
|
||||
0x08000158 0x08000158 0x00000024 Code RO 3519 .text mc_p.l(memseta.o)
|
||||
0x0800017c 0x0800017c 0x00000024 Code RO 3841 .text mc_p.l(init.o)
|
||||
0x080001a0 0x080001a0 0x00000048 Code RO 2967 i.HAL_DMA_Abort_IT stm32f0xx_hal_dma.o
|
||||
0x080001e8 0x080001e8 0x0000001c Code RO 2296 i.HAL_Delay stm32f0xx_hal.o
|
||||
0x08000204 0x08000204 0x0000013c Code RO 2905 i.HAL_GPIO_Init stm32f0xx_hal_gpio.o
|
||||
0x08000340 0x08000340 0x0000000a Code RO 2907 i.HAL_GPIO_ReadPin stm32f0xx_hal_gpio.o
|
||||
0x0800034a 0x0800034a 0x0000000c Code RO 2909 i.HAL_GPIO_WritePin stm32f0xx_hal_gpio.o
|
||||
0x08000356 0x08000356 0x00000002 PAD
|
||||
0x08000358 0x08000358 0x0000000c Code RO 2288 i.HAL_GetTick stm32f0xx_hal.o
|
||||
0x08000364 0x08000364 0x00000010 Code RO 2292 i.HAL_IncTick stm32f0xx_hal.o
|
||||
0x08000374 0x08000374 0x00000020 Code RO 2293 i.HAL_Init stm32f0xx_hal.o
|
||||
0x08000394 0x08000394 0x00000022 Code RO 2294 i.HAL_InitTick stm32f0xx_hal.o
|
||||
0x08000358 0x08000358 0x0000000c Code RO 2300 i.HAL_GetTick stm32f0xx_hal.o
|
||||
0x08000364 0x08000364 0x00000010 Code RO 2304 i.HAL_IncTick stm32f0xx_hal.o
|
||||
0x08000374 0x08000374 0x00000020 Code RO 2305 i.HAL_Init stm32f0xx_hal.o
|
||||
0x08000394 0x08000394 0x00000022 Code RO 2306 i.HAL_InitTick stm32f0xx_hal.o
|
||||
0x080003b6 0x080003b6 0x00000002 PAD
|
||||
0x080003b8 0x080003b8 0x00000044 Code RO 380 i.HAL_MspInit stm32f0xx_hal_msp.o
|
||||
0x080003fc 0x080003fc 0x00000014 Code RO 3050 i.HAL_NVIC_EnableIRQ stm32f0xx_hal_cortex.o
|
||||
0x08000410 0x08000410 0x00000008 Code RO 3054 i.HAL_NVIC_SetPriority stm32f0xx_hal_cortex.o
|
||||
0x08000418 0x08000418 0x0000010c Code RO 2204 i.HAL_RCCEx_PeriphCLKConfig stm32f0xx_hal_rcc_ex.o
|
||||
0x08000524 0x08000524 0x00000154 Code RO 2102 i.HAL_RCC_ClockConfig stm32f0xx_hal_rcc.o
|
||||
0x08000678 0x08000678 0x0000000c Code RO 2107 i.HAL_RCC_GetHCLKFreq stm32f0xx_hal_rcc.o
|
||||
0x08000684 0x08000684 0x00000020 Code RO 2109 i.HAL_RCC_GetPCLK1Freq stm32f0xx_hal_rcc.o
|
||||
0x080006a4 0x080006a4 0x00000088 Code RO 2110 i.HAL_RCC_GetSysClockFreq stm32f0xx_hal_rcc.o
|
||||
0x0800072c 0x0800072c 0x000003d8 Code RO 2113 i.HAL_RCC_OscConfig stm32f0xx_hal_rcc.o
|
||||
0x08000b04 0x08000b04 0x00000002 Code RO 489 i.HAL_SPI_ErrorCallback stm32f0xx_hal_spi.o
|
||||
0x080003fc 0x080003fc 0x00000014 Code RO 3062 i.HAL_NVIC_EnableIRQ stm32f0xx_hal_cortex.o
|
||||
0x08000410 0x08000410 0x00000008 Code RO 3066 i.HAL_NVIC_SetPriority stm32f0xx_hal_cortex.o
|
||||
0x08000418 0x08000418 0x0000010c Code RO 2216 i.HAL_RCCEx_PeriphCLKConfig stm32f0xx_hal_rcc_ex.o
|
||||
0x08000524 0x08000524 0x00000154 Code RO 2114 i.HAL_RCC_ClockConfig stm32f0xx_hal_rcc.o
|
||||
0x08000678 0x08000678 0x0000000c Code RO 2119 i.HAL_RCC_GetHCLKFreq stm32f0xx_hal_rcc.o
|
||||
0x08000684 0x08000684 0x00000020 Code RO 2121 i.HAL_RCC_GetPCLK1Freq stm32f0xx_hal_rcc.o
|
||||
0x080006a4 0x080006a4 0x00000088 Code RO 2122 i.HAL_RCC_GetSysClockFreq stm32f0xx_hal_rcc.o
|
||||
0x0800072c 0x0800072c 0x000003d8 Code RO 2125 i.HAL_RCC_OscConfig stm32f0xx_hal_rcc.o
|
||||
0x08000b04 0x08000b04 0x00000002 Code RO 501 i.HAL_SPI_ErrorCallback stm32f0xx_hal_spi.o
|
||||
0x08000b06 0x08000b06 0x00000002 PAD
|
||||
0x08000b08 0x08000b08 0x000000d4 Code RO 492 i.HAL_SPI_IRQHandler stm32f0xx_hal_spi.o
|
||||
0x08000bdc 0x08000bdc 0x000000b8 Code RO 493 i.HAL_SPI_Init stm32f0xx_hal_spi.o
|
||||
0x08000b08 0x08000b08 0x000000d4 Code RO 504 i.HAL_SPI_IRQHandler stm32f0xx_hal_spi.o
|
||||
0x08000bdc 0x08000bdc 0x000000b8 Code RO 505 i.HAL_SPI_Init stm32f0xx_hal_spi.o
|
||||
0x08000c94 0x08000c94 0x00000054 Code RO 382 i.HAL_SPI_MspInit stm32f0xx_hal_msp.o
|
||||
0x08000ce8 0x08000ce8 0x00000018 Code RO 3056 i.HAL_SYSTICK_CLKSourceConfig stm32f0xx_hal_cortex.o
|
||||
0x08000d00 0x08000d00 0x00000002 Code RO 3057 i.HAL_SYSTICK_Callback stm32f0xx_hal_cortex.o
|
||||
0x08000ce8 0x08000ce8 0x00000018 Code RO 3068 i.HAL_SYSTICK_CLKSourceConfig stm32f0xx_hal_cortex.o
|
||||
0x08000d00 0x08000d00 0x00000002 Code RO 3069 i.HAL_SYSTICK_Callback stm32f0xx_hal_cortex.o
|
||||
0x08000d02 0x08000d02 0x00000002 PAD
|
||||
0x08000d04 0x08000d04 0x00000030 Code RO 3058 i.HAL_SYSTICK_Config stm32f0xx_hal_cortex.o
|
||||
0x08000d34 0x08000d34 0x00000008 Code RO 3059 i.HAL_SYSTICK_IRQHandler stm32f0xx_hal_cortex.o
|
||||
0x08000d3c 0x08000d3c 0x00000048 Code RO 1483 i.HAL_TIMEx_MasterConfigSynchronization stm32f0xx_hal_tim_ex.o
|
||||
0x08000d84 0x08000d84 0x00000034 Code RO 827 i.HAL_TIM_Base_Init stm32f0xx_hal_tim.o
|
||||
0x08000d04 0x08000d04 0x00000030 Code RO 3070 i.HAL_SYSTICK_Config stm32f0xx_hal_cortex.o
|
||||
0x08000d34 0x08000d34 0x00000008 Code RO 3071 i.HAL_SYSTICK_IRQHandler stm32f0xx_hal_cortex.o
|
||||
0x08000d3c 0x08000d3c 0x00000048 Code RO 1495 i.HAL_TIMEx_MasterConfigSynchronization stm32f0xx_hal_tim_ex.o
|
||||
0x08000d84 0x08000d84 0x00000034 Code RO 839 i.HAL_TIM_Base_Init stm32f0xx_hal_tim.o
|
||||
0x08000db8 0x08000db8 0x00000024 Code RO 384 i.HAL_TIM_Base_MspInit stm32f0xx_hal_msp.o
|
||||
0x08000ddc 0x08000ddc 0x00000018 Code RO 830 i.HAL_TIM_Base_Start stm32f0xx_hal_tim.o
|
||||
0x08000df4 0x08000df4 0x000000ee Code RO 836 i.HAL_TIM_ConfigClockSource stm32f0xx_hal_tim.o
|
||||
0x08000ee2 0x08000ee2 0x0000006c Code RO 1725 i.HAL_UART_Init stm32f0xx_hal_uart.o
|
||||
0x08000ddc 0x08000ddc 0x00000018 Code RO 842 i.HAL_TIM_Base_Start stm32f0xx_hal_tim.o
|
||||
0x08000df4 0x08000df4 0x000000ee Code RO 848 i.HAL_TIM_ConfigClockSource stm32f0xx_hal_tim.o
|
||||
0x08000ee2 0x08000ee2 0x0000006c Code RO 1737 i.HAL_UART_Init stm32f0xx_hal_uart.o
|
||||
0x08000f4e 0x08000f4e 0x00000002 PAD
|
||||
0x08000f50 0x08000f50 0x0000004c Code RO 386 i.HAL_UART_MspInit stm32f0xx_hal_msp.o
|
||||
0x08000f9c 0x08000f9c 0x000000c8 Code RO 1733 i.HAL_UART_Transmit stm32f0xx_hal_uart.o
|
||||
0x08000f9c 0x08000f9c 0x000000c8 Code RO 1745 i.HAL_UART_Transmit stm32f0xx_hal_uart.o
|
||||
0x08001064 0x08001064 0x00000002 Code RO 326 i.HardFault_Handler stm32f0xx_it.o
|
||||
0x08001066 0x08001066 0x00000002 PAD
|
||||
0x08001068 0x08001068 0x000000a4 Code RO 246 i.MX_GPIO_Init main.o
|
||||
@@ -1949,54 +1961,55 @@ Memory Map of the image
|
||||
0x0800119c 0x0800119c 0x00000038 Code RO 249 i.MX_USART1_UART_Init main.o
|
||||
0x080011d4 0x080011d4 0x00000002 Code RO 327 i.NMI_Handler stm32f0xx_it.o
|
||||
0x080011d6 0x080011d6 0x00000002 PAD
|
||||
0x080011d8 0x080011d8 0x00000044 Code RO 3060 i.NVIC_SetPriority stm32f0xx_hal_cortex.o
|
||||
0x080011d8 0x080011d8 0x00000044 Code RO 3072 i.NVIC_SetPriority stm32f0xx_hal_cortex.o
|
||||
0x0800121c 0x0800121c 0x00000002 Code RO 328 i.PendSV_Handler stm32f0xx_it.o
|
||||
0x0800121e 0x0800121e 0x00000002 PAD
|
||||
0x08001220 0x08001220 0x00000010 Code RO 329 i.SPI1_IRQHandler stm32f0xx_it.o
|
||||
0x08001230 0x08001230 0x00000012 Code RO 520 i.SPI_DMAAbortOnError stm32f0xx_hal_spi.o
|
||||
0x08001230 0x08001230 0x00000012 Code RO 532 i.SPI_DMAAbortOnError stm32f0xx_hal_spi.o
|
||||
0x08001242 0x08001242 0x00000002 Code RO 330 i.SVC_Handler stm32f0xx_it.o
|
||||
0x08001244 0x08001244 0x0000000c Code RO 331 i.SysTick_Handler stm32f0xx_it.o
|
||||
0x08001250 0x08001250 0x0000006a Code RO 250 i.SystemClock_Config main.o
|
||||
0x080012ba 0x080012ba 0x00000002 PAD
|
||||
0x080012bc 0x080012bc 0x0000005c Code RO 3467 i.SystemInit system_stm32f0xx.o
|
||||
0x08001318 0x08001318 0x00000084 Code RO 913 i.TIM_Base_SetConfig stm32f0xx_hal_tim.o
|
||||
0x0800139c 0x0800139c 0x00000016 Code RO 920 i.TIM_ETR_SetConfig stm32f0xx_hal_tim.o
|
||||
0x080013b2 0x080013b2 0x00000010 Code RO 921 i.TIM_ITRx_SetConfig stm32f0xx_hal_tim.o
|
||||
0x080013c2 0x080013c2 0x00000022 Code RO 927 i.TIM_TI1_ConfigInputStage stm32f0xx_hal_tim.o
|
||||
0x080013e4 0x080013e4 0x00000026 Code RO 929 i.TIM_TI2_ConfigInputStage stm32f0xx_hal_tim.o
|
||||
0x0800140a 0x0800140a 0x000000ca Code RO 1738 i.UART_AdvFeatureConfig stm32f0xx_hal_uart.o
|
||||
0x080014d4 0x080014d4 0x00000068 Code RO 1739 i.UART_CheckIdleState stm32f0xx_hal_uart.o
|
||||
0x0800153c 0x0800153c 0x00000130 Code RO 1754 i.UART_SetConfig stm32f0xx_hal_uart.o
|
||||
0x0800166c 0x0800166c 0x00000062 Code RO 1756 i.UART_WaitOnFlagUntilTimeout stm32f0xx_hal_uart.o
|
||||
0x080012bc 0x080012bc 0x0000005c Code RO 3479 i.SystemInit system_stm32f0xx.o
|
||||
0x08001318 0x08001318 0x00000084 Code RO 925 i.TIM_Base_SetConfig stm32f0xx_hal_tim.o
|
||||
0x0800139c 0x0800139c 0x00000016 Code RO 932 i.TIM_ETR_SetConfig stm32f0xx_hal_tim.o
|
||||
0x080013b2 0x080013b2 0x00000010 Code RO 933 i.TIM_ITRx_SetConfig stm32f0xx_hal_tim.o
|
||||
0x080013c2 0x080013c2 0x00000022 Code RO 939 i.TIM_TI1_ConfigInputStage stm32f0xx_hal_tim.o
|
||||
0x080013e4 0x080013e4 0x00000026 Code RO 941 i.TIM_TI2_ConfigInputStage stm32f0xx_hal_tim.o
|
||||
0x0800140a 0x0800140a 0x000000ca Code RO 1750 i.UART_AdvFeatureConfig stm32f0xx_hal_uart.o
|
||||
0x080014d4 0x080014d4 0x00000068 Code RO 1751 i.UART_CheckIdleState stm32f0xx_hal_uart.o
|
||||
0x0800153c 0x0800153c 0x00000130 Code RO 1766 i.UART_SetConfig stm32f0xx_hal_uart.o
|
||||
0x0800166c 0x0800166c 0x00000062 Code RO 1768 i.UART_WaitOnFlagUntilTimeout stm32f0xx_hal_uart.o
|
||||
0x080016ce 0x080016ce 0x00000002 PAD
|
||||
0x080016d0 0x080016d0 0x00000014 Code RO 3512 i.__0printf$bare mc_p.l(printfb.o)
|
||||
0x080016e4 0x080016e4 0x0000000e Code RO 3841 i.__scatterload_copy mc_p.l(handlers.o)
|
||||
0x080016f2 0x080016f2 0x00000002 Code RO 3842 i.__scatterload_null mc_p.l(handlers.o)
|
||||
0x080016f4 0x080016f4 0x0000000e Code RO 3843 i.__scatterload_zeroinit mc_p.l(handlers.o)
|
||||
0x08001702 0x08001702 0x0000001e Code RO 3519 i._printf_core mc_p.l(printfb.o)
|
||||
0x080016d0 0x080016d0 0x00000014 Code RO 3524 i.__0printf$bare mc_p.l(printfb.o)
|
||||
0x080016e4 0x080016e4 0x0000000e Code RO 3853 i.__scatterload_copy mc_p.l(handlers.o)
|
||||
0x080016f2 0x080016f2 0x00000002 Code RO 3854 i.__scatterload_null mc_p.l(handlers.o)
|
||||
0x080016f4 0x080016f4 0x0000000e Code RO 3855 i.__scatterload_zeroinit mc_p.l(handlers.o)
|
||||
0x08001702 0x08001702 0x0000001e Code RO 3531 i._printf_core mc_p.l(printfb.o)
|
||||
0x08001720 0x08001720 0x00000018 Code RO 436 i.adb_init adb.o
|
||||
0x08001738 0x08001738 0x00000022 Code RO 437 i.adb_recv_cmd adb.o
|
||||
0x0800175a 0x0800175a 0x00000002 PAD
|
||||
0x0800175c 0x0800175c 0x00000020 Code RO 438 i.adb_release_lines adb.o
|
||||
0x0800177c 0x0800177c 0x00000010 Code RO 13 i.delay_us_init delay_us.o
|
||||
0x0800178c 0x0800178c 0x00000018 Code RO 253 i.fputc main.o
|
||||
0x080017a4 0x080017a4 0x00000068 Code RO 440 i.look_for_atten adb.o
|
||||
0x0800180c 0x0800180c 0x00000064 Code RO 254 i.main main.o
|
||||
0x08001870 0x08001870 0x00000010 Code RO 14 i.micros delay_us.o
|
||||
0x08001880 0x08001880 0x00000010 Data RO 3468 .constdata system_stm32f0xx.o
|
||||
0x08001890 0x08001890 0x00000008 Data RO 3469 .constdata system_stm32f0xx.o
|
||||
0x08001898 0x08001898 0x00000020 Data RO 3839 Region$$Table anon$$obj.o
|
||||
0x08001738 0x08001738 0x00000040 Code RO 437 i.adb_read_bit adb.o
|
||||
0x08001778 0x08001778 0x00000040 Code RO 438 i.adb_recv_cmd adb.o
|
||||
0x080017b8 0x080017b8 0x00000020 Code RO 439 i.adb_release_lines adb.o
|
||||
0x080017d8 0x080017d8 0x00000010 Code RO 13 i.delay_us_init delay_us.o
|
||||
0x080017e8 0x080017e8 0x00000018 Code RO 253 i.fputc main.o
|
||||
0x08001800 0x08001800 0x00000044 Code RO 441 i.look_for_atten adb.o
|
||||
0x08001844 0x08001844 0x00000078 Code RO 254 i.main main.o
|
||||
0x080018bc 0x080018bc 0x00000010 Code RO 14 i.micros delay_us.o
|
||||
0x080018cc 0x080018cc 0x00000044 Code RO 442 i.wait_until_change adb.o
|
||||
0x08001910 0x08001910 0x00000010 Data RO 3480 .constdata system_stm32f0xx.o
|
||||
0x08001920 0x08001920 0x00000008 Data RO 3481 .constdata system_stm32f0xx.o
|
||||
0x08001928 0x08001928 0x00000020 Data RO 3851 Region$$Table anon$$obj.o
|
||||
|
||||
|
||||
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x080018b8, Size: 0x00000550, Max: 0x00001800, ABSOLUTE)
|
||||
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08001948, Size: 0x00000550, Max: 0x00001800, ABSOLUTE)
|
||||
|
||||
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
|
||||
|
||||
0x20000000 0x080018b8 0x00000004 Data RW 15 .data delay_us.o
|
||||
0x20000004 0x080018bc 0x0000000c Data RW 441 .data adb.o
|
||||
0x20000010 0x080018c8 0x00000004 Data RW 2299 .data stm32f0xx_hal.o
|
||||
0x20000014 0x080018cc 0x00000004 Data RW 3470 .data system_stm32f0xx.o
|
||||
0x20000018 0x080018d0 0x00000004 Data RW 3813 .data mc_p.l(stdout.o)
|
||||
0x20000000 0x08001948 0x00000004 Data RW 15 .data delay_us.o
|
||||
0x20000004 0x0800194c 0x0000000c Data RW 443 .data adb.o
|
||||
0x20000010 0x08001958 0x00000004 Data RW 2311 .data stm32f0xx_hal.o
|
||||
0x20000014 0x0800195c 0x00000004 Data RW 3482 .data system_stm32f0xx.o
|
||||
0x20000018 0x08001960 0x00000004 Data RW 3825 .data mc_p.l(stdout.o)
|
||||
0x2000001c - 0x00000134 Zero RW 255 .bss main.o
|
||||
0x20000150 - 0x00000400 Zero RW 1 STACK startup_stm32f042x6.o
|
||||
|
||||
@@ -2008,9 +2021,9 @@ Image component sizes
|
||||
|
||||
Code (inc. data) RO Data RW Data ZI Data Debug Object Name
|
||||
|
||||
194 22 0 12 0 3551 adb.o
|
||||
320 38 0 12 0 5094 adb.o
|
||||
32 10 0 4 0 463068 delay_us.o
|
||||
594 66 0 0 308 4893 main.o
|
||||
614 64 0 0 308 4901 main.o
|
||||
88 38 192 0 1024 648 startup_stm32f042x6.o
|
||||
122 18 0 4 0 3623 stm32f0xx_hal.o
|
||||
178 28 0 0 0 10527 stm32f0xx_hal_cortex.o
|
||||
@@ -2027,9 +2040,9 @@ Image component sizes
|
||||
92 14 24 4 0 1143 system_stm32f0xx.o
|
||||
|
||||
----------------------------------------------------------------------
|
||||
5864 424 248 24 1332 520282 Object Totals
|
||||
6008 438 248 24 1332 521833 Object Totals
|
||||
0 0 32 0 0 0 (incl. Generated)
|
||||
22 0 0 0 0 0 (incl. Padding)
|
||||
20 0 0 0 0 0 (incl. Padding)
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
@@ -2070,15 +2083,15 @@ Image component sizes
|
||||
|
||||
Code (inc. data) RO Data RW Data ZI Data Debug
|
||||
|
||||
6080 448 248 28 1332 518046 Grand Totals
|
||||
6080 448 248 28 1332 518046 ELF Image Totals
|
||||
6080 448 248 28 0 0 ROM Totals
|
||||
6224 462 248 28 1332 519509 Grand Totals
|
||||
6224 462 248 28 1332 519509 ELF Image Totals
|
||||
6224 462 248 28 0 0 ROM Totals
|
||||
|
||||
==============================================================================
|
||||
|
||||
Total RO Size (Code + RO Data) 6328 ( 6.18kB)
|
||||
Total RO Size (Code + RO Data) 6472 ( 6.32kB)
|
||||
Total RW Size (RW Data + ZI Data) 1360 ( 1.33kB)
|
||||
Total ROM Size (Code + RO Data + RW Data) 6356 ( 6.21kB)
|
||||
Total ROM Size (Code + RO Data + RW Data) 6500 ( 6.35kB)
|
||||
|
||||
==============================================================================
|
||||
|
||||
|
||||
@@ -75,7 +75,7 @@ I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_tim_ex.h)(0x5DFA0893)
|
||||
I (../Inc/helpers.h)(0x617D5578)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal.h)(0x5DFA0893)
|
||||
I (../Inc/stm32f0xx_hal_conf.h)(0x61936D26)
|
||||
I (../Inc/main.h)(0x61936D27)
|
||||
I (../Inc/main.h)(0x61936D27)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_rcc.h)(0x5DFA0893)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_def.h)(0x5DFA0893)
|
||||
I (../Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f0xx.h)(0x5DFA0880)
|
||||
@@ -112,7 +112,7 @@ I (C:\Keil_v5\ARM\ARMCC\include\string.h)(0x5D9B4298)
|
||||
-IC:\Users\allen\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include
|
||||
|
||||
-IC:\Users\allen\AppData\Local\Arm\Packs\Keil\STM32F0xx_DFP\2.0.0\Drivers\CMSIS\Device\ST\STM32F0xx\Include
|
||||
|
||||
|
||||
-D__UVISION_VERSION="529" -D_RTE_ -DSTM32F042x6 -DUSE_HAL_DRIVER -DSTM32F042x6
|
||||
|
||||
-o spitestf042\main.o --omf_browse spitestf042\main.crf --depend spitestf042\main.d)
|
||||
@@ -180,7 +180,7 @@ I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_tim.h)(0x5DFA0893)
|
||||
I (C:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x5D9B429A)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_rcc_ex.h)(0x5DFA0893)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_gpio.h)(0x5DFA0893)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_gpio_ex.h)(0x5DFA0893)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_gpio_ex.h)(0x5DFA0893)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_dma.h)(0x5DFA0893)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_dma_ex.h)(0x5DFA0893)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_cortex.h)(0x5DFA0893)
|
||||
@@ -217,9 +217,9 @@ I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_tim_ex.h)(0x5DFA0893)
|
||||
I (../Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f042x6.h)(0x5DFA0880)
|
||||
I (../Drivers/CMSIS/Include/core_cm0.h)(0x5DFA0892)
|
||||
I (C:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x5D9B4298)
|
||||
I (../Drivers/CMSIS/Include/core_cmInstr.h)(0x5DFA0892)
|
||||
I (../Drivers/CMSIS/Include/core_cmInstr.h)(0x5DFA0892)
|
||||
I (../Drivers/CMSIS/Include/cmsis_armcc.h)(0x5DFA0892)
|
||||
I (../Drivers/CMSIS/Include/core_cmFunc.h)(0x5DFA0892)
|
||||
I (../Drivers/CMSIS/Include/core_cmFunc.h)(0x5DFA0892)
|
||||
I (../Drivers/CMSIS/Device/ST/STM32F0xx/Include/system_stm32f0xx.h)(0x5DFA0880)
|
||||
I (C:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x5D9B429A)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_rcc_ex.h)(0x5DFA0893)
|
||||
|
||||
@@ -22,6 +22,8 @@ uint16_t adb_data_pin;
|
||||
#define ADB_READ_DATA_PIN() HAL_GPIO_ReadPin(adb_data_port, adb_data_pin)
|
||||
#define ADB_READ_CLK_PIN() HAL_GPIO_ReadPin(adb_psw_port, adb_psw_pin)
|
||||
|
||||
#define ADB_DEFAULT_TIMEOUT_US 10000
|
||||
|
||||
void adb_release_lines(void)
|
||||
{
|
||||
ADB_PSW_HI();
|
||||
@@ -43,49 +45,75 @@ void adb_init(GPIO_TypeDef* data_port, uint16_t data_pin, GPIO_TypeDef* psw_port
|
||||
adb_release_lines();
|
||||
}
|
||||
|
||||
#define ADB_LINE_STATUS_ATTEN 0
|
||||
#define ADB_LINE_STATUS_IDLE 1
|
||||
#define ADB_LINE_STATUS_RESET 2
|
||||
#define ADB_LINE_STATUS_IN_PROGRESS 3
|
||||
#define ADB_LINE_STATUS_ATTEN 1
|
||||
#define ADB_LINE_STATUS_IDLE 2
|
||||
#define ADB_LINE_STATUS_RESET 3
|
||||
#define ADB_LINE_STATUS_BUSY 4
|
||||
|
||||
void wait_until_line_low(void)
|
||||
#define ADB_OK 0
|
||||
#define ADB_TIMEOUT -1
|
||||
#define ADB_LINE_STATUS_ERROR -2
|
||||
#define ADB_ERROR ADB_LINE_STATUS_ERROR
|
||||
|
||||
|
||||
int32_t wait_until_change(int32_t timeout_us)
|
||||
{
|
||||
|
||||
uint32_t start_time = micros();
|
||||
uint8_t start_state = ADB_READ_DATA_PIN();
|
||||
uint32_t duration;
|
||||
while(ADB_READ_DATA_PIN() == start_state)
|
||||
{
|
||||
duration = micros() - start_time;
|
||||
if(timeout_us != 0 && duration > timeout_us)
|
||||
return ADB_TIMEOUT;
|
||||
}
|
||||
return duration;
|
||||
}
|
||||
|
||||
uint8_t look_for_atten(uint8_t blocking)
|
||||
int8_t look_for_atten(void)
|
||||
{
|
||||
// if ADB data line is high
|
||||
while(ADB_READ_DATA_PIN() == GPIO_PIN_SET)
|
||||
{
|
||||
if(blocking == 0)
|
||||
return ADB_LINE_STATUS_IDLE;
|
||||
}
|
||||
if(ADB_READ_DATA_PIN() == GPIO_PIN_SET)
|
||||
wait_until_change(0);
|
||||
|
||||
// now data line is low
|
||||
uint32_t atten_start = micros();
|
||||
|
||||
while(ADB_READ_DATA_PIN() == GPIO_PIN_RESET)
|
||||
{
|
||||
// reset condition
|
||||
if(micros() - atten_start > 3000)
|
||||
return ADB_LINE_STATUS_RESET;
|
||||
}
|
||||
|
||||
uint32_t duration = micros() - atten_start;
|
||||
|
||||
// not an attention signal
|
||||
if(duration < 700)
|
||||
return ADB_LINE_STATUS_IN_PROGRESS;
|
||||
if(duration > 2000)
|
||||
int32_t atten_duration = wait_until_change(ADB_DEFAULT_TIMEOUT_US);
|
||||
if(atten_duration > 2000 || atten_duration == ADB_TIMEOUT)
|
||||
return ADB_LINE_STATUS_RESET;
|
||||
if(atten_duration < 600)
|
||||
return ADB_LINE_STATUS_BUSY; // not an attention signal
|
||||
return ADB_LINE_STATUS_ATTEN;
|
||||
}
|
||||
|
||||
void adb_recv_cmd(void)
|
||||
uint8_t adb_read_bit(void)
|
||||
{
|
||||
if(ADB_READ_DATA_PIN() != GPIO_PIN_RESET)
|
||||
return ADB_ERROR;
|
||||
int32_t lo_time = wait_until_change(ADB_DEFAULT_TIMEOUT_US);
|
||||
int32_t hi_time = wait_until_change(ADB_DEFAULT_TIMEOUT_US);
|
||||
if(lo_time == ADB_TIMEOUT || hi_time == ADB_TIMEOUT)
|
||||
return ADB_ERROR;
|
||||
return hi_time > lo_time;
|
||||
}
|
||||
|
||||
HAL_GPIO_WritePin(DEBUG0_GPIO_Port, DEBUG0_Pin, GPIO_PIN_SET);
|
||||
uint8_t result = look_for_atten(1);
|
||||
HAL_GPIO_WritePin(DEBUG0_GPIO_Port, DEBUG0_Pin, GPIO_PIN_RESET);
|
||||
// printf("%d\n", result);
|
||||
uint8_t adb_recv_cmd(uint8_t srq)
|
||||
{
|
||||
int8_t atten_result = look_for_atten();
|
||||
if(atten_result != ADB_LINE_STATUS_ATTEN)
|
||||
return atten_result;
|
||||
int32_t sync_duration = wait_until_change(ADB_DEFAULT_TIMEOUT_US);
|
||||
if(sync_duration > 90 || sync_duration < 50)
|
||||
return ADB_ERROR;
|
||||
|
||||
for (int i = 0; i < 8; ++i)
|
||||
{
|
||||
uint8_t this_bit = adb_read_bit();
|
||||
if(this_bit == ADB_ERROR)
|
||||
return ADB_ERROR;
|
||||
}
|
||||
|
||||
if(srq == 0)
|
||||
wait_until_change(ADB_DEFAULT_TIMEOUT_US);
|
||||
|
||||
return ADB_OK;
|
||||
}
|
||||
@@ -175,10 +175,11 @@ int main(void)
|
||||
/* USER CODE END WHILE */
|
||||
|
||||
/* USER CODE BEGIN 3 */
|
||||
HAL_GPIO_WritePin(DEBUG0_GPIO_Port, DEBUG0_Pin, GPIO_PIN_SET);
|
||||
|
||||
adb_recv_cmd();
|
||||
adb_recv_cmd();
|
||||
HAL_Delay(50);
|
||||
adb_recv_cmd(0); HAL_GPIO_WritePin(DEBUG0_GPIO_Port, DEBUG0_Pin, GPIO_PIN_RESET);
|
||||
|
||||
HAL_Delay(6);
|
||||
}
|
||||
/* USER CODE END 3 */
|
||||
|
||||
|
||||
@@ -1,2 +1,22 @@
|
||||
if(micros() - atten_start < 700)
|
||||
printf("%d\n", micros() - atten_start);
|
||||
printf("%d\n", micros() - atten_start);
|
||||
|
||||
void adb_recv_cmd(void)
|
||||
{
|
||||
HAL_GPIO_WritePin(DEBUG0_GPIO_Port, DEBUG0_Pin, GPIO_PIN_SET);
|
||||
uint8_t result = look_for_atten(1);
|
||||
HAL_GPIO_WritePin(DEBUG0_GPIO_Port, DEBUG0_Pin, GPIO_PIN_RESET);
|
||||
// printf("%d\n", result);
|
||||
|
||||
uint8_t atten_result = look_for_atten(1);
|
||||
|
||||
if(atten_result != )
|
||||
}
|
||||
|
||||
// if ADB data line is high
|
||||
while(ADB_READ_DATA_PIN() == GPIO_PIN_SET)
|
||||
{
|
||||
if(blocking == 0)
|
||||
return ADB_LINE_STATUS_IDLE;
|
||||
}
|
||||
printf("%d %d\n", lo_time, hi_time);
|
||||
|
||||
Reference in New Issue
Block a user