From e6762dc2b1e077901a20ed78e396d38fd83bd856 Mon Sep 17 00:00:00 2001 From: gehadelkoumy Date: Thu, 6 Jul 2023 18:47:20 +0300 Subject: [PATCH] added ADC part - fixes #14 --- .../All_cubeIDE/Debug/All_cubeIDE.bin | Bin 11716 -> 13800 bytes .../All_cubeIDE/Debug/All_cubeIDE.elf | Bin 215916 -> 218120 bytes .../All_cubeIDE/Debug/All_cubeIDE.hex | 1300 +-- .../All_cubeIDE/Debug/All_cubeIDE.list | 8139 +++++++++-------- .../All_cubeIDE/Debug/All_cubeIDE.map | 813 +- .../All_cubeIDE/Debug/Src/main.cyclo | 15 +- .../All_cubeIDE/Debug/Src/main.o | Bin 61316 -> 75732 bytes .../All_cubeIDE/Debug/Src/main.su | 15 +- .../All_cubeIDE/Src/UART2/USART_program.c | 2 +- embedded-c-system-code/All_cubeIDE/Src/main.c | 94 +- 10 files changed, 5687 insertions(+), 4691 deletions(-) diff --git a/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.bin b/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.bin index 50b3aa62bd847c9700fc51d57e9f2d3f269fd1eb..1d3e2880341888a9ff9955534b2b06e1dc7e8f39 100755 GIT binary patch delta 5787 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 F{{fb{KfnM0 delta 3814 zcmZ`*4^ULc8Q*tz#p47#A_yLW_eTiy5D~OWu?d2CiU);SO;prUYZ4kK2657eHo4QZ z8Eo1Z^CmXcSWQjSH2tH9#I%Iaq)rE0Nu}1-QE8cs30@m#&ID)Q@!sz1_w9T9OU=#f z?zi8!``h35XZPKWt!Ep;q@H-cpF^CN?$F3*exqwpjq-6K%c8Sl4>42N_z61;ybeXT(CE$lJ}!&v(?$Tq`NJJavhGhb8VoGI*h*I;&I4-OGv3 z<~8V3Jk=+`xQi$HZ9W3h;Sq=5E~JA>Ap14tcJ`COB4(FuE2jf)q?`0y!_zv+376RE zon*VL9LZU_{!QkPlVz=S*~*I>ipw))PJhE9@;-TKC~N2X9If@D2X)7pO`a+PWAc@1 z63f?cRv}k|g>aO;askN8bd=rlOxd8Xs>-kR{oapM1i2*^-82Lkj7!@icEi93p? z-#R_baiy!xe*5%}!>76;s3XCoYZ%BS9Q&)x34M$1g8nf*anPW|u*yCWo^LFNK@SNcA6TxAa;d!Tnj)AVWDCqkN~ zy8H=3$^f02(YsWK-zjv-ASDXP36fdbc95n5E)P>~5P$)Z#tq_g!uX0I`CKp_F`T|I zc=X4(%l8zFJ#m9J#Bq&5x59`~csS1K-LM|_l^YqL`L31^eXC~Bo6u@?gT4zbn>_{y zFT;)U$d86R&0C?MTZ0v`@GnFFkLegjO@AoVuyby(rXMMx<{5RgLieb)fVO?n;5S5a zIDJ+#FXFnfo3dBKi+KN}i?~zV0lbK-;HEHj{H9zI7H?SG#F^p>;Z*_ep@a^dl0%+| z)+&{1+baQZr1encdlw<+{N*9ZqE@C#R;U-KQlJZ{m08s85!AX`OUI}!6x50*UE-i1 z5Jql=!0qG&ZfzzvLG65e^pW6nwV*Z|sC5CguI;k`@b`k6$12(Vyk;mJw2ua}`Z0dD zHSFtkw}`8=-=OcaR7k|HbnIW(7gh~HZg?_Gex@fue^f6V!YzwLLjIxU!UdY2Nu0IN zMqdxCWd?SKq)=v4^K!TpFmLW8c}ca& zHCwV?b-z}b*iT}dD>Zp@!fRpEXxjkt+^AZWCTGi-SQ6W;`sD<9njEy=&nDK}1%(nY zU)Fi-t#+K5k6%6``AhpzCb4p!-!X2l;pdGt z$1g@n0PCI8rSa8bhJi3$T?{YiUin!uTOH!GSX4~SEB#R-F}mIGL%=xA62pPg=hA}l>A@Dg(659Gwd7aGYR}Cms7nUN@K&Kg%4Gd5{9L?xG2HFsg(Zz=1 z4i>KT8LQ+5IQfz~5VZxyPwN}2bVgGJ1lsE17*2asgr6$gARQHQU(|LVqXt)=3C@AA zOxKj(25UfQRTUmwU3`#V0oPW+vJ`0`>I7%^i?1v3o~h>a+k$>y)D5;2iPJ@@vbV4( z%xR7|AC-(Ya@ZIcjU}UN1psnkbQQ0ZL%=CPtT$a=0qflXMs;H#nh@xNL-EmIbl7Me z%MqhDjh$k~XbH#YGkV>4+|-0=fu*`??64MjEzRGIW=oS{Y0eqjEKLe%#%rI^w+)Q9 zN$O1lg9d~oB+RJF&?!dW5NT#K#wx|$5QH>b4GVq>PyRz8tQkf>V3poy_R?kZl4tRl;SpMH=af>QK{AkT!|TF_YD+@0t*d zC!oG;6YBAdZp958Y1dn3#Zm zU0}+~_$C31+p%;vSjRoCn_(*8>n+VTOXKAaSekEHnhb6}R*Y`2G$|9Ph3m(-nOq4c zevC+6EK+5Xx>pdy2r-%kuLF`Pw`wwKFqN4#b5zGdsue_g9j-;T^K zxUvc!_%-nXC<=peW#jzpS)2w{vN*Fx@_zlg=~!Gt40z>L<>35xzFf=9;1vMu0WARt z6vMmLeIvGq6r^19#YoMD|4f-Od|_!ju4D8`@wvt%bUat$mZW3K(b8Poi@Nfs(zSU_ zdP&G3AFWK5r(FqJ!P=xJ3|4$%v>dE-_1gg8*od-h!KE4V2}yPlvZI8Mc`fs{;kN>Q V%JPL}4hMWSl>-YOP>wB3{2%sVS(5+& diff --git a/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.elf b/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.elf index 9ae6dddd7e7ce02eb0d2ad3633043771971063cb..af71bd64db64c32415f2e3acbdfa3fcba002153a 100755 GIT binary patch delta 20458 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 diff --git a/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.hex b/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.hex index 1cdb039..9abee62 100644 --- a/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.hex +++ b/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.hex @@ -1,27 +1,27 @@ :020000040800F2 -:1000000000500020851E0008D51E0008D51E0008DF -:10001000D51E0008D51E0008D51E000800000000EF -:10002000000000000000000000000000D51E0008D5 -:10003000D51E000800000000D51E0008E5140008C9 -:10004000D51E0008D51E0008D51E0008D51E0008C4 -:10005000D51E0008D51E000815100008391000082C -:100060005D10000881100008A5100008D51E0008CA -:10007000D51E0008D51E0008D51E0008D51E000894 -:10008000D51E0008D51E0008D51E0008D51E000884 -:10009000D51E0008D51E0008D51E0008C91000088E -:1000A000D51E0008D51E0008D51E0008D51E000864 -:1000B000D51E0008D51E0008D51E0008D51E000854 -:1000C000D51E0008D51E0008D51E0008D51E000844 -:1000D000D51E0008D51E0008D51E0008D51E000834 -:1000E0009D110008D51E000800000000D51E000864 -:1000F000D51E0008D51E0008D51E0008D51E000814 -:10010000D51E0008D51E0008D51E0008D51E000803 -:10011000D51E0008D51E0008D51E0008D51E0008F3 -:10012000D51E0008D51E0008D51E0008D51E0008E3 +:1000000000500020D92500082926000829260008CC +:1000100029260008292600082926000800000000DB +:100020000000000000000000000000002926000879 +:10003000292600080000000029260008F11A0008FF +:100040002926000829260008292600082926000854 +:100050002926000829260008D5150008F9150008EA +:100060001D1600084116000865160008292600081C +:100070002926000829260008292600082926000824 +:100080002926000829260008292600082926000814 +:1000900029260008292600082926000889160008B4 +:1000A00029260008292600082926000829260008F4 +:1000B00029260008292600082926000829260008E4 +:1000C00029260008292600082926000829260008D4 +:1000D00029260008292600082926000829260008C4 +:1000E0005D170008292600080000000029260008E6 +:1000F00029260008292600082926000829260008A4 +:100100002926000829260008292600082926000893 +:100110002926000829260008292600082926000883 +:100120002926000829260008292600082926000873 :1001300010B5054C237833B9044B13B10448AFF321 -:1001400000800123237010BD640000200000000027 -:10015000F42C000808B5034B1BB103490348AFF367 -:10016000008008BD0000000068000020F42C00089A +:1001400000800123237010BD680000200000000023 +:10015000FC34000808B5034B1BB103490348AFF357 +:10016000008008BD000000006C000020FC34000886 :1001700081F0004102E000BF83F0004330B54FEA58 :1001800041044FEA430594EA050F08BF90EA020FC5 :100190001FBF54EA000C55EA020C7FEA645C7FEA58 @@ -172,567 +172,697 @@ :100AA00011D20DD56FF47873B3EB62520ED44FEAC6 :100AB000C12343F0004343EA505323FA02F0704746 :100AC0004FF00000704750EA013002D14FF0FF3084 -:100AD00070474FF00000704780B400AF094B5B686F -:100AE000084A43F480735360064B064ADB6AD362BC -:100AF000044B9B68034A43F00203936000BFBD466A -:100B000080BC70470024014080B582B000AF03462E -:100B10000A46FB711346BB711F4B1969FA791346DC -:100B20005B001344072202FA03F31B4A0B431361D1 -:100B3000194B596BF879BB795A1E13469B00134425 -:100B400000FA03F3144A0B435363134B9B68124A96 -:100B500043F0010393604FF47A7000F09BFC0E4B5E -:100B60009B680D4A43F0010393604FF47A7000F0E4 -:100B700091FC094B9B68084A43F00403936000BF53 -:100B8000054B9B689B0803F00103012BF8D000BFC5 -:100B900000BF0837BD4680BD0024014080B485B049 -:100BA00000AF03460A46FB711346BB710023FB737B -:100BB000FB79032B02D80023FB7319E0FB79072B89 -:100BC00005D80123FB73FB79043BFB7110E0FB7933 -:100BD0000B2B05D80223FB73FB79083BFB7107E065 -:100BE000FB790F2B04D80323FB73FB790C3BFB71C0 -:100BF000134AFB7B023352F82320FB799B000F2121 -:100C000001FA03F3DB4318460D49FB7B0240023334 -:100C100041F823200A4AFB7B023352F82320B9799A -:100C2000FB799B0001FA03F318460549FB7B02435D -:100C3000023341F8232000BF1437BD4680BC704703 -:100C40000000014080B483B000AF0346FB710B4647 -:100C5000BB7113467B71FB79022B7AD0022B00F318 -:100C6000B680002B02D0012B3AD0B0E0BB79072B25 -:100C700017D8594B1B68BA7992000F2101FA02F27A -:100C8000D2431146544A0B401360534B1B68797989 -:100C9000BA79920001FA02F211464F4A0B431360EF -:100CA00090E0BB790F2B00F28D80BB79083BBB71C4 -:100CB0004A4B1B68BA7992000F2101FA02F2D24323 -:100CC0001146464A0B401360444B1B687979BA7948 -:100CD000920001FA02F21146404A0B43136071E0A0 -:100CE000BB79072B17D83E4B1B68BA7992000F21AE -:100CF00001FA02F2D2431146394A0B401360384BD5 -:100D00001B687979BA79920001FA02F21146344AE5 -:100D10000B43136058E0BB790F2B55D8BB79083BC8 -:100D2000BB71304B1B68BA7992000F2101FA02F2B5 -:100D3000D24311462B4A0B4013602A4B1B6879792A -:100D4000BA79920001FA02F21146264A0B43136067 -:100D50003AE0BB79072B17D8234B1B68BA7992006E -:100D60000F2101FA02F2D24311461F4A0B401360D1 -:100D70001D4B1B687979BA79920001FA02F211468B -:100D8000194A0B43136021E0BB790F2B1ED8BB79A6 -:100D9000083BBB71154B1B68BA7992000F2101FA11 -:100DA00002F2D2431146114A0B4013600F4B1B68ED -:100DB0007979BA79920001FA02F211460B4A0B4393 -:100DC000136003E000BF02E000BF00E000BF00BF0F -:100DD0000C37BD4680BC7047000801400408014044 -:100DE000000C0140040C01400010014004100140BF -:100DF00080B483B000AF0346FB710B46BB71134652 -:100E00007B71FB79022B2AD0022B3FDC002B02D016 -:100E1000012B12D03AE07B79012B05D1BB7901225D -:100E20009A401D4B1A602CE07B79002B29D1BB79AD -:100E300001229A40194B1A6023E07B79012B05D1DE -:100E4000BB7901229A40164B1A601CE07B79002B7B -:100E500019D1BB7901229A40124B1A6013E07B79B9 -:100E6000012B05D1BB7901229A400F4B1A600CE08F -:100E70007B79002B09D1BB7901229A400B4B1A6078 -:100E800003E000BF02E000BF00E000BF00BF0C377E -:100E9000BD4680BC704700BF1008014014080140E7 -:100EA000100C0140140C01401010014014100140BE -:100EB00080B485B000AF03460A46FB711346BB7190 -:100EC0000023FB73FB79022B1AD0022B22DC002BB0 -:100ED00002D0012B0AD01DE0114B1A68BB7922FA0F -:100EE00003F3DBB203F00103FB7313E00D4B1A684D -:100EF000BB7922FA03F3DBB203F00103FB7309E0D1 -:100F0000094B1A68BB7922FA03F3DBB203F0010341 -:100F1000FB7300BFFB7B18461437BD4680BC70478F -:100F200008080140080C01400810014080B400AFDF -:100F3000074B9B68064A43F001039360044B1B6810 -:100F4000034A23F00103136000BFBD4680BC704715 -:100F50000004014080B483B000AF03460A46FB7131 -:100F60001346BB71BB79022B1CD0022B2FDC002B4C -:100F700002D0012B0BD02AE01C4B9B68FA7901218F -:100F800001FA02F21146194A0B4393601FE0174B16 -:100F9000DB68FA79012101FA02F21146134A0B4388 -:100FA000D36014E0114B9B68FA79012101FA02F237 -:100FB00011460E4A0B4393600C4BDB68FA79012112 -:100FC00001FA02F21146094A0B43D36000BF074BF6 -:100FD0001B68FA79012101FA02F21146034A0B4318 -:100FE000136000BF0C37BD4680BC70470004014051 -:100FF00080B483B000AF78600B46FB70FB78044987 -:101000007A6841F8232000BF0C37BD4680BC70478A -:101010008000002080B500AF054B1B689847054B4A -:101020005B69044A43F00103536100BF80BD00BF08 -:10103000800000200004014080B500AF054B5B68D4 -:101040009847054B5B69044A43F00203536100BFB4 -:1010500080BD00BF800000200004014080B500AFCB -:10106000054B9B689847054B5B69044A43F00403B2 -:10107000536100BF80BD00BF80000020000401401C -:1010800080B500AF054BDB689847054B5B69044AA8 -:1010900043F00803536100BF80BD00BF8000002003 -:1010A0000004014080B500AF054B1B699847054B14 -:1010B0005B69044A43F01003536100BF80BD00BF69 -:1010C000800000200004014080B582B000AF314BA9 -:1010D0005B695B09DBB203F00103FB712D4B5B69BC -:1010E0009B09DBB203F00103BB712A4B5B69DB098F -:1010F000DBB203F001037B71264B5B691B0ADBB299 -:1011000003F001033B71234B5B695B0ADBB203F025 -:101110000103FB70FB79012B08D11F4B5B699847DA -:101120001C4B5B691B4A43F020035361BB79012BC5 -:1011300008D1194B9B699847164B5B69154A43F0D8 -:10114000400353617B79012B08D1134BDB6998472E -:10115000104B5B690F4A43F0800353613B79012BCD -:1011600008D10D4B1B6A98470A4B5B69094A43F447 -:1011700080735361FB78012B08D1074B5B6A98475A -:10118000044B5B69034A43F40073536100BF0837A3 -:10119000BD4680BD000401408000002080B582B0C3 -:1011A00000AF3B4B5B699B0ADBB203F00103FB71B1 -:1011B000374B5B69DB0ADBB203F00103BB71344BD5 -:1011C0005B691B0BDBB203F001037B71304B5B6986 -:1011D0005B0BDBB203F001033B712D4B5B699B0B97 -:1011E000DBB203F00103FB70294B5B699B0BDBB2A5 -:1011F00003F00103BB70FB79012B08D1254B9B6ADF -:101200009847234B5B69224A43F480635361BB795F -:10121000012B08D11F4BDB6A98471D4B5B691C4AA9 -:1012200043F4006353617B79012B08D1194B1B6B8D -:101230009847174B5B69164A43F4805353613B79D7 -:10124000012B08D1134B5B6B9847114B5B69104A1C -:1012500043F400535361FB78012B08D10D4B9B6B7A -:1012600098470B4B5B690A4A43F480435361BB7850 -:10127000012B08D1074BDB6B9847054B5B69044A90 -:1012800043F40043536100BF0837BD4680BD00BF33 -:10129000000401408000002080B584B000AF034608 -:1012A0000A46FB711346BB71BB790133DAB2FB7995 -:1012B00011461846FFF7FCFD0346FB73BB79082B6C -:1012C00019D1FB7B012B08D1194B01221A70194B44 -:1012D0001B68013B174A13600AE0FB7B002B07D118 -:1012E000134B02221A70134B1B680133114A13600F -:1012F000104B1B6818E0FB7B012B08D10E4B012221 -:101300001A700E4B1B68013B0C4A13600AE0FB7B12 -:10131000002B07D1084B02221A70084B1B680133BF -:10132000064A1360054B1B6818461037BD4680BD42 -:10133000C1000020C8000020C0000020C400002020 -:1013400080B483B000AF0346FB71FB79082B03D157 -:10135000074B00221A6005E0FB790A2B02D1054BEE -:1013600000221A6000BF0C37BD4680BC704700BF2A -:10137000C8000020C400002080B400AF034B4FF031 -:1013800000021A6000BFBD4680BC7047CC00002040 -:1013900080B483B000AF0346FB71FB791F2B05D8E7 -:1013A000FB7901229A40094B1A600AE0FB793B2B3A -:1013B00007D8FB79203BFB71FB7901229A40044B53 -:1013C0001A6000BF0C37BD4680BC704700E100E0EA -:1013D00004E100E080B400AF054B4FF480321A60A6 -:1013E000044B01221A6000BFBD4680BC704700BF9D -:1013F000001002400410024080B483B000AF0346E6 -:101400000A46FB711346BB71BB791F2B2AD8FB79A7 -:10141000022B1CD0022B26DC002B02D0012B0BD080 -:1014200021E0134B1B68BA79012101FA02F211463F -:101430000F4A0B43136016E00E4B1B68BA7901216B -:1014400001FA02F211460B4A0B4313600BE00A4B00 -:101450001B68BA79012101FA02F21146064A0B43D0 -:10146000136000E000BF00BF0C37BD4680BC704772 -:10147000141002401C1002401810024080B400AF4B -:10148000034B00221A6000BFBD4680BC704700BFFE -:1014900010E000E080B483B000AF7860104A7B6851 -:1014A00053600F4B1B680E4A43F00103136000BFEB -:1014B0000B4B1B681B0C03F00103002BF8D0084BEF -:1014C0001B68074A43F001031360054B00225A6072 -:1014D000034B00229A6000BF0C37BD4680BC7047AA -:1014E00010E000E080B582B000AF124B1B78002BFB -:1014F00011D1114B1B68104A23F0020313600E4BED -:101500001B680D4A43F0010313600B4B00225A6025 -:10151000094B00229A60094B1B689847064B1B68D1 -:101520001B0CDBB203F00103FB7100BF0837BD46A3 -:1015300080BD00BFD400002010E000E0D0000020FB -:1015400080B400AF4FF080431B684FF0804223F01F -:10155000100313604FF080431B684FF0804243F04C -:10156000100313604FF0804308229A624FF08043CB -:10157000DB684FF0804243F00103D3604FF08043BB -:101580001B6A4FF0804243F0100313624FF0804318 -:101590009B694FF0804223F4805393614FF0804366 -:1015A0009B694FF0804243F4005393614FF08043B6 -:1015B0009B694FF0804243F4804393614FF0804336 -:1015C0009B694FF0804223F4006393614FF08043A6 -:1015D0001B684FF0804243F0800313604FF080435C -:1015E0006422DA624FF080431B684FF0804243F080 -:1015F000010313604FF080435B694FF0804243F07A -:101600000103536100BFBD4680BC704780B483B006 -:1016100000AF0346FB80044AFB88136000BF0C3711 -:10162000BD4680BC704700BF3800004080B400AFAA -:10163000244B1B68234A23F010031360214B214ADB -:101640001B6813601F4B08229A621E4BDB681D4A01 -:1016500043F00103D3601B4B1B6A1A4A43F001039A -:101660001362184B9B69174A23F010039361154BC3 -:101670009B69144A43F020039361124B9B69114A02 -:1016800043F0400393610F4B9B690E4A23F008031C -:1016900093610C4B1B680B4A43F080031360094BAA -:1016A0006422DA62074B1B68064A43F001031360A9 -:1016B000044B5B69034A43F00103536100BFBD461D -:1016C00080BC70470004004080B483B000AF034684 -:1016D000FB80044AFB88136000BF0C37BD4680BC0A -:1016E000704700BF3404004080B500AF02210220E3 -:1016F000FFF782FE00210220FFF77EFE112101206C -:10170000FFF77AFE092202210020FFF79BFA04224C -:1017100003210020FFF796FA0D4B40F241329A6008 -:101720000B4BDB680A4A43F00803D360084BDB68C5 -:10173000074A43F00403D360054BDB68044A43F4D3 -:101740000053D360024B00221A6000BF80BD00BF6F -:101750000044004080B483B000AF0346FB710B4AE5 -:10176000FB79536000BF094B1B689B0903F0010321 -:10177000002BF8D0054B1B68044A23F0400313608C -:1017800000BF0C37BD4680BC704700BF004400401E -:1017900080B582B000AF786007E07B681B781846A0 -:1017A000FFF7D8FF7B6801337B607B681B78002BD9 -:1017B000F3D100BF00BF0837BD4680BD80B483B001 -:1017C00000AF0023FB7100BF074B1B685B0903F0F0 -:1017D0000103002BF8D0044B5B68FB71FB791846C2 -:1017E0000C37BD4680BC70470044004080B584B0D3 -:1017F00000AF78600023FB730023BB73FFF7DEFFAD -:101800000346FB730BE0BB7B7A681344FA7B1A70C8 -:10181000BB7B0133BB73FFF7D1FF0346FB73FB7B3D -:10182000002BF0D1BB7B18461037BD4680BD0000B1 -:1018300080B500AF08210020FFF72EFD0346024AC5 -:10184000136000BF80BD00BFDC00002080B500AF8A -:101850000A210120FFF720FD0346024A136000BF62 -:1018600080BD00BFD80000202DE9B04382B000AF9A -:101870005348FFF7BBFF03461A46524B1A70524BB0 -:1018800000221A804E4B1B78612B40F090804C4B0D -:101890005B782D2B4AD10223FB7138E04A4BB3F918 -:1018A00000301846FEF7B6FD04460D46FB79444A63 -:1018B000D35C303B1846FEF7ADFD80468946414B70 -:1018C0001B785A1EFB79D31A1846FEF7A3FD024671 -:1018D0000B464FF000003D4900F028FB02460B4646 -:1018E00040464946FEF700FE02460B462046294682 -:1018F000FEF744FC02460B4610461946FFF7A4F8D3 -:1019000003461AB2304B1A80FB790133FB712D4B21 -:101910001B78FA799A42C1D32B4BB3F900309BB2B2 -:101920005B429BB21AB2284B1A8040E00123BB7184 -:1019300038E0254BB3F900301846FEF76BFD04463E -:101940000D46BB791E4AD35C303B1846FEF762FD5C -:10195000804689461B4B1B785A1EBB79D31A184602 -:10196000FEF758FD02460B464FF00000174900F005 -:10197000DDFA02460B4640464946FEF7B5FD0246F3 -:101980000B4620462946FEF7F9FB02460B46104659 -:101990001946FFF759F803461AB20B4B1A80BB7968 -:1019A0000133BB71074B1B78BA799A42C1D3064BFE -:1019B000B3F9003018460837BD46BDE8B08300BF14 -:1019C000E4000020E0000020FA0000200000244095 -:1019D00080B582B000AF00237B800023FB80002312 -:1019E000BB80FFF741FF03467B807B885A339BB265 -:1019F000FB80B7F90630B42B04DDFB88A3F5B47384 -:101A00009BB2FB80FA887B88D31A9BB2BB800122F1 -:101A100000210020FFF7ECF9002205210020FFF74C -:101A2000E7F91E20FFF7F2FD1E20FFF74DFEB7F984 -:101A3000043013F1B40F04DABB8803F5B4739BB21E -:101A4000BB80B7F90430002B0CDC0020FFF73CFE14 -:101A50000020FFF7DBFD0820FFF772FC0A20FFF7EC -:101A60006FFC09E0FFF700FF03467B80FA887B8864 -:101A7000D31A9BB2BB80CAE700BF0837BD4680BD02 -:101A800080B582B000AF00237B800023FB80002361 -:101A9000BB80FFF7E9FE03467B807B885A3B9BB205 -:101AA000FB80B7F9063013F1B40F04DAFB8803F5B5 -:101AB000B4739BB2FB80FA887B88D31A9BB2BB803D -:101AC000012200210020FFF793F9002205210020C8 -:101AD000FFF78EF91E20FFF799FD1E20FFF7F4FD9A -:101AE000B7F90430B42B04DDBB88A3F5B4739BB203 -:101AF000BB80B7F90430002B0CDB0020FFF7E4FDBE -:101B00000020FFF783FD0820FFF71AFC0A20FFF7EB -:101B100017FC09E0FFF7A8FE03467B80FA887B8864 -:101B2000D31A9BB2BB80CBE700BF0837BD4680BD50 -:101B300080B582B000AF00237B600820FFF700FC77 -:101B40000A20FFF7FDFBFFF717FC4FF433737B60B0 -:101B5000164B1B881846FFF759FD144B1B88184677 -:101B6000FFF7B2FD124B1B68002BB8BF5B421A4651 -:101B70007B689342ECD80820FFF7E2FB0A20FFF7CE -:101B8000DFFB0A4B00221A800020FFF79DFD00209A -:101B9000FFF73CFD0748FFF7FBFD0748FFF7F8FD9F -:101BA00000BF00BF0837BD4680BD00BFF800002061 -:101BB000D8000020102D0008142D00082DE9B04396 -:101BC00082B000AFFFF706FC02210220FFF714FCF1 -:101BD00003210220FFF710FC00210220FFF70CFC7C -:101BE00000210120FFF708FC01210120FFF704FC80 -:101BF00009210220FFF700FC0A2201210020FFF743 -:101C000021F8022200210020FFF71CF80A220621F9 -:101C10000020FFF717F8022205210020FFF712F835 -:101C2000042208210020FFF70DF8042209210020DA -:101C3000FFF708F804220A210120FFF703F8042225 -:101C40000B210120FEF7FEFF002200210120FEF7FC -:101C5000F9FF00210820FEF7A1FF01210A20FEF76D -:101C60009DFF08217F48FFF7C3F90A217E48FFF74F -:101C7000BFF9FFF75BF900210820FFF76BF900219E -:101C80000A20FFF767F9FEF727FF01210820FEF77A -:101C90003BFF1720FFF77CFB2820FFF779FBFFF7BE -:101CA000EDFBFFF74DFCFFF7C1FCFFF71DFD6F4893 -:101CB000FFF79CFD03461A466D4B1A706B4B1B7861 -:101CC000792B40F0A7800020FFF7A0FC0020FFF751 -:101CD000FBFC664B5B782D2B4CD1002200210020B1 -:101CE000FFF786F8002205210020FFF781F8022384 -:101CF000FB7137E05F4B1B881846FEF78BFB0446F1 -:101D00000D46FB79594AD35C303B1846FEF782FBFF -:101D100080468946564B1B785A1EFB79D31A1846C3 -:101D2000FEF778FB02460B464FF00000524900F0E8 -:101D3000FDF802460B4640464946FEF7D5FB0246F3 -:101D40000B4620462946FEF719FA02460B46104676 -:101D50001946FEF7A1FE03469AB2464B1A80FB795C -:101D60000133FB71424B1B78FA799A42C2D3FFF7D9 -:101D7000DFFE9CE7012200210020FFF739F8012255 -:101D800005210020FFF734F80123BB7137E0394B00 -:101D90001B881846FEF73EFB04460D46BB79334AC6 -:101DA000D35C303B1846FEF735FB80468946304B06 -:101DB0001B785A1EBB79D31A1846FEF72BFB024636 -:101DC0000B464FF000002C4900F0B0F802460B46DD -:101DD00040464946FEF788FB02460B462046294608 -:101DE000FEF7CCF902460B4610461946FEF754FEA4 -:101DF00003469AB21F4B1A80BB790133BB711C4B4F -:101E00001B78BA799A42C2D31A4B1B881846FFF73F -:101E10008FFE4CE7154B1B786D2B1BD10020FFF775 -:101E2000F5FB0020FFF750FC104B5B782D2B08D101 -:101E3000FFF7CEFD1148FFF7ABFC1148FFF7A8FCF8 -:101E400035E7FFF71DFE0D48FFF7A2FC0C48FFF732 -:101E50009FFC2CE70020FFF737FC0020FFF7D6FBA4 -:101E600025E700BF311800084D180008E4000020E5 -:101E7000E0000020F800002000002440182D000899 -:101E80001C2D00080D488546AFF300800C480D4915 -:101E90000D4A002302E0D458C4500433C4188C42C5 -:101EA000F9D30A4A0A4C002301E013600432A2422B -:101EB000FBD300F017F8FFF781FEFEE7005000208B -:101EC0000000002064000020602D00086400002055 -:101ED000FC000020FEE70000014B1868704700BFBF -:101EE0000000002070B500260C4D0D4C641BA410A2 -:101EF000A64209D100F0FEFE00260A4D0A4C641BE2 -:101F0000A410A64205D170BD55F8043B9847013690 -:101F1000EEE755F8043B98470136F2E7582D0008E4 -:101F2000582D0008582D00085C2D00082DE9F843B5 -:101F300014461D468046894600F062F82246064651 -:101F40000F462B4620462946FEF768FDC8BB0022F7 -:101F5000002340464946FEF72FFDB8B1002200237A -:101F600020462946FEF728FD002841D12046294673 -:101F700000F03BFE28B30022002320462946FEF74E -:101F800025FDF0B1FFF7A8FF222319E030463946BE -:101F900000F02BFEC8B94046494600F026FEA0B12D -:101FA0002046294600F021FE78B132463B463046B5 -:101FB0003946FEF733FD0028E4D0FFF78DFF2123DB -:101FC000036030463946BDE8F883002200233046DE -:101FD0003946FEF7F1FC0028F3D04046494600F0B0 -:101FE00004FE0028EDD02046294600F0FEFDC8E79B -:101FF0000026014FE5E700BF0000F03F00000000B1 -:102000002DE9F04F93B0CDE90223DDE9022727F057 -:102010000046894656EA0201804611D1031889F428 -:10202000002252419942824B934180F0B984DDE90C -:10203000022340464946FEF7A1F883468C466FE0EE -:102040007C4B29F000449C424D46824606DC01D17F -:102050000028ECD19E4201DC0FD172B105F1404560 -:1020600005F5801555EA0A05E1D1DDE90232DB18F4 -:1020700082F4002252419D42D5E7002D39DA6E4BA1 -:102080009E4252DCA3F154739E4240F39C8433156C -:10209000A3F2FF33142B0FDDC3F1340322FA03F153 -:1020A00001FA03F3934240F08E8401F00101C1F183 -:1020B0000203009382B15DE0002A59D1C3F11403F9 -:1020C00046FA03F101FA03F3B34240F0798401F0D8 -:1020D0000101C1F102030093584B9E4232D1002FFF -:1020E00080F26A8442464B4600205449FEF726FBA4 -:1020F000A3E700230093002A3CD14E4B9E42EBD134 -:1021000004F1404303F5801353EA0A0300F04884C6 -:102110004B4B9C420BDD002FC0F24884DDE902BC32 -:102120005846614613B0BDE8F08F0223E2E7002F66 -:102130004FF0000B4FF0000CF2DADDE902B303F1CF -:10214000004CEDE7B7F1804F06D142464B46404682 -:102150004946FEF7C9F970E73A4B9F420AD1002D74 -:1021600008DB4046494613B0BDE8F04F00F05EBCC6 -:10217000002300934046494600F034FD83468C46D8 -:10218000BAF1000F28D124B12C4B25F040429A42DD -:1021900022D1002F07DA5A46634600202749FEF76E -:1021A000CDFA83468C46002DBADA009B04F14044F8 -:1021B00004F58014234308D15A46634658466146C5 -:1021C000FDF7DAFF02460B4690E7009B012BA7D1F3 -:1021D0000CF100439C46A3E7EB0F013B0C930C9AD8 -:1021E000009B134304D142464B4640464946E7E72D -:1021F000154B9E4240F3F68003F104739E42104B50 -:1022000009DD9C420CDC002F0CDA002013B0BDE885 -:10221000F04F00F0E2BC9C42F5DB084B9C4215DD20 -:10222000002FF2DC002013B0BDE8F04F00F0D0BC6E -:102230000000F0FF0000F07FFFFF3F430000F03F91 -:10224000FFFFEF3F0000E03F0000E0416146002259 -:1022500058465F4BFDF790FF55A3D3E90023044692 -:102260000D46FEF741F954A3D3E9002306460F4675 -:1022700020462946FEF738F9002282468B46204642 -:102280002946544BFEF730F902460B464CA1D1E9E2 -:102290000001FDF771FF22462B46FEF725F90246A5 -:1022A0000B4600204C49FDF767FF22462B4680462F -:1022B000894620462946FEF717F902460B46404656 -:1022C0004946FEF711F940A3D3E90023FEF70CF9C4 -:1022D00002460B4650465946FDF74EFF4FF0000AA6 -:1022E00002460B4604460D4630463946FDF746FF8A -:1022F00032463B4650468B46FDF73EFF02460B46B4 -:1023000020462946FDF738FFDDE90267009B0C9A5D -:10231000013B13434FF000064FF000020CBF2F4B60 -:102320002B4B04460D46DDE90201CDE90023324680 -:102330003B46FDF721FF52465B46FEF7D5F8DDE947 -:1023400002238046894620462946FEF7CDF80246FC -:102350000B4640464946FDF711FF32463B46804654 -:10236000894650465946FEF7BFF804460D460B46CF -:10237000024649464046CDE90245FDF7FFFE184BAF -:10238000824699420F460E4640F3E58201F13F43F3 -:1023900003F5E003034300F0DF81DDE900010022E3 -:1023A0000023FEF713FB003818BF01202EE700BF03 -:1023B000000000604715F73F44DF5DF80BAE543E68 -:1023C000555555555555D53FFE822B654715F73F59 -:1023D0000000F03F0000D03F0000E03F0000F0BFF1 -:1023E000FFFF8F40D24B00222B4043B95846614635 -:1023F000D04BFEF779F86FF0340283460C46231574 -:10240000A3F2FF3313440B93CB4BC4F3130444F0F8 -:102410007F559C4245F4401508DDC84B9C4240F373 -:1024200099810B9BA5F5801501330B930026F300D2 -:102430000D93C34B584603EBC603D3E9003429463A -:102440001A46CDE908342346FDF796FEDA462B46B8 -:102450005246CDE90E01DDE90801FDF78FFE024687 -:102460000B460020B749FEF769F902460B46CDE955 -:102470001001DDE90E01FEF737F8CDE90601DDE9CF -:102480000634CDE9043400230022AB466D1045F03C -:102490000055049305F50025DDE9048905EB864325 -:1024A0004046494614461D46FEF71EF802460B46B6 -:1024B000DDE90E01FDF760FEDDE9082306460F4663 -:1024C00020462946FDF758FE02460B46504659461F -:1024D000FDF752FE42464B46FEF706F802460B4613 -:1024E00030463946FDF748FEDDE91023FDF7FCFFD5 -:1024F000DDE90623CDE9080110461946FDF7F4FF92 -:1025000079A3D3E9002304460D46FDF7EDFF78A338 -:10251000D3E90023FDF732FE22462B46FDF7E4FF08 -:1025200075A3D3E90023FDF729FE22462B46FDF7CC -:10253000DBFF73A3D3E90023FDF720FE22462B46E1 -:10254000FDF7D2FF70A3D3E90023FDF717FE224663 -:102550002B46FDF7C9FF6EA3D3E90023FDF70EFE5E -:10256000224606460F462B4620462946FDF7BCFF6D -:1025700002460B4630463946FDF7B6FF04460D4687 -:10258000DDE9060142464B46FDF7F8FDDDE908238B -:10259000FDF7AAFF22462B46FDF7F0FD4246064610 -:1025A0000F464B4640464946FDF79EFF0022664BCC -:1025B00082468B46FDF7E2FD32463B46FDF7DEFDE7 -:1025C00000240D4622460B4640464946FDF78CFF47 -:1025D000002280468946204629465B4BFDF7CCFD0C -:1025E00052465B46FDF7C8FD02460B46304639466B -:1025F000FDF7C2FDDDE90623FDF776FF224606461C -:102600000F46DDE908012B46FDF76EFF02460B463B -:1026100030463946FDF7B2FD002406460F46024615 -:102620000B4640464946FDF7A9FD3BA3D3E90023ED -:1026300020460D46FDF758FF42464B46CDE90601C0 -:1026400020462946FDF798FD02460B46304639469E -:10265000FDF792FD32A3D3E90023FDF745FF32A336 -:10266000D3E9002306460F4620462946FDF73CFFE6 -:1026700002460B4630463946FDF780FD0D9A334B36 -:102680004FF0000A1344D3E90023FDF777FD80469D -:102690000B988946FDF7BEFE04460D460D9A2C4B5D -:1026A0001344D3E900674246DDE906014B46FDF7D6 -:1026B00065FD32463B46FDF761FD22462B46FDF7A0 -:1026C0005DFD22462B4650468B46FDF755FD3246B2 -:1026D0003B46FDF751FDDDE90623FDF74DFD0246C2 -:1026E0000B46404649460DE6EF4E454A287ECA3F16 -:1026F00065DBC9934A86CD3F01411DA96074D13F76 -:102700004D268F515555D53FFFAB6FDBB66DDB3F87 -:10271000033333333333E33F000000E009C7EE3FB8 -:10272000FD033ADC09C7EE3FF5015B14E02F3EBE26 -:102730000000F07F000040438E98030079B60B0044 -:10274000282D00080000F03F00000840482D000838 -:10275000382D000801266AE69DA3D3E900234046F0 -:102760004946FDF70BFD2246CDE904012B465046B4 -:102770003946FDF701FD02460B46DDE90401FEF78F -:1027800043F900287FF409AEA34A26F000439342A0 -:1027900040F301814FF4801A00201B15A3F2FE3391 -:1027A0004AFA03F33344C3F30A529C4FA2F2FF32B6 -:1027B0001741C3F3130A23EA0701C2F114024AF4D2 -:1027C000801A0B464AFA02FA002E02462946204693 -:1027D000B8BFCAF1000AFDF7CFFCCDE90201DDE97F -:1027E0000201002442464B46FDF7C8FC7AA3D3E918 -:1027F000002320460D46FDF777FEDDE9022306465D -:102800000F4620462946FDF7B7FC02460B464046D8 -:102810004946FDF7B1FC72A3D3E90023FDF764FE3E -:1028200071A3D3E900238046894620462946FDF757 -:102830005BFE02460B4640464946FDF79FFC0446B8 -:102840000D4602460B4630463946FDF797FC3246A8 -:102850003B4680468946FDF78FFC02460B462046E4 -:102860002946FDF789FC424606460F464B46404640 -:102870004946FDF739FE5EA3D3E9002304460D4621 -:10288000FDF732FE5CA3D3E90023FDF775FC224679 -:102890002B46FDF729FE5AA3D3E90023FDF76EFC72 -:1028A00022462B46FDF720FE57A3D3E90023FDF770 -:1028B00063FC22462B46FDF717FE55A3D3E9002300 -:1028C000FDF75CFC22462B46FDF70EFE02460B464A -:1028D00040464946FDF750FC04460D4602460B466D -:1028E00040464946FDF700FE0022CDE902014FF0C7 -:1028F000804320462946FDF73FFC02460B46DDE9B2 -:102900000201FDF71BFF324604460D463B4640469A -:102910004946FDF7E9FD32463B46FDF72FFC0246EE -:102920000B4620462946FDF727FC42464B46FDF75D -:1029300023FC02460B4600203949FDF71DFC01EB44 -:102940000A54B4F5801F29DA524600F055F9DDE942 -:102950000023FFF7FEBB334B21F000479F427FF778 -:1029600013AF314B0B44034309D0DDE900010022D2 -:102970000023FEF72BF8003818BF012053E422464D -:102980002B46FDF7F9FB42464B46FEF733F800288D -:102990003FF4FAAEE9E74FF0000A20E72146D6E718 -:1029A0004FF0000BDFF878C0FFF7BABB4FF0000B19 -:1029B0004FF0000CFFF7B4BB40464946FFF73DBB64 -:1029C0000092FFF789BB0023FFF773BBAFF30080D2 -:1029D000FE822B654715973C00000000432EE63F22 -:1029E000EF39FAFE422EE63F396CA80C615C20BE3E -:1029F000D0A4BE726937663EF16BD2C541BDBB3E05 -:102A00002CDE25AF6A56113F93BDBE166CC1663FE2 -:102A10003E5555555555C53F0000E03FFFFF0F009F -:102A20000000F03FFFCB904000346F3FDFF858C10B -:102A30002DE9F0413CEA010C06460D460C460A46DB -:102A4000074603460FD102460B46FDF74DFD0246F1 -:102A50000B4630462946FDF791FB06460D463046AB -:102A60002946BDE8F08100290EDC21F0004C5CEA2B -:102A70000707F4D041B102460B46FDF77DFB024645 -:102A80000B46FDF75BFEE8E7211575D0CC074FF04C -:102A90000004C2F31302A1F2FF3742F480125EBFBA -:102AA000D90F5B0001EB4202D90F01EB4202162560 -:102AB00020464FF400117F105B0046189642DEBF9F -:102AC000921B701864185200013D02EBD3724FEA5A -:102AD00051014FEA4303F0D129464FF0200E4FF049 -:102AE0000046824206EB050C02DC13D19C4511D84E -:102AF000BCF1000F0CEB060543DA002D41DB00F1C1 -:102B00000108121A40469C4588BF02F1FF32A3EB30 -:102B10000C0331444FEAD37CBEF1010E0CEB4202B0 -:102B20004FEA43034FEA5606DBD1134306D0481C55 -:102B30000BBF71460131013421F0010163104908D6 -:102B400003F17F53E20703F5001348BF41F0004152 -:102B50000E4603EB075582E7DA0A15385B05002AB3 -:102B6000FAD0D5020AD5C1F1200423FA04F44D1E8F -:102B70008B402243411B89E70846F0E752000131B0 -:102B8000EFE78046BDE700BF0000F07F70B5044668 -:102B90000D461646FFF7A0F929460660204670BD8F -:102BA00037B515461C4680B1104603F10041CDE90A -:102BB0000001DDE9002328462146FDF795FC22228D -:102BC00003B0BDE83040FFF7E1BF10461946EEE71D -:102BD00000224FF08053FFF7E3BF00224FF0E043A5 -:102BE000FFF7DEBF21F00041704741F0004000F5E3 -:102BF0008010C00F70470000F8B5C1F30A560446B4 -:102C00000D4617460B4696B921F00043034339D0D1 -:102C1000334B0022FDF768FC324B04469F420D46C1 -:102C20000FDA2BA3D3E90023FDF75EFC06E040F2A8 -:102C3000FF7296420AD10246FDF7A0FA04460D46FD -:102C400020E00B46C1F30A51A1F1360640F2FE72B4 -:102C5000B91991420EDD05F0004444F0FC4141F405 -:102C60005F1141F41051204841F03C011AA3D3E90F -:102C70000023D9E7002908DD23F0FF4323F4E00314 -:102C800043EA015520462946F8BD11F1350F12DA05 -:102C90004CF250339F424FEAD5734FEAC374DCDCE9 -:102CA0000BA3D3E9002344F0D27141F4B7310F48AC -:102CB00041F01F01B8E723F0FF43363123F4E0036E -:102CC00043EA0155204629460022094BACE700BFE4 -:102CD00059F3F8C21F6EA5019C7500883CE4377E4D -:102CE00000005043B03CFFFF9C75008859F3F8C2C8 -:102CF0000000903CF8B500BFF8BC08BC9E46704789 -:0C2D0000F8B500BFF8BC08BC9E46704748 -:102D1000733100000D0A0000733200002F722F6E15 -:102D20000000000000000000000000000000F03F74 -:102D3000000000000000F83F00000000000000005C -:102D40000000004003B8E23F000000000000000067 -:082D500006D0CF43EBFD4C3E21 -:042D58005501000819 -:042D5C003101000839 -:102D6000040000200000000000000000000000003F -:102D70000000000000000000000000000000000053 -:102D80000000000000000000000000000000000043 -:102D90000000000000000000000000000000000033 -:102DA0000000000000000000000000000000000023 -:102DB0000000000000000000000000000000000013 -:042DC000000000000F -:0400000508001E854C +:100AD00070474FF0000070474FEA4102B2F1E04327 +:100AE00024BFB3F5001CDCF1FE5C0DD901F0004C15 +:100AF0004FEAC0024CEA5070B2F1004F40EB830065 +:100B000008BF20F00100704711F0804F21D113F190 +:100B10003872BCBF01F00040704741F480114FEAC9 +:100B20005252C2F11802C2F1200C10FA0CF320FA52 +:100B300002F018BF40F001004FEAC1234FEAD3236F +:100B400003FA0CFC40EA0C0023FA02F34FEA4303D9 +:100B5000CCE77FEA625307D150EA01331EBF4FF062 +:100B6000FE4040F44000704701F0004040F0FE407D +:100B700040F40000704700BF80F0004002E000BF7A +:100B800081F0004142001FBF5FEA410392EA030F78 +:100B90007FEA226C7FEA236C6AD04FEA1262D2EBC2 +:100BA0001363C1BFD218414048404140B8BF5B42C7 +:100BB000192B88BF704710F0004F40F4000020F060 +:100BC0007F4018BF404211F0004F41F4000121F076 +:100BD0007F4118BF494292EA030F3FD0A2F10102C0 +:100BE00041FA03FC10EB0C00C3F1200301FA03F1FE +:100BF00000F0004302D5494260EB4000B0F5000F21 +:100C000013D3B0F1807F06D340084FEA310102F1DF +:100C10000102FE2A51D2B1F1004F40EBC25008BF91 +:100C200020F0010040EA03007047490040EB00005B +:100C3000013A28BFB0F5000FEDD2B0FA80FCACF15C +:100C4000080CB2EB0C0200FA0CF0AABF00EBC25089 +:100C500052421843BCBFD0401843704792F0000F77 +:100C600081F4000106BF80F400000132013BB5E7CA +:100C70004FEA41037FEA226C18BF7FEA236C21D040 +:100C800092EA030F04D092F0000F08BF08467047A5 +:100C900090EA010F1CBF0020704712F07F4F04D173 +:100CA000400028BF40F00040704712F100723CBF86 +:100CB00000F50000704700F0004343F0FE4040F4B0 +:100CC000000070477FEA226216BF08467FEA23636E +:100CD0000146420206BF5FEA412390EA010F40F459 +:100CE000800070474FF0000304E000BF10F00043A5 +:100CF00048BF40425FEA000C08BF704743F096438C +:100D000001464FF000001CE050EA010208BF7047A6 +:100D10004FF000030AE000BF50EA010208BF70472D +:100D200011F0004302D5404261EB41015FEA010C42 +:100D300002BF84460146002043F0B64308BFA3F13A +:100D40008053A3F50003BCFA8CF2083AA3EBC2531C +:100D500010DB01FA02FC634400FA02FCC2F120023B +:100D6000BCF1004F20FA02F243EB020008BF20F072 +:100D70000100704702F1200201FA02FCC2F12002D8 +:100D800050EA4C0021FA02F243EB020008BF20EACD +:100D9000DC7070474FF0FF0C1CEAD0521EBF1CEAFB +:100DA000D15392EA0C0F93EA0C0F6FD01A4480EAE9 +:100DB000010C400218BF5FEA41211ED04FF00063D2 +:100DC00043EA501043EA5111A0FB01310CF00040FE +:100DD000B1F5000F3EBF490041EAD3715B0040EA24 +:100DE000010062F17F02FD2A1DD8B3F1004F40EBF4 +:100DF000C25008BF20F00100704790F0000F0CF0C7 +:100E0000004C08BF49024CEA502040EA51207F3A8A +:100E1000C2BFD2F1FF0340EAC250704740F4000065 +:100E20004FF00003013A5DDC12F1190FDCBF00F056 +:100E300000407047C2F10002410021FA02F1C2F104 +:100E4000200200FA02FC5FEA310040F1000053EAA0 +:100E50004C0308BF20EADC70704792F0000F00F0EE +:100E6000004C02BF400010F4000F013AF9D040EAF4 +:100E70000C0093F0000F01F0004C02BF490011F488 +:100E8000000F013BF9D041EA0C018FE70CEAD15386 +:100E900092EA0C0F18BF93EA0C0F0AD030F0004C06 +:100EA00018BF31F0004CD8D180EA010000F00040BA +:100EB000704790F0000F17BF90F0004F084691F078 +:100EC000000F91F0004F14D092EA0C0F01D14202B2 +:100ED0000FD193EA0C0F03D14B0218BF084608D17B +:100EE00080EA010000F0004040F0FE4040F40000C5 +:100EF000704740F0FE4040F4400070474FF0FF0C58 +:100F00001CEAD0521EBF1CEAD15392EA0C0F93EA9E +:100F10000C0F69D0A2EB030280EA010C49024FEAF0 +:100F2000402037D04FF0805343EA111143EA1013A9 +:100F30000CF000408B4238BF5B0042F17D024FF461 +:100F4000000C8B4224BF5B1A40EA0C00B3EB510F3C +:100F500024BFA3EB510340EA5C00B3EB910F24BF25 +:100F6000A3EB910340EA9C00B3EBD10F24BFA3EBAA +:100F7000D10340EADC001B0118BF5FEA1C1CE0D172 +:100F8000FD2A3FF650AF8B4240EBC25008BF20F025 +:100F9000010070470CF0004C4CEA50207F32C2BF79 +:100FA000D2F1FF0340EAC250704740F400004FF016 +:100FB0000003013A37E792F0000F00F0004C02BF47 +:100FC000400010F4000F013AF9D040EA0C0093F011 +:100FD000000F01F0004C02BF490011F4000F013B6B +:100FE000F9D041EA0C0195E70CEAD15392EA0C0FD3 +:100FF00008D142027FF47DAF93EA0C0F7FF470AF0B +:10100000084676E793EA0C0F04D14B023FF44CAF4D +:1010100008466EE730F0004C18BF31F0004CCAD1E2 +:1010200030F000427FF45CAF31F000437FF43CAF1E +:101030005FE700BF4FEA4002B2F1FE4F0FD34FF01F +:101040009E03B3EB12620DD94FEA002343F0004335 +:1010500010F0004F23FA02F018BF404270474FF0E3 +:101060000000704712F1610F01D1420205D110F06A +:10107000004008BF6FF0004070474FF0000070471D +:1010800080B400AF094B5B68084A43F48073536037 +:10109000064B064ADB6AD362044B9B68034A43F063 +:1010A0000203936000BFBD4680BC7047002401402E +:1010B00080B582B000AF03460A46FB711346BB7190 +:1010C0001F4B1969FA7913465B001344072202FA91 +:1010D00003F31B4A0B431361194B596BF879BB7926 +:1010E0005A1E13469B00134400FA03F3144A0B43A1 +:1010F0005363134B9B68124A43F0010393604FF410 +:101100007A7000F0A7FC0E4B9B680D4A43F0010378 +:1011100093604FF47A7000F09DFC094B9B68084A7D +:1011200043F00403936000BF054B9B689B0803F0EA +:101130000103012BF8D000BF00BF0837BD4680BDBA +:101140000024014080B400AF034BDB6C9BB2184617 +:10115000BD4680BC704700BF0024014080B485B00C +:1011600000AF03460A46FB711346BB710023FB73B5 +:10117000FB79032B02D80023FB7319E0FB79072BC3 +:1011800005D80123FB73FB79043BFB7110E0FB796D +:101190000B2B05D80223FB73FB79083BFB7107E09F +:1011A000FB790F2B04D80323FB73FB790C3BFB71FA +:1011B000134AFB7B023352F82320FB799B000F215B +:1011C00001FA03F3DB4318460D49FB7B024002336F +:1011D00041F823200A4AFB7B023352F82320B979D5 +:1011E000FB799B0001FA03F318460549FB7B024398 +:1011F000023341F8232000BF1437BD4680BC70473E +:101200000000014080B483B000AF0346FB710B4681 +:10121000BB7113467B71FB79022B7AD0022B00F352 +:10122000B680002B02D0012B3AD0B0E0BB79072B5F +:1012300017D8594B1B68BA7992000F2101FA02F2B4 +:10124000D2431146544A0B401360534B1B687979C3 +:10125000BA79920001FA02F211464F4A0B43136029 +:1012600090E0BB790F2B00F28D80BB79083BBB71FE +:101270004A4B1B68BA7992000F2101FA02F2D2435D +:101280001146464A0B401360444B1B687979BA7982 +:10129000920001FA02F21146404A0B43136071E0DA +:1012A000BB79072B17D83E4B1B68BA7992000F21E8 +:1012B00001FA02F2D2431146394A0B401360384B0F +:1012C0001B687979BA79920001FA02F21146344A20 +:1012D0000B43136058E0BB790F2B55D8BB79083B03 +:1012E000BB71304B1B68BA7992000F2101FA02F2F0 +:1012F000D24311462B4A0B4013602A4B1B68797965 +:10130000BA79920001FA02F21146264A0B431360A1 +:101310003AE0BB79072B17D8234B1B68BA799200A8 +:101320000F2101FA02F2D24311461F4A0B4013600B +:101330001D4B1B687979BA79920001FA02F21146C5 +:10134000194A0B43136021E0BB790F2B1ED8BB79E0 +:10135000083BBB71154B1B68BA7992000F2101FA4B +:1013600002F2D2431146114A0B4013600F4B1B6827 +:101370007979BA79920001FA02F211460B4A0B43CD +:10138000136003E000BF02E000BF00E000BF00BF49 +:101390000C37BD4680BC704700080140040801407E +:1013A000000C0140040C01400010014004100140F9 +:1013B00080B483B000AF0346FB710B46BB7113468C +:1013C0007B71FB79022B2AD0022B3FDC002B02D051 +:1013D000012B12D03AE07B79012B05D1BB79012298 +:1013E0009A401D4B1A602CE07B79002B29D1BB79E8 +:1013F00001229A40194B1A6023E07B79012B05D119 +:10140000BB7901229A40164B1A601CE07B79002BB5 +:1014100019D1BB7901229A40124B1A6013E07B79F3 +:10142000012B05D1BB7901229A400F4B1A600CE0C9 +:101430007B79002B09D1BB7901229A400B4B1A60B2 +:1014400003E000BF02E000BF00E000BF00BF0C37B8 +:10145000BD4680BC704700BF100801401408014021 +:10146000100C0140140C01401010014014100140F8 +:1014700080B485B000AF03460A46FB711346BB71CA +:101480000023FB73FB79022B1AD0022B22DC002BEA +:1014900002D0012B0AD01DE0114B1A68BB7922FA49 +:1014A00003F3DBB203F00103FB7313E00D4B1A6887 +:1014B000BB7922FA03F3DBB203F00103FB7309E00B +:1014C000094B1A68BB7922FA03F3DBB203F001037C +:1014D000FB7300BFFB7B18461437BD4680BC7047CA +:1014E00008080140080C01400810014080B400AF1A +:1014F000074B9B68064A43F001039360044B1B684B +:10150000034A23F00103136000BFBD4680BC70474F +:101510000004014080B483B000AF03460A46FB716B +:101520001346BB71BB79022B1CD0022B2FDC002B86 +:1015300002D0012B0BD02AE01C4B9B68FA790121C9 +:1015400001FA02F21146194A0B4393601FE0174B50 +:10155000DB68FA79012101FA02F21146134A0B43C2 +:10156000D36014E0114B9B68FA79012101FA02F271 +:1015700011460E4A0B4393600C4BDB68FA7901214C +:1015800001FA02F21146094A0B43D36000BF074B30 +:101590001B68FA79012101FA02F21146034A0B4352 +:1015A000136000BF0C37BD4680BC7047000401408B +:1015B00080B483B000AF78600B46FB70FB780449C1 +:1015C0007A6841F8232000BF0C37BD4680BC7047C5 +:1015D0008400002080B500AF054B1B689847054B81 +:1015E0005B69044A43F00103536100BF80BD00BF43 +:1015F000840000200004014080B500AF054B5B680B +:101600009847054B5B69044A43F00203536100BFEE +:1016100080BD00BF840000200004014080B500AF01 +:10162000054B9B689847054B5B69044A43F00403EC +:10163000536100BF80BD00BF840000200004014052 +:1016400080B500AF054BDB689847054B5B69044AE2 +:1016500043F00803536100BF80BD00BF8400002039 +:101660000004014080B500AF054B1B699847054B4E +:101670005B69044A43F01003536100BF80BD00BFA3 +:10168000840000200004014080B582B000AF314BDF +:101690005B695B09DBB203F00103FB712D4B5B69F6 +:1016A0009B09DBB203F00103BB712A4B5B69DB09C9 +:1016B000DBB203F001037B71264B5B691B0ADBB2D3 +:1016C00003F001033B71234B5B695B0ADBB203F060 +:1016D0000103FB70FB79012B08D11F4B5B69984715 +:1016E0001C4B5B691B4A43F020035361BB79012B00 +:1016F00008D1194B9B699847164B5B69154A43F013 +:10170000400353617B79012B08D1134BDB69984768 +:10171000104B5B690F4A43F0800353613B79012B07 +:1017200008D10D4B1B6A98470A4B5B69094A43F481 +:1017300080735361FB78012B08D1074B5B6A984794 +:10174000044B5B69034A43F40073536100BF0837DD +:10175000BD4680BD000401408400002080B582B0F9 +:1017600000AF3B4B5B699B0ADBB203F00103FB71EB +:10177000374B5B69DB0ADBB203F00103BB71344B0F +:101780005B691B0BDBB203F001037B71304B5B69C0 +:101790005B0BDBB203F001033B712D4B5B699B0BD1 +:1017A000DBB203F00103FB70294B5B699B0BDBB2DF +:1017B00003F00103BB70FB79012B08D1254B9B6A19 +:1017C0009847234B5B69224A43F480635361BB799A +:1017D000012B08D11F4BDB6A98471D4B5B691C4AE4 +:1017E00043F4006353617B79012B08D1194B1B6BC8 +:1017F0009847174B5B69164A43F4805353613B7912 +:10180000012B08D1134B5B6B9847114B5B69104A56 +:1018100043F400535361FB78012B08D10D4B9B6BB4 +:1018200098470B4B5B690A4A43F480435361BB788A +:10183000012B08D1074BDB6B9847054B5B69044ACA +:1018400043F40043536100BF0837BD4680BD00BF6D +:10185000000401408400002080B584B000AF03463E +:101860000A46FB711346BB71BB790133DAB2FB79CF +:1018700011461846FFF7FCFD0346FB73BB79082BA6 +:1018800019D1FB7B012B08D1194B01221A70194B7E +:101890001B68013B174A13600AE0FB7B002B07D152 +:1018A000134B02221A70134B1B680133114A136049 +:1018B000104B1B6818E0FB7B012B08D10E4B01225B +:1018C0001A700E4B1B68013B0C4A13600AE0FB7B4D +:1018D000002B07D1084B02221A70084B1B680133FA +:1018E000064A1360054B1B6818461037BD4680BD7D +:1018F000C5000020CC000020C4000020C80000204B +:1019000080B483B000AF0346FB71FB79082B03D191 +:10191000074B00221A6005E0FB790A2B02D1054B28 +:1019200000221A6000BF0C37BD4680BC704700BF64 +:10193000CC000020C800002080B400AF034B4FF063 +:1019400000021A6000BFBD4680BC7047D000002076 +:1019500080B483B000AF0346FB71FB791F2B05D821 +:10196000FB7901229A40094B1A600AE0FB793B2B74 +:1019700007D8FB79203BFB71FB7901229A40044B8D +:101980001A6000BF0C37BD4680BC704700E100E024 +:1019900004E100E080B400AF054B4FF480321A60E0 +:1019A000044B01221A6000BFBD4680BC704700BFD7 +:1019B000001002400410024080B483B000AF034620 +:1019C0000A46FB711346BB71BB791F2B2AD8FB79E2 +:1019D000022B1CD0022B26DC002B02D0012B0BD0BB +:1019E00021E0134B1B68BA79012101FA02F211467A +:1019F0000F4A0B43136016E00E4B1B68BA790121A6 +:101A000001FA02F211460B4A0B4313600BE00A4B3A +:101A10001B68BA79012101FA02F21146064A0B430A +:101A2000136000E000BF00BF0C37BD4680BC7047AC +:101A3000141002401C1002401810024080B400AF85 +:101A4000034B00221A6000BFBD4680BC704700BF38 +:101A500010E000E080B483B000AF7860104A7B688B +:101A600053600F4B1B680E4A43F00103136000BF25 +:101A70000B4B1B681B0C03F00103002BF8D0084B29 +:101A80001B68074A43F001031360054B00225A60AC +:101A9000034B00229A6000BF0C37BD4680BC7047E4 +:101AA00010E000E080B483B000AF786039600D4A88 +:101AB0007B6853600B4B1B680A4A43F001031360B9 +:101AC000094A3B681360094B01221A70054B1B68D9 +:101AD000044A43F00203136000BF0C37BD4680BCCC +:101AE000704700BF10E000E0D4000020D8000020C4 +:101AF00080B582B000AF124B1B78002B11D1114B77 +:101B00001B68104A23F0020313600E4B1B680D4A3A +:101B100043F0010313600B4B00225A60094B002273 +:101B20009A60094B1B689847064B1B681B0CDBB27D +:101B300003F00103FB7100BF0837BD4680BD00BF45 +:101B4000D800002010E000E0D400002080B400AFF6 +:101B50004FF080431B684FF0804223F01003136066 +:101B60004FF080431B684FF0804243F01003136036 +:101B70004FF0804308229A624FF08043DB684FF0B9 +:101B8000804243F00103D3604FF080431B6A4FF063 +:101B9000804243F0100313624FF080439B694FF083 +:101BA000804223F4805393614FF080439B694FF050 +:101BB000804243F4005393614FF080439B694FF0A0 +:101BC000804243F4804393614FF080439B694FF020 +:101BD000804223F4006393614FF080431B684FF011 +:101BE000804243F0800313604FF080436422DA6246 +:101BF0004FF080431B684FF0804243F001031360B5 +:101C00004FF080435B694FF0804243F00103536122 +:101C100000BFBD4680BC704780B483B000AF0346B0 +:101C2000FB80044AFB88136000BF0C37BD4680BCB4 +:101C3000704700BF3800004080B400AF244B1B68E1 +:101C4000234A23F010031360214B214A1B681360C1 +:101C50001F4B08229A621E4BDB681D4A43F00103AA +:101C6000D3601B4B1B6A1A4A43F001031362184BE3 +:101C70009B69174A23F010039361154B9B69144A23 +:101C800043F020039361124B9B69114A43F04003D8 +:101C900093610F4B9B690E4A23F0080393610C4B31 +:101CA0001B680B4A43F080031360094B6422DA621D +:101CB000074B1B68064A43F001031360044B5B6942 +:101CC000034A43F00103536100BFBD4680BC704727 +:101CD0000004004080B483B000AF0346FB80044A98 +:101CE000FB88136000BF0C37BD4680BC704700BF47 +:101CF0003404004080B500AF02210220FFF75CFEF3 +:101D000000210220FFF758FE11210120FFF754FEA9 +:101D1000092202210020FFF775FA04220321002086 +:101D2000FFF770FA0D4B40F241329A600B4BDB68C3 +:101D30000A4A43F00803D360084BDB68074A43F0C4 +:101D40000403D360054BDB68044A43F40053D360BB +:101D5000024B00221A6000BF80BD00BF004400405B +:101D600080B483B000AF0346FB710B4AFB7953602C +:101D700000BF094B1B689B0903F00103002BF8D03F +:101D8000054B1B68044A23F04003136000BF0C3767 +:101D9000BD4680BC704700BF0044004080B582B0A3 +:101DA00000AF786007E07B681B781846FFF7D8FF24 +:101DB0007B6801337B607B681B78002BF3D100BF0D +:101DC00000BF0837BD4680BD80B588B000AF7860E1 +:101DD00007F10C030A221946786800F069FC07F144 +:101DE0000C03FB61F869FFF7D9FF00BF2037BD4640 +:101DF00080BD000080B483B000AF0023FB7100BF42 +:101E0000074B1B685B0903F00103002BF8D0044B60 +:101E10005B68FB71FB7918460C37BD4680BC704788 +:101E20000044004080B584B000AF78600023FB73AD +:101E30000023BB73FFF7DEFF0346FB730BE0BB7BA6 +:101E40007A681344FA7B1A70BB7B0133BB73FFF7CC +:101E5000D1FF0346FB73FB7B002BF0D1BB7B184605 +:101E60001037BD4680BD000080B500AF08210020BE +:101E7000FFF7F2FC0346024A136000BF80BD00BFBB +:101E8000E000002080B500AF0A210120FFF7E4FC4C +:101E90000346024A136000BF80BD00BFDC00002083 +:101EA0002DE9B04382B000AF5348FFF7BBFF0346B4 +:101EB0001A46524B1A70524B00221A804E4B1B7816 +:101EC000612B40F090804C4B5B782D2B4AD1022344 +:101ED000FB7138E04A4BB3F900301846FEF79AFA26 +:101EE00004460D46FB79444AD35C303B1846FEF766 +:101EF00091FA80468946414B1B785A1EFB79D31ACA +:101F00001846FEF787FA02460B464FF000003D499F +:101F100000F012FC02460B4640464946FEF7E4FA42 +:101F200002460B4620462946FEF728F902460B4694 +:101F300010461946FEF788FD03461AB2304B1A8048 +:101F4000FB790133FB712D4B1B78FA799A42C1D38F +:101F50002B4BB3F900309BB25B429BB21AB2284BB9 +:101F60001A8040E00123BB7138E0254BB3F9003003 +:101F70001846FEF74FFA04460D46BB791E4AD35C5D +:101F8000303B1846FEF746FA804689461B4B1B78C5 +:101F90005A1EBB79D31A1846FEF73CFA02460B4686 +:101FA0004FF00000174900F0C7FB02460B464046C1 +:101FB0004946FEF799FA02460B4620462946FEF7A7 +:101FC000DDF802460B4610461946FEF73DFD034676 +:101FD0001AB20B4B1A80BB790133BB71074B1B78CC +:101FE000BA799A42C1D3064BB3F900301846083784 +:101FF000BD46BDE8B08300BFF4000020F000002023 +:102000000A0100200000244080B582B000AF002308 +:102010007B800023FB800023BB80FFF741FF03464A +:102020007B807B885A339BB2FB80B7F90630B42B98 +:1020300004DDFB88A3F5B4739BB2FB80FA887B8830 +:10204000D31A9BB2BB80012200210020FFF7B0F918 +:10205000002205210020FFF7ABF91E20FFF7DCFD71 +:102060001E20FFF737FEB7F9043013F1B40F04DA7E +:10207000BB8803F5B4739BB2BB80B7F90430002B67 +:102080001EDC0020FFF726FE0020FFF7C5FD08201C +:10209000FFF736FC0A20FFF733FC1048FFF77EFEFF +:1020A0000F48FFF77BFE0F4B1B681846FEF7C2FF79 +:1020B00003461846FFF788FE0948FFF76FFE09E060 +:1020C000FFF7EEFE03467B80FA887B88D31A9BB22B +:1020D000BB80B8E700BF0837BD4680BD1835000893 +:1020E0001C350008E800002080B582B000AF002356 +:1020F0007B800023FB800023BB80FFF7D1FE0346DB +:102100007B807B885A3B9BB2FB80B7F9063013F18A +:10211000B40F04DAFB8803F5B4739BB2FB80FA8832 +:102120007B88D31A9BB2BB80012200210020FFF7DD +:102130003FF9002205210020FFF73AF91E20FFF7A2 +:102140006BFD1E20FFF7C6FDB7F90430B42B04DD8C +:10215000BB88A3F5B4739BB2BB80B7F90430002BE6 +:102160001EDB0020FFF7B6FD0020FFF755FD08201D +:10217000FFF7C6FB0A20FFF7C3FB1048FFF70EFE70 +:102180000F48FFF70BFE0F4B1B681846FEF752FF78 +:1021900003461846FFF718FE0948FFF7FFFD09E060 +:1021A000FFF77EFE03467B80FA887B88D31A9BB2BA +:1021B000BB80B9E700BF0837BD4680BD18350008B1 +:1021C0001C350008E800002080B582B000AF002375 +:1021D0007B600820FFF794FB0A20FFF791FBFFF7D5 +:1021E000ABFB4FF433737B601C4B1B881846FFF727 +:1021F00013FD1A4B1B881846FFF76CFD184B1B6824 +:10220000002BB8BF5B421A467B689342ECD808208B +:10221000FFF776FB0A20FFF773FB104B00221A80B2 +:102220000020FFF757FD0020FFF7F6FC0D48FFF7F1 +:10223000B5FD0D48FFF7B2FD0C4B1B681846FEF7C5 +:10224000F9FE03461846FFF7BFFD0748FFF7A6FD56 +:1022500000BF00BF0837BD4680BD00BF0801002099 +:10226000DC000020203500081C350008E8000020B4 +:1022700098B500AFFEF766FF03461A46224B1A8058 +:10228000214B1B881846FEF7C5F81DA3D3E9002390 +:10229000FEF72AF902460B46104619464FF0000297 +:1022A0001A4BFEF74BFA02460B4610461946FEF74C +:1022B00013FC0346164A1360164B1B881A46164B2E +:1022C0001B8813441846FEF711FD0246104B1B688D +:1022D00019461046FEF75EFD03461C460E4B1B8852 +:1022E0001846FEF703FD034619462046FEF706FE94 +:1022F00003461A46094B1A6000BF98BDAFF3008031 +:102300006666666666660A40E40000200000B0402B +:10231000EC0000200000002002000020E800002067 +:102320002DE9B04382B000AFFFF734FB0221022059 +:10233000FFF742FB03210220FFF73EFB00210220B2 +:10234000FFF73AFB00210120FFF736FB01210120B6 +:10235000FFF732FB09210220FFF72EFB0A220121A1 +:102360000020FEF74FFF022200210020FEF74AFF67 +:102370000A2206210020FEF745FF02220521002047 +:10238000FEF740FF042208210020FEF73BFF042255 +:1023900009210020FEF736FF04220A210120FEF762 +:1023A00031FF04220B210120FEF72CFF0022002127 +:1023B0000120FEF727FF00210820FEF7CFFE0121B4 +:1023C0000A20FEF7CBFE08217B48FFF7F1F80A212F +:1023D0007A48FFF7EDF8FFF789F800210820FFF7AA +:1023E00099F800210A20FFF795F8FEF749FE012130 +:1023F0000820FEF75DFE1720FFF7AAFA2820FFF756 +:10240000A7FAFFF71BFBFFF7A1FBFFF715FCFFF790 +:1024100071FC6B496B48FFF745FB6B48FFF702FD0A +:1024200003461A46694B1A70674B1B78792B40F0AC +:10243000A7800020FFF7F0FB0020FFF74BFC624B6A +:102440005B782D2B4CD1002200210020FEF7B0FF3D +:10245000002205210020FEF7ABFF0223FB7137E0CD +:102460005B4B1B881846FDF7D5FF04460D46FB79EC +:10247000554AD35C303B1846FDF7CCFF8046894671 +:10248000524B1B785A1EFB79D31A1846FDF7C2FF30 +:1024900002460B464FF000004E4900F04DF902464F +:1024A0000B4640464946FEF71FF802460B462046BB +:1024B0002946FDF763FE02460B4610461946FEF715 +:1024C000EBFA03469AB2424B1A80FB790133FB7157 +:1024D0003E4B1B78FA799A42C2D3FFF775FE9CE710 +:1024E000012200210020FEF763FF012205210020C8 +:1024F000FEF75EFF0123BB7137E0354B1B881846A2 +:10250000FDF788FF04460D46BB792F4AD35C303B6C +:102510001846FDF77FFF804689462C4B1B785A1ED4 +:10252000BB79D31A1846FDF775FF02460B464FF0EC +:102530000000284900F000F902460B464046494693 +:10254000FDF7D2FF02460B4620462946FDF716FE50 +:1025500002460B4610461946FEF79EFA03469AB20B +:102560001B4B1A80BB790133BB71184B1B78BA79AE +:102570009A42C2D3164B1B881846FFF725FE4CE73C +:10258000114B1B786D2B0FD10020FFF745FB00206E +:10259000FFF7A0FB0C4B5B782D2B02D1FFF734FD2E +:1025A0003BE7FFF7A1FD38E70020FFF793FB002092 +:1025B000FFF732FB31E700BF691E0008851E0008E7 +:1025C0007122000840420F00F4000020F0000020BB +:1025D00008010020000024400D488546AFF300802C +:1025E0000C480D490D4A002302E0D458C45004336E +:1025F000C4188C42F9D30A4A0A4C002301E0136044 +:102600000432A242FBD300F017F8FFF789FEFEE781 +:1026100000500020000000206800002080350008E5 +:10262000680000200C010020FEE70000014B186844 +:10263000704700BF0400002070B500260C4D0D4C03 +:10264000641BA410A64209D100F058FF00260A4DD1 +:102650000A4C641BA410A64205D170BD55F8043B7A +:1026600098470136EEE755F8043B98470136F2E704 +:102670007835000878350008783500087C35000882 +:10268000931E222B10B50C4604D900231C460B7058 +:10269000204610BD0A2A09D1002807DA2D230B7025 +:1026A00001214042214400F005F8F1E70021F9E75B +:1026B000FFF7E6BFF0B58BB005460B466E461D4CE6 +:1026C00004F1200C374620686168083403C764456C +:1026D0003E46F7D1217920683971911E2229386050 +:1026E0004FF0000104D919700B4618460BB0F0BD2D +:1026F000581E8446B5FBF2F702FB175628366E4487 +:1027000016F8286C0C460CF8016F2E46B2423D4676 +:1027100001F10101EED900225A541919A51AAA4251 +:10272000E3DA10F8015F0E780132067001F8015902 +:10273000F4E700BF233500082DE9F84314461D4691 +:102740008046894600F060F8224606460F462B4632 +:1027500020462946FEF762F9C8BB00220023404606 +:102760004946FEF729F9B8B1002200232046294640 +:10277000FEF722F9002841D12046294600F039FE13 +:1027800028B30022002320462946FEF71FF9F0B1A6 +:10279000FFF74CFF222319E03046394600F029FEAE +:1027A000C8B94046494600F024FEA0B1204629465B +:1027B00000F01FFE78B132463B4630463946FEF700 +:1027C0002DF90028E4D0FFF731FF212303603046C4 +:1027D0003946BDE8F8830022002330463946FEF72B +:1027E000EBF80028F3D04046494600F002FE0028EE +:1027F000EDD02046294600F0FCFDC8E70026014F39 +:10280000E5E700BF0000F03F2DE9F04F93B0CDE9C0 +:102810000223DDE9022727F00046894656EA020135 +:10282000804611D1031889F4002252419942824B0B +:10283000934180F0B984DDE9022340464946FDF723 +:102840009DFC83468C466FE07C4B29F000449C4203 +:102850004D46824606DC01D10028ECD19E4201DCC7 +:102860000FD172B105F1404505F5801555EA0A050D +:10287000E1D1DDE90232DB1882F4002252419D42AF +:10288000D5E7002D39DA6E4B9E4252DCA3F154732A +:102890009E4240F39C843315A3F2FF33142B0FDDCB +:1028A000C3F1340322FA03F101FA03F3934240F037 +:1028B0008E8401F00101C1F10203009382B15DE059 +:1028C000002A59D1C3F1140346FA03F101FA03F3C4 +:1028D000B34240F0798401F00101C1F10203009399 +:1028E000584B9E4232D1002F80F26A8442464B46BA +:1028F00000205449FDF722FFA3E700230093002A9C +:102900003CD14E4B9E42EBD104F1404303F5801382 +:1029100053EA0A0300F048844B4B9C420BDD002F26 +:10292000C0F24884DDE902BC5846614613B0BDE8F8 +:10293000F08F0223E2E7002F4FF0000B4FF0000C66 +:10294000F2DADDE902B303F1004CEDE7B7F1804FB5 +:1029500006D142464B4640464946FDF7C5FD70E765 +:102960003A4B9F420AD1002D08DB4046494613B03E +:10297000BDE8F04F00F05EBC00230093404649469E +:1029800000F034FD83468C46BAF1000F28D124B103 +:102990002C4B25F040429A4222D1002F07DA5A46AA +:1029A000634600202749FDF7C9FE83468C46002D6B +:1029B000BADA009B04F1404404F58014234308D1A3 +:1029C0005A46634658466146FDF7D6FB02460B461B +:1029D00090E7009B012BA7D10CF100439C46A3E795 +:1029E000EB0F013B0C930C9A009B134304D142461E +:1029F0004B4640464946E7E7154B9E4240F3F6807A +:102A000003F104739E42104B09DD9C420CDC002F45 +:102A10000CDA002013B0BDE8F04F00F0E2BC9C429D +:102A2000F5DB084B9C4215DD002FF2DC002013B0D3 +:102A3000BDE8F04F00F0D0BC0000F0FF0000F07FD8 +:102A4000FFFF3F430000F03FFFFFEF3F0000E03F8C +:102A50000000E0416146002258465F4BFDF78CFBC9 +:102A600055A3D3E9002304460D46FDF73DFD54A3CD +:102A7000D3E9002306460F4620462946FDF734FDDC +:102A8000002282468B4620462946544BFDF72CFDFA +:102A900002460B464CA1D1E90001FDF76DFB224631 +:102AA0002B46FDF721FD02460B4600204C49FDF761 +:102AB00063FB22462B468046894620462946FDF781 +:102AC00013FD02460B4640464946FDF70DFD40A367 +:102AD000D3E90023FDF708FD02460B465046594650 +:102AE000FDF74AFB4FF0000A02460B4604460D462E +:102AF00030463946FDF742FB32463B4650468B4650 +:102B0000FDF73AFB02460B4620462946FDF734FB0B +:102B1000DDE90267009B0C9A013B13434FF000066E +:102B20004FF000020CBF2F4B2B4B04460D46DDE946 +:102B30000201CDE9002332463B46FDF71DFB52461C +:102B40005B46FDF7D1FCDDE902238046894620463D +:102B50002946FDF7C9FC02460B4640464946FDF7AB +:102B60000DFB32463B468046894650465946FDF7A6 +:102B7000BBFC04460D460B46024649464046CDE99D +:102B80000245FDF7FBFA184B824699420F460E4666 +:102B900040F3E58201F13F4303F5E003034300F016 +:102BA000DF81DDE9000100220023FDF70FFF00387F +:102BB00018BF01202EE700BF000000604715F73F57 +:102BC00044DF5DF80BAE543E555555555555D53F30 +:102BD000FE822B654715F73F0000F03F0000D03F15 +:102BE0000000E03F0000F0BFFFFF8F40D24B00220B +:102BF0002B4043B958466146D04BFDF775FC6FF04A +:102C0000340283460C462315A3F2FF3313440B937F +:102C1000CB4BC4F3130444F07F559C4245F440155C +:102C200008DDC84B9C4240F399810B9BA5F58015AC +:102C300001330B930026F3000D93C34B584603EB6F +:102C4000C603D3E9003429461A46CDE908342346A1 +:102C5000FDF792FADA462B465246CDE90E01DDE940 +:102C60000801FDF78BFA02460B460020B749FDF735 +:102C700065FD02460B46CDE91001DDE90E01FDF7C9 +:102C800033FCCDE90601DDE90634CDE90434002347 +:102C90000022AB466D1045F00055049305F5002564 +:102CA000DDE9048905EB86434046494614461D4646 +:102CB000FDF71AFC02460B46DDE90E01FDF75CFA52 +:102CC000DDE9082306460F4620462946FDF754FA5B +:102CD00002460B4650465946FDF74EFA42464B46D1 +:102CE000FDF702FC02460B4630463946FDF744FA32 +:102CF000DDE91023FDF7F8FBDDE90623CDE9080146 +:102D000010461946FDF7F0FB79A3D3E900230446EA +:102D10000D46FDF7E9FB78A3D3E90023FDF72EFA72 +:102D200022462B46FDF7E0FB75A3D3E90023FDF710 +:102D300025FA22462B46FDF7D7FB73A3D3E90023E0 +:102D4000FDF71CFA22462B46FDF7CEFB70A3D3E914 +:102D50000023FDF713FA22462B46FDF7C5FB6EA3B1 +:102D6000D3E90023FDF70AFA224606460F462B4612 +:102D700020462946FDF7B8FB02460B463046394649 +:102D8000FDF7B2FB04460D46DDE9060142464B461F +:102D9000FDF7F4F9DDE90823FDF7A6FB22462B46F3 +:102DA000FDF7ECF9424606460F464B46404649467B +:102DB000FDF79AFB0022664B82468B46FDF7DEF953 +:102DC00032463B46FDF7DAF900240D4622460B4613 +:102DD00040464946FDF788FB00228046894620464A +:102DE00029465B4BFDF7C8F952465B46FDF7C4F92F +:102DF00002460B4630463946FDF7BEF9DDE90623AB +:102E0000FDF772FB224606460F46DDE908012B4618 +:102E1000FDF76AFB02460B4630463946FDF7AEF930 +:102E2000002406460F4602460B4640464946FDF73B +:102E3000A5F93BA3D3E9002320460D46FDF754FB3B +:102E400042464B46CDE9060120462946FDF794F956 +:102E500002460B4630463946FDF78EF932A3D3E9D8 +:102E60000023FDF741FB32A3D3E9002306460F46BA +:102E700020462946FDF738FB02460B4630463946C8 +:102E8000FDF77CF90D9A334B4FF0000A1344D3E958 +:102E90000023FDF773F980460B988946FDF7BAFACF +:102EA00004460D460D9A2C4B1344D3E90067424665 +:102EB000DDE906014B46FDF761F932463B46FDF779 +:102EC0005DF922462B46FDF759F922462B4650461E +:102ED0008B46FDF751F932463B46FDF74DF9DDE9EA +:102EE0000623FDF749F902460B46404649460DE6E2 +:102EF000EF4E454A287ECA3F65DBC9934A86CD3FDF +:102F000001411DA96074D13F4D268F515555D53FC4 +:102F1000FFAB6FDBB66DDB3F033333333333E33F5C +:102F2000000000E009C7EE3FFD033ADC09C7EE3FB1 +:102F3000F5015B14E02F3EBE0000F07F000040432F +:102F40008E98030079B60B00483500080000F03F6A +:102F500000000840683500085835000801266AE678 +:102F60009DA3D3E9002340464946FDF707F92246D1 +:102F7000CDE904012B4650463946FDF7FDF80246DF +:102F80000B46DDE90401FDF73FFD00287FF409AEA3 +:102F9000A34A26F00043934240F301814FF4801A84 +:102FA00000201B15A3F2FE334AFA03F33344C3F3A4 +:102FB0000A529C4FA2F2FF321741C3F3130A23EACD +:102FC0000701C2F114024AF4801A0B464AFA02FAC7 +:102FD000002E024629462046B8BFCAF1000AFDF776 +:102FE000CBF8CDE90201DDE90201002442464B465F +:102FF000FDF7C4F87AA3D3E9002320460D46FDF778 +:1030000073FADDE9022306460F4620462946FDF7FE +:10301000B3F802460B4640464946FDF7ADF872A3A9 +:10302000D3E90023FDF760FA71A3D3E900238046BA +:10303000894620462946FDF757FA02460B46404688 +:103040004946FDF79BF804460D4602460B463046BE +:103050003946FDF793F832463B4680468946FDF7F0 +:103060008BF802460B4620462946FDF785F8424676 +:1030700006460F464B4640464946FDF735FA5EA3E5 +:10308000D3E9002304460D46FDF72EFA5CA3D3E9ED +:103090000023FDF771F822462B46FDF725FA5AA3C7 +:1030A000D3E90023FDF76AF822462B46FDF71CFA08 +:1030B00057A3D3E90023FDF75FF822462B46FDF71F +:1030C00013FA55A3D3E90023FDF758F822462B46FF +:1030D000FDF70AFA02460B4640464946FDF74CF812 +:1030E00004460D4602460B4640464946FDF7FCF9AC +:1030F0000022CDE902014FF0804320462946FDF72A +:103100003BF802460B46DDE90201FDF717FB3246AC +:1031100004460D463B4640464946FDF7E5F9324632 +:103120003B46FDF72BF802460B4620462946FDF7A5 +:1031300023F842464B46FDF71FF802460B46002097 +:103140003949FDF719F801EB0A54B4F5801F29DA63 +:10315000524600F055F9DDE90023FFF7FEBB334B83 +:1031600021F000479F427FF713AF314B0B440343DD +:1031700009D0DDE9000100220023FDF727FC00381B +:1031800018BF012053E422462B46FCF7F5FF4246C8 +:103190004B46FDF72FFC00283FF4FAAEE9E74FF06D +:1031A000000A20E72146D6E74FF0000BDFF878C091 +:1031B000FFF7BABB4FF0000B4FF0000CFFF7B4BBAA +:1031C00040464946FFF73DBB0092FFF789BB00230D +:1031D000FFF773BBAFF30080FE822B654715973C6A +:1031E00000000000432EE63FEF39FAFE422EE63F94 +:1031F000396CA80C615C20BED0A4BE726937663EF3 +:10320000F16BD2C541BDBB3E2CDE25AF6A56113FE6 +:1032100093BDBE166CC1663F3E5555555555C53FCD +:103220000000E03FFFFF0F000000F03FFFCB9040A9 +:1032300000346F3FDFF858C12DE9F0413CEA010C42 +:1032400006460D460C460A46074603460FD102467F +:103250000B46FDF749F902460B4630462946FCF776 +:103260008DFF06460D4630462946BDE8F08100290F +:103270000EDC21F0004C5CEA0707F4D041B10246B5 +:103280000B46FCF779FF02460B46FDF757FAE8E7D5 +:10329000211575D0CC074FF00004C2F31302A1F240 +:1032A000FF3742F480125EBFD90F5B0001EB420290 +:1032B000D90F01EB4202162520464FF400117F1072 +:1032C0005B0046189642DEBF921B701864185200CD +:1032D000013D02EBD3724FEA51014FEA4303F0D1B3 +:1032E00029464FF0200E4FF00046824206EB050CB7 +:1032F00002DC13D19C4511D8BCF1000F0CEB060584 +:1033000043DA002D41DB00F10108121A40469C45CA +:1033100088BF02F1FF32A3EB0C0331444FEAD37CA8 +:10332000BEF1010E0CEB42024FEA43034FEA560690 +:10333000DBD1134306D0481C0BBF71460131013469 +:1033400021F001016310490803F17F53E20703F5FF +:10335000001348BF41F000410E4603EB075582E7DA +:10336000DA0A15385B05002AFAD0D5020AD5C1F170 +:10337000200423FA04F44D1E8B402243411B89E7AD +:103380000846F0E752000131EFE78046BDE700BF95 +:103390000000F07F70B504460D461646FFF746F96B +:1033A00029460660204670BD37B515461C4680B1DB +:1033B000104603F10041CDE90001DDE90023284674 +:1033C0002146FDF791F8222203B0BDE83040FFF717 +:1033D000E1BF10461946EEE700224FF08053FFF799 +:1033E000E3BF00224FF0E043FFF7DEBF21F00041D2 +:1033F000704741F0004000F58010C00F704700009A +:10340000F8B5C1F30A5604460D4617460B4696B961 +:1034100021F00043034339D0334B0022FDF764F819 +:10342000324B04469F420D460FDA2BA3D3E900230B +:10343000FDF75AF806E040F2FF7296420AD10246C2 +:10344000FCF79CFE04460D4620E00B46C1F30A51F2 +:10345000A1F1360640F2FE72B91991420EDD05F077 +:10346000004444F0FC4141F45F1141F41051204804 +:1034700041F03C011AA3D3E90023D9E7002908DD74 +:1034800023F0FF4323F4E00343EA01552046294695 +:10349000F8BD11F1350F12DA4CF250339F424FEA6A +:1034A000D5734FEAC374DCDC0BA3D3E9002344F0EB +:1034B000D27141F4B7310F4841F01F01B8E723F052 +:1034C000FF43363123F4E00343EA01552046294601 +:1034D0000022094BACE700BF59F3F8C21F6EA501EB +:1034E0009C7500883CE4377E00005043B03CFFFFF1 +:1034F0009C75008859F3F8C20000903CF8B500BFF5 +:10350000F8BC08BC9E467047F8B500BFF8BC08BCC4 +:043510009E4670471C +:10351800733200000D0A0000733100303132333449 +:1035280035363738396162636465666768696A6B1E +:103538006C6D6E6F707172737475767778797A00C6 +:10354800000000000000F03F000000000000F83F0D +:1035580000000000000000000000004003B8E23F47 +:10356800000000000000000006D0CF43EBFD4C3EF9 +:0435780055010008F1 +:04357C003101000811 +:1035800030754C1D08000020000000000000000005 +:10359000000000000000000000000000000000002B +:1035A000000000000000000000000000000000001B +:1035B000000000000000000000000000000000000B +:1035C00000000000000000000000000000000000FB +:1035D00000000000000000000000000000000000EB +:0835E0000000000000000000E3 +:04000005080025D9F1 :00000001FF diff --git a/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.list b/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.list index 380802c..ea4a281 100644 --- a/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.list +++ b/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.list @@ -5,45 +5,45 @@ Sections: Idx Name Size VMA LMA File off Algn 0 .isr_vector 00000130 08000000 08000000 00010000 2**0 CONTENTS, ALLOC, LOAD, READONLY, DATA - 1 .text 00002bdc 08000130 08000130 00010130 2**3 + 1 .text 000033e4 08000130 08000130 00010130 2**3 CONTENTS, ALLOC, LOAD, READONLY, CODE - 2 .rodata 00000048 08002d10 08002d10 00012d10 2**3 + 2 .rodata 00000060 08003518 08003518 00013518 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA - 3 .ARM.extab 00000000 08002d58 08002d58 00020064 2**0 + 3 .ARM.extab 00000000 08003578 08003578 00020068 2**0 CONTENTS - 4 .ARM 00000000 08002d58 08002d58 00020064 2**0 + 4 .ARM 00000000 08003578 08003578 00020068 2**0 CONTENTS - 5 .preinit_array 00000000 08002d58 08002d58 00020064 2**0 + 5 .preinit_array 00000000 08003578 08003578 00020068 2**0 CONTENTS, ALLOC, LOAD, DATA - 6 .init_array 00000004 08002d58 08002d58 00012d58 2**2 + 6 .init_array 00000004 08003578 08003578 00013578 2**2 CONTENTS, ALLOC, LOAD, DATA - 7 .fini_array 00000004 08002d5c 08002d5c 00012d5c 2**2 + 7 .fini_array 00000004 0800357c 0800357c 0001357c 2**2 CONTENTS, ALLOC, LOAD, DATA - 8 .data 00000064 20000000 08002d60 00020000 2**2 + 8 .data 00000068 20000000 08003580 00020000 2**2 CONTENTS, ALLOC, LOAD, DATA - 9 .bss 00000098 20000064 08002dc4 00020064 2**2 + 9 .bss 000000a4 20000068 080035e8 00020068 2**2 ALLOC - 10 ._user_heap_stack 00000604 200000fc 08002dc4 000200fc 2**0 + 10 ._user_heap_stack 00000604 2000010c 080035e8 0002010c 2**0 ALLOC - 11 .ARM.attributes 00000029 00000000 00000000 00020064 2**0 + 11 .ARM.attributes 00000029 00000000 00000000 00020068 2**0 CONTENTS, READONLY - 12 .debug_info 00001936 00000000 00000000 0002008d 2**0 + 12 .debug_info 000019c9 00000000 00000000 00020091 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 13 .debug_abbrev 00000ba5 00000000 00000000 000219c3 2**0 + 13 .debug_abbrev 00000bb6 00000000 00000000 00021a5a 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 14 .debug_aranges 00000350 00000000 00000000 00022568 2**3 + 14 .debug_aranges 00000358 00000000 00000000 00022610 2**3 CONTENTS, READONLY, DEBUGGING, OCTETS - 15 .debug_ranges 00000288 00000000 00000000 000228b8 2**3 + 15 .debug_ranges 00000290 00000000 00000000 00022968 2**3 CONTENTS, READONLY, DEBUGGING, OCTETS - 16 .debug_macro 000026f3 00000000 00000000 00022b40 2**0 + 16 .debug_macro 00002683 00000000 00000000 00022bf8 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 17 .debug_line 000022ae 00000000 00000000 00025233 2**0 + 17 .debug_line 000023b6 00000000 00000000 0002527b 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 18 .debug_str 00009a7a 00000000 00000000 000274e1 2**0 + 18 .debug_str 00009aa4 00000000 00000000 00027631 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 19 .comment 00000050 00000000 00000000 00030f5b 2**0 + 19 .comment 00000050 00000000 00000000 000310d5 2**0 CONTENTS, READONLY - 20 .debug_frame 00000ef0 00000000 00000000 00030fac 2**2 + 20 .debug_frame 0000105c 00000000 00000000 00031128 2**2 CONTENTS, READONLY, DEBUGGING, OCTETS Disassembly of section .text: @@ -60,9 +60,9 @@ Disassembly of section .text: 8000142: 2301 movs r3, #1 8000144: 7023 strb r3, [r4, #0] 8000146: bd10 pop {r4, pc} - 8000148: 20000064 .word 0x20000064 + 8000148: 20000068 .word 0x20000068 800014c: 00000000 .word 0x00000000 - 8000150: 08002cf4 .word 0x08002cf4 + 8000150: 080034fc .word 0x080034fc 08000154 : 8000154: b508 push {r3, lr} @@ -73,8 +73,8 @@ Disassembly of section .text: 800015e: f3af 8000 nop.w 8000162: bd08 pop {r3, pc} 8000164: 00000000 .word 0x00000000 - 8000168: 20000068 .word 0x20000068 - 800016c: 08002cf4 .word 0x08002cf4 + 8000168: 2000006c .word 0x2000006c + 800016c: 080034fc .word 0x080034fc 08000170 <__aeabi_drsub>: 8000170: f081 4100 eor.w r1, r1, #2147483648 ; 0x80000000 @@ -886,4769 +886,5548 @@ Disassembly of section .text: 8000ad2: f04f 0000 mov.w r0, #0 8000ad6: 4770 bx lr -08000ad8 : +08000ad8 <__aeabi_d2f>: + 8000ad8: ea4f 0241 mov.w r2, r1, lsl #1 + 8000adc: f1b2 43e0 subs.w r3, r2, #1879048192 ; 0x70000000 + 8000ae0: bf24 itt cs + 8000ae2: f5b3 1c00 subscs.w ip, r3, #2097152 ; 0x200000 + 8000ae6: f1dc 5cfe rsbscs ip, ip, #532676608 ; 0x1fc00000 + 8000aea: d90d bls.n 8000b08 <__aeabi_d2f+0x30> + 8000aec: f001 4c00 and.w ip, r1, #2147483648 ; 0x80000000 + 8000af0: ea4f 02c0 mov.w r2, r0, lsl #3 + 8000af4: ea4c 7050 orr.w r0, ip, r0, lsr #29 + 8000af8: f1b2 4f00 cmp.w r2, #2147483648 ; 0x80000000 + 8000afc: eb40 0083 adc.w r0, r0, r3, lsl #2 + 8000b00: bf08 it eq + 8000b02: f020 0001 biceq.w r0, r0, #1 + 8000b06: 4770 bx lr + 8000b08: f011 4f80 tst.w r1, #1073741824 ; 0x40000000 + 8000b0c: d121 bne.n 8000b52 <__aeabi_d2f+0x7a> + 8000b0e: f113 7238 adds.w r2, r3, #48234496 ; 0x2e00000 + 8000b12: bfbc itt lt + 8000b14: f001 4000 andlt.w r0, r1, #2147483648 ; 0x80000000 + 8000b18: 4770 bxlt lr + 8000b1a: f441 1180 orr.w r1, r1, #1048576 ; 0x100000 + 8000b1e: ea4f 5252 mov.w r2, r2, lsr #21 + 8000b22: f1c2 0218 rsb r2, r2, #24 + 8000b26: f1c2 0c20 rsb ip, r2, #32 + 8000b2a: fa10 f30c lsls.w r3, r0, ip + 8000b2e: fa20 f002 lsr.w r0, r0, r2 + 8000b32: bf18 it ne + 8000b34: f040 0001 orrne.w r0, r0, #1 + 8000b38: ea4f 23c1 mov.w r3, r1, lsl #11 + 8000b3c: ea4f 23d3 mov.w r3, r3, lsr #11 + 8000b40: fa03 fc0c lsl.w ip, r3, ip + 8000b44: ea40 000c orr.w r0, r0, ip + 8000b48: fa23 f302 lsr.w r3, r3, r2 + 8000b4c: ea4f 0343 mov.w r3, r3, lsl #1 + 8000b50: e7cc b.n 8000aec <__aeabi_d2f+0x14> + 8000b52: ea7f 5362 mvns.w r3, r2, asr #21 + 8000b56: d107 bne.n 8000b68 <__aeabi_d2f+0x90> + 8000b58: ea50 3301 orrs.w r3, r0, r1, lsl #12 + 8000b5c: bf1e ittt ne + 8000b5e: f04f 40fe movne.w r0, #2130706432 ; 0x7f000000 + 8000b62: f440 0040 orrne.w r0, r0, #12582912 ; 0xc00000 + 8000b66: 4770 bxne lr + 8000b68: f001 4000 and.w r0, r1, #2147483648 ; 0x80000000 + 8000b6c: f040 40fe orr.w r0, r0, #2130706432 ; 0x7f000000 + 8000b70: f440 0000 orr.w r0, r0, #8388608 ; 0x800000 + 8000b74: 4770 bx lr + 8000b76: bf00 nop + +08000b78 <__aeabi_frsub>: + 8000b78: f080 4000 eor.w r0, r0, #2147483648 ; 0x80000000 + 8000b7c: e002 b.n 8000b84 <__addsf3> + 8000b7e: bf00 nop + +08000b80 <__aeabi_fsub>: + 8000b80: f081 4100 eor.w r1, r1, #2147483648 ; 0x80000000 + +08000b84 <__addsf3>: + 8000b84: 0042 lsls r2, r0, #1 + 8000b86: bf1f itttt ne + 8000b88: ea5f 0341 movsne.w r3, r1, lsl #1 + 8000b8c: ea92 0f03 teqne r2, r3 + 8000b90: ea7f 6c22 mvnsne.w ip, r2, asr #24 + 8000b94: ea7f 6c23 mvnsne.w ip, r3, asr #24 + 8000b98: d06a beq.n 8000c70 <__addsf3+0xec> + 8000b9a: ea4f 6212 mov.w r2, r2, lsr #24 + 8000b9e: ebd2 6313 rsbs r3, r2, r3, lsr #24 + 8000ba2: bfc1 itttt gt + 8000ba4: 18d2 addgt r2, r2, r3 + 8000ba6: 4041 eorgt r1, r0 + 8000ba8: 4048 eorgt r0, r1 + 8000baa: 4041 eorgt r1, r0 + 8000bac: bfb8 it lt + 8000bae: 425b neglt r3, r3 + 8000bb0: 2b19 cmp r3, #25 + 8000bb2: bf88 it hi + 8000bb4: 4770 bxhi lr + 8000bb6: f010 4f00 tst.w r0, #2147483648 ; 0x80000000 + 8000bba: f440 0000 orr.w r0, r0, #8388608 ; 0x800000 + 8000bbe: f020 407f bic.w r0, r0, #4278190080 ; 0xff000000 + 8000bc2: bf18 it ne + 8000bc4: 4240 negne r0, r0 + 8000bc6: f011 4f00 tst.w r1, #2147483648 ; 0x80000000 + 8000bca: f441 0100 orr.w r1, r1, #8388608 ; 0x800000 + 8000bce: f021 417f bic.w r1, r1, #4278190080 ; 0xff000000 + 8000bd2: bf18 it ne + 8000bd4: 4249 negne r1, r1 + 8000bd6: ea92 0f03 teq r2, r3 + 8000bda: d03f beq.n 8000c5c <__addsf3+0xd8> + 8000bdc: f1a2 0201 sub.w r2, r2, #1 + 8000be0: fa41 fc03 asr.w ip, r1, r3 + 8000be4: eb10 000c adds.w r0, r0, ip + 8000be8: f1c3 0320 rsb r3, r3, #32 + 8000bec: fa01 f103 lsl.w r1, r1, r3 + 8000bf0: f000 4300 and.w r3, r0, #2147483648 ; 0x80000000 + 8000bf4: d502 bpl.n 8000bfc <__addsf3+0x78> + 8000bf6: 4249 negs r1, r1 + 8000bf8: eb60 0040 sbc.w r0, r0, r0, lsl #1 + 8000bfc: f5b0 0f00 cmp.w r0, #8388608 ; 0x800000 + 8000c00: d313 bcc.n 8000c2a <__addsf3+0xa6> + 8000c02: f1b0 7f80 cmp.w r0, #16777216 ; 0x1000000 + 8000c06: d306 bcc.n 8000c16 <__addsf3+0x92> + 8000c08: 0840 lsrs r0, r0, #1 + 8000c0a: ea4f 0131 mov.w r1, r1, rrx + 8000c0e: f102 0201 add.w r2, r2, #1 + 8000c12: 2afe cmp r2, #254 ; 0xfe + 8000c14: d251 bcs.n 8000cba <__addsf3+0x136> + 8000c16: f1b1 4f00 cmp.w r1, #2147483648 ; 0x80000000 + 8000c1a: eb40 50c2 adc.w r0, r0, r2, lsl #23 + 8000c1e: bf08 it eq + 8000c20: f020 0001 biceq.w r0, r0, #1 + 8000c24: ea40 0003 orr.w r0, r0, r3 + 8000c28: 4770 bx lr + 8000c2a: 0049 lsls r1, r1, #1 + 8000c2c: eb40 0000 adc.w r0, r0, r0 + 8000c30: 3a01 subs r2, #1 + 8000c32: bf28 it cs + 8000c34: f5b0 0f00 cmpcs.w r0, #8388608 ; 0x800000 + 8000c38: d2ed bcs.n 8000c16 <__addsf3+0x92> + 8000c3a: fab0 fc80 clz ip, r0 + 8000c3e: f1ac 0c08 sub.w ip, ip, #8 + 8000c42: ebb2 020c subs.w r2, r2, ip + 8000c46: fa00 f00c lsl.w r0, r0, ip + 8000c4a: bfaa itet ge + 8000c4c: eb00 50c2 addge.w r0, r0, r2, lsl #23 + 8000c50: 4252 neglt r2, r2 + 8000c52: 4318 orrge r0, r3 + 8000c54: bfbc itt lt + 8000c56: 40d0 lsrlt r0, r2 + 8000c58: 4318 orrlt r0, r3 + 8000c5a: 4770 bx lr + 8000c5c: f092 0f00 teq r2, #0 + 8000c60: f481 0100 eor.w r1, r1, #8388608 ; 0x800000 + 8000c64: bf06 itte eq + 8000c66: f480 0000 eoreq.w r0, r0, #8388608 ; 0x800000 + 8000c6a: 3201 addeq r2, #1 + 8000c6c: 3b01 subne r3, #1 + 8000c6e: e7b5 b.n 8000bdc <__addsf3+0x58> + 8000c70: ea4f 0341 mov.w r3, r1, lsl #1 + 8000c74: ea7f 6c22 mvns.w ip, r2, asr #24 + 8000c78: bf18 it ne + 8000c7a: ea7f 6c23 mvnsne.w ip, r3, asr #24 + 8000c7e: d021 beq.n 8000cc4 <__addsf3+0x140> + 8000c80: ea92 0f03 teq r2, r3 + 8000c84: d004 beq.n 8000c90 <__addsf3+0x10c> + 8000c86: f092 0f00 teq r2, #0 + 8000c8a: bf08 it eq + 8000c8c: 4608 moveq r0, r1 + 8000c8e: 4770 bx lr + 8000c90: ea90 0f01 teq r0, r1 + 8000c94: bf1c itt ne + 8000c96: 2000 movne r0, #0 + 8000c98: 4770 bxne lr + 8000c9a: f012 4f7f tst.w r2, #4278190080 ; 0xff000000 + 8000c9e: d104 bne.n 8000caa <__addsf3+0x126> + 8000ca0: 0040 lsls r0, r0, #1 + 8000ca2: bf28 it cs + 8000ca4: f040 4000 orrcs.w r0, r0, #2147483648 ; 0x80000000 + 8000ca8: 4770 bx lr + 8000caa: f112 7200 adds.w r2, r2, #33554432 ; 0x2000000 + 8000cae: bf3c itt cc + 8000cb0: f500 0000 addcc.w r0, r0, #8388608 ; 0x800000 + 8000cb4: 4770 bxcc lr + 8000cb6: f000 4300 and.w r3, r0, #2147483648 ; 0x80000000 + 8000cba: f043 40fe orr.w r0, r3, #2130706432 ; 0x7f000000 + 8000cbe: f440 0000 orr.w r0, r0, #8388608 ; 0x800000 + 8000cc2: 4770 bx lr + 8000cc4: ea7f 6222 mvns.w r2, r2, asr #24 + 8000cc8: bf16 itet ne + 8000cca: 4608 movne r0, r1 + 8000ccc: ea7f 6323 mvnseq.w r3, r3, asr #24 + 8000cd0: 4601 movne r1, r0 + 8000cd2: 0242 lsls r2, r0, #9 + 8000cd4: bf06 itte eq + 8000cd6: ea5f 2341 movseq.w r3, r1, lsl #9 + 8000cda: ea90 0f01 teqeq r0, r1 + 8000cde: f440 0080 orrne.w r0, r0, #4194304 ; 0x400000 + 8000ce2: 4770 bx lr + +08000ce4 <__aeabi_ui2f>: + 8000ce4: f04f 0300 mov.w r3, #0 + 8000ce8: e004 b.n 8000cf4 <__aeabi_i2f+0x8> + 8000cea: bf00 nop + +08000cec <__aeabi_i2f>: + 8000cec: f010 4300 ands.w r3, r0, #2147483648 ; 0x80000000 + 8000cf0: bf48 it mi + 8000cf2: 4240 negmi r0, r0 + 8000cf4: ea5f 0c00 movs.w ip, r0 + 8000cf8: bf08 it eq + 8000cfa: 4770 bxeq lr + 8000cfc: f043 4396 orr.w r3, r3, #1258291200 ; 0x4b000000 + 8000d00: 4601 mov r1, r0 + 8000d02: f04f 0000 mov.w r0, #0 + 8000d06: e01c b.n 8000d42 <__aeabi_l2f+0x2a> + +08000d08 <__aeabi_ul2f>: + 8000d08: ea50 0201 orrs.w r2, r0, r1 + 8000d0c: bf08 it eq + 8000d0e: 4770 bxeq lr + 8000d10: f04f 0300 mov.w r3, #0 + 8000d14: e00a b.n 8000d2c <__aeabi_l2f+0x14> + 8000d16: bf00 nop + +08000d18 <__aeabi_l2f>: + 8000d18: ea50 0201 orrs.w r2, r0, r1 + 8000d1c: bf08 it eq + 8000d1e: 4770 bxeq lr + 8000d20: f011 4300 ands.w r3, r1, #2147483648 ; 0x80000000 + 8000d24: d502 bpl.n 8000d2c <__aeabi_l2f+0x14> + 8000d26: 4240 negs r0, r0 + 8000d28: eb61 0141 sbc.w r1, r1, r1, lsl #1 + 8000d2c: ea5f 0c01 movs.w ip, r1 + 8000d30: bf02 ittt eq + 8000d32: 4684 moveq ip, r0 + 8000d34: 4601 moveq r1, r0 + 8000d36: 2000 moveq r0, #0 + 8000d38: f043 43b6 orr.w r3, r3, #1526726656 ; 0x5b000000 + 8000d3c: bf08 it eq + 8000d3e: f1a3 5380 subeq.w r3, r3, #268435456 ; 0x10000000 + 8000d42: f5a3 0300 sub.w r3, r3, #8388608 ; 0x800000 + 8000d46: fabc f28c clz r2, ip + 8000d4a: 3a08 subs r2, #8 + 8000d4c: eba3 53c2 sub.w r3, r3, r2, lsl #23 + 8000d50: db10 blt.n 8000d74 <__aeabi_l2f+0x5c> + 8000d52: fa01 fc02 lsl.w ip, r1, r2 + 8000d56: 4463 add r3, ip + 8000d58: fa00 fc02 lsl.w ip, r0, r2 + 8000d5c: f1c2 0220 rsb r2, r2, #32 + 8000d60: f1bc 4f00 cmp.w ip, #2147483648 ; 0x80000000 + 8000d64: fa20 f202 lsr.w r2, r0, r2 + 8000d68: eb43 0002 adc.w r0, r3, r2 + 8000d6c: bf08 it eq + 8000d6e: f020 0001 biceq.w r0, r0, #1 + 8000d72: 4770 bx lr + 8000d74: f102 0220 add.w r2, r2, #32 + 8000d78: fa01 fc02 lsl.w ip, r1, r2 + 8000d7c: f1c2 0220 rsb r2, r2, #32 + 8000d80: ea50 004c orrs.w r0, r0, ip, lsl #1 + 8000d84: fa21 f202 lsr.w r2, r1, r2 + 8000d88: eb43 0002 adc.w r0, r3, r2 + 8000d8c: bf08 it eq + 8000d8e: ea20 70dc biceq.w r0, r0, ip, lsr #31 + 8000d92: 4770 bx lr + +08000d94 <__aeabi_fmul>: + 8000d94: f04f 0cff mov.w ip, #255 ; 0xff + 8000d98: ea1c 52d0 ands.w r2, ip, r0, lsr #23 + 8000d9c: bf1e ittt ne + 8000d9e: ea1c 53d1 andsne.w r3, ip, r1, lsr #23 + 8000da2: ea92 0f0c teqne r2, ip + 8000da6: ea93 0f0c teqne r3, ip + 8000daa: d06f beq.n 8000e8c <__aeabi_fmul+0xf8> + 8000dac: 441a add r2, r3 + 8000dae: ea80 0c01 eor.w ip, r0, r1 + 8000db2: 0240 lsls r0, r0, #9 + 8000db4: bf18 it ne + 8000db6: ea5f 2141 movsne.w r1, r1, lsl #9 + 8000dba: d01e beq.n 8000dfa <__aeabi_fmul+0x66> + 8000dbc: f04f 6300 mov.w r3, #134217728 ; 0x8000000 + 8000dc0: ea43 1050 orr.w r0, r3, r0, lsr #5 + 8000dc4: ea43 1151 orr.w r1, r3, r1, lsr #5 + 8000dc8: fba0 3101 umull r3, r1, r0, r1 + 8000dcc: f00c 4000 and.w r0, ip, #2147483648 ; 0x80000000 + 8000dd0: f5b1 0f00 cmp.w r1, #8388608 ; 0x800000 + 8000dd4: bf3e ittt cc + 8000dd6: 0049 lslcc r1, r1, #1 + 8000dd8: ea41 71d3 orrcc.w r1, r1, r3, lsr #31 + 8000ddc: 005b lslcc r3, r3, #1 + 8000dde: ea40 0001 orr.w r0, r0, r1 + 8000de2: f162 027f sbc.w r2, r2, #127 ; 0x7f + 8000de6: 2afd cmp r2, #253 ; 0xfd + 8000de8: d81d bhi.n 8000e26 <__aeabi_fmul+0x92> + 8000dea: f1b3 4f00 cmp.w r3, #2147483648 ; 0x80000000 + 8000dee: eb40 50c2 adc.w r0, r0, r2, lsl #23 + 8000df2: bf08 it eq + 8000df4: f020 0001 biceq.w r0, r0, #1 + 8000df8: 4770 bx lr + 8000dfa: f090 0f00 teq r0, #0 + 8000dfe: f00c 4c00 and.w ip, ip, #2147483648 ; 0x80000000 + 8000e02: bf08 it eq + 8000e04: 0249 lsleq r1, r1, #9 + 8000e06: ea4c 2050 orr.w r0, ip, r0, lsr #9 + 8000e0a: ea40 2051 orr.w r0, r0, r1, lsr #9 + 8000e0e: 3a7f subs r2, #127 ; 0x7f + 8000e10: bfc2 ittt gt + 8000e12: f1d2 03ff rsbsgt r3, r2, #255 ; 0xff + 8000e16: ea40 50c2 orrgt.w r0, r0, r2, lsl #23 + 8000e1a: 4770 bxgt lr + 8000e1c: f440 0000 orr.w r0, r0, #8388608 ; 0x800000 + 8000e20: f04f 0300 mov.w r3, #0 + 8000e24: 3a01 subs r2, #1 + 8000e26: dc5d bgt.n 8000ee4 <__aeabi_fmul+0x150> + 8000e28: f112 0f19 cmn.w r2, #25 + 8000e2c: bfdc itt le + 8000e2e: f000 4000 andle.w r0, r0, #2147483648 ; 0x80000000 + 8000e32: 4770 bxle lr + 8000e34: f1c2 0200 rsb r2, r2, #0 + 8000e38: 0041 lsls r1, r0, #1 + 8000e3a: fa21 f102 lsr.w r1, r1, r2 + 8000e3e: f1c2 0220 rsb r2, r2, #32 + 8000e42: fa00 fc02 lsl.w ip, r0, r2 + 8000e46: ea5f 0031 movs.w r0, r1, rrx + 8000e4a: f140 0000 adc.w r0, r0, #0 + 8000e4e: ea53 034c orrs.w r3, r3, ip, lsl #1 + 8000e52: bf08 it eq + 8000e54: ea20 70dc biceq.w r0, r0, ip, lsr #31 + 8000e58: 4770 bx lr + 8000e5a: f092 0f00 teq r2, #0 + 8000e5e: f000 4c00 and.w ip, r0, #2147483648 ; 0x80000000 + 8000e62: bf02 ittt eq + 8000e64: 0040 lsleq r0, r0, #1 + 8000e66: f410 0f00 tsteq.w r0, #8388608 ; 0x800000 + 8000e6a: 3a01 subeq r2, #1 + 8000e6c: d0f9 beq.n 8000e62 <__aeabi_fmul+0xce> + 8000e6e: ea40 000c orr.w r0, r0, ip + 8000e72: f093 0f00 teq r3, #0 + 8000e76: f001 4c00 and.w ip, r1, #2147483648 ; 0x80000000 + 8000e7a: bf02 ittt eq + 8000e7c: 0049 lsleq r1, r1, #1 + 8000e7e: f411 0f00 tsteq.w r1, #8388608 ; 0x800000 + 8000e82: 3b01 subeq r3, #1 + 8000e84: d0f9 beq.n 8000e7a <__aeabi_fmul+0xe6> + 8000e86: ea41 010c orr.w r1, r1, ip + 8000e8a: e78f b.n 8000dac <__aeabi_fmul+0x18> + 8000e8c: ea0c 53d1 and.w r3, ip, r1, lsr #23 + 8000e90: ea92 0f0c teq r2, ip + 8000e94: bf18 it ne + 8000e96: ea93 0f0c teqne r3, ip + 8000e9a: d00a beq.n 8000eb2 <__aeabi_fmul+0x11e> + 8000e9c: f030 4c00 bics.w ip, r0, #2147483648 ; 0x80000000 + 8000ea0: bf18 it ne + 8000ea2: f031 4c00 bicsne.w ip, r1, #2147483648 ; 0x80000000 + 8000ea6: d1d8 bne.n 8000e5a <__aeabi_fmul+0xc6> + 8000ea8: ea80 0001 eor.w r0, r0, r1 + 8000eac: f000 4000 and.w r0, r0, #2147483648 ; 0x80000000 + 8000eb0: 4770 bx lr + 8000eb2: f090 0f00 teq r0, #0 + 8000eb6: bf17 itett ne + 8000eb8: f090 4f00 teqne r0, #2147483648 ; 0x80000000 + 8000ebc: 4608 moveq r0, r1 + 8000ebe: f091 0f00 teqne r1, #0 + 8000ec2: f091 4f00 teqne r1, #2147483648 ; 0x80000000 + 8000ec6: d014 beq.n 8000ef2 <__aeabi_fmul+0x15e> + 8000ec8: ea92 0f0c teq r2, ip + 8000ecc: d101 bne.n 8000ed2 <__aeabi_fmul+0x13e> + 8000ece: 0242 lsls r2, r0, #9 + 8000ed0: d10f bne.n 8000ef2 <__aeabi_fmul+0x15e> + 8000ed2: ea93 0f0c teq r3, ip + 8000ed6: d103 bne.n 8000ee0 <__aeabi_fmul+0x14c> + 8000ed8: 024b lsls r3, r1, #9 + 8000eda: bf18 it ne + 8000edc: 4608 movne r0, r1 + 8000ede: d108 bne.n 8000ef2 <__aeabi_fmul+0x15e> + 8000ee0: ea80 0001 eor.w r0, r0, r1 + 8000ee4: f000 4000 and.w r0, r0, #2147483648 ; 0x80000000 + 8000ee8: f040 40fe orr.w r0, r0, #2130706432 ; 0x7f000000 + 8000eec: f440 0000 orr.w r0, r0, #8388608 ; 0x800000 + 8000ef0: 4770 bx lr + 8000ef2: f040 40fe orr.w r0, r0, #2130706432 ; 0x7f000000 + 8000ef6: f440 0040 orr.w r0, r0, #12582912 ; 0xc00000 + 8000efa: 4770 bx lr + +08000efc <__aeabi_fdiv>: + 8000efc: f04f 0cff mov.w ip, #255 ; 0xff + 8000f00: ea1c 52d0 ands.w r2, ip, r0, lsr #23 + 8000f04: bf1e ittt ne + 8000f06: ea1c 53d1 andsne.w r3, ip, r1, lsr #23 + 8000f0a: ea92 0f0c teqne r2, ip + 8000f0e: ea93 0f0c teqne r3, ip + 8000f12: d069 beq.n 8000fe8 <__aeabi_fdiv+0xec> + 8000f14: eba2 0203 sub.w r2, r2, r3 + 8000f18: ea80 0c01 eor.w ip, r0, r1 + 8000f1c: 0249 lsls r1, r1, #9 + 8000f1e: ea4f 2040 mov.w r0, r0, lsl #9 + 8000f22: d037 beq.n 8000f94 <__aeabi_fdiv+0x98> + 8000f24: f04f 5380 mov.w r3, #268435456 ; 0x10000000 + 8000f28: ea43 1111 orr.w r1, r3, r1, lsr #4 + 8000f2c: ea43 1310 orr.w r3, r3, r0, lsr #4 + 8000f30: f00c 4000 and.w r0, ip, #2147483648 ; 0x80000000 + 8000f34: 428b cmp r3, r1 + 8000f36: bf38 it cc + 8000f38: 005b lslcc r3, r3, #1 + 8000f3a: f142 027d adc.w r2, r2, #125 ; 0x7d + 8000f3e: f44f 0c00 mov.w ip, #8388608 ; 0x800000 + 8000f42: 428b cmp r3, r1 + 8000f44: bf24 itt cs + 8000f46: 1a5b subcs r3, r3, r1 + 8000f48: ea40 000c orrcs.w r0, r0, ip + 8000f4c: ebb3 0f51 cmp.w r3, r1, lsr #1 + 8000f50: bf24 itt cs + 8000f52: eba3 0351 subcs.w r3, r3, r1, lsr #1 + 8000f56: ea40 005c orrcs.w r0, r0, ip, lsr #1 + 8000f5a: ebb3 0f91 cmp.w r3, r1, lsr #2 + 8000f5e: bf24 itt cs + 8000f60: eba3 0391 subcs.w r3, r3, r1, lsr #2 + 8000f64: ea40 009c orrcs.w r0, r0, ip, lsr #2 + 8000f68: ebb3 0fd1 cmp.w r3, r1, lsr #3 + 8000f6c: bf24 itt cs + 8000f6e: eba3 03d1 subcs.w r3, r3, r1, lsr #3 + 8000f72: ea40 00dc orrcs.w r0, r0, ip, lsr #3 + 8000f76: 011b lsls r3, r3, #4 + 8000f78: bf18 it ne + 8000f7a: ea5f 1c1c movsne.w ip, ip, lsr #4 + 8000f7e: d1e0 bne.n 8000f42 <__aeabi_fdiv+0x46> + 8000f80: 2afd cmp r2, #253 ; 0xfd + 8000f82: f63f af50 bhi.w 8000e26 <__aeabi_fmul+0x92> + 8000f86: 428b cmp r3, r1 + 8000f88: eb40 50c2 adc.w r0, r0, r2, lsl #23 + 8000f8c: bf08 it eq + 8000f8e: f020 0001 biceq.w r0, r0, #1 + 8000f92: 4770 bx lr + 8000f94: f00c 4c00 and.w ip, ip, #2147483648 ; 0x80000000 + 8000f98: ea4c 2050 orr.w r0, ip, r0, lsr #9 + 8000f9c: 327f adds r2, #127 ; 0x7f + 8000f9e: bfc2 ittt gt + 8000fa0: f1d2 03ff rsbsgt r3, r2, #255 ; 0xff + 8000fa4: ea40 50c2 orrgt.w r0, r0, r2, lsl #23 + 8000fa8: 4770 bxgt lr + 8000faa: f440 0000 orr.w r0, r0, #8388608 ; 0x800000 + 8000fae: f04f 0300 mov.w r3, #0 + 8000fb2: 3a01 subs r2, #1 + 8000fb4: e737 b.n 8000e26 <__aeabi_fmul+0x92> + 8000fb6: f092 0f00 teq r2, #0 + 8000fba: f000 4c00 and.w ip, r0, #2147483648 ; 0x80000000 + 8000fbe: bf02 ittt eq + 8000fc0: 0040 lsleq r0, r0, #1 + 8000fc2: f410 0f00 tsteq.w r0, #8388608 ; 0x800000 + 8000fc6: 3a01 subeq r2, #1 + 8000fc8: d0f9 beq.n 8000fbe <__aeabi_fdiv+0xc2> + 8000fca: ea40 000c orr.w r0, r0, ip + 8000fce: f093 0f00 teq r3, #0 + 8000fd2: f001 4c00 and.w ip, r1, #2147483648 ; 0x80000000 + 8000fd6: bf02 ittt eq + 8000fd8: 0049 lsleq r1, r1, #1 + 8000fda: f411 0f00 tsteq.w r1, #8388608 ; 0x800000 + 8000fde: 3b01 subeq r3, #1 + 8000fe0: d0f9 beq.n 8000fd6 <__aeabi_fdiv+0xda> + 8000fe2: ea41 010c orr.w r1, r1, ip + 8000fe6: e795 b.n 8000f14 <__aeabi_fdiv+0x18> + 8000fe8: ea0c 53d1 and.w r3, ip, r1, lsr #23 + 8000fec: ea92 0f0c teq r2, ip + 8000ff0: d108 bne.n 8001004 <__aeabi_fdiv+0x108> + 8000ff2: 0242 lsls r2, r0, #9 + 8000ff4: f47f af7d bne.w 8000ef2 <__aeabi_fmul+0x15e> + 8000ff8: ea93 0f0c teq r3, ip + 8000ffc: f47f af70 bne.w 8000ee0 <__aeabi_fmul+0x14c> + 8001000: 4608 mov r0, r1 + 8001002: e776 b.n 8000ef2 <__aeabi_fmul+0x15e> + 8001004: ea93 0f0c teq r3, ip + 8001008: d104 bne.n 8001014 <__aeabi_fdiv+0x118> + 800100a: 024b lsls r3, r1, #9 + 800100c: f43f af4c beq.w 8000ea8 <__aeabi_fmul+0x114> + 8001010: 4608 mov r0, r1 + 8001012: e76e b.n 8000ef2 <__aeabi_fmul+0x15e> + 8001014: f030 4c00 bics.w ip, r0, #2147483648 ; 0x80000000 + 8001018: bf18 it ne + 800101a: f031 4c00 bicsne.w ip, r1, #2147483648 ; 0x80000000 + 800101e: d1ca bne.n 8000fb6 <__aeabi_fdiv+0xba> + 8001020: f030 4200 bics.w r2, r0, #2147483648 ; 0x80000000 + 8001024: f47f af5c bne.w 8000ee0 <__aeabi_fmul+0x14c> + 8001028: f031 4300 bics.w r3, r1, #2147483648 ; 0x80000000 + 800102c: f47f af3c bne.w 8000ea8 <__aeabi_fmul+0x114> + 8001030: e75f b.n 8000ef2 <__aeabi_fmul+0x15e> + 8001032: bf00 nop + +08001034 <__aeabi_f2iz>: + 8001034: ea4f 0240 mov.w r2, r0, lsl #1 + 8001038: f1b2 4ffe cmp.w r2, #2130706432 ; 0x7f000000 + 800103c: d30f bcc.n 800105e <__aeabi_f2iz+0x2a> + 800103e: f04f 039e mov.w r3, #158 ; 0x9e + 8001042: ebb3 6212 subs.w r2, r3, r2, lsr #24 + 8001046: d90d bls.n 8001064 <__aeabi_f2iz+0x30> + 8001048: ea4f 2300 mov.w r3, r0, lsl #8 + 800104c: f043 4300 orr.w r3, r3, #2147483648 ; 0x80000000 + 8001050: f010 4f00 tst.w r0, #2147483648 ; 0x80000000 + 8001054: fa23 f002 lsr.w r0, r3, r2 + 8001058: bf18 it ne + 800105a: 4240 negne r0, r0 + 800105c: 4770 bx lr + 800105e: f04f 0000 mov.w r0, #0 + 8001062: 4770 bx lr + 8001064: f112 0f61 cmn.w r2, #97 ; 0x61 + 8001068: d101 bne.n 800106e <__aeabi_f2iz+0x3a> + 800106a: 0242 lsls r2, r0, #9 + 800106c: d105 bne.n 800107a <__aeabi_f2iz+0x46> + 800106e: f010 4000 ands.w r0, r0, #2147483648 ; 0x80000000 + 8001072: bf08 it eq + 8001074: f06f 4000 mvneq.w r0, #2147483648 ; 0x80000000 + 8001078: 4770 bx lr + 800107a: f04f 0000 mov.w r0, #0 + 800107e: 4770 bx lr + +08001080 : //u16 arr[2] = {0,0}; //u16 arr[NumOfSequences] ; void MADC1_voidInit(void) { - 8000ad8: b480 push {r7} - 8000ada: af00 add r7, sp, #0 + 8001080: b480 push {r7} + 8001082: af00 add r7, sp, #0 /* Enable interrupt at the end of conversion */ //SET_BIT(ADC1 -> CR1 , 5); /* Enable scan mode */ SET_BIT(ADC1 -> CR1 , 8); - 8000adc: 4b09 ldr r3, [pc, #36] ; (8000b04 ) - 8000ade: 685b ldr r3, [r3, #4] - 8000ae0: 4a08 ldr r2, [pc, #32] ; (8000b04 ) - 8000ae2: f443 7380 orr.w r3, r3, #256 ; 0x100 - 8000ae6: 6053 str r3, [r2, #4] + 8001084: 4b09 ldr r3, [pc, #36] ; (80010ac ) + 8001086: 685b ldr r3, [r3, #4] + 8001088: 4a08 ldr r2, [pc, #32] ; (80010ac ) + 800108a: f443 7380 orr.w r3, r3, #256 ; 0x100 + 800108e: 6053 str r3, [r2, #4] /* Regular channel sequence length (# of channels) */ ADC1->SQR1 |= ((NumOfSequences - 1) << 20); - 8000ae8: 4b06 ldr r3, [pc, #24] ; (8000b04 ) - 8000aea: 4a06 ldr r2, [pc, #24] ; (8000b04 ) - 8000aec: 6adb ldr r3, [r3, #44] ; 0x2c - 8000aee: 62d3 str r3, [r2, #44] ; 0x2c + 8001090: 4b06 ldr r3, [pc, #24] ; (80010ac ) + 8001092: 4a06 ldr r2, [pc, #24] ; (80010ac ) + 8001094: 6adb ldr r3, [r3, #44] ; 0x2c + 8001096: 62d3 str r3, [r2, #44] ; 0x2c /* Continous conversion mode */ SET_BIT(ADC1 -> CR2 , 1); - 8000af0: 4b04 ldr r3, [pc, #16] ; (8000b04 ) - 8000af2: 689b ldr r3, [r3, #8] - 8000af4: 4a03 ldr r2, [pc, #12] ; (8000b04 ) - 8000af6: f043 0302 orr.w r3, r3, #2 - 8000afa: 6093 str r3, [r2, #8] + 8001098: 4b04 ldr r3, [pc, #16] ; (80010ac ) + 800109a: 689b ldr r3, [r3, #8] + 800109c: 4a03 ldr r2, [pc, #12] ; (80010ac ) + 800109e: f043 0302 orr.w r3, r3, #2 + 80010a2: 6093 str r3, [r2, #8] /* Enable DMA mode */ //SET_BIT(ADC1 -> CR2 , 8); } - 8000afc: bf00 nop - 8000afe: 46bd mov sp, r7 - 8000b00: bc80 pop {r7} - 8000b02: 4770 bx lr - 8000b04: 40012400 .word 0x40012400 + 80010a4: bf00 nop + 80010a6: 46bd mov sp, r7 + 80010a8: bc80 pop {r7} + 80010aa: 4770 bx lr + 80010ac: 40012400 .word 0x40012400 -08000b08 : +080010b0 : void MADC1_voidStartConversion(u8 Copy_u8ChannelID , u8 Copy_u8SeqID) { - 8000b08: b580 push {r7, lr} - 8000b0a: b082 sub sp, #8 - 8000b0c: af00 add r7, sp, #0 - 8000b0e: 4603 mov r3, r0 - 8000b10: 460a mov r2, r1 - 8000b12: 71fb strb r3, [r7, #7] - 8000b14: 4613 mov r3, r2 - 8000b16: 71bb strb r3, [r7, #6] + 80010b0: b580 push {r7, lr} + 80010b2: b082 sub sp, #8 + 80010b4: af00 add r7, sp, #0 + 80010b6: 4603 mov r3, r0 + 80010b8: 460a mov r2, r1 + 80010ba: 71fb strb r3, [r7, #7] + 80010bc: 4613 mov r3, r2 + 80010be: 71bb strb r3, [r7, #6] /* Sampling time */ ADC1->SMPR2 |= ((SamplingTimeValue) << (Copy_u8ChannelID * 3)); - 8000b18: 4b1f ldr r3, [pc, #124] ; (8000b98 ) - 8000b1a: 6919 ldr r1, [r3, #16] - 8000b1c: 79fa ldrb r2, [r7, #7] - 8000b1e: 4613 mov r3, r2 - 8000b20: 005b lsls r3, r3, #1 - 8000b22: 4413 add r3, r2 - 8000b24: 2207 movs r2, #7 - 8000b26: fa02 f303 lsl.w r3, r2, r3 - 8000b2a: 4a1b ldr r2, [pc, #108] ; (8000b98 ) - 8000b2c: 430b orrs r3, r1 - 8000b2e: 6113 str r3, [r2, #16] + 80010c0: 4b1f ldr r3, [pc, #124] ; (8001140 ) + 80010c2: 6919 ldr r1, [r3, #16] + 80010c4: 79fa ldrb r2, [r7, #7] + 80010c6: 4613 mov r3, r2 + 80010c8: 005b lsls r3, r3, #1 + 80010ca: 4413 add r3, r2 + 80010cc: 2207 movs r2, #7 + 80010ce: fa02 f303 lsl.w r3, r2, r3 + 80010d2: 4a1b ldr r2, [pc, #108] ; (8001140 ) + 80010d4: 430b orrs r3, r1 + 80010d6: 6113 str r3, [r2, #16] /* order of channels conversions */ ADC1->SQR3 |= ((Copy_u8ChannelID) << ((Copy_u8SeqID - 1) * 5)); - 8000b30: 4b19 ldr r3, [pc, #100] ; (8000b98 ) - 8000b32: 6b59 ldr r1, [r3, #52] ; 0x34 - 8000b34: 79f8 ldrb r0, [r7, #7] - 8000b36: 79bb ldrb r3, [r7, #6] - 8000b38: 1e5a subs r2, r3, #1 - 8000b3a: 4613 mov r3, r2 - 8000b3c: 009b lsls r3, r3, #2 - 8000b3e: 4413 add r3, r2 - 8000b40: fa00 f303 lsl.w r3, r0, r3 - 8000b44: 4a14 ldr r2, [pc, #80] ; (8000b98 ) - 8000b46: 430b orrs r3, r1 - 8000b48: 6353 str r3, [r2, #52] ; 0x34 + 80010d8: 4b19 ldr r3, [pc, #100] ; (8001140 ) + 80010da: 6b59 ldr r1, [r3, #52] ; 0x34 + 80010dc: 79f8 ldrb r0, [r7, #7] + 80010de: 79bb ldrb r3, [r7, #6] + 80010e0: 1e5a subs r2, r3, #1 + 80010e2: 4613 mov r3, r2 + 80010e4: 009b lsls r3, r3, #2 + 80010e6: 4413 add r3, r2 + 80010e8: fa00 f303 lsl.w r3, r0, r3 + 80010ec: 4a14 ldr r2, [pc, #80] ; (8001140 ) + 80010ee: 430b orrs r3, r1 + 80010f0: 6353 str r3, [r2, #52] ; 0x34 //MDMA_voidChannel1Start(&(ADC1->DR), arr , NumOfSequences); /* Enable ADC1 */ SET_BIT(ADC1 -> CR2 , 0); - 8000b4a: 4b13 ldr r3, [pc, #76] ; (8000b98 ) - 8000b4c: 689b ldr r3, [r3, #8] - 8000b4e: 4a12 ldr r2, [pc, #72] ; (8000b98 ) - 8000b50: f043 0301 orr.w r3, r3, #1 - 8000b54: 6093 str r3, [r2, #8] + 80010f2: 4b13 ldr r3, [pc, #76] ; (8001140 ) + 80010f4: 689b ldr r3, [r3, #8] + 80010f6: 4a12 ldr r2, [pc, #72] ; (8001140 ) + 80010f8: f043 0301 orr.w r3, r3, #1 + 80010fc: 6093 str r3, [r2, #8] MSTK_voidSetBusyWait(1000); - 8000b56: f44f 707a mov.w r0, #1000 ; 0x3e8 - 8000b5a: f000 fc9b bl 8001494 + 80010fe: f44f 707a mov.w r0, #1000 ; 0x3e8 + 8001102: f000 fca7 bl 8001a54 SET_BIT(ADC1 -> CR2 , 0); - 8000b5e: 4b0e ldr r3, [pc, #56] ; (8000b98 ) - 8000b60: 689b ldr r3, [r3, #8] - 8000b62: 4a0d ldr r2, [pc, #52] ; (8000b98 ) - 8000b64: f043 0301 orr.w r3, r3, #1 - 8000b68: 6093 str r3, [r2, #8] + 8001106: 4b0e ldr r3, [pc, #56] ; (8001140 ) + 8001108: 689b ldr r3, [r3, #8] + 800110a: 4a0d ldr r2, [pc, #52] ; (8001140 ) + 800110c: f043 0301 orr.w r3, r3, #1 + 8001110: 6093 str r3, [r2, #8] MSTK_voidSetBusyWait(1000); - 8000b6a: f44f 707a mov.w r0, #1000 ; 0x3e8 - 8000b6e: f000 fc91 bl 8001494 + 8001112: f44f 707a mov.w r0, #1000 ; 0x3e8 + 8001116: f000 fc9d bl 8001a54 /* Reset calibration */ //SET_BIT(ADC1 -> CR2 , 3); //while((GET_BIT(ADC->CR2 , 3)) == 1); /* Enable calibration */ SET_BIT(ADC1 -> CR2 , 2); - 8000b72: 4b09 ldr r3, [pc, #36] ; (8000b98 ) - 8000b74: 689b ldr r3, [r3, #8] - 8000b76: 4a08 ldr r2, [pc, #32] ; (8000b98 ) - 8000b78: f043 0304 orr.w r3, r3, #4 - 8000b7c: 6093 str r3, [r2, #8] + 800111a: 4b09 ldr r3, [pc, #36] ; (8001140 ) + 800111c: 689b ldr r3, [r3, #8] + 800111e: 4a08 ldr r2, [pc, #32] ; (8001140 ) + 8001120: f043 0304 orr.w r3, r3, #4 + 8001124: 6093 str r3, [r2, #8] while((GET_BIT(ADC1->CR2 , 2)) == 1); - 8000b7e: bf00 nop - 8000b80: 4b05 ldr r3, [pc, #20] ; (8000b98 ) - 8000b82: 689b ldr r3, [r3, #8] - 8000b84: 089b lsrs r3, r3, #2 - 8000b86: f003 0301 and.w r3, r3, #1 - 8000b8a: 2b01 cmp r3, #1 - 8000b8c: d0f8 beq.n 8000b80 + 8001126: bf00 nop + 8001128: 4b05 ldr r3, [pc, #20] ; (8001140 ) + 800112a: 689b ldr r3, [r3, #8] + 800112c: 089b lsrs r3, r3, #2 + 800112e: f003 0301 and.w r3, r3, #1 + 8001132: 2b01 cmp r3, #1 + 8001134: d0f8 beq.n 8001128 } - 8000b8e: bf00 nop - 8000b90: bf00 nop - 8000b92: 3708 adds r7, #8 - 8000b94: 46bd mov sp, r7 - 8000b96: bd80 pop {r7, pc} - 8000b98: 40012400 .word 0x40012400 - -08000b9c : + 8001136: bf00 nop + 8001138: bf00 nop + 800113a: 3708 adds r7, #8 + 800113c: 46bd mov sp, r7 + 800113e: bd80 pop {r7, pc} + 8001140: 40012400 .word 0x40012400 + +08001144 : +//{ +// ADC1_GlobalPtr = ptr; +//} + +u16 MADC1_u16ReadValue(void) +{ + 8001144: b480 push {r7} + 8001146: af00 add r7, sp, #0 + return (ADC1 -> DR); + 8001148: 4b03 ldr r3, [pc, #12] ; (8001158 ) + 800114a: 6cdb ldr r3, [r3, #76] ; 0x4c + 800114c: b29b uxth r3, r3 +} + 800114e: 4618 mov r0, r3 + 8001150: 46bd mov sp, r7 + 8001152: bc80 pop {r7} + 8001154: 4770 bx lr + 8001156: bf00 nop + 8001158: 40012400 .word 0x40012400 + +0800115c : #include "AFIO/AFIO_config.h" #include "AFIO/AFIO_private.h" void MAFIO_voidSetEXTIConfiguration(u8 Copy_u8EXTILine ,u8 Copy_u8PortMap) { - 8000b9c: b480 push {r7} - 8000b9e: b085 sub sp, #20 - 8000ba0: af00 add r7, sp, #0 - 8000ba2: 4603 mov r3, r0 - 8000ba4: 460a mov r2, r1 - 8000ba6: 71fb strb r3, [r7, #7] - 8000ba8: 4613 mov r3, r2 - 8000baa: 71bb strb r3, [r7, #6] + 800115c: b480 push {r7} + 800115e: b085 sub sp, #20 + 8001160: af00 add r7, sp, #0 + 8001162: 4603 mov r3, r0 + 8001164: 460a mov r2, r1 + 8001166: 71fb strb r3, [r7, #7] + 8001168: 4613 mov r3, r2 + 800116a: 71bb strb r3, [r7, #6] u8 Local_u8RegIndex = 0 ; - 8000bac: 2300 movs r3, #0 - 8000bae: 73fb strb r3, [r7, #15] + 800116c: 2300 movs r3, #0 + 800116e: 73fb strb r3, [r7, #15] /* Assign to EXTICRX register */ if(Copy_u8EXTILine <= 3 ) - 8000bb0: 79fb ldrb r3, [r7, #7] - 8000bb2: 2b03 cmp r3, #3 - 8000bb4: d802 bhi.n 8000bbc + 8001170: 79fb ldrb r3, [r7, #7] + 8001172: 2b03 cmp r3, #3 + 8001174: d802 bhi.n 800117c { Local_u8RegIndex = 0; - 8000bb6: 2300 movs r3, #0 - 8000bb8: 73fb strb r3, [r7, #15] - 8000bba: e019 b.n 8000bf0 + 8001176: 2300 movs r3, #0 + 8001178: 73fb strb r3, [r7, #15] + 800117a: e019 b.n 80011b0 } else if(Copy_u8EXTILine <= 7) - 8000bbc: 79fb ldrb r3, [r7, #7] - 8000bbe: 2b07 cmp r3, #7 - 8000bc0: d805 bhi.n 8000bce + 800117c: 79fb ldrb r3, [r7, #7] + 800117e: 2b07 cmp r3, #7 + 8001180: d805 bhi.n 800118e { Local_u8RegIndex = 1; - 8000bc2: 2301 movs r3, #1 - 8000bc4: 73fb strb r3, [r7, #15] + 8001182: 2301 movs r3, #1 + 8001184: 73fb strb r3, [r7, #15] /*bit0 to bit3 not 4 to 7*/ Copy_u8EXTILine -= 4; - 8000bc6: 79fb ldrb r3, [r7, #7] - 8000bc8: 3b04 subs r3, #4 - 8000bca: 71fb strb r3, [r7, #7] - 8000bcc: e010 b.n 8000bf0 + 8001186: 79fb ldrb r3, [r7, #7] + 8001188: 3b04 subs r3, #4 + 800118a: 71fb strb r3, [r7, #7] + 800118c: e010 b.n 80011b0 } else if(Copy_u8EXTILine <= 11) - 8000bce: 79fb ldrb r3, [r7, #7] - 8000bd0: 2b0b cmp r3, #11 - 8000bd2: d805 bhi.n 8000be0 + 800118e: 79fb ldrb r3, [r7, #7] + 8001190: 2b0b cmp r3, #11 + 8001192: d805 bhi.n 80011a0 { Local_u8RegIndex = 2; - 8000bd4: 2302 movs r3, #2 - 8000bd6: 73fb strb r3, [r7, #15] + 8001194: 2302 movs r3, #2 + 8001196: 73fb strb r3, [r7, #15] /*4bits from 0 to 3*/ Copy_u8EXTILine -= 8; - 8000bd8: 79fb ldrb r3, [r7, #7] - 8000bda: 3b08 subs r3, #8 - 8000bdc: 71fb strb r3, [r7, #7] - 8000bde: e007 b.n 8000bf0 + 8001198: 79fb ldrb r3, [r7, #7] + 800119a: 3b08 subs r3, #8 + 800119c: 71fb strb r3, [r7, #7] + 800119e: e007 b.n 80011b0 } else if(Copy_u8EXTILine <= 15) - 8000be0: 79fb ldrb r3, [r7, #7] - 8000be2: 2b0f cmp r3, #15 - 8000be4: d804 bhi.n 8000bf0 + 80011a0: 79fb ldrb r3, [r7, #7] + 80011a2: 2b0f cmp r3, #15 + 80011a4: d804 bhi.n 80011b0 { Local_u8RegIndex = 3; - 8000be6: 2303 movs r3, #3 - 8000be8: 73fb strb r3, [r7, #15] + 80011a6: 2303 movs r3, #3 + 80011a8: 73fb strb r3, [r7, #15] /*4bits from 0 to 3*/ Copy_u8EXTILine -= 12; - 8000bea: 79fb ldrb r3, [r7, #7] - 8000bec: 3b0c subs r3, #12 - 8000bee: 71fb strb r3, [r7, #7] + 80011aa: 79fb ldrb r3, [r7, #7] + 80011ac: 3b0c subs r3, #12 + 80011ae: 71fb strb r3, [r7, #7] } /*reset first --> (avoiding overwrite)*/ AFIO->EXTICR[Local_u8RegIndex] &= ~((0b1111) << (Copy_u8EXTILine * 4)); - 8000bf0: 4a13 ldr r2, [pc, #76] ; (8000c40 ) - 8000bf2: 7bfb ldrb r3, [r7, #15] - 8000bf4: 3302 adds r3, #2 - 8000bf6: f852 2023 ldr.w r2, [r2, r3, lsl #2] - 8000bfa: 79fb ldrb r3, [r7, #7] - 8000bfc: 009b lsls r3, r3, #2 - 8000bfe: 210f movs r1, #15 - 8000c00: fa01 f303 lsl.w r3, r1, r3 - 8000c04: 43db mvns r3, r3 - 8000c06: 4618 mov r0, r3 - 8000c08: 490d ldr r1, [pc, #52] ; (8000c40 ) - 8000c0a: 7bfb ldrb r3, [r7, #15] - 8000c0c: 4002 ands r2, r0 - 8000c0e: 3302 adds r3, #2 - 8000c10: f841 2023 str.w r2, [r1, r3, lsl #2] + 80011b0: 4a13 ldr r2, [pc, #76] ; (8001200 ) + 80011b2: 7bfb ldrb r3, [r7, #15] + 80011b4: 3302 adds r3, #2 + 80011b6: f852 2023 ldr.w r2, [r2, r3, lsl #2] + 80011ba: 79fb ldrb r3, [r7, #7] + 80011bc: 009b lsls r3, r3, #2 + 80011be: 210f movs r1, #15 + 80011c0: fa01 f303 lsl.w r3, r1, r3 + 80011c4: 43db mvns r3, r3 + 80011c6: 4618 mov r0, r3 + 80011c8: 490d ldr r1, [pc, #52] ; (8001200 ) + 80011ca: 7bfb ldrb r3, [r7, #15] + 80011cc: 4002 ands r2, r0 + 80011ce: 3302 adds r3, #2 + 80011d0: f841 2023 str.w r2, [r1, r3, lsl #2] /*set*/ AFIO->EXTICR[Local_u8RegIndex] |= ((Copy_u8PortMap) << (Copy_u8EXTILine * 4)); - 8000c14: 4a0a ldr r2, [pc, #40] ; (8000c40 ) - 8000c16: 7bfb ldrb r3, [r7, #15] - 8000c18: 3302 adds r3, #2 - 8000c1a: f852 2023 ldr.w r2, [r2, r3, lsl #2] - 8000c1e: 79b9 ldrb r1, [r7, #6] - 8000c20: 79fb ldrb r3, [r7, #7] - 8000c22: 009b lsls r3, r3, #2 - 8000c24: fa01 f303 lsl.w r3, r1, r3 - 8000c28: 4618 mov r0, r3 - 8000c2a: 4905 ldr r1, [pc, #20] ; (8000c40 ) - 8000c2c: 7bfb ldrb r3, [r7, #15] - 8000c2e: 4302 orrs r2, r0 - 8000c30: 3302 adds r3, #2 - 8000c32: f841 2023 str.w r2, [r1, r3, lsl #2] + 80011d4: 4a0a ldr r2, [pc, #40] ; (8001200 ) + 80011d6: 7bfb ldrb r3, [r7, #15] + 80011d8: 3302 adds r3, #2 + 80011da: f852 2023 ldr.w r2, [r2, r3, lsl #2] + 80011de: 79b9 ldrb r1, [r7, #6] + 80011e0: 79fb ldrb r3, [r7, #7] + 80011e2: 009b lsls r3, r3, #2 + 80011e4: fa01 f303 lsl.w r3, r1, r3 + 80011e8: 4618 mov r0, r3 + 80011ea: 4905 ldr r1, [pc, #20] ; (8001200 ) + 80011ec: 7bfb ldrb r3, [r7, #15] + 80011ee: 4302 orrs r2, r0 + 80011f0: 3302 adds r3, #2 + 80011f2: f841 2023 str.w r2, [r1, r3, lsl #2] } - 8000c36: bf00 nop - 8000c38: 3714 adds r7, #20 - 8000c3a: 46bd mov sp, r7 - 8000c3c: bc80 pop {r7} - 8000c3e: 4770 bx lr - 8000c40: 40010000 .word 0x40010000 - -08000c44 : + 80011f6: bf00 nop + 80011f8: 3714 adds r7, #20 + 80011fa: 46bd mov sp, r7 + 80011fc: bc80 pop {r7} + 80011fe: 4770 bx lr + 8001200: 40010000 .word 0x40010000 + +08001204 : #include "DIO/DIO_interface.h" #include "DIO/DIO_private.h" #include "DIO/DIO_config.h" void MGPIO_VoidSetPinDirection(u8 Copy_u8Port , u8 Copy_u8Pin , u8 Copy_u8Mode) { - 8000c44: b480 push {r7} - 8000c46: b083 sub sp, #12 - 8000c48: af00 add r7, sp, #0 - 8000c4a: 4603 mov r3, r0 - 8000c4c: 71fb strb r3, [r7, #7] - 8000c4e: 460b mov r3, r1 - 8000c50: 71bb strb r3, [r7, #6] - 8000c52: 4613 mov r3, r2 - 8000c54: 717b strb r3, [r7, #5] + 8001204: b480 push {r7} + 8001206: b083 sub sp, #12 + 8001208: af00 add r7, sp, #0 + 800120a: 4603 mov r3, r0 + 800120c: 71fb strb r3, [r7, #7] + 800120e: 460b mov r3, r1 + 8001210: 71bb strb r3, [r7, #6] + 8001212: 4613 mov r3, r2 + 8001214: 717b strb r3, [r7, #5] switch(Copy_u8Port) - 8000c56: 79fb ldrb r3, [r7, #7] - 8000c58: 2b02 cmp r3, #2 - 8000c5a: d07a beq.n 8000d52 - 8000c5c: 2b02 cmp r3, #2 - 8000c5e: f300 80b6 bgt.w 8000dce - 8000c62: 2b00 cmp r3, #0 - 8000c64: d002 beq.n 8000c6c - 8000c66: 2b01 cmp r3, #1 - 8000c68: d03a beq.n 8000ce0 + 8001216: 79fb ldrb r3, [r7, #7] + 8001218: 2b02 cmp r3, #2 + 800121a: d07a beq.n 8001312 + 800121c: 2b02 cmp r3, #2 + 800121e: f300 80b6 bgt.w 800138e + 8001222: 2b00 cmp r3, #0 + 8001224: d002 beq.n 800122c + 8001226: 2b01 cmp r3, #1 + 8001228: d03a beq.n 80012a0 } break; } } - 8000c6a: e0b0 b.n 8000dce + 800122a: e0b0 b.n 800138e if(Copy_u8Pin <= 7 ) - 8000c6c: 79bb ldrb r3, [r7, #6] - 8000c6e: 2b07 cmp r3, #7 - 8000c70: d817 bhi.n 8000ca2 + 800122c: 79bb ldrb r3, [r7, #6] + 800122e: 2b07 cmp r3, #7 + 8001230: d817 bhi.n 8001262 GPIOA_CRL &= ~ ( ( 0b1111 ) << ( Copy_u8Pin * 4 )); /*Reset or clear pin (4bits)*/ - 8000c72: 4b59 ldr r3, [pc, #356] ; (8000dd8 ) - 8000c74: 681b ldr r3, [r3, #0] - 8000c76: 79ba ldrb r2, [r7, #6] - 8000c78: 0092 lsls r2, r2, #2 - 8000c7a: 210f movs r1, #15 - 8000c7c: fa01 f202 lsl.w r2, r1, r2 - 8000c80: 43d2 mvns r2, r2 - 8000c82: 4611 mov r1, r2 - 8000c84: 4a54 ldr r2, [pc, #336] ; (8000dd8 ) - 8000c86: 400b ands r3, r1 - 8000c88: 6013 str r3, [r2, #0] + 8001232: 4b59 ldr r3, [pc, #356] ; (8001398 ) + 8001234: 681b ldr r3, [r3, #0] + 8001236: 79ba ldrb r2, [r7, #6] + 8001238: 0092 lsls r2, r2, #2 + 800123a: 210f movs r1, #15 + 800123c: fa01 f202 lsl.w r2, r1, r2 + 8001240: 43d2 mvns r2, r2 + 8001242: 4611 mov r1, r2 + 8001244: 4a54 ldr r2, [pc, #336] ; (8001398 ) + 8001246: 400b ands r3, r1 + 8001248: 6013 str r3, [r2, #0] GPIOA_CRL |= ( Copy_u8Mode ) << ( Copy_u8Pin * 4 ); /*apply mode on pin (interface file)*/ - 8000c8a: 4b53 ldr r3, [pc, #332] ; (8000dd8 ) - 8000c8c: 681b ldr r3, [r3, #0] - 8000c8e: 7979 ldrb r1, [r7, #5] - 8000c90: 79ba ldrb r2, [r7, #6] - 8000c92: 0092 lsls r2, r2, #2 - 8000c94: fa01 f202 lsl.w r2, r1, r2 - 8000c98: 4611 mov r1, r2 - 8000c9a: 4a4f ldr r2, [pc, #316] ; (8000dd8 ) - 8000c9c: 430b orrs r3, r1 - 8000c9e: 6013 str r3, [r2, #0] + 800124a: 4b53 ldr r3, [pc, #332] ; (8001398 ) + 800124c: 681b ldr r3, [r3, #0] + 800124e: 7979 ldrb r1, [r7, #5] + 8001250: 79ba ldrb r2, [r7, #6] + 8001252: 0092 lsls r2, r2, #2 + 8001254: fa01 f202 lsl.w r2, r1, r2 + 8001258: 4611 mov r1, r2 + 800125a: 4a4f ldr r2, [pc, #316] ; (8001398 ) + 800125c: 430b orrs r3, r1 + 800125e: 6013 str r3, [r2, #0] break; - 8000ca0: e090 b.n 8000dc4 + 8001260: e090 b.n 8001384 else if(Copy_u8Pin <= 15 ) - 8000ca2: 79bb ldrb r3, [r7, #6] - 8000ca4: 2b0f cmp r3, #15 - 8000ca6: f200 808d bhi.w 8000dc4 + 8001262: 79bb ldrb r3, [r7, #6] + 8001264: 2b0f cmp r3, #15 + 8001266: f200 808d bhi.w 8001384 Copy_u8Pin = Copy_u8Pin - 8; - 8000caa: 79bb ldrb r3, [r7, #6] - 8000cac: 3b08 subs r3, #8 - 8000cae: 71bb strb r3, [r7, #6] + 800126a: 79bb ldrb r3, [r7, #6] + 800126c: 3b08 subs r3, #8 + 800126e: 71bb strb r3, [r7, #6] GPIOA_CRH &= ~ ( ( 0b1111 ) << ( Copy_u8Pin * 4 ) ); - 8000cb0: 4b4a ldr r3, [pc, #296] ; (8000ddc ) - 8000cb2: 681b ldr r3, [r3, #0] - 8000cb4: 79ba ldrb r2, [r7, #6] - 8000cb6: 0092 lsls r2, r2, #2 - 8000cb8: 210f movs r1, #15 - 8000cba: fa01 f202 lsl.w r2, r1, r2 - 8000cbe: 43d2 mvns r2, r2 - 8000cc0: 4611 mov r1, r2 - 8000cc2: 4a46 ldr r2, [pc, #280] ; (8000ddc ) - 8000cc4: 400b ands r3, r1 - 8000cc6: 6013 str r3, [r2, #0] + 8001270: 4b4a ldr r3, [pc, #296] ; (800139c ) + 8001272: 681b ldr r3, [r3, #0] + 8001274: 79ba ldrb r2, [r7, #6] + 8001276: 0092 lsls r2, r2, #2 + 8001278: 210f movs r1, #15 + 800127a: fa01 f202 lsl.w r2, r1, r2 + 800127e: 43d2 mvns r2, r2 + 8001280: 4611 mov r1, r2 + 8001282: 4a46 ldr r2, [pc, #280] ; (800139c ) + 8001284: 400b ands r3, r1 + 8001286: 6013 str r3, [r2, #0] GPIOA_CRH |= ( Copy_u8Mode ) << ( Copy_u8Pin * 4 ); - 8000cc8: 4b44 ldr r3, [pc, #272] ; (8000ddc ) - 8000cca: 681b ldr r3, [r3, #0] - 8000ccc: 7979 ldrb r1, [r7, #5] - 8000cce: 79ba ldrb r2, [r7, #6] - 8000cd0: 0092 lsls r2, r2, #2 - 8000cd2: fa01 f202 lsl.w r2, r1, r2 - 8000cd6: 4611 mov r1, r2 - 8000cd8: 4a40 ldr r2, [pc, #256] ; (8000ddc ) - 8000cda: 430b orrs r3, r1 - 8000cdc: 6013 str r3, [r2, #0] + 8001288: 4b44 ldr r3, [pc, #272] ; (800139c ) + 800128a: 681b ldr r3, [r3, #0] + 800128c: 7979 ldrb r1, [r7, #5] + 800128e: 79ba ldrb r2, [r7, #6] + 8001290: 0092 lsls r2, r2, #2 + 8001292: fa01 f202 lsl.w r2, r1, r2 + 8001296: 4611 mov r1, r2 + 8001298: 4a40 ldr r2, [pc, #256] ; (800139c ) + 800129a: 430b orrs r3, r1 + 800129c: 6013 str r3, [r2, #0] break; - 8000cde: e071 b.n 8000dc4 + 800129e: e071 b.n 8001384 if(Copy_u8Pin <= 7 ) - 8000ce0: 79bb ldrb r3, [r7, #6] - 8000ce2: 2b07 cmp r3, #7 - 8000ce4: d817 bhi.n 8000d16 + 80012a0: 79bb ldrb r3, [r7, #6] + 80012a2: 2b07 cmp r3, #7 + 80012a4: d817 bhi.n 80012d6 GPIOB_CRL &= ~ ( ( 0b1111 ) << ( Copy_u8Pin * 4 ) ); /*Reset or clear pin*/ - 8000ce6: 4b3e ldr r3, [pc, #248] ; (8000de0 ) - 8000ce8: 681b ldr r3, [r3, #0] - 8000cea: 79ba ldrb r2, [r7, #6] - 8000cec: 0092 lsls r2, r2, #2 - 8000cee: 210f movs r1, #15 - 8000cf0: fa01 f202 lsl.w r2, r1, r2 - 8000cf4: 43d2 mvns r2, r2 - 8000cf6: 4611 mov r1, r2 - 8000cf8: 4a39 ldr r2, [pc, #228] ; (8000de0 ) - 8000cfa: 400b ands r3, r1 - 8000cfc: 6013 str r3, [r2, #0] + 80012a6: 4b3e ldr r3, [pc, #248] ; (80013a0 ) + 80012a8: 681b ldr r3, [r3, #0] + 80012aa: 79ba ldrb r2, [r7, #6] + 80012ac: 0092 lsls r2, r2, #2 + 80012ae: 210f movs r1, #15 + 80012b0: fa01 f202 lsl.w r2, r1, r2 + 80012b4: 43d2 mvns r2, r2 + 80012b6: 4611 mov r1, r2 + 80012b8: 4a39 ldr r2, [pc, #228] ; (80013a0 ) + 80012ba: 400b ands r3, r1 + 80012bc: 6013 str r3, [r2, #0] GPIOB_CRL |= ( Copy_u8Mode ) << ( Copy_u8Pin * 4 ) ; /*apply mode on pin*/ - 8000cfe: 4b38 ldr r3, [pc, #224] ; (8000de0 ) - 8000d00: 681b ldr r3, [r3, #0] - 8000d02: 7979 ldrb r1, [r7, #5] - 8000d04: 79ba ldrb r2, [r7, #6] - 8000d06: 0092 lsls r2, r2, #2 - 8000d08: fa01 f202 lsl.w r2, r1, r2 - 8000d0c: 4611 mov r1, r2 - 8000d0e: 4a34 ldr r2, [pc, #208] ; (8000de0 ) - 8000d10: 430b orrs r3, r1 - 8000d12: 6013 str r3, [r2, #0] + 80012be: 4b38 ldr r3, [pc, #224] ; (80013a0 ) + 80012c0: 681b ldr r3, [r3, #0] + 80012c2: 7979 ldrb r1, [r7, #5] + 80012c4: 79ba ldrb r2, [r7, #6] + 80012c6: 0092 lsls r2, r2, #2 + 80012c8: fa01 f202 lsl.w r2, r1, r2 + 80012cc: 4611 mov r1, r2 + 80012ce: 4a34 ldr r2, [pc, #208] ; (80013a0 ) + 80012d0: 430b orrs r3, r1 + 80012d2: 6013 str r3, [r2, #0] break; - 8000d14: e058 b.n 8000dc8 + 80012d4: e058 b.n 8001388 else if(Copy_u8Pin <= 15 ) - 8000d16: 79bb ldrb r3, [r7, #6] - 8000d18: 2b0f cmp r3, #15 - 8000d1a: d855 bhi.n 8000dc8 + 80012d6: 79bb ldrb r3, [r7, #6] + 80012d8: 2b0f cmp r3, #15 + 80012da: d855 bhi.n 8001388 Copy_u8Pin = Copy_u8Pin - 8; - 8000d1c: 79bb ldrb r3, [r7, #6] - 8000d1e: 3b08 subs r3, #8 - 8000d20: 71bb strb r3, [r7, #6] + 80012dc: 79bb ldrb r3, [r7, #6] + 80012de: 3b08 subs r3, #8 + 80012e0: 71bb strb r3, [r7, #6] GPIOB_CRH &= ~ ( ( 0b1111 ) << ( Copy_u8Pin * 4 ) ); - 8000d22: 4b30 ldr r3, [pc, #192] ; (8000de4 ) - 8000d24: 681b ldr r3, [r3, #0] - 8000d26: 79ba ldrb r2, [r7, #6] - 8000d28: 0092 lsls r2, r2, #2 - 8000d2a: 210f movs r1, #15 - 8000d2c: fa01 f202 lsl.w r2, r1, r2 - 8000d30: 43d2 mvns r2, r2 - 8000d32: 4611 mov r1, r2 - 8000d34: 4a2b ldr r2, [pc, #172] ; (8000de4 ) - 8000d36: 400b ands r3, r1 - 8000d38: 6013 str r3, [r2, #0] + 80012e2: 4b30 ldr r3, [pc, #192] ; (80013a4 ) + 80012e4: 681b ldr r3, [r3, #0] + 80012e6: 79ba ldrb r2, [r7, #6] + 80012e8: 0092 lsls r2, r2, #2 + 80012ea: 210f movs r1, #15 + 80012ec: fa01 f202 lsl.w r2, r1, r2 + 80012f0: 43d2 mvns r2, r2 + 80012f2: 4611 mov r1, r2 + 80012f4: 4a2b ldr r2, [pc, #172] ; (80013a4 ) + 80012f6: 400b ands r3, r1 + 80012f8: 6013 str r3, [r2, #0] GPIOB_CRH |= ( Copy_u8Mode ) << ( Copy_u8Pin * 4 ) ; - 8000d3a: 4b2a ldr r3, [pc, #168] ; (8000de4 ) - 8000d3c: 681b ldr r3, [r3, #0] - 8000d3e: 7979 ldrb r1, [r7, #5] - 8000d40: 79ba ldrb r2, [r7, #6] - 8000d42: 0092 lsls r2, r2, #2 - 8000d44: fa01 f202 lsl.w r2, r1, r2 - 8000d48: 4611 mov r1, r2 - 8000d4a: 4a26 ldr r2, [pc, #152] ; (8000de4 ) - 8000d4c: 430b orrs r3, r1 - 8000d4e: 6013 str r3, [r2, #0] + 80012fa: 4b2a ldr r3, [pc, #168] ; (80013a4 ) + 80012fc: 681b ldr r3, [r3, #0] + 80012fe: 7979 ldrb r1, [r7, #5] + 8001300: 79ba ldrb r2, [r7, #6] + 8001302: 0092 lsls r2, r2, #2 + 8001304: fa01 f202 lsl.w r2, r1, r2 + 8001308: 4611 mov r1, r2 + 800130a: 4a26 ldr r2, [pc, #152] ; (80013a4 ) + 800130c: 430b orrs r3, r1 + 800130e: 6013 str r3, [r2, #0] break; - 8000d50: e03a b.n 8000dc8 + 8001310: e03a b.n 8001388 if(Copy_u8Pin <= 7 ) - 8000d52: 79bb ldrb r3, [r7, #6] - 8000d54: 2b07 cmp r3, #7 - 8000d56: d817 bhi.n 8000d88 + 8001312: 79bb ldrb r3, [r7, #6] + 8001314: 2b07 cmp r3, #7 + 8001316: d817 bhi.n 8001348 GPIOC_CRL &= ~ ( ( 0b1111 ) << ( Copy_u8Pin * 4 ) );// R M W - 8000d58: 4b23 ldr r3, [pc, #140] ; (8000de8 ) - 8000d5a: 681b ldr r3, [r3, #0] - 8000d5c: 79ba ldrb r2, [r7, #6] - 8000d5e: 0092 lsls r2, r2, #2 - 8000d60: 210f movs r1, #15 - 8000d62: fa01 f202 lsl.w r2, r1, r2 - 8000d66: 43d2 mvns r2, r2 - 8000d68: 4611 mov r1, r2 - 8000d6a: 4a1f ldr r2, [pc, #124] ; (8000de8 ) - 8000d6c: 400b ands r3, r1 - 8000d6e: 6013 str r3, [r2, #0] + 8001318: 4b23 ldr r3, [pc, #140] ; (80013a8 ) + 800131a: 681b ldr r3, [r3, #0] + 800131c: 79ba ldrb r2, [r7, #6] + 800131e: 0092 lsls r2, r2, #2 + 8001320: 210f movs r1, #15 + 8001322: fa01 f202 lsl.w r2, r1, r2 + 8001326: 43d2 mvns r2, r2 + 8001328: 4611 mov r1, r2 + 800132a: 4a1f ldr r2, [pc, #124] ; (80013a8 ) + 800132c: 400b ands r3, r1 + 800132e: 6013 str r3, [r2, #0] GPIOC_CRL |= ( Copy_u8Mode ) << ( Copy_u8Pin * 4 ) ; - 8000d70: 4b1d ldr r3, [pc, #116] ; (8000de8 ) - 8000d72: 681b ldr r3, [r3, #0] - 8000d74: 7979 ldrb r1, [r7, #5] - 8000d76: 79ba ldrb r2, [r7, #6] - 8000d78: 0092 lsls r2, r2, #2 - 8000d7a: fa01 f202 lsl.w r2, r1, r2 - 8000d7e: 4611 mov r1, r2 - 8000d80: 4a19 ldr r2, [pc, #100] ; (8000de8 ) - 8000d82: 430b orrs r3, r1 - 8000d84: 6013 str r3, [r2, #0] + 8001330: 4b1d ldr r3, [pc, #116] ; (80013a8 ) + 8001332: 681b ldr r3, [r3, #0] + 8001334: 7979 ldrb r1, [r7, #5] + 8001336: 79ba ldrb r2, [r7, #6] + 8001338: 0092 lsls r2, r2, #2 + 800133a: fa01 f202 lsl.w r2, r1, r2 + 800133e: 4611 mov r1, r2 + 8001340: 4a19 ldr r2, [pc, #100] ; (80013a8 ) + 8001342: 430b orrs r3, r1 + 8001344: 6013 str r3, [r2, #0] break; - 8000d86: e021 b.n 8000dcc + 8001346: e021 b.n 800138c else if(Copy_u8Pin <= 15 ) - 8000d88: 79bb ldrb r3, [r7, #6] - 8000d8a: 2b0f cmp r3, #15 - 8000d8c: d81e bhi.n 8000dcc + 8001348: 79bb ldrb r3, [r7, #6] + 800134a: 2b0f cmp r3, #15 + 800134c: d81e bhi.n 800138c Copy_u8Pin = Copy_u8Pin - 8; - 8000d8e: 79bb ldrb r3, [r7, #6] - 8000d90: 3b08 subs r3, #8 - 8000d92: 71bb strb r3, [r7, #6] + 800134e: 79bb ldrb r3, [r7, #6] + 8001350: 3b08 subs r3, #8 + 8001352: 71bb strb r3, [r7, #6] GPIOC_CRH &= ~ ( ( 0b1111 ) << ( Copy_u8Pin * 4 ) ); - 8000d94: 4b15 ldr r3, [pc, #84] ; (8000dec ) - 8000d96: 681b ldr r3, [r3, #0] - 8000d98: 79ba ldrb r2, [r7, #6] - 8000d9a: 0092 lsls r2, r2, #2 - 8000d9c: 210f movs r1, #15 - 8000d9e: fa01 f202 lsl.w r2, r1, r2 - 8000da2: 43d2 mvns r2, r2 - 8000da4: 4611 mov r1, r2 - 8000da6: 4a11 ldr r2, [pc, #68] ; (8000dec ) - 8000da8: 400b ands r3, r1 - 8000daa: 6013 str r3, [r2, #0] + 8001354: 4b15 ldr r3, [pc, #84] ; (80013ac ) + 8001356: 681b ldr r3, [r3, #0] + 8001358: 79ba ldrb r2, [r7, #6] + 800135a: 0092 lsls r2, r2, #2 + 800135c: 210f movs r1, #15 + 800135e: fa01 f202 lsl.w r2, r1, r2 + 8001362: 43d2 mvns r2, r2 + 8001364: 4611 mov r1, r2 + 8001366: 4a11 ldr r2, [pc, #68] ; (80013ac ) + 8001368: 400b ands r3, r1 + 800136a: 6013 str r3, [r2, #0] GPIOC_CRH |= ( Copy_u8Mode ) << ( Copy_u8Pin * 4 ) ; - 8000dac: 4b0f ldr r3, [pc, #60] ; (8000dec ) - 8000dae: 681b ldr r3, [r3, #0] - 8000db0: 7979 ldrb r1, [r7, #5] - 8000db2: 79ba ldrb r2, [r7, #6] - 8000db4: 0092 lsls r2, r2, #2 - 8000db6: fa01 f202 lsl.w r2, r1, r2 - 8000dba: 4611 mov r1, r2 - 8000dbc: 4a0b ldr r2, [pc, #44] ; (8000dec ) - 8000dbe: 430b orrs r3, r1 - 8000dc0: 6013 str r3, [r2, #0] + 800136c: 4b0f ldr r3, [pc, #60] ; (80013ac ) + 800136e: 681b ldr r3, [r3, #0] + 8001370: 7979 ldrb r1, [r7, #5] + 8001372: 79ba ldrb r2, [r7, #6] + 8001374: 0092 lsls r2, r2, #2 + 8001376: fa01 f202 lsl.w r2, r1, r2 + 800137a: 4611 mov r1, r2 + 800137c: 4a0b ldr r2, [pc, #44] ; (80013ac ) + 800137e: 430b orrs r3, r1 + 8001380: 6013 str r3, [r2, #0] break; - 8000dc2: e003 b.n 8000dcc + 8001382: e003 b.n 800138c break; - 8000dc4: bf00 nop - 8000dc6: e002 b.n 8000dce + 8001384: bf00 nop + 8001386: e002 b.n 800138e break; - 8000dc8: bf00 nop - 8000dca: e000 b.n 8000dce + 8001388: bf00 nop + 800138a: e000 b.n 800138e break; - 8000dcc: bf00 nop + 800138c: bf00 nop } - 8000dce: bf00 nop - 8000dd0: 370c adds r7, #12 - 8000dd2: 46bd mov sp, r7 - 8000dd4: bc80 pop {r7} - 8000dd6: 4770 bx lr - 8000dd8: 40010800 .word 0x40010800 - 8000ddc: 40010804 .word 0x40010804 - 8000de0: 40010c00 .word 0x40010c00 - 8000de4: 40010c04 .word 0x40010c04 - 8000de8: 40011000 .word 0x40011000 - 8000dec: 40011004 .word 0x40011004 + 800138e: bf00 nop + 8001390: 370c adds r7, #12 + 8001392: 46bd mov sp, r7 + 8001394: bc80 pop {r7} + 8001396: 4770 bx lr + 8001398: 40010800 .word 0x40010800 + 800139c: 40010804 .word 0x40010804 + 80013a0: 40010c00 .word 0x40010c00 + 80013a4: 40010c04 .word 0x40010c04 + 80013a8: 40011000 .word 0x40011000 + 80013ac: 40011004 .word 0x40011004 -08000df0 : +080013b0 : void MGPIO_VoidSetPinValue(u8 Copy_u8Port , u8 Copy_u8Pin , u8 Copy_u8Value) { - 8000df0: b480 push {r7} - 8000df2: b083 sub sp, #12 - 8000df4: af00 add r7, sp, #0 - 8000df6: 4603 mov r3, r0 - 8000df8: 71fb strb r3, [r7, #7] - 8000dfa: 460b mov r3, r1 - 8000dfc: 71bb strb r3, [r7, #6] - 8000dfe: 4613 mov r3, r2 - 8000e00: 717b strb r3, [r7, #5] + 80013b0: b480 push {r7} + 80013b2: b083 sub sp, #12 + 80013b4: af00 add r7, sp, #0 + 80013b6: 4603 mov r3, r0 + 80013b8: 71fb strb r3, [r7, #7] + 80013ba: 460b mov r3, r1 + 80013bc: 71bb strb r3, [r7, #6] + 80013be: 4613 mov r3, r2 + 80013c0: 717b strb r3, [r7, #5] switch(Copy_u8Port) - 8000e02: 79fb ldrb r3, [r7, #7] - 8000e04: 2b02 cmp r3, #2 - 8000e06: d02a beq.n 8000e5e - 8000e08: 2b02 cmp r3, #2 - 8000e0a: dc3f bgt.n 8000e8c - 8000e0c: 2b00 cmp r3, #0 - 8000e0e: d002 beq.n 8000e16 - 8000e10: 2b01 cmp r3, #1 - 8000e12: d012 beq.n 8000e3a + 80013c2: 79fb ldrb r3, [r7, #7] + 80013c4: 2b02 cmp r3, #2 + 80013c6: d02a beq.n 800141e + 80013c8: 2b02 cmp r3, #2 + 80013ca: dc3f bgt.n 800144c + 80013cc: 2b00 cmp r3, #0 + 80013ce: d002 beq.n 80013d6 + 80013d0: 2b01 cmp r3, #1 + 80013d2: d012 beq.n 80013fa GPIOC_BRR = (1 << Copy_u8Pin); } break; } } - 8000e14: e03a b.n 8000e8c + 80013d4: e03a b.n 800144c if( Copy_u8Value == HIGH ) - 8000e16: 797b ldrb r3, [r7, #5] - 8000e18: 2b01 cmp r3, #1 - 8000e1a: d105 bne.n 8000e28 + 80013d6: 797b ldrb r3, [r7, #5] + 80013d8: 2b01 cmp r3, #1 + 80013da: d105 bne.n 80013e8 GPIOA_BSRR = (1 << Copy_u8Pin); /*speed up -- 0 has no effect*/ - 8000e1c: 79bb ldrb r3, [r7, #6] - 8000e1e: 2201 movs r2, #1 - 8000e20: 409a lsls r2, r3 - 8000e22: 4b1d ldr r3, [pc, #116] ; (8000e98 ) - 8000e24: 601a str r2, [r3, #0] + 80013dc: 79bb ldrb r3, [r7, #6] + 80013de: 2201 movs r2, #1 + 80013e0: 409a lsls r2, r3 + 80013e2: 4b1d ldr r3, [pc, #116] ; (8001458 ) + 80013e4: 601a str r2, [r3, #0] break; - 8000e26: e02c b.n 8000e82 + 80013e6: e02c b.n 8001442 else if( Copy_u8Value == LOW ) - 8000e28: 797b ldrb r3, [r7, #5] - 8000e2a: 2b00 cmp r3, #0 - 8000e2c: d129 bne.n 8000e82 + 80013e8: 797b ldrb r3, [r7, #5] + 80013ea: 2b00 cmp r3, #0 + 80013ec: d129 bne.n 8001442 GPIOA_BRR = (1 << Copy_u8Pin); /*speed up*/ - 8000e2e: 79bb ldrb r3, [r7, #6] - 8000e30: 2201 movs r2, #1 - 8000e32: 409a lsls r2, r3 - 8000e34: 4b19 ldr r3, [pc, #100] ; (8000e9c ) - 8000e36: 601a str r2, [r3, #0] + 80013ee: 79bb ldrb r3, [r7, #6] + 80013f0: 2201 movs r2, #1 + 80013f2: 409a lsls r2, r3 + 80013f4: 4b19 ldr r3, [pc, #100] ; (800145c ) + 80013f6: 601a str r2, [r3, #0] break; - 8000e38: e023 b.n 8000e82 + 80013f8: e023 b.n 8001442 if( Copy_u8Value == HIGH ) - 8000e3a: 797b ldrb r3, [r7, #5] - 8000e3c: 2b01 cmp r3, #1 - 8000e3e: d105 bne.n 8000e4c + 80013fa: 797b ldrb r3, [r7, #5] + 80013fc: 2b01 cmp r3, #1 + 80013fe: d105 bne.n 800140c GPIOB_BSRR = (1 << Copy_u8Pin); - 8000e40: 79bb ldrb r3, [r7, #6] - 8000e42: 2201 movs r2, #1 - 8000e44: 409a lsls r2, r3 - 8000e46: 4b16 ldr r3, [pc, #88] ; (8000ea0 ) - 8000e48: 601a str r2, [r3, #0] + 8001400: 79bb ldrb r3, [r7, #6] + 8001402: 2201 movs r2, #1 + 8001404: 409a lsls r2, r3 + 8001406: 4b16 ldr r3, [pc, #88] ; (8001460 ) + 8001408: 601a str r2, [r3, #0] break; - 8000e4a: e01c b.n 8000e86 + 800140a: e01c b.n 8001446 else if( Copy_u8Value == LOW ) - 8000e4c: 797b ldrb r3, [r7, #5] - 8000e4e: 2b00 cmp r3, #0 - 8000e50: d119 bne.n 8000e86 + 800140c: 797b ldrb r3, [r7, #5] + 800140e: 2b00 cmp r3, #0 + 8001410: d119 bne.n 8001446 GPIOB_BRR = (1 << Copy_u8Pin); - 8000e52: 79bb ldrb r3, [r7, #6] - 8000e54: 2201 movs r2, #1 - 8000e56: 409a lsls r2, r3 - 8000e58: 4b12 ldr r3, [pc, #72] ; (8000ea4 ) - 8000e5a: 601a str r2, [r3, #0] + 8001412: 79bb ldrb r3, [r7, #6] + 8001414: 2201 movs r2, #1 + 8001416: 409a lsls r2, r3 + 8001418: 4b12 ldr r3, [pc, #72] ; (8001464 ) + 800141a: 601a str r2, [r3, #0] break; - 8000e5c: e013 b.n 8000e86 + 800141c: e013 b.n 8001446 if( Copy_u8Value == HIGH ) - 8000e5e: 797b ldrb r3, [r7, #5] - 8000e60: 2b01 cmp r3, #1 - 8000e62: d105 bne.n 8000e70 + 800141e: 797b ldrb r3, [r7, #5] + 8001420: 2b01 cmp r3, #1 + 8001422: d105 bne.n 8001430 GPIOC_BSRR = (1 << Copy_u8Pin); - 8000e64: 79bb ldrb r3, [r7, #6] - 8000e66: 2201 movs r2, #1 - 8000e68: 409a lsls r2, r3 - 8000e6a: 4b0f ldr r3, [pc, #60] ; (8000ea8 ) - 8000e6c: 601a str r2, [r3, #0] + 8001424: 79bb ldrb r3, [r7, #6] + 8001426: 2201 movs r2, #1 + 8001428: 409a lsls r2, r3 + 800142a: 4b0f ldr r3, [pc, #60] ; (8001468 ) + 800142c: 601a str r2, [r3, #0] break; - 8000e6e: e00c b.n 8000e8a + 800142e: e00c b.n 800144a else if( Copy_u8Value == LOW ) - 8000e70: 797b ldrb r3, [r7, #5] - 8000e72: 2b00 cmp r3, #0 - 8000e74: d109 bne.n 8000e8a + 8001430: 797b ldrb r3, [r7, #5] + 8001432: 2b00 cmp r3, #0 + 8001434: d109 bne.n 800144a GPIOC_BRR = (1 << Copy_u8Pin); - 8000e76: 79bb ldrb r3, [r7, #6] - 8000e78: 2201 movs r2, #1 - 8000e7a: 409a lsls r2, r3 - 8000e7c: 4b0b ldr r3, [pc, #44] ; (8000eac ) - 8000e7e: 601a str r2, [r3, #0] + 8001436: 79bb ldrb r3, [r7, #6] + 8001438: 2201 movs r2, #1 + 800143a: 409a lsls r2, r3 + 800143c: 4b0b ldr r3, [pc, #44] ; (800146c ) + 800143e: 601a str r2, [r3, #0] break; - 8000e80: e003 b.n 8000e8a + 8001440: e003 b.n 800144a break; - 8000e82: bf00 nop - 8000e84: e002 b.n 8000e8c + 8001442: bf00 nop + 8001444: e002 b.n 800144c break; - 8000e86: bf00 nop - 8000e88: e000 b.n 8000e8c + 8001446: bf00 nop + 8001448: e000 b.n 800144c break; - 8000e8a: bf00 nop + 800144a: bf00 nop } - 8000e8c: bf00 nop - 8000e8e: 370c adds r7, #12 - 8000e90: 46bd mov sp, r7 - 8000e92: bc80 pop {r7} - 8000e94: 4770 bx lr - 8000e96: bf00 nop - 8000e98: 40010810 .word 0x40010810 - 8000e9c: 40010814 .word 0x40010814 - 8000ea0: 40010c10 .word 0x40010c10 - 8000ea4: 40010c14 .word 0x40010c14 - 8000ea8: 40011010 .word 0x40011010 - 8000eac: 40011014 .word 0x40011014 - -08000eb0 : + 800144c: bf00 nop + 800144e: 370c adds r7, #12 + 8001450: 46bd mov sp, r7 + 8001452: bc80 pop {r7} + 8001454: 4770 bx lr + 8001456: bf00 nop + 8001458: 40010810 .word 0x40010810 + 800145c: 40010814 .word 0x40010814 + 8001460: 40010c10 .word 0x40010c10 + 8001464: 40010c14 .word 0x40010c14 + 8001468: 40011010 .word 0x40011010 + 800146c: 40011014 .word 0x40011014 + +08001470 : u8 MGPIO_u8GetPinValue(u8 Copy_u8Port , u8 Copy_u8Pin) { - 8000eb0: b480 push {r7} - 8000eb2: b085 sub sp, #20 - 8000eb4: af00 add r7, sp, #0 - 8000eb6: 4603 mov r3, r0 - 8000eb8: 460a mov r2, r1 - 8000eba: 71fb strb r3, [r7, #7] - 8000ebc: 4613 mov r3, r2 - 8000ebe: 71bb strb r3, [r7, #6] + 8001470: b480 push {r7} + 8001472: b085 sub sp, #20 + 8001474: af00 add r7, sp, #0 + 8001476: 4603 mov r3, r0 + 8001478: 460a mov r2, r1 + 800147a: 71fb strb r3, [r7, #7] + 800147c: 4613 mov r3, r2 + 800147e: 71bb strb r3, [r7, #6] u8 LOC_u8Result = 0 ; //return value - 8000ec0: 2300 movs r3, #0 - 8000ec2: 73fb strb r3, [r7, #15] + 8001480: 2300 movs r3, #0 + 8001482: 73fb strb r3, [r7, #15] switch(Copy_u8Port) - 8000ec4: 79fb ldrb r3, [r7, #7] - 8000ec6: 2b02 cmp r3, #2 - 8000ec8: d01a beq.n 8000f00 - 8000eca: 2b02 cmp r3, #2 - 8000ecc: dc22 bgt.n 8000f14 - 8000ece: 2b00 cmp r3, #0 - 8000ed0: d002 beq.n 8000ed8 - 8000ed2: 2b01 cmp r3, #1 - 8000ed4: d00a beq.n 8000eec - 8000ed6: e01d b.n 8000f14 + 8001484: 79fb ldrb r3, [r7, #7] + 8001486: 2b02 cmp r3, #2 + 8001488: d01a beq.n 80014c0 + 800148a: 2b02 cmp r3, #2 + 800148c: dc22 bgt.n 80014d4 + 800148e: 2b00 cmp r3, #0 + 8001490: d002 beq.n 8001498 + 8001492: 2b01 cmp r3, #1 + 8001494: d00a beq.n 80014ac + 8001496: e01d b.n 80014d4 { /*get input data*/ case GPIOA: LOC_u8Result = GET_BIT( GPIOA_IDR , Copy_u8Pin ); - 8000ed8: 4b11 ldr r3, [pc, #68] ; (8000f20 ) - 8000eda: 681a ldr r2, [r3, #0] - 8000edc: 79bb ldrb r3, [r7, #6] - 8000ede: fa22 f303 lsr.w r3, r2, r3 - 8000ee2: b2db uxtb r3, r3 - 8000ee4: f003 0301 and.w r3, r3, #1 - 8000ee8: 73fb strb r3, [r7, #15] + 8001498: 4b11 ldr r3, [pc, #68] ; (80014e0 ) + 800149a: 681a ldr r2, [r3, #0] + 800149c: 79bb ldrb r3, [r7, #6] + 800149e: fa22 f303 lsr.w r3, r2, r3 + 80014a2: b2db uxtb r3, r3 + 80014a4: f003 0301 and.w r3, r3, #1 + 80014a8: 73fb strb r3, [r7, #15] break; - 8000eea: e013 b.n 8000f14 + 80014aa: e013 b.n 80014d4 case GPIOB: LOC_u8Result = GET_BIT( GPIOB_IDR , Copy_u8Pin ); - 8000eec: 4b0d ldr r3, [pc, #52] ; (8000f24 ) - 8000eee: 681a ldr r2, [r3, #0] - 8000ef0: 79bb ldrb r3, [r7, #6] - 8000ef2: fa22 f303 lsr.w r3, r2, r3 - 8000ef6: b2db uxtb r3, r3 - 8000ef8: f003 0301 and.w r3, r3, #1 - 8000efc: 73fb strb r3, [r7, #15] + 80014ac: 4b0d ldr r3, [pc, #52] ; (80014e4 ) + 80014ae: 681a ldr r2, [r3, #0] + 80014b0: 79bb ldrb r3, [r7, #6] + 80014b2: fa22 f303 lsr.w r3, r2, r3 + 80014b6: b2db uxtb r3, r3 + 80014b8: f003 0301 and.w r3, r3, #1 + 80014bc: 73fb strb r3, [r7, #15] break; - 8000efe: e009 b.n 8000f14 + 80014be: e009 b.n 80014d4 case GPIOC: LOC_u8Result = GET_BIT( GPIOC_IDR , Copy_u8Pin ); - 8000f00: 4b09 ldr r3, [pc, #36] ; (8000f28 ) - 8000f02: 681a ldr r2, [r3, #0] - 8000f04: 79bb ldrb r3, [r7, #6] - 8000f06: fa22 f303 lsr.w r3, r2, r3 - 8000f0a: b2db uxtb r3, r3 - 8000f0c: f003 0301 and.w r3, r3, #1 - 8000f10: 73fb strb r3, [r7, #15] + 80014c0: 4b09 ldr r3, [pc, #36] ; (80014e8 ) + 80014c2: 681a ldr r2, [r3, #0] + 80014c4: 79bb ldrb r3, [r7, #6] + 80014c6: fa22 f303 lsr.w r3, r2, r3 + 80014ca: b2db uxtb r3, r3 + 80014cc: f003 0301 and.w r3, r3, #1 + 80014d0: 73fb strb r3, [r7, #15] break; - 8000f12: bf00 nop + 80014d2: bf00 nop } return LOC_u8Result; - 8000f14: 7bfb ldrb r3, [r7, #15] + 80014d4: 7bfb ldrb r3, [r7, #15] } - 8000f16: 4618 mov r0, r3 - 8000f18: 3714 adds r7, #20 - 8000f1a: 46bd mov sp, r7 - 8000f1c: bc80 pop {r7} - 8000f1e: 4770 bx lr - 8000f20: 40010808 .word 0x40010808 - 8000f24: 40010c08 .word 0x40010c08 - 8000f28: 40011008 .word 0x40011008 - -08000f2c : + 80014d6: 4618 mov r0, r3 + 80014d8: 3714 adds r7, #20 + 80014da: 46bd mov sp, r7 + 80014dc: bc80 pop {r7} + 80014de: 4770 bx lr + 80014e0: 40010808 .word 0x40010808 + 80014e4: 40010c08 .word 0x40010c08 + 80014e8: 40011008 .word 0x40011008 + +080014ec : #include "EXTI/EXTI_private.h" void MEXTI_voidInit() { - 8000f2c: b480 push {r7} - 8000f2e: af00 add r7, sp, #0 + 80014ec: b480 push {r7} + 80014ee: af00 add r7, sp, #0 #if EXTI_MODE == RISING SET_BIT(EXTI -> RTSR , EXTI_LINE); - 8000f30: 4b07 ldr r3, [pc, #28] ; (8000f50 ) - 8000f32: 689b ldr r3, [r3, #8] - 8000f34: 4a06 ldr r2, [pc, #24] ; (8000f50 ) - 8000f36: f043 0301 orr.w r3, r3, #1 - 8000f3a: 6093 str r3, [r2, #8] + 80014f0: 4b07 ldr r3, [pc, #28] ; (8001510 ) + 80014f2: 689b ldr r3, [r3, #8] + 80014f4: 4a06 ldr r2, [pc, #24] ; (8001510 ) + 80014f6: f043 0301 orr.w r3, r3, #1 + 80014fa: 6093 str r3, [r2, #8] #else #error "Wrong Mode" #endif /*Disable interrupt*/ CLR_BIT(EXTI -> IMR , EXTI_LINE); - 8000f3c: 4b04 ldr r3, [pc, #16] ; (8000f50 ) - 8000f3e: 681b ldr r3, [r3, #0] - 8000f40: 4a03 ldr r2, [pc, #12] ; (8000f50 ) - 8000f42: f023 0301 bic.w r3, r3, #1 - 8000f46: 6013 str r3, [r2, #0] + 80014fc: 4b04 ldr r3, [pc, #16] ; (8001510 ) + 80014fe: 681b ldr r3, [r3, #0] + 8001500: 4a03 ldr r2, [pc, #12] ; (8001510 ) + 8001502: f023 0301 bic.w r3, r3, #1 + 8001506: 6013 str r3, [r2, #0] } - 8000f48: bf00 nop - 8000f4a: 46bd mov sp, r7 - 8000f4c: bc80 pop {r7} - 8000f4e: 4770 bx lr - 8000f50: 40010400 .word 0x40010400 + 8001508: bf00 nop + 800150a: 46bd mov sp, r7 + 800150c: bc80 pop {r7} + 800150e: 4770 bx lr + 8001510: 40010400 .word 0x40010400 -08000f54 : +08001514 : } /*changing mode & line in run time*/ void MEXTI_voidSetSignalLatch(u8 Copy_u8EXTILine , u8 Copy_u8EXTIMode) { - 8000f54: b480 push {r7} - 8000f56: b083 sub sp, #12 - 8000f58: af00 add r7, sp, #0 - 8000f5a: 4603 mov r3, r0 - 8000f5c: 460a mov r2, r1 - 8000f5e: 71fb strb r3, [r7, #7] - 8000f60: 4613 mov r3, r2 - 8000f62: 71bb strb r3, [r7, #6] + 8001514: b480 push {r7} + 8001516: b083 sub sp, #12 + 8001518: af00 add r7, sp, #0 + 800151a: 4603 mov r3, r0 + 800151c: 460a mov r2, r1 + 800151e: 71fb strb r3, [r7, #7] + 8001520: 4613 mov r3, r2 + 8001522: 71bb strb r3, [r7, #6] switch(Copy_u8EXTIMode) - 8000f64: 79bb ldrb r3, [r7, #6] - 8000f66: 2b02 cmp r3, #2 - 8000f68: d01c beq.n 8000fa4 - 8000f6a: 2b02 cmp r3, #2 - 8000f6c: dc2f bgt.n 8000fce - 8000f6e: 2b00 cmp r3, #0 - 8000f70: d002 beq.n 8000f78 - 8000f72: 2b01 cmp r3, #1 - 8000f74: d00b beq.n 8000f8e - 8000f76: e02a b.n 8000fce + 8001524: 79bb ldrb r3, [r7, #6] + 8001526: 2b02 cmp r3, #2 + 8001528: d01c beq.n 8001564 + 800152a: 2b02 cmp r3, #2 + 800152c: dc2f bgt.n 800158e + 800152e: 2b00 cmp r3, #0 + 8001530: d002 beq.n 8001538 + 8001532: 2b01 cmp r3, #1 + 8001534: d00b beq.n 800154e + 8001536: e02a b.n 800158e { case RISING : SET_BIT(EXTI -> RTSR , Copy_u8EXTILine); - 8000f78: 4b1c ldr r3, [pc, #112] ; (8000fec ) - 8000f7a: 689b ldr r3, [r3, #8] - 8000f7c: 79fa ldrb r2, [r7, #7] - 8000f7e: 2101 movs r1, #1 - 8000f80: fa01 f202 lsl.w r2, r1, r2 - 8000f84: 4611 mov r1, r2 - 8000f86: 4a19 ldr r2, [pc, #100] ; (8000fec ) - 8000f88: 430b orrs r3, r1 - 8000f8a: 6093 str r3, [r2, #8] + 8001538: 4b1c ldr r3, [pc, #112] ; (80015ac ) + 800153a: 689b ldr r3, [r3, #8] + 800153c: 79fa ldrb r2, [r7, #7] + 800153e: 2101 movs r1, #1 + 8001540: fa01 f202 lsl.w r2, r1, r2 + 8001544: 4611 mov r1, r2 + 8001546: 4a19 ldr r2, [pc, #100] ; (80015ac ) + 8001548: 430b orrs r3, r1 + 800154a: 6093 str r3, [r2, #8] break; - 8000f8c: e01f b.n 8000fce + 800154c: e01f b.n 800158e case FALLING : SET_BIT(EXTI -> FTSR , Copy_u8EXTILine); - 8000f8e: 4b17 ldr r3, [pc, #92] ; (8000fec ) - 8000f90: 68db ldr r3, [r3, #12] - 8000f92: 79fa ldrb r2, [r7, #7] - 8000f94: 2101 movs r1, #1 - 8000f96: fa01 f202 lsl.w r2, r1, r2 - 8000f9a: 4611 mov r1, r2 - 8000f9c: 4a13 ldr r2, [pc, #76] ; (8000fec ) - 8000f9e: 430b orrs r3, r1 - 8000fa0: 60d3 str r3, [r2, #12] + 800154e: 4b17 ldr r3, [pc, #92] ; (80015ac ) + 8001550: 68db ldr r3, [r3, #12] + 8001552: 79fa ldrb r2, [r7, #7] + 8001554: 2101 movs r1, #1 + 8001556: fa01 f202 lsl.w r2, r1, r2 + 800155a: 4611 mov r1, r2 + 800155c: 4a13 ldr r2, [pc, #76] ; (80015ac ) + 800155e: 430b orrs r3, r1 + 8001560: 60d3 str r3, [r2, #12] break; - 8000fa2: e014 b.n 8000fce + 8001562: e014 b.n 800158e case ON_CHANGE : SET_BIT(EXTI -> RTSR , Copy_u8EXTILine); - 8000fa4: 4b11 ldr r3, [pc, #68] ; (8000fec ) - 8000fa6: 689b ldr r3, [r3, #8] - 8000fa8: 79fa ldrb r2, [r7, #7] - 8000faa: 2101 movs r1, #1 - 8000fac: fa01 f202 lsl.w r2, r1, r2 - 8000fb0: 4611 mov r1, r2 - 8000fb2: 4a0e ldr r2, [pc, #56] ; (8000fec ) - 8000fb4: 430b orrs r3, r1 - 8000fb6: 6093 str r3, [r2, #8] + 8001564: 4b11 ldr r3, [pc, #68] ; (80015ac ) + 8001566: 689b ldr r3, [r3, #8] + 8001568: 79fa ldrb r2, [r7, #7] + 800156a: 2101 movs r1, #1 + 800156c: fa01 f202 lsl.w r2, r1, r2 + 8001570: 4611 mov r1, r2 + 8001572: 4a0e ldr r2, [pc, #56] ; (80015ac ) + 8001574: 430b orrs r3, r1 + 8001576: 6093 str r3, [r2, #8] SET_BIT(EXTI -> FTSR , Copy_u8EXTILine); - 8000fb8: 4b0c ldr r3, [pc, #48] ; (8000fec ) - 8000fba: 68db ldr r3, [r3, #12] - 8000fbc: 79fa ldrb r2, [r7, #7] - 8000fbe: 2101 movs r1, #1 - 8000fc0: fa01 f202 lsl.w r2, r1, r2 - 8000fc4: 4611 mov r1, r2 - 8000fc6: 4a09 ldr r2, [pc, #36] ; (8000fec ) - 8000fc8: 430b orrs r3, r1 - 8000fca: 60d3 str r3, [r2, #12] + 8001578: 4b0c ldr r3, [pc, #48] ; (80015ac ) + 800157a: 68db ldr r3, [r3, #12] + 800157c: 79fa ldrb r2, [r7, #7] + 800157e: 2101 movs r1, #1 + 8001580: fa01 f202 lsl.w r2, r1, r2 + 8001584: 4611 mov r1, r2 + 8001586: 4a09 ldr r2, [pc, #36] ; (80015ac ) + 8001588: 430b orrs r3, r1 + 800158a: 60d3 str r3, [r2, #12] break; - 8000fcc: bf00 nop + 800158c: bf00 nop } SET_BIT(EXTI -> IMR , Copy_u8EXTILine); - 8000fce: 4b07 ldr r3, [pc, #28] ; (8000fec ) - 8000fd0: 681b ldr r3, [r3, #0] - 8000fd2: 79fa ldrb r2, [r7, #7] - 8000fd4: 2101 movs r1, #1 - 8000fd6: fa01 f202 lsl.w r2, r1, r2 - 8000fda: 4611 mov r1, r2 - 8000fdc: 4a03 ldr r2, [pc, #12] ; (8000fec ) - 8000fde: 430b orrs r3, r1 - 8000fe0: 6013 str r3, [r2, #0] + 800158e: 4b07 ldr r3, [pc, #28] ; (80015ac ) + 8001590: 681b ldr r3, [r3, #0] + 8001592: 79fa ldrb r2, [r7, #7] + 8001594: 2101 movs r1, #1 + 8001596: fa01 f202 lsl.w r2, r1, r2 + 800159a: 4611 mov r1, r2 + 800159c: 4a03 ldr r2, [pc, #12] ; (80015ac ) + 800159e: 430b orrs r3, r1 + 80015a0: 6013 str r3, [r2, #0] } - 8000fe2: bf00 nop - 8000fe4: 370c adds r7, #12 - 8000fe6: 46bd mov sp, r7 - 8000fe8: bc80 pop {r7} - 8000fea: 4770 bx lr - 8000fec: 40010400 .word 0x40010400 + 80015a2: bf00 nop + 80015a4: 370c adds r7, #12 + 80015a6: 46bd mov sp, r7 + 80015a8: bc80 pop {r7} + 80015aa: 4770 bx lr + 80015ac: 40010400 .word 0x40010400 -08000ff0 : +080015b0 : void EXTI_voidSetCallBack(void (*ptr) (void) , u8 Copy_u8EXTILine) { - 8000ff0: b480 push {r7} - 8000ff2: b083 sub sp, #12 - 8000ff4: af00 add r7, sp, #0 - 8000ff6: 6078 str r0, [r7, #4] - 8000ff8: 460b mov r3, r1 - 8000ffa: 70fb strb r3, [r7, #3] + 80015b0: b480 push {r7} + 80015b2: b083 sub sp, #12 + 80015b4: af00 add r7, sp, #0 + 80015b6: 6078 str r0, [r7, #4] + 80015b8: 460b mov r3, r1 + 80015ba: 70fb strb r3, [r7, #3] EXTI_GlobalPtr[Copy_u8EXTILine] = ptr; - 8000ffc: 78fb ldrb r3, [r7, #3] - 8000ffe: 4904 ldr r1, [pc, #16] ; (8001010 ) - 8001000: 687a ldr r2, [r7, #4] - 8001002: f841 2023 str.w r2, [r1, r3, lsl #2] + 80015bc: 78fb ldrb r3, [r7, #3] + 80015be: 4904 ldr r1, [pc, #16] ; (80015d0 ) + 80015c0: 687a ldr r2, [r7, #4] + 80015c2: f841 2023 str.w r2, [r1, r3, lsl #2] } - 8001006: bf00 nop - 8001008: 370c adds r7, #12 - 800100a: 46bd mov sp, r7 - 800100c: bc80 pop {r7} - 800100e: 4770 bx lr - 8001010: 20000080 .word 0x20000080 + 80015c6: bf00 nop + 80015c8: 370c adds r7, #12 + 80015ca: 46bd mov sp, r7 + 80015cc: bc80 pop {r7} + 80015ce: 4770 bx lr + 80015d0: 20000084 .word 0x20000084 -08001014 : +080015d4 : void EXTI0_IRQHandler(void) { - 8001014: b580 push {r7, lr} - 8001016: af00 add r7, sp, #0 + 80015d4: b580 push {r7, lr} + 80015d6: af00 add r7, sp, #0 EXTI_GlobalPtr[0](); - 8001018: 4b05 ldr r3, [pc, #20] ; (8001030 ) - 800101a: 681b ldr r3, [r3, #0] - 800101c: 4798 blx r3 + 80015d8: 4b05 ldr r3, [pc, #20] ; (80015f0 ) + 80015da: 681b ldr r3, [r3, #0] + 80015dc: 4798 blx r3 /*clear pending bit*/ SET_BIT(EXTI -> PR , 0); - 800101e: 4b05 ldr r3, [pc, #20] ; (8001034 ) - 8001020: 695b ldr r3, [r3, #20] - 8001022: 4a04 ldr r2, [pc, #16] ; (8001034 ) - 8001024: f043 0301 orr.w r3, r3, #1 - 8001028: 6153 str r3, [r2, #20] + 80015de: 4b05 ldr r3, [pc, #20] ; (80015f4 ) + 80015e0: 695b ldr r3, [r3, #20] + 80015e2: 4a04 ldr r2, [pc, #16] ; (80015f4 ) + 80015e4: f043 0301 orr.w r3, r3, #1 + 80015e8: 6153 str r3, [r2, #20] } - 800102a: bf00 nop - 800102c: bd80 pop {r7, pc} - 800102e: bf00 nop - 8001030: 20000080 .word 0x20000080 - 8001034: 40010400 .word 0x40010400 + 80015ea: bf00 nop + 80015ec: bd80 pop {r7, pc} + 80015ee: bf00 nop + 80015f0: 20000084 .word 0x20000084 + 80015f4: 40010400 .word 0x40010400 -08001038 : +080015f8 : void EXTI1_IRQHandler(void) { - 8001038: b580 push {r7, lr} - 800103a: af00 add r7, sp, #0 + 80015f8: b580 push {r7, lr} + 80015fa: af00 add r7, sp, #0 EXTI_GlobalPtr[1](); - 800103c: 4b05 ldr r3, [pc, #20] ; (8001054 ) - 800103e: 685b ldr r3, [r3, #4] - 8001040: 4798 blx r3 + 80015fc: 4b05 ldr r3, [pc, #20] ; (8001614 ) + 80015fe: 685b ldr r3, [r3, #4] + 8001600: 4798 blx r3 /*clear pending bit*/ SET_BIT(EXTI -> PR , 1); - 8001042: 4b05 ldr r3, [pc, #20] ; (8001058 ) - 8001044: 695b ldr r3, [r3, #20] - 8001046: 4a04 ldr r2, [pc, #16] ; (8001058 ) - 8001048: f043 0302 orr.w r3, r3, #2 - 800104c: 6153 str r3, [r2, #20] + 8001602: 4b05 ldr r3, [pc, #20] ; (8001618 ) + 8001604: 695b ldr r3, [r3, #20] + 8001606: 4a04 ldr r2, [pc, #16] ; (8001618 ) + 8001608: f043 0302 orr.w r3, r3, #2 + 800160c: 6153 str r3, [r2, #20] } - 800104e: bf00 nop - 8001050: bd80 pop {r7, pc} - 8001052: bf00 nop - 8001054: 20000080 .word 0x20000080 - 8001058: 40010400 .word 0x40010400 + 800160e: bf00 nop + 8001610: bd80 pop {r7, pc} + 8001612: bf00 nop + 8001614: 20000084 .word 0x20000084 + 8001618: 40010400 .word 0x40010400 -0800105c : +0800161c : void EXTI2_IRQHandler(void) { - 800105c: b580 push {r7, lr} - 800105e: af00 add r7, sp, #0 + 800161c: b580 push {r7, lr} + 800161e: af00 add r7, sp, #0 EXTI_GlobalPtr[2](); - 8001060: 4b05 ldr r3, [pc, #20] ; (8001078 ) - 8001062: 689b ldr r3, [r3, #8] - 8001064: 4798 blx r3 + 8001620: 4b05 ldr r3, [pc, #20] ; (8001638 ) + 8001622: 689b ldr r3, [r3, #8] + 8001624: 4798 blx r3 /*clear pending bit*/ SET_BIT(EXTI -> PR , 2); - 8001066: 4b05 ldr r3, [pc, #20] ; (800107c ) - 8001068: 695b ldr r3, [r3, #20] - 800106a: 4a04 ldr r2, [pc, #16] ; (800107c ) - 800106c: f043 0304 orr.w r3, r3, #4 - 8001070: 6153 str r3, [r2, #20] + 8001626: 4b05 ldr r3, [pc, #20] ; (800163c ) + 8001628: 695b ldr r3, [r3, #20] + 800162a: 4a04 ldr r2, [pc, #16] ; (800163c ) + 800162c: f043 0304 orr.w r3, r3, #4 + 8001630: 6153 str r3, [r2, #20] } - 8001072: bf00 nop - 8001074: bd80 pop {r7, pc} - 8001076: bf00 nop - 8001078: 20000080 .word 0x20000080 - 800107c: 40010400 .word 0x40010400 + 8001632: bf00 nop + 8001634: bd80 pop {r7, pc} + 8001636: bf00 nop + 8001638: 20000084 .word 0x20000084 + 800163c: 40010400 .word 0x40010400 -08001080 : +08001640 : void EXTI3_IRQHandler(void) { - 8001080: b580 push {r7, lr} - 8001082: af00 add r7, sp, #0 + 8001640: b580 push {r7, lr} + 8001642: af00 add r7, sp, #0 EXTI_GlobalPtr[3](); - 8001084: 4b05 ldr r3, [pc, #20] ; (800109c ) - 8001086: 68db ldr r3, [r3, #12] - 8001088: 4798 blx r3 + 8001644: 4b05 ldr r3, [pc, #20] ; (800165c ) + 8001646: 68db ldr r3, [r3, #12] + 8001648: 4798 blx r3 /*clear pending bit*/ SET_BIT(EXTI -> PR , 3); - 800108a: 4b05 ldr r3, [pc, #20] ; (80010a0 ) - 800108c: 695b ldr r3, [r3, #20] - 800108e: 4a04 ldr r2, [pc, #16] ; (80010a0 ) - 8001090: f043 0308 orr.w r3, r3, #8 - 8001094: 6153 str r3, [r2, #20] + 800164a: 4b05 ldr r3, [pc, #20] ; (8001660 ) + 800164c: 695b ldr r3, [r3, #20] + 800164e: 4a04 ldr r2, [pc, #16] ; (8001660 ) + 8001650: f043 0308 orr.w r3, r3, #8 + 8001654: 6153 str r3, [r2, #20] } - 8001096: bf00 nop - 8001098: bd80 pop {r7, pc} - 800109a: bf00 nop - 800109c: 20000080 .word 0x20000080 - 80010a0: 40010400 .word 0x40010400 + 8001656: bf00 nop + 8001658: bd80 pop {r7, pc} + 800165a: bf00 nop + 800165c: 20000084 .word 0x20000084 + 8001660: 40010400 .word 0x40010400 -080010a4 : +08001664 : void EXTI4_IRQHandler(void) { - 80010a4: b580 push {r7, lr} - 80010a6: af00 add r7, sp, #0 + 8001664: b580 push {r7, lr} + 8001666: af00 add r7, sp, #0 EXTI_GlobalPtr[4](); - 80010a8: 4b05 ldr r3, [pc, #20] ; (80010c0 ) - 80010aa: 691b ldr r3, [r3, #16] - 80010ac: 4798 blx r3 + 8001668: 4b05 ldr r3, [pc, #20] ; (8001680 ) + 800166a: 691b ldr r3, [r3, #16] + 800166c: 4798 blx r3 /*clear pending bit*/ SET_BIT(EXTI -> PR , 4); - 80010ae: 4b05 ldr r3, [pc, #20] ; (80010c4 ) - 80010b0: 695b ldr r3, [r3, #20] - 80010b2: 4a04 ldr r2, [pc, #16] ; (80010c4 ) - 80010b4: f043 0310 orr.w r3, r3, #16 - 80010b8: 6153 str r3, [r2, #20] + 800166e: 4b05 ldr r3, [pc, #20] ; (8001684 ) + 8001670: 695b ldr r3, [r3, #20] + 8001672: 4a04 ldr r2, [pc, #16] ; (8001684 ) + 8001674: f043 0310 orr.w r3, r3, #16 + 8001678: 6153 str r3, [r2, #20] } - 80010ba: bf00 nop - 80010bc: bd80 pop {r7, pc} - 80010be: bf00 nop - 80010c0: 20000080 .word 0x20000080 - 80010c4: 40010400 .word 0x40010400 + 800167a: bf00 nop + 800167c: bd80 pop {r7, pc} + 800167e: bf00 nop + 8001680: 20000084 .word 0x20000084 + 8001684: 40010400 .word 0x40010400 -080010c8 : +08001688 : void EXTI9_5_IRQHandler(void) { - 80010c8: b580 push {r7, lr} - 80010ca: b082 sub sp, #8 - 80010cc: af00 add r7, sp, #0 + 8001688: b580 push {r7, lr} + 800168a: b082 sub sp, #8 + 800168c: af00 add r7, sp, #0 u8 PinValue_5 , PinValue_6 , PinValue_7 , PinValue_8 , PinValue_9; PinValue_5 = GET_BIT(EXTI->PR,5); - 80010ce: 4b31 ldr r3, [pc, #196] ; (8001194 ) - 80010d0: 695b ldr r3, [r3, #20] - 80010d2: 095b lsrs r3, r3, #5 - 80010d4: b2db uxtb r3, r3 - 80010d6: f003 0301 and.w r3, r3, #1 - 80010da: 71fb strb r3, [r7, #7] + 800168e: 4b31 ldr r3, [pc, #196] ; (8001754 ) + 8001690: 695b ldr r3, [r3, #20] + 8001692: 095b lsrs r3, r3, #5 + 8001694: b2db uxtb r3, r3 + 8001696: f003 0301 and.w r3, r3, #1 + 800169a: 71fb strb r3, [r7, #7] PinValue_6 = GET_BIT(EXTI->PR,6); - 80010dc: 4b2d ldr r3, [pc, #180] ; (8001194 ) - 80010de: 695b ldr r3, [r3, #20] - 80010e0: 099b lsrs r3, r3, #6 - 80010e2: b2db uxtb r3, r3 - 80010e4: f003 0301 and.w r3, r3, #1 - 80010e8: 71bb strb r3, [r7, #6] + 800169c: 4b2d ldr r3, [pc, #180] ; (8001754 ) + 800169e: 695b ldr r3, [r3, #20] + 80016a0: 099b lsrs r3, r3, #6 + 80016a2: b2db uxtb r3, r3 + 80016a4: f003 0301 and.w r3, r3, #1 + 80016a8: 71bb strb r3, [r7, #6] PinValue_7 = GET_BIT(EXTI->PR,7); - 80010ea: 4b2a ldr r3, [pc, #168] ; (8001194 ) - 80010ec: 695b ldr r3, [r3, #20] - 80010ee: 09db lsrs r3, r3, #7 - 80010f0: b2db uxtb r3, r3 - 80010f2: f003 0301 and.w r3, r3, #1 - 80010f6: 717b strb r3, [r7, #5] + 80016aa: 4b2a ldr r3, [pc, #168] ; (8001754 ) + 80016ac: 695b ldr r3, [r3, #20] + 80016ae: 09db lsrs r3, r3, #7 + 80016b0: b2db uxtb r3, r3 + 80016b2: f003 0301 and.w r3, r3, #1 + 80016b6: 717b strb r3, [r7, #5] PinValue_8 = GET_BIT(EXTI->PR,8); - 80010f8: 4b26 ldr r3, [pc, #152] ; (8001194 ) - 80010fa: 695b ldr r3, [r3, #20] - 80010fc: 0a1b lsrs r3, r3, #8 - 80010fe: b2db uxtb r3, r3 - 8001100: f003 0301 and.w r3, r3, #1 - 8001104: 713b strb r3, [r7, #4] + 80016b8: 4b26 ldr r3, [pc, #152] ; (8001754 ) + 80016ba: 695b ldr r3, [r3, #20] + 80016bc: 0a1b lsrs r3, r3, #8 + 80016be: b2db uxtb r3, r3 + 80016c0: f003 0301 and.w r3, r3, #1 + 80016c4: 713b strb r3, [r7, #4] PinValue_9 = GET_BIT(EXTI->PR,9); - 8001106: 4b23 ldr r3, [pc, #140] ; (8001194 ) - 8001108: 695b ldr r3, [r3, #20] - 800110a: 0a5b lsrs r3, r3, #9 - 800110c: b2db uxtb r3, r3 - 800110e: f003 0301 and.w r3, r3, #1 - 8001112: 70fb strb r3, [r7, #3] + 80016c6: 4b23 ldr r3, [pc, #140] ; (8001754 ) + 80016c8: 695b ldr r3, [r3, #20] + 80016ca: 0a5b lsrs r3, r3, #9 + 80016cc: b2db uxtb r3, r3 + 80016ce: f003 0301 and.w r3, r3, #1 + 80016d2: 70fb strb r3, [r7, #3] if (PinValue_5 == 1) - 8001114: 79fb ldrb r3, [r7, #7] - 8001116: 2b01 cmp r3, #1 - 8001118: d108 bne.n 800112c + 80016d4: 79fb ldrb r3, [r7, #7] + 80016d6: 2b01 cmp r3, #1 + 80016d8: d108 bne.n 80016ec { EXTI_GlobalPtr[5](); - 800111a: 4b1f ldr r3, [pc, #124] ; (8001198 ) - 800111c: 695b ldr r3, [r3, #20] - 800111e: 4798 blx r3 + 80016da: 4b1f ldr r3, [pc, #124] ; (8001758 ) + 80016dc: 695b ldr r3, [r3, #20] + 80016de: 4798 blx r3 SET_BIT(EXTI -> PR , 5); - 8001120: 4b1c ldr r3, [pc, #112] ; (8001194 ) - 8001122: 695b ldr r3, [r3, #20] - 8001124: 4a1b ldr r2, [pc, #108] ; (8001194 ) - 8001126: f043 0320 orr.w r3, r3, #32 - 800112a: 6153 str r3, [r2, #20] + 80016e0: 4b1c ldr r3, [pc, #112] ; (8001754 ) + 80016e2: 695b ldr r3, [r3, #20] + 80016e4: 4a1b ldr r2, [pc, #108] ; (8001754 ) + 80016e6: f043 0320 orr.w r3, r3, #32 + 80016ea: 6153 str r3, [r2, #20] } if (PinValue_6 == 1) - 800112c: 79bb ldrb r3, [r7, #6] - 800112e: 2b01 cmp r3, #1 - 8001130: d108 bne.n 8001144 + 80016ec: 79bb ldrb r3, [r7, #6] + 80016ee: 2b01 cmp r3, #1 + 80016f0: d108 bne.n 8001704 { EXTI_GlobalPtr[6](); - 8001132: 4b19 ldr r3, [pc, #100] ; (8001198 ) - 8001134: 699b ldr r3, [r3, #24] - 8001136: 4798 blx r3 + 80016f2: 4b19 ldr r3, [pc, #100] ; (8001758 ) + 80016f4: 699b ldr r3, [r3, #24] + 80016f6: 4798 blx r3 SET_BIT(EXTI -> PR , 6); - 8001138: 4b16 ldr r3, [pc, #88] ; (8001194 ) - 800113a: 695b ldr r3, [r3, #20] - 800113c: 4a15 ldr r2, [pc, #84] ; (8001194 ) - 800113e: f043 0340 orr.w r3, r3, #64 ; 0x40 - 8001142: 6153 str r3, [r2, #20] + 80016f8: 4b16 ldr r3, [pc, #88] ; (8001754 ) + 80016fa: 695b ldr r3, [r3, #20] + 80016fc: 4a15 ldr r2, [pc, #84] ; (8001754 ) + 80016fe: f043 0340 orr.w r3, r3, #64 ; 0x40 + 8001702: 6153 str r3, [r2, #20] } if (PinValue_7 == 1) - 8001144: 797b ldrb r3, [r7, #5] - 8001146: 2b01 cmp r3, #1 - 8001148: d108 bne.n 800115c + 8001704: 797b ldrb r3, [r7, #5] + 8001706: 2b01 cmp r3, #1 + 8001708: d108 bne.n 800171c { EXTI_GlobalPtr[7](); - 800114a: 4b13 ldr r3, [pc, #76] ; (8001198 ) - 800114c: 69db ldr r3, [r3, #28] - 800114e: 4798 blx r3 + 800170a: 4b13 ldr r3, [pc, #76] ; (8001758 ) + 800170c: 69db ldr r3, [r3, #28] + 800170e: 4798 blx r3 SET_BIT(EXTI -> PR , 7); - 8001150: 4b10 ldr r3, [pc, #64] ; (8001194 ) - 8001152: 695b ldr r3, [r3, #20] - 8001154: 4a0f ldr r2, [pc, #60] ; (8001194 ) - 8001156: f043 0380 orr.w r3, r3, #128 ; 0x80 - 800115a: 6153 str r3, [r2, #20] + 8001710: 4b10 ldr r3, [pc, #64] ; (8001754 ) + 8001712: 695b ldr r3, [r3, #20] + 8001714: 4a0f ldr r2, [pc, #60] ; (8001754 ) + 8001716: f043 0380 orr.w r3, r3, #128 ; 0x80 + 800171a: 6153 str r3, [r2, #20] } if (PinValue_8 == 1) - 800115c: 793b ldrb r3, [r7, #4] - 800115e: 2b01 cmp r3, #1 - 8001160: d108 bne.n 8001174 + 800171c: 793b ldrb r3, [r7, #4] + 800171e: 2b01 cmp r3, #1 + 8001720: d108 bne.n 8001734 { EXTI_GlobalPtr[8](); - 8001162: 4b0d ldr r3, [pc, #52] ; (8001198 ) - 8001164: 6a1b ldr r3, [r3, #32] - 8001166: 4798 blx r3 + 8001722: 4b0d ldr r3, [pc, #52] ; (8001758 ) + 8001724: 6a1b ldr r3, [r3, #32] + 8001726: 4798 blx r3 SET_BIT(EXTI -> PR , 8); - 8001168: 4b0a ldr r3, [pc, #40] ; (8001194 ) - 800116a: 695b ldr r3, [r3, #20] - 800116c: 4a09 ldr r2, [pc, #36] ; (8001194 ) - 800116e: f443 7380 orr.w r3, r3, #256 ; 0x100 - 8001172: 6153 str r3, [r2, #20] + 8001728: 4b0a ldr r3, [pc, #40] ; (8001754 ) + 800172a: 695b ldr r3, [r3, #20] + 800172c: 4a09 ldr r2, [pc, #36] ; (8001754 ) + 800172e: f443 7380 orr.w r3, r3, #256 ; 0x100 + 8001732: 6153 str r3, [r2, #20] } if (PinValue_9 == 1) - 8001174: 78fb ldrb r3, [r7, #3] - 8001176: 2b01 cmp r3, #1 - 8001178: d108 bne.n 800118c + 8001734: 78fb ldrb r3, [r7, #3] + 8001736: 2b01 cmp r3, #1 + 8001738: d108 bne.n 800174c { EXTI_GlobalPtr[9](); - 800117a: 4b07 ldr r3, [pc, #28] ; (8001198 ) - 800117c: 6a5b ldr r3, [r3, #36] ; 0x24 - 800117e: 4798 blx r3 + 800173a: 4b07 ldr r3, [pc, #28] ; (8001758 ) + 800173c: 6a5b ldr r3, [r3, #36] ; 0x24 + 800173e: 4798 blx r3 SET_BIT(EXTI -> PR , 9); - 8001180: 4b04 ldr r3, [pc, #16] ; (8001194 ) - 8001182: 695b ldr r3, [r3, #20] - 8001184: 4a03 ldr r2, [pc, #12] ; (8001194 ) - 8001186: f443 7300 orr.w r3, r3, #512 ; 0x200 - 800118a: 6153 str r3, [r2, #20] + 8001740: 4b04 ldr r3, [pc, #16] ; (8001754 ) + 8001742: 695b ldr r3, [r3, #20] + 8001744: 4a03 ldr r2, [pc, #12] ; (8001754 ) + 8001746: f443 7300 orr.w r3, r3, #512 ; 0x200 + 800174a: 6153 str r3, [r2, #20] } } - 800118c: bf00 nop - 800118e: 3708 adds r7, #8 - 8001190: 46bd mov sp, r7 - 8001192: bd80 pop {r7, pc} - 8001194: 40010400 .word 0x40010400 - 8001198: 20000080 .word 0x20000080 + 800174c: bf00 nop + 800174e: 3708 adds r7, #8 + 8001750: 46bd mov sp, r7 + 8001752: bd80 pop {r7, pc} + 8001754: 40010400 .word 0x40010400 + 8001758: 20000084 .word 0x20000084 -0800119c : +0800175c : void EXTI15_10_IRQHandler(void) { - 800119c: b580 push {r7, lr} - 800119e: b082 sub sp, #8 - 80011a0: af00 add r7, sp, #0 + 800175c: b580 push {r7, lr} + 800175e: b082 sub sp, #8 + 8001760: af00 add r7, sp, #0 u8 PinValue_10 , PinValue_11 , PinValue_12 , PinValue_13 , PinValue_14 , PinValue_15; PinValue_10 = GET_BIT(EXTI->PR,10); - 80011a2: 4b3b ldr r3, [pc, #236] ; (8001290 ) - 80011a4: 695b ldr r3, [r3, #20] - 80011a6: 0a9b lsrs r3, r3, #10 - 80011a8: b2db uxtb r3, r3 - 80011aa: f003 0301 and.w r3, r3, #1 - 80011ae: 71fb strb r3, [r7, #7] + 8001762: 4b3b ldr r3, [pc, #236] ; (8001850 ) + 8001764: 695b ldr r3, [r3, #20] + 8001766: 0a9b lsrs r3, r3, #10 + 8001768: b2db uxtb r3, r3 + 800176a: f003 0301 and.w r3, r3, #1 + 800176e: 71fb strb r3, [r7, #7] PinValue_11 = GET_BIT(EXTI->PR,11); - 80011b0: 4b37 ldr r3, [pc, #220] ; (8001290 ) - 80011b2: 695b ldr r3, [r3, #20] - 80011b4: 0adb lsrs r3, r3, #11 - 80011b6: b2db uxtb r3, r3 - 80011b8: f003 0301 and.w r3, r3, #1 - 80011bc: 71bb strb r3, [r7, #6] + 8001770: 4b37 ldr r3, [pc, #220] ; (8001850 ) + 8001772: 695b ldr r3, [r3, #20] + 8001774: 0adb lsrs r3, r3, #11 + 8001776: b2db uxtb r3, r3 + 8001778: f003 0301 and.w r3, r3, #1 + 800177c: 71bb strb r3, [r7, #6] PinValue_12 = GET_BIT(EXTI->PR,12); - 80011be: 4b34 ldr r3, [pc, #208] ; (8001290 ) - 80011c0: 695b ldr r3, [r3, #20] - 80011c2: 0b1b lsrs r3, r3, #12 - 80011c4: b2db uxtb r3, r3 - 80011c6: f003 0301 and.w r3, r3, #1 - 80011ca: 717b strb r3, [r7, #5] + 800177e: 4b34 ldr r3, [pc, #208] ; (8001850 ) + 8001780: 695b ldr r3, [r3, #20] + 8001782: 0b1b lsrs r3, r3, #12 + 8001784: b2db uxtb r3, r3 + 8001786: f003 0301 and.w r3, r3, #1 + 800178a: 717b strb r3, [r7, #5] PinValue_13 = GET_BIT(EXTI->PR,13); - 80011cc: 4b30 ldr r3, [pc, #192] ; (8001290 ) - 80011ce: 695b ldr r3, [r3, #20] - 80011d0: 0b5b lsrs r3, r3, #13 - 80011d2: b2db uxtb r3, r3 - 80011d4: f003 0301 and.w r3, r3, #1 - 80011d8: 713b strb r3, [r7, #4] + 800178c: 4b30 ldr r3, [pc, #192] ; (8001850 ) + 800178e: 695b ldr r3, [r3, #20] + 8001790: 0b5b lsrs r3, r3, #13 + 8001792: b2db uxtb r3, r3 + 8001794: f003 0301 and.w r3, r3, #1 + 8001798: 713b strb r3, [r7, #4] PinValue_14 = GET_BIT(EXTI->PR,14); - 80011da: 4b2d ldr r3, [pc, #180] ; (8001290 ) - 80011dc: 695b ldr r3, [r3, #20] - 80011de: 0b9b lsrs r3, r3, #14 - 80011e0: b2db uxtb r3, r3 - 80011e2: f003 0301 and.w r3, r3, #1 - 80011e6: 70fb strb r3, [r7, #3] + 800179a: 4b2d ldr r3, [pc, #180] ; (8001850 ) + 800179c: 695b ldr r3, [r3, #20] + 800179e: 0b9b lsrs r3, r3, #14 + 80017a0: b2db uxtb r3, r3 + 80017a2: f003 0301 and.w r3, r3, #1 + 80017a6: 70fb strb r3, [r7, #3] PinValue_15 = GET_BIT(EXTI->PR,14); - 80011e8: 4b29 ldr r3, [pc, #164] ; (8001290 ) - 80011ea: 695b ldr r3, [r3, #20] - 80011ec: 0b9b lsrs r3, r3, #14 - 80011ee: b2db uxtb r3, r3 - 80011f0: f003 0301 and.w r3, r3, #1 - 80011f4: 70bb strb r3, [r7, #2] + 80017a8: 4b29 ldr r3, [pc, #164] ; (8001850 ) + 80017aa: 695b ldr r3, [r3, #20] + 80017ac: 0b9b lsrs r3, r3, #14 + 80017ae: b2db uxtb r3, r3 + 80017b0: f003 0301 and.w r3, r3, #1 + 80017b4: 70bb strb r3, [r7, #2] if (PinValue_10 == 1) - 80011f6: 79fb ldrb r3, [r7, #7] - 80011f8: 2b01 cmp r3, #1 - 80011fa: d108 bne.n 800120e + 80017b6: 79fb ldrb r3, [r7, #7] + 80017b8: 2b01 cmp r3, #1 + 80017ba: d108 bne.n 80017ce { EXTI_GlobalPtr[10](); - 80011fc: 4b25 ldr r3, [pc, #148] ; (8001294 ) - 80011fe: 6a9b ldr r3, [r3, #40] ; 0x28 - 8001200: 4798 blx r3 + 80017bc: 4b25 ldr r3, [pc, #148] ; (8001854 ) + 80017be: 6a9b ldr r3, [r3, #40] ; 0x28 + 80017c0: 4798 blx r3 SET_BIT(EXTI -> PR , 10); - 8001202: 4b23 ldr r3, [pc, #140] ; (8001290 ) - 8001204: 695b ldr r3, [r3, #20] - 8001206: 4a22 ldr r2, [pc, #136] ; (8001290 ) - 8001208: f443 6380 orr.w r3, r3, #1024 ; 0x400 - 800120c: 6153 str r3, [r2, #20] + 80017c2: 4b23 ldr r3, [pc, #140] ; (8001850 ) + 80017c4: 695b ldr r3, [r3, #20] + 80017c6: 4a22 ldr r2, [pc, #136] ; (8001850 ) + 80017c8: f443 6380 orr.w r3, r3, #1024 ; 0x400 + 80017cc: 6153 str r3, [r2, #20] } if (PinValue_11 == 1) - 800120e: 79bb ldrb r3, [r7, #6] - 8001210: 2b01 cmp r3, #1 - 8001212: d108 bne.n 8001226 + 80017ce: 79bb ldrb r3, [r7, #6] + 80017d0: 2b01 cmp r3, #1 + 80017d2: d108 bne.n 80017e6 { EXTI_GlobalPtr[11](); - 8001214: 4b1f ldr r3, [pc, #124] ; (8001294 ) - 8001216: 6adb ldr r3, [r3, #44] ; 0x2c - 8001218: 4798 blx r3 + 80017d4: 4b1f ldr r3, [pc, #124] ; (8001854 ) + 80017d6: 6adb ldr r3, [r3, #44] ; 0x2c + 80017d8: 4798 blx r3 SET_BIT(EXTI -> PR , 11); - 800121a: 4b1d ldr r3, [pc, #116] ; (8001290 ) - 800121c: 695b ldr r3, [r3, #20] - 800121e: 4a1c ldr r2, [pc, #112] ; (8001290 ) - 8001220: f443 6300 orr.w r3, r3, #2048 ; 0x800 - 8001224: 6153 str r3, [r2, #20] + 80017da: 4b1d ldr r3, [pc, #116] ; (8001850 ) + 80017dc: 695b ldr r3, [r3, #20] + 80017de: 4a1c ldr r2, [pc, #112] ; (8001850 ) + 80017e0: f443 6300 orr.w r3, r3, #2048 ; 0x800 + 80017e4: 6153 str r3, [r2, #20] } if (PinValue_12 == 1) - 8001226: 797b ldrb r3, [r7, #5] - 8001228: 2b01 cmp r3, #1 - 800122a: d108 bne.n 800123e + 80017e6: 797b ldrb r3, [r7, #5] + 80017e8: 2b01 cmp r3, #1 + 80017ea: d108 bne.n 80017fe { EXTI_GlobalPtr[12](); - 800122c: 4b19 ldr r3, [pc, #100] ; (8001294 ) - 800122e: 6b1b ldr r3, [r3, #48] ; 0x30 - 8001230: 4798 blx r3 + 80017ec: 4b19 ldr r3, [pc, #100] ; (8001854 ) + 80017ee: 6b1b ldr r3, [r3, #48] ; 0x30 + 80017f0: 4798 blx r3 SET_BIT(EXTI -> PR , 12); - 8001232: 4b17 ldr r3, [pc, #92] ; (8001290 ) - 8001234: 695b ldr r3, [r3, #20] - 8001236: 4a16 ldr r2, [pc, #88] ; (8001290 ) - 8001238: f443 5380 orr.w r3, r3, #4096 ; 0x1000 - 800123c: 6153 str r3, [r2, #20] + 80017f2: 4b17 ldr r3, [pc, #92] ; (8001850 ) + 80017f4: 695b ldr r3, [r3, #20] + 80017f6: 4a16 ldr r2, [pc, #88] ; (8001850 ) + 80017f8: f443 5380 orr.w r3, r3, #4096 ; 0x1000 + 80017fc: 6153 str r3, [r2, #20] } if (PinValue_13 == 1) - 800123e: 793b ldrb r3, [r7, #4] - 8001240: 2b01 cmp r3, #1 - 8001242: d108 bne.n 8001256 + 80017fe: 793b ldrb r3, [r7, #4] + 8001800: 2b01 cmp r3, #1 + 8001802: d108 bne.n 8001816 { EXTI_GlobalPtr[13](); - 8001244: 4b13 ldr r3, [pc, #76] ; (8001294 ) - 8001246: 6b5b ldr r3, [r3, #52] ; 0x34 - 8001248: 4798 blx r3 + 8001804: 4b13 ldr r3, [pc, #76] ; (8001854 ) + 8001806: 6b5b ldr r3, [r3, #52] ; 0x34 + 8001808: 4798 blx r3 SET_BIT(EXTI -> PR , 13); - 800124a: 4b11 ldr r3, [pc, #68] ; (8001290 ) - 800124c: 695b ldr r3, [r3, #20] - 800124e: 4a10 ldr r2, [pc, #64] ; (8001290 ) - 8001250: f443 5300 orr.w r3, r3, #8192 ; 0x2000 - 8001254: 6153 str r3, [r2, #20] + 800180a: 4b11 ldr r3, [pc, #68] ; (8001850 ) + 800180c: 695b ldr r3, [r3, #20] + 800180e: 4a10 ldr r2, [pc, #64] ; (8001850 ) + 8001810: f443 5300 orr.w r3, r3, #8192 ; 0x2000 + 8001814: 6153 str r3, [r2, #20] } if (PinValue_14 == 1) - 8001256: 78fb ldrb r3, [r7, #3] - 8001258: 2b01 cmp r3, #1 - 800125a: d108 bne.n 800126e + 8001816: 78fb ldrb r3, [r7, #3] + 8001818: 2b01 cmp r3, #1 + 800181a: d108 bne.n 800182e { EXTI_GlobalPtr[14](); - 800125c: 4b0d ldr r3, [pc, #52] ; (8001294 ) - 800125e: 6b9b ldr r3, [r3, #56] ; 0x38 - 8001260: 4798 blx r3 + 800181c: 4b0d ldr r3, [pc, #52] ; (8001854 ) + 800181e: 6b9b ldr r3, [r3, #56] ; 0x38 + 8001820: 4798 blx r3 SET_BIT(EXTI -> PR , 14); - 8001262: 4b0b ldr r3, [pc, #44] ; (8001290 ) - 8001264: 695b ldr r3, [r3, #20] - 8001266: 4a0a ldr r2, [pc, #40] ; (8001290 ) - 8001268: f443 4380 orr.w r3, r3, #16384 ; 0x4000 - 800126c: 6153 str r3, [r2, #20] + 8001822: 4b0b ldr r3, [pc, #44] ; (8001850 ) + 8001824: 695b ldr r3, [r3, #20] + 8001826: 4a0a ldr r2, [pc, #40] ; (8001850 ) + 8001828: f443 4380 orr.w r3, r3, #16384 ; 0x4000 + 800182c: 6153 str r3, [r2, #20] } if (PinValue_15 == 1) - 800126e: 78bb ldrb r3, [r7, #2] - 8001270: 2b01 cmp r3, #1 - 8001272: d108 bne.n 8001286 + 800182e: 78bb ldrb r3, [r7, #2] + 8001830: 2b01 cmp r3, #1 + 8001832: d108 bne.n 8001846 { EXTI_GlobalPtr[15](); - 8001274: 4b07 ldr r3, [pc, #28] ; (8001294 ) - 8001276: 6bdb ldr r3, [r3, #60] ; 0x3c - 8001278: 4798 blx r3 + 8001834: 4b07 ldr r3, [pc, #28] ; (8001854 ) + 8001836: 6bdb ldr r3, [r3, #60] ; 0x3c + 8001838: 4798 blx r3 SET_BIT(EXTI -> PR , 15); - 800127a: 4b05 ldr r3, [pc, #20] ; (8001290 ) - 800127c: 695b ldr r3, [r3, #20] - 800127e: 4a04 ldr r2, [pc, #16] ; (8001290 ) - 8001280: f443 4300 orr.w r3, r3, #32768 ; 0x8000 - 8001284: 6153 str r3, [r2, #20] + 800183a: 4b05 ldr r3, [pc, #20] ; (8001850 ) + 800183c: 695b ldr r3, [r3, #20] + 800183e: 4a04 ldr r2, [pc, #16] ; (8001850 ) + 8001840: f443 4300 orr.w r3, r3, #32768 ; 0x8000 + 8001844: 6153 str r3, [r2, #20] } } - 8001286: bf00 nop - 8001288: 3708 adds r7, #8 - 800128a: 46bd mov sp, r7 - 800128c: bd80 pop {r7, pc} - 800128e: bf00 nop - 8001290: 40010400 .word 0x40010400 - 8001294: 20000080 .word 0x20000080 - -08001298 : + 8001846: bf00 nop + 8001848: 3708 adds r7, #8 + 800184a: 46bd mov sp, r7 + 800184c: bd80 pop {r7, pc} + 800184e: bf00 nop + 8001850: 40010400 .word 0x40010400 + 8001854: 20000084 .word 0x20000084 + +08001858 : return Global_u8MotorRightDirection; } } s32 HENCODER_voidEncoderCounts(u8 Copy_u8Channel2Port ,u8 Copy_u8Channel2Pin) { - 8001298: b580 push {r7, lr} - 800129a: b084 sub sp, #16 - 800129c: af00 add r7, sp, #0 - 800129e: 4603 mov r3, r0 - 80012a0: 460a mov r2, r1 - 80012a2: 71fb strb r3, [r7, #7] - 80012a4: 4613 mov r3, r2 - 80012a6: 71bb strb r3, [r7, #6] + 8001858: b580 push {r7, lr} + 800185a: b084 sub sp, #16 + 800185c: af00 add r7, sp, #0 + 800185e: 4603 mov r3, r0 + 8001860: 460a mov r2, r1 + 8001862: 71fb strb r3, [r7, #7] + 8001864: 4613 mov r3, r2 + 8001866: 71bb strb r3, [r7, #6] //u8 MotorDirection ; u8 Local_u8ChannelState ; Local_u8ChannelState = MGPIO_u8GetPinValue(Copy_u8Channel2Port ,Copy_u8Channel2Pin+1); - 80012a8: 79bb ldrb r3, [r7, #6] - 80012aa: 3301 adds r3, #1 - 80012ac: b2da uxtb r2, r3 - 80012ae: 79fb ldrb r3, [r7, #7] - 80012b0: 4611 mov r1, r2 - 80012b2: 4618 mov r0, r3 - 80012b4: f7ff fdfc bl 8000eb0 - 80012b8: 4603 mov r3, r0 - 80012ba: 73fb strb r3, [r7, #15] + 8001868: 79bb ldrb r3, [r7, #6] + 800186a: 3301 adds r3, #1 + 800186c: b2da uxtb r2, r3 + 800186e: 79fb ldrb r3, [r7, #7] + 8001870: 4611 mov r1, r2 + 8001872: 4618 mov r0, r3 + 8001874: f7ff fdfc bl 8001470 + 8001878: 4603 mov r3, r0 + 800187a: 73fb strb r3, [r7, #15] if (Copy_u8Channel2Pin == 8) - 80012bc: 79bb ldrb r3, [r7, #6] - 80012be: 2b08 cmp r3, #8 - 80012c0: d119 bne.n 80012f6 + 800187c: 79bb ldrb r3, [r7, #6] + 800187e: 2b08 cmp r3, #8 + 8001880: d119 bne.n 80018b6 { if(Local_u8ChannelState == HIGH) - 80012c2: 7bfb ldrb r3, [r7, #15] - 80012c4: 2b01 cmp r3, #1 - 80012c6: d108 bne.n 80012da + 8001882: 7bfb ldrb r3, [r7, #15] + 8001884: 2b01 cmp r3, #1 + 8001886: d108 bne.n 800189a { Global_u8MotorLeftDirection = ClockwiseDirection; - 80012c8: 4b19 ldr r3, [pc, #100] ; (8001330 ) - 80012ca: 2201 movs r2, #1 - 80012cc: 701a strb r2, [r3, #0] + 8001888: 4b19 ldr r3, [pc, #100] ; (80018f0 ) + 800188a: 2201 movs r2, #1 + 800188c: 701a strb r2, [r3, #0] Global_s32NumOfLeftCounts--; - 80012ce: 4b19 ldr r3, [pc, #100] ; (8001334 ) - 80012d0: 681b ldr r3, [r3, #0] - 80012d2: 3b01 subs r3, #1 - 80012d4: 4a17 ldr r2, [pc, #92] ; (8001334 ) - 80012d6: 6013 str r3, [r2, #0] - 80012d8: e00a b.n 80012f0 + 800188e: 4b19 ldr r3, [pc, #100] ; (80018f4 ) + 8001890: 681b ldr r3, [r3, #0] + 8001892: 3b01 subs r3, #1 + 8001894: 4a17 ldr r2, [pc, #92] ; (80018f4 ) + 8001896: 6013 str r3, [r2, #0] + 8001898: e00a b.n 80018b0 } else if (Local_u8ChannelState == LOW) - 80012da: 7bfb ldrb r3, [r7, #15] - 80012dc: 2b00 cmp r3, #0 - 80012de: d107 bne.n 80012f0 + 800189a: 7bfb ldrb r3, [r7, #15] + 800189c: 2b00 cmp r3, #0 + 800189e: d107 bne.n 80018b0 { Global_u8MotorLeftDirection = CounterClockwiseDirection; - 80012e0: 4b13 ldr r3, [pc, #76] ; (8001330 ) - 80012e2: 2202 movs r2, #2 - 80012e4: 701a strb r2, [r3, #0] + 80018a0: 4b13 ldr r3, [pc, #76] ; (80018f0 ) + 80018a2: 2202 movs r2, #2 + 80018a4: 701a strb r2, [r3, #0] Global_s32NumOfLeftCounts++; - 80012e6: 4b13 ldr r3, [pc, #76] ; (8001334 ) - 80012e8: 681b ldr r3, [r3, #0] - 80012ea: 3301 adds r3, #1 - 80012ec: 4a11 ldr r2, [pc, #68] ; (8001334 ) - 80012ee: 6013 str r3, [r2, #0] + 80018a6: 4b13 ldr r3, [pc, #76] ; (80018f4 ) + 80018a8: 681b ldr r3, [r3, #0] + 80018aa: 3301 adds r3, #1 + 80018ac: 4a11 ldr r2, [pc, #68] ; (80018f4 ) + 80018ae: 6013 str r3, [r2, #0] } return Global_s32NumOfLeftCounts; - 80012f0: 4b10 ldr r3, [pc, #64] ; (8001334 ) - 80012f2: 681b ldr r3, [r3, #0] - 80012f4: e018 b.n 8001328 + 80018b0: 4b10 ldr r3, [pc, #64] ; (80018f4 ) + 80018b2: 681b ldr r3, [r3, #0] + 80018b4: e018 b.n 80018e8 } else //if (Copy_u8Channel2Pin == 10) { if(Local_u8ChannelState == HIGH) - 80012f6: 7bfb ldrb r3, [r7, #15] - 80012f8: 2b01 cmp r3, #1 - 80012fa: d108 bne.n 800130e + 80018b6: 7bfb ldrb r3, [r7, #15] + 80018b8: 2b01 cmp r3, #1 + 80018ba: d108 bne.n 80018ce { Global_u8MotorRightDirection = ClockwiseDirection; - 80012fc: 4b0e ldr r3, [pc, #56] ; (8001338 ) - 80012fe: 2201 movs r2, #1 - 8001300: 701a strb r2, [r3, #0] + 80018bc: 4b0e ldr r3, [pc, #56] ; (80018f8 ) + 80018be: 2201 movs r2, #1 + 80018c0: 701a strb r2, [r3, #0] Global_s32NumOfRightCounts--; - 8001302: 4b0e ldr r3, [pc, #56] ; (800133c ) - 8001304: 681b ldr r3, [r3, #0] - 8001306: 3b01 subs r3, #1 - 8001308: 4a0c ldr r2, [pc, #48] ; (800133c ) - 800130a: 6013 str r3, [r2, #0] - 800130c: e00a b.n 8001324 + 80018c2: 4b0e ldr r3, [pc, #56] ; (80018fc ) + 80018c4: 681b ldr r3, [r3, #0] + 80018c6: 3b01 subs r3, #1 + 80018c8: 4a0c ldr r2, [pc, #48] ; (80018fc ) + 80018ca: 6013 str r3, [r2, #0] + 80018cc: e00a b.n 80018e4 } else if (Local_u8ChannelState == LOW) - 800130e: 7bfb ldrb r3, [r7, #15] - 8001310: 2b00 cmp r3, #0 - 8001312: d107 bne.n 8001324 + 80018ce: 7bfb ldrb r3, [r7, #15] + 80018d0: 2b00 cmp r3, #0 + 80018d2: d107 bne.n 80018e4 { Global_u8MotorRightDirection = CounterClockwiseDirection; - 8001314: 4b08 ldr r3, [pc, #32] ; (8001338 ) - 8001316: 2202 movs r2, #2 - 8001318: 701a strb r2, [r3, #0] + 80018d4: 4b08 ldr r3, [pc, #32] ; (80018f8 ) + 80018d6: 2202 movs r2, #2 + 80018d8: 701a strb r2, [r3, #0] Global_s32NumOfRightCounts++; - 800131a: 4b08 ldr r3, [pc, #32] ; (800133c ) - 800131c: 681b ldr r3, [r3, #0] - 800131e: 3301 adds r3, #1 - 8001320: 4a06 ldr r2, [pc, #24] ; (800133c ) - 8001322: 6013 str r3, [r2, #0] + 80018da: 4b08 ldr r3, [pc, #32] ; (80018fc ) + 80018dc: 681b ldr r3, [r3, #0] + 80018de: 3301 adds r3, #1 + 80018e0: 4a06 ldr r2, [pc, #24] ; (80018fc ) + 80018e2: 6013 str r3, [r2, #0] } return Global_s32NumOfRightCounts; - 8001324: 4b05 ldr r3, [pc, #20] ; (800133c ) - 8001326: 681b ldr r3, [r3, #0] + 80018e4: 4b05 ldr r3, [pc, #20] ; (80018fc ) + 80018e6: 681b ldr r3, [r3, #0] } } - 8001328: 4618 mov r0, r3 - 800132a: 3710 adds r7, #16 - 800132c: 46bd mov sp, r7 - 800132e: bd80 pop {r7, pc} - 8001330: 200000c1 .word 0x200000c1 - 8001334: 200000c8 .word 0x200000c8 - 8001338: 200000c0 .word 0x200000c0 - 800133c: 200000c4 .word 0x200000c4 + 80018e8: 4618 mov r0, r3 + 80018ea: 3710 adds r7, #16 + 80018ec: 46bd mov sp, r7 + 80018ee: bd80 pop {r7, pc} + 80018f0: 200000c5 .word 0x200000c5 + 80018f4: 200000cc .word 0x200000cc + 80018f8: 200000c4 .word 0x200000c4 + 80018fc: 200000c8 .word 0x200000c8 -08001340 : +08001900 : void HENCODER_s32GetZeroCounts(u8 Copy_u8Channel2Pin) { - 8001340: b480 push {r7} - 8001342: b083 sub sp, #12 - 8001344: af00 add r7, sp, #0 - 8001346: 4603 mov r3, r0 - 8001348: 71fb strb r3, [r7, #7] + 8001900: b480 push {r7} + 8001902: b083 sub sp, #12 + 8001904: af00 add r7, sp, #0 + 8001906: 4603 mov r3, r0 + 8001908: 71fb strb r3, [r7, #7] if(Copy_u8Channel2Pin == 8) - 800134a: 79fb ldrb r3, [r7, #7] - 800134c: 2b08 cmp r3, #8 - 800134e: d103 bne.n 8001358 + 800190a: 79fb ldrb r3, [r7, #7] + 800190c: 2b08 cmp r3, #8 + 800190e: d103 bne.n 8001918 { Global_s32NumOfLeftCounts = 0; - 8001350: 4b07 ldr r3, [pc, #28] ; (8001370 ) - 8001352: 2200 movs r2, #0 - 8001354: 601a str r2, [r3, #0] + 8001910: 4b07 ldr r3, [pc, #28] ; (8001930 ) + 8001912: 2200 movs r2, #0 + 8001914: 601a str r2, [r3, #0] else if (Copy_u8Channel2Pin == 10) { Global_s32NumOfRightCounts = 0; } //return Global_s32NumOfCounts; } - 8001356: e005 b.n 8001364 + 8001916: e005 b.n 8001924 else if (Copy_u8Channel2Pin == 10) - 8001358: 79fb ldrb r3, [r7, #7] - 800135a: 2b0a cmp r3, #10 - 800135c: d102 bne.n 8001364 + 8001918: 79fb ldrb r3, [r7, #7] + 800191a: 2b0a cmp r3, #10 + 800191c: d102 bne.n 8001924 Global_s32NumOfRightCounts = 0; - 800135e: 4b05 ldr r3, [pc, #20] ; (8001374 ) - 8001360: 2200 movs r2, #0 - 8001362: 601a str r2, [r3, #0] + 800191e: 4b05 ldr r3, [pc, #20] ; (8001934 ) + 8001920: 2200 movs r2, #0 + 8001922: 601a str r2, [r3, #0] } - 8001364: bf00 nop - 8001366: 370c adds r7, #12 - 8001368: 46bd mov sp, r7 - 800136a: bc80 pop {r7} - 800136c: 4770 bx lr - 800136e: bf00 nop - 8001370: 200000c8 .word 0x200000c8 - 8001374: 200000c4 .word 0x200000c4 - -08001378 : + 8001924: bf00 nop + 8001926: 370c adds r7, #12 + 8001928: 46bd mov sp, r7 + 800192a: bc80 pop {r7} + 800192c: 4770 bx lr + 800192e: bf00 nop + 8001930: 200000cc .word 0x200000cc + 8001934: 200000c8 .word 0x200000c8 + +08001938 : Global_f32Distance = Global_f32Distance + (Copy_s32EncoderCounts*2*Pi*WheelRadius)/EncoderResolution; return Global_f32Distance; } void HENCODER_f32GetZeroDistance(void) { - 8001378: b480 push {r7} - 800137a: af00 add r7, sp, #0 + 8001938: b480 push {r7} + 800193a: af00 add r7, sp, #0 Global_f32Distance = 0; - 800137c: 4b03 ldr r3, [pc, #12] ; (800138c ) - 800137e: f04f 0200 mov.w r2, #0 - 8001382: 601a str r2, [r3, #0] + 800193c: 4b03 ldr r3, [pc, #12] ; (800194c ) + 800193e: f04f 0200 mov.w r2, #0 + 8001942: 601a str r2, [r3, #0] } - 8001384: bf00 nop - 8001386: 46bd mov sp, r7 - 8001388: bc80 pop {r7} - 800138a: 4770 bx lr - 800138c: 200000cc .word 0x200000cc + 8001944: bf00 nop + 8001946: 46bd mov sp, r7 + 8001948: bc80 pop {r7} + 800194a: 4770 bx lr + 800194c: 200000d0 .word 0x200000d0 -08001390 : +08001950 : #include "NVIC/NVIC_config.h" #include "NVIC/NVIC_private.h" void MNVIC_voidEnableInterrupt (u8 Copy_u8IntNumber) { - 8001390: b480 push {r7} - 8001392: b083 sub sp, #12 - 8001394: af00 add r7, sp, #0 - 8001396: 4603 mov r3, r0 - 8001398: 71fb strb r3, [r7, #7] + 8001950: b480 push {r7} + 8001952: b083 sub sp, #12 + 8001954: af00 add r7, sp, #0 + 8001956: 4603 mov r3, r0 + 8001958: 71fb strb r3, [r7, #7] if ( Copy_u8IntNumber <= 31) - 800139a: 79fb ldrb r3, [r7, #7] - 800139c: 2b1f cmp r3, #31 - 800139e: d805 bhi.n 80013ac + 800195a: 79fb ldrb r3, [r7, #7] + 800195c: 2b1f cmp r3, #31 + 800195e: d805 bhi.n 800196c { NVIC_ISER0 = (1 << Copy_u8IntNumber); - 80013a0: 79fb ldrb r3, [r7, #7] - 80013a2: 2201 movs r2, #1 - 80013a4: 409a lsls r2, r3 - 80013a6: 4b09 ldr r3, [pc, #36] ; (80013cc ) - 80013a8: 601a str r2, [r3, #0] + 8001960: 79fb ldrb r3, [r7, #7] + 8001962: 2201 movs r2, #1 + 8001964: 409a lsls r2, r3 + 8001966: 4b09 ldr r3, [pc, #36] ; (800198c ) + 8001968: 601a str r2, [r3, #0] { Copy_u8IntNumber -= 32; NVIC_ISER1 = (1 << Copy_u8IntNumber); } } - 80013aa: e00a b.n 80013c2 + 800196a: e00a b.n 8001982 else if ( Copy_u8IntNumber <= 59) - 80013ac: 79fb ldrb r3, [r7, #7] - 80013ae: 2b3b cmp r3, #59 ; 0x3b - 80013b0: d807 bhi.n 80013c2 + 800196c: 79fb ldrb r3, [r7, #7] + 800196e: 2b3b cmp r3, #59 ; 0x3b + 8001970: d807 bhi.n 8001982 Copy_u8IntNumber -= 32; - 80013b2: 79fb ldrb r3, [r7, #7] - 80013b4: 3b20 subs r3, #32 - 80013b6: 71fb strb r3, [r7, #7] + 8001972: 79fb ldrb r3, [r7, #7] + 8001974: 3b20 subs r3, #32 + 8001976: 71fb strb r3, [r7, #7] NVIC_ISER1 = (1 << Copy_u8IntNumber); - 80013b8: 79fb ldrb r3, [r7, #7] - 80013ba: 2201 movs r2, #1 - 80013bc: 409a lsls r2, r3 - 80013be: 4b04 ldr r3, [pc, #16] ; (80013d0 ) - 80013c0: 601a str r2, [r3, #0] + 8001978: 79fb ldrb r3, [r7, #7] + 800197a: 2201 movs r2, #1 + 800197c: 409a lsls r2, r3 + 800197e: 4b04 ldr r3, [pc, #16] ; (8001990 ) + 8001980: 601a str r2, [r3, #0] } - 80013c2: bf00 nop - 80013c4: 370c adds r7, #12 - 80013c6: 46bd mov sp, r7 - 80013c8: bc80 pop {r7} - 80013ca: 4770 bx lr - 80013cc: e000e100 .word 0xe000e100 - 80013d0: e000e104 .word 0xe000e104 - -080013d4 : + 8001982: bf00 nop + 8001984: 370c adds r7, #12 + 8001986: 46bd mov sp, r7 + 8001988: bc80 pop {r7} + 800198a: 4770 bx lr + 800198c: e000e100 .word 0xe000e100 + 8001990: e000e104 .word 0xe000e104 + +08001994 : #include "RCC/RCC_interface.h" #include "RCC/RCC_private.h" #include "RCC/RCC_config.h" void RCC_voidInitSysClock(void) { - 80013d4: b480 push {r7} - 80013d6: af00 add r7, sp, #0 + 8001994: b480 push {r7} + 8001996: af00 add r7, sp, #0 #if RCC_CLOCK_TYPE == RCC_HSE_CRYSTAL RCC_CR = 0x00010000; /* Enable HSE with no bypass */ - 80013d8: 4b05 ldr r3, [pc, #20] ; (80013f0 ) - 80013da: f44f 3280 mov.w r2, #65536 ; 0x10000 - 80013de: 601a str r2, [r3, #0] + 8001998: 4b05 ldr r3, [pc, #20] ; (80019b0 ) + 800199a: f44f 3280 mov.w r2, #65536 ; 0x10000 + 800199e: 601a str r2, [r3, #0] RCC_CFGR = 0x00000001; - 80013e0: 4b04 ldr r3, [pc, #16] ; (80013f4 ) - 80013e2: 2201 movs r2, #1 - 80013e4: 601a str r2, [r3, #0] + 80019a0: 4b04 ldr r3, [pc, #16] ; (80019b4 ) + 80019a2: 2201 movs r2, #1 + 80019a4: 601a str r2, [r3, #0] #endif #else #error("You chosed Wrong Clock type") #endif } - 80013e6: bf00 nop - 80013e8: 46bd mov sp, r7 - 80013ea: bc80 pop {r7} - 80013ec: 4770 bx lr - 80013ee: bf00 nop - 80013f0: 40021000 .word 0x40021000 - 80013f4: 40021004 .word 0x40021004 + 80019a6: bf00 nop + 80019a8: 46bd mov sp, r7 + 80019aa: bc80 pop {r7} + 80019ac: 4770 bx lr + 80019ae: bf00 nop + 80019b0: 40021000 .word 0x40021000 + 80019b4: 40021004 .word 0x40021004 -080013f8 : +080019b8 : void RCC_voidEnableClock(u8 Copy_u8BusId, u8 Copy_u8PeripheralId) { - 80013f8: b480 push {r7} - 80013fa: b083 sub sp, #12 - 80013fc: af00 add r7, sp, #0 - 80013fe: 4603 mov r3, r0 - 8001400: 460a mov r2, r1 - 8001402: 71fb strb r3, [r7, #7] - 8001404: 4613 mov r3, r2 - 8001406: 71bb strb r3, [r7, #6] + 80019b8: b480 push {r7} + 80019ba: b083 sub sp, #12 + 80019bc: af00 add r7, sp, #0 + 80019be: 4603 mov r3, r0 + 80019c0: 460a mov r2, r1 + 80019c2: 71fb strb r3, [r7, #7] + 80019c4: 4613 mov r3, r2 + 80019c6: 71bb strb r3, [r7, #6] /*check input validation (32 bits)*/ if (Copy_u8PeripheralId <= 31) - 8001408: 79bb ldrb r3, [r7, #6] - 800140a: 2b1f cmp r3, #31 - 800140c: d82a bhi.n 8001464 + 80019c8: 79bb ldrb r3, [r7, #6] + 80019ca: 2b1f cmp r3, #31 + 80019cc: d82a bhi.n 8001a24 { switch (Copy_u8BusId) - 800140e: 79fb ldrb r3, [r7, #7] - 8001410: 2b02 cmp r3, #2 - 8001412: d01c beq.n 800144e - 8001414: 2b02 cmp r3, #2 - 8001416: dc26 bgt.n 8001466 - 8001418: 2b00 cmp r3, #0 - 800141a: d002 beq.n 8001422 - 800141c: 2b01 cmp r3, #1 - 800141e: d00b beq.n 8001438 + 80019ce: 79fb ldrb r3, [r7, #7] + 80019d0: 2b02 cmp r3, #2 + 80019d2: d01c beq.n 8001a0e + 80019d4: 2b02 cmp r3, #2 + 80019d6: dc26 bgt.n 8001a26 + 80019d8: 2b00 cmp r3, #0 + 80019da: d002 beq.n 80019e2 + 80019dc: 2b01 cmp r3, #1 + 80019de: d00b beq.n 80019f8 /*else { // Return Error }*/ } - 8001420: e021 b.n 8001466 + 80019e0: e021 b.n 8001a26 case RCC_AHB : SET_BIT(RCC_AHBENR ,Copy_u8PeripheralId); - 8001422: 4b13 ldr r3, [pc, #76] ; (8001470 ) - 8001424: 681b ldr r3, [r3, #0] - 8001426: 79ba ldrb r2, [r7, #6] - 8001428: 2101 movs r1, #1 - 800142a: fa01 f202 lsl.w r2, r1, r2 - 800142e: 4611 mov r1, r2 - 8001430: 4a0f ldr r2, [pc, #60] ; (8001470 ) - 8001432: 430b orrs r3, r1 - 8001434: 6013 str r3, [r2, #0] + 80019e2: 4b13 ldr r3, [pc, #76] ; (8001a30 ) + 80019e4: 681b ldr r3, [r3, #0] + 80019e6: 79ba ldrb r2, [r7, #6] + 80019e8: 2101 movs r1, #1 + 80019ea: fa01 f202 lsl.w r2, r1, r2 + 80019ee: 4611 mov r1, r2 + 80019f0: 4a0f ldr r2, [pc, #60] ; (8001a30 ) + 80019f2: 430b orrs r3, r1 + 80019f4: 6013 str r3, [r2, #0] break; - 8001436: e016 b.n 8001466 + 80019f6: e016 b.n 8001a26 case RCC_APB1 : SET_BIT(RCC_APB1ENR ,Copy_u8PeripheralId); - 8001438: 4b0e ldr r3, [pc, #56] ; (8001474 ) - 800143a: 681b ldr r3, [r3, #0] - 800143c: 79ba ldrb r2, [r7, #6] - 800143e: 2101 movs r1, #1 - 8001440: fa01 f202 lsl.w r2, r1, r2 - 8001444: 4611 mov r1, r2 - 8001446: 4a0b ldr r2, [pc, #44] ; (8001474 ) - 8001448: 430b orrs r3, r1 - 800144a: 6013 str r3, [r2, #0] + 80019f8: 4b0e ldr r3, [pc, #56] ; (8001a34 ) + 80019fa: 681b ldr r3, [r3, #0] + 80019fc: 79ba ldrb r2, [r7, #6] + 80019fe: 2101 movs r1, #1 + 8001a00: fa01 f202 lsl.w r2, r1, r2 + 8001a04: 4611 mov r1, r2 + 8001a06: 4a0b ldr r2, [pc, #44] ; (8001a34 ) + 8001a08: 430b orrs r3, r1 + 8001a0a: 6013 str r3, [r2, #0] break; - 800144c: e00b b.n 8001466 + 8001a0c: e00b b.n 8001a26 case RCC_APB2 : SET_BIT(RCC_APB2ENR ,Copy_u8PeripheralId); - 800144e: 4b0a ldr r3, [pc, #40] ; (8001478 ) - 8001450: 681b ldr r3, [r3, #0] - 8001452: 79ba ldrb r2, [r7, #6] - 8001454: 2101 movs r1, #1 - 8001456: fa01 f202 lsl.w r2, r1, r2 - 800145a: 4611 mov r1, r2 - 800145c: 4a06 ldr r2, [pc, #24] ; (8001478 ) - 800145e: 430b orrs r3, r1 - 8001460: 6013 str r3, [r2, #0] + 8001a0e: 4b0a ldr r3, [pc, #40] ; (8001a38 ) + 8001a10: 681b ldr r3, [r3, #0] + 8001a12: 79ba ldrb r2, [r7, #6] + 8001a14: 2101 movs r1, #1 + 8001a16: fa01 f202 lsl.w r2, r1, r2 + 8001a1a: 4611 mov r1, r2 + 8001a1c: 4a06 ldr r2, [pc, #24] ; (8001a38 ) + 8001a1e: 430b orrs r3, r1 + 8001a20: 6013 str r3, [r2, #0] break; - 8001462: e000 b.n 8001466 + 8001a22: e000 b.n 8001a26 } - 8001464: bf00 nop + 8001a24: bf00 nop } - 8001466: bf00 nop - 8001468: 370c adds r7, #12 - 800146a: 46bd mov sp, r7 - 800146c: bc80 pop {r7} - 800146e: 4770 bx lr - 8001470: 40021014 .word 0x40021014 - 8001474: 4002101c .word 0x4002101c - 8001478: 40021018 .word 0x40021018 - -0800147c : + 8001a26: bf00 nop + 8001a28: 370c adds r7, #12 + 8001a2a: 46bd mov sp, r7 + 8001a2c: bc80 pop {r7} + 8001a2e: 4770 bx lr + 8001a30: 40021014 .word 0x40021014 + 8001a34: 4002101c .word 0x4002101c + 8001a38: 40021018 .word 0x40021018 + +08001a3c : /* Define Variable for interval mode */ static u8 MSTK_u8ModeOfInterval; void MSTK_voidInit(void) { - 800147c: b480 push {r7} - 800147e: af00 add r7, sp, #0 + 8001a3c: b480 push {r7} + 8001a3e: af00 add r7, sp, #0 #if MSTK_CLK_SRC == MSTK_SRC_AHB /* Disable STK - Disable STK Interrupt - Set clock source AHB */ MSTK -> CTRL = 0x00000004; #else /* Disable STK - Disable STK Interrupt - Set clock source AHB/8 */ MSTK -> CTRL = 0; - 8001480: 4b03 ldr r3, [pc, #12] ; (8001490 ) - 8001482: 2200 movs r2, #0 - 8001484: 601a str r2, [r3, #0] + 8001a40: 4b03 ldr r3, [pc, #12] ; (8001a50 ) + 8001a42: 2200 movs r2, #0 + 8001a44: 601a str r2, [r3, #0] #endif } - 8001486: bf00 nop - 8001488: 46bd mov sp, r7 - 800148a: bc80 pop {r7} - 800148c: 4770 bx lr - 800148e: bf00 nop - 8001490: e000e010 .word 0xe000e010 + 8001a46: bf00 nop + 8001a48: 46bd mov sp, r7 + 8001a4a: bc80 pop {r7} + 8001a4c: 4770 bx lr + 8001a4e: bf00 nop + 8001a50: e000e010 .word 0xe000e010 -08001494 : +08001a54 : /*synchronous function*/ void MSTK_voidSetBusyWait( u32 Copy_u32Ticks ) { - 8001494: b480 push {r7} - 8001496: b083 sub sp, #12 - 8001498: af00 add r7, sp, #0 - 800149a: 6078 str r0, [r7, #4] + 8001a54: b480 push {r7} + 8001a56: b083 sub sp, #12 + 8001a58: af00 add r7, sp, #0 + 8001a5a: 6078 str r0, [r7, #4] /* Load ticks to load register */ MSTK -> LOAD = Copy_u32Ticks; - 800149c: 4a10 ldr r2, [pc, #64] ; (80014e0 ) - 800149e: 687b ldr r3, [r7, #4] - 80014a0: 6053 str r3, [r2, #4] + 8001a5c: 4a10 ldr r2, [pc, #64] ; (8001aa0 ) + 8001a5e: 687b ldr r3, [r7, #4] + 8001a60: 6053 str r3, [r2, #4] /* Start Timer */ SET_BIT(MSTK -> CTRL, 0); - 80014a2: 4b0f ldr r3, [pc, #60] ; (80014e0 ) - 80014a4: 681b ldr r3, [r3, #0] - 80014a6: 4a0e ldr r2, [pc, #56] ; (80014e0 ) - 80014a8: f043 0301 orr.w r3, r3, #1 - 80014ac: 6013 str r3, [r2, #0] + 8001a62: 4b0f ldr r3, [pc, #60] ; (8001aa0 ) + 8001a64: 681b ldr r3, [r3, #0] + 8001a66: 4a0e ldr r2, [pc, #56] ; (8001aa0 ) + 8001a68: f043 0301 orr.w r3, r3, #1 + 8001a6c: 6013 str r3, [r2, #0] /* Wait till flag is raised */ while( (GET_BIT(MSTK -> CTRL,16)) == 0); - 80014ae: bf00 nop - 80014b0: 4b0b ldr r3, [pc, #44] ; (80014e0 ) - 80014b2: 681b ldr r3, [r3, #0] - 80014b4: 0c1b lsrs r3, r3, #16 - 80014b6: f003 0301 and.w r3, r3, #1 - 80014ba: 2b00 cmp r3, #0 - 80014bc: d0f8 beq.n 80014b0 + 8001a6e: bf00 nop + 8001a70: 4b0b ldr r3, [pc, #44] ; (8001aa0 ) + 8001a72: 681b ldr r3, [r3, #0] + 8001a74: 0c1b lsrs r3, r3, #16 + 8001a76: f003 0301 and.w r3, r3, #1 + 8001a7a: 2b00 cmp r3, #0 + 8001a7c: d0f8 beq.n 8001a70 /* Stop Timer */ SET_BIT(MSTK -> CTRL, 0); - 80014be: 4b08 ldr r3, [pc, #32] ; (80014e0 ) - 80014c0: 681b ldr r3, [r3, #0] - 80014c2: 4a07 ldr r2, [pc, #28] ; (80014e0 ) - 80014c4: f043 0301 orr.w r3, r3, #1 - 80014c8: 6013 str r3, [r2, #0] + 8001a7e: 4b08 ldr r3, [pc, #32] ; (8001aa0 ) + 8001a80: 681b ldr r3, [r3, #0] + 8001a82: 4a07 ldr r2, [pc, #28] ; (8001aa0 ) + 8001a84: f043 0301 orr.w r3, r3, #1 + 8001a88: 6013 str r3, [r2, #0] MSTK -> LOAD = 0; - 80014ca: 4b05 ldr r3, [pc, #20] ; (80014e0 ) - 80014cc: 2200 movs r2, #0 - 80014ce: 605a str r2, [r3, #4] + 8001a8a: 4b05 ldr r3, [pc, #20] ; (8001aa0 ) + 8001a8c: 2200 movs r2, #0 + 8001a8e: 605a str r2, [r3, #4] MSTK -> VAL = 0; - 80014d0: 4b03 ldr r3, [pc, #12] ; (80014e0 ) - 80014d2: 2200 movs r2, #0 - 80014d4: 609a str r2, [r3, #8] + 8001a90: 4b03 ldr r3, [pc, #12] ; (8001aa0 ) + 8001a92: 2200 movs r2, #0 + 8001a94: 609a str r2, [r3, #8] +} + 8001a96: bf00 nop + 8001a98: 370c adds r7, #12 + 8001a9a: 46bd mov sp, r7 + 8001a9c: bc80 pop {r7} + 8001a9e: 4770 bx lr + 8001aa0: e000e010 .word 0xe000e010 + +08001aa4 : + SET_BIT(MSTK -> CTRL, 1); } - 80014d6: bf00 nop - 80014d8: 370c adds r7, #12 - 80014da: 46bd mov sp, r7 - 80014dc: bc80 pop {r7} - 80014de: 4770 bx lr - 80014e0: e000e010 .word 0xe000e010 -080014e4 : + /*Asynchronous function count periodic*/ +void MSTK_voidSetIntervalPeriodic( u32 Copy_u32Ticks, void (*Copy_ptr)(void) ) +{ + 8001aa4: b480 push {r7} + 8001aa6: b083 sub sp, #12 + 8001aa8: af00 add r7, sp, #0 + 8001aaa: 6078 str r0, [r7, #4] + 8001aac: 6039 str r1, [r7, #0] + /* Load ticks to load register */ + MSTK -> LOAD = Copy_u32Ticks; + 8001aae: 4a0d ldr r2, [pc, #52] ; (8001ae4 ) + 8001ab0: 687b ldr r3, [r7, #4] + 8001ab2: 6053 str r3, [r2, #4] + /* Start Timer */ + SET_BIT(MSTK -> CTRL, 0); + 8001ab4: 4b0b ldr r3, [pc, #44] ; (8001ae4 ) + 8001ab6: 681b ldr r3, [r3, #0] + 8001ab8: 4a0a ldr r2, [pc, #40] ; (8001ae4 ) + 8001aba: f043 0301 orr.w r3, r3, #1 + 8001abe: 6013 str r3, [r2, #0] + /* Save CallBack */ + MSTK_GlobalPtr = Copy_ptr; + 8001ac0: 4a09 ldr r2, [pc, #36] ; (8001ae8 ) + 8001ac2: 683b ldr r3, [r7, #0] + 8001ac4: 6013 str r3, [r2, #0] + /* Set Mode to Single */ + MSTK_u8ModeOfInterval = MSTK_PERIOD_INTERVAL; + 8001ac6: 4b09 ldr r3, [pc, #36] ; (8001aec ) + 8001ac8: 2201 movs r2, #1 + 8001aca: 701a strb r2, [r3, #0] + /* Enable STK Interrupt */ + SET_BIT(MSTK -> CTRL, 1); + 8001acc: 4b05 ldr r3, [pc, #20] ; (8001ae4 ) + 8001ace: 681b ldr r3, [r3, #0] + 8001ad0: 4a04 ldr r2, [pc, #16] ; (8001ae4 ) + 8001ad2: f043 0302 orr.w r3, r3, #2 + 8001ad6: 6013 str r3, [r2, #0] +} + 8001ad8: bf00 nop + 8001ada: 370c adds r7, #12 + 8001adc: 46bd mov sp, r7 + 8001ade: bc80 pop {r7} + 8001ae0: 4770 bx lr + 8001ae2: bf00 nop + 8001ae4: e000e010 .word 0xe000e010 + 8001ae8: 200000d4 .word 0x200000d4 + 8001aec: 200000d8 .word 0x200000d8 + +08001af0 : return Local_u32RemainTime; } void SysTick_Handler(void) { - 80014e4: b580 push {r7, lr} - 80014e6: b082 sub sp, #8 - 80014e8: af00 add r7, sp, #0 + 8001af0: b580 push {r7, lr} + 8001af2: b082 sub sp, #8 + 8001af4: af00 add r7, sp, #0 u8 Local_u8Temporary; if (MSTK_u8ModeOfInterval == MSTK_SINGLE_INTERVAL) - 80014ea: 4b12 ldr r3, [pc, #72] ; (8001534 ) - 80014ec: 781b ldrb r3, [r3, #0] - 80014ee: 2b00 cmp r3, #0 - 80014f0: d111 bne.n 8001516 + 8001af6: 4b12 ldr r3, [pc, #72] ; (8001b40 ) + 8001af8: 781b ldrb r3, [r3, #0] + 8001afa: 2b00 cmp r3, #0 + 8001afc: d111 bne.n 8001b22 { /* Disable STK Interrupt */ CLR_BIT(MSTK -> CTRL, 1); - 80014f2: 4b11 ldr r3, [pc, #68] ; (8001538 ) - 80014f4: 681b ldr r3, [r3, #0] - 80014f6: 4a10 ldr r2, [pc, #64] ; (8001538 ) - 80014f8: f023 0302 bic.w r3, r3, #2 - 80014fc: 6013 str r3, [r2, #0] + 8001afe: 4b11 ldr r3, [pc, #68] ; (8001b44 ) + 8001b00: 681b ldr r3, [r3, #0] + 8001b02: 4a10 ldr r2, [pc, #64] ; (8001b44 ) + 8001b04: f023 0302 bic.w r3, r3, #2 + 8001b08: 6013 str r3, [r2, #0] /* Stop Timer */ SET_BIT(MSTK -> CTRL, 0); - 80014fe: 4b0e ldr r3, [pc, #56] ; (8001538 ) - 8001500: 681b ldr r3, [r3, #0] - 8001502: 4a0d ldr r2, [pc, #52] ; (8001538 ) - 8001504: f043 0301 orr.w r3, r3, #1 - 8001508: 6013 str r3, [r2, #0] + 8001b0a: 4b0e ldr r3, [pc, #56] ; (8001b44 ) + 8001b0c: 681b ldr r3, [r3, #0] + 8001b0e: 4a0d ldr r2, [pc, #52] ; (8001b44 ) + 8001b10: f043 0301 orr.w r3, r3, #1 + 8001b14: 6013 str r3, [r2, #0] MSTK -> LOAD = 0; - 800150a: 4b0b ldr r3, [pc, #44] ; (8001538 ) - 800150c: 2200 movs r2, #0 - 800150e: 605a str r2, [r3, #4] + 8001b16: 4b0b ldr r3, [pc, #44] ; (8001b44 ) + 8001b18: 2200 movs r2, #0 + 8001b1a: 605a str r2, [r3, #4] MSTK -> VAL = 0; - 8001510: 4b09 ldr r3, [pc, #36] ; (8001538 ) - 8001512: 2200 movs r2, #0 - 8001514: 609a str r2, [r3, #8] + 8001b1c: 4b09 ldr r3, [pc, #36] ; (8001b44 ) + 8001b1e: 2200 movs r2, #0 + 8001b20: 609a str r2, [r3, #8] } /* Callback notification */ MSTK_GlobalPtr(); - 8001516: 4b09 ldr r3, [pc, #36] ; (800153c ) - 8001518: 681b ldr r3, [r3, #0] - 800151a: 4798 blx r3 + 8001b22: 4b09 ldr r3, [pc, #36] ; (8001b48 ) + 8001b24: 681b ldr r3, [r3, #0] + 8001b26: 4798 blx r3 /* Clear interrupt flag */ Local_u8Temporary = GET_BIT(MSTK -> CTRL,16); - 800151c: 4b06 ldr r3, [pc, #24] ; (8001538 ) - 800151e: 681b ldr r3, [r3, #0] - 8001520: 0c1b lsrs r3, r3, #16 - 8001522: b2db uxtb r3, r3 - 8001524: f003 0301 and.w r3, r3, #1 - 8001528: 71fb strb r3, [r7, #7] + 8001b28: 4b06 ldr r3, [pc, #24] ; (8001b44 ) + 8001b2a: 681b ldr r3, [r3, #0] + 8001b2c: 0c1b lsrs r3, r3, #16 + 8001b2e: b2db uxtb r3, r3 + 8001b30: f003 0301 and.w r3, r3, #1 + 8001b34: 71fb strb r3, [r7, #7] } - 800152a: bf00 nop - 800152c: 3708 adds r7, #8 - 800152e: 46bd mov sp, r7 - 8001530: bd80 pop {r7, pc} - 8001532: bf00 nop - 8001534: 200000d4 .word 0x200000d4 - 8001538: e000e010 .word 0xe000e010 - 800153c: 200000d0 .word 0x200000d0 - -08001540 : + 8001b36: bf00 nop + 8001b38: 3708 adds r7, #8 + 8001b3a: 46bd mov sp, r7 + 8001b3c: bd80 pop {r7, pc} + 8001b3e: bf00 nop + 8001b40: 200000d8 .word 0x200000d8 + 8001b44: e000e010 .word 0xe000e010 + 8001b48: 200000d4 .word 0x200000d4 + +08001b4c : #include "TIM2/TIM2_interface.h" #include "TIM2/TIM2_private.h" #include "TIM2/TIM2_config.h" void MTIM2_voidInitC2 (void) { - 8001540: b480 push {r7} - 8001542: af00 add r7, sp, #0 + 8001b4c: b480 push {r7} + 8001b4e: af00 add r7, sp, #0 /*direction of counter when it is edge aligned mode , no need for this bit if centered aligned*/ CLR_BIT(TIM2 -> CR1 , 4); - 8001544: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 8001548: 681b ldr r3, [r3, #0] - 800154a: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 - 800154e: f023 0310 bic.w r3, r3, #16 - 8001552: 6013 str r3, [r2, #0] + 8001b50: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001b54: 681b ldr r3, [r3, #0] + 8001b56: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 + 8001b5a: f023 0310 bic.w r3, r3, #16 + 8001b5e: 6013 str r3, [r2, #0] TIM2->CR1 |= (CR1_DIR << 4); - 8001554: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 8001558: 681b ldr r3, [r3, #0] - 800155a: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 - 800155e: f043 0310 orr.w r3, r3, #16 - 8001562: 6013 str r3, [r2, #0] + 8001b60: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001b64: 681b ldr r3, [r3, #0] + 8001b66: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 + 8001b6a: f043 0310 orr.w r3, r3, #16 + 8001b6e: 6013 str r3, [r2, #0] /*prescaler value*/ TIM2->PSC = TIM_PRESCALER; - 8001564: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 8001568: 2208 movs r2, #8 - 800156a: 629a str r2, [r3, #40] ; 0x28 + 8001b70: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001b74: 2208 movs r2, #8 + 8001b76: 629a str r2, [r3, #40] ; 0x28 /*if there is interrupt then DIER_UIE must be enabled*/ SET_BIT(TIM2 -> DIER , 0); - 800156c: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 8001570: 68db ldr r3, [r3, #12] - 8001572: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 - 8001576: f043 0301 orr.w r3, r3, #1 - 800157a: 60d3 str r3, [r2, #12] + 8001b78: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001b7c: 68db ldr r3, [r3, #12] + 8001b7e: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 + 8001b82: f043 0301 orr.w r3, r3, #1 + 8001b86: 60d3 str r3, [r2, #12] /*enable channel2*/ SET_BIT(TIM2->CCER , 4); - 800157c: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 8001580: 6a1b ldr r3, [r3, #32] - 8001582: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 - 8001586: f043 0310 orr.w r3, r3, #16 - 800158a: 6213 str r3, [r2, #32] + 8001b88: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001b8c: 6a1b ldr r3, [r3, #32] + 8001b8e: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 + 8001b92: f043 0310 orr.w r3, r3, #16 + 8001b96: 6213 str r3, [r2, #32] /*enable pwm mode 1 - channel 2*/ CLR_BIT(TIM2->CCMR1 , 12); - 800158c: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 8001590: 699b ldr r3, [r3, #24] - 8001592: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 - 8001596: f423 5380 bic.w r3, r3, #4096 ; 0x1000 - 800159a: 6193 str r3, [r2, #24] + 8001b98: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001b9c: 699b ldr r3, [r3, #24] + 8001b9e: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 + 8001ba2: f423 5380 bic.w r3, r3, #4096 ; 0x1000 + 8001ba6: 6193 str r3, [r2, #24] SET_BIT(TIM2->CCMR1 , 13); - 800159c: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 80015a0: 699b ldr r3, [r3, #24] - 80015a2: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 - 80015a6: f443 5300 orr.w r3, r3, #8192 ; 0x2000 - 80015aa: 6193 str r3, [r2, #24] + 8001ba8: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001bac: 699b ldr r3, [r3, #24] + 8001bae: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 + 8001bb2: f443 5300 orr.w r3, r3, #8192 ; 0x2000 + 8001bb6: 6193 str r3, [r2, #24] SET_BIT(TIM2->CCMR1 , 14); - 80015ac: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 80015b0: 699b ldr r3, [r3, #24] - 80015b2: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 - 80015b6: f443 4380 orr.w r3, r3, #16384 ; 0x4000 - 80015ba: 6193 str r3, [r2, #24] + 8001bb8: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001bbc: 699b ldr r3, [r3, #24] + 8001bbe: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 + 8001bc2: f443 4380 orr.w r3, r3, #16384 ; 0x4000 + 8001bc6: 6193 str r3, [r2, #24] /*enable output compare -- update value after overflow or immediately*/ CLR_BIT(TIM2->CCMR1 , 11); //immediately - 80015bc: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 80015c0: 699b ldr r3, [r3, #24] - 80015c2: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 - 80015c6: f423 6300 bic.w r3, r3, #2048 ; 0x800 - 80015ca: 6193 str r3, [r2, #24] + 8001bc8: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001bcc: 699b ldr r3, [r3, #24] + 8001bce: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 + 8001bd2: f423 6300 bic.w r3, r3, #2048 ; 0x800 + 8001bd6: 6193 str r3, [r2, #24] /*enable auto reload preload for PWM*/ SET_BIT(TIM2 -> CR1 , 7); - 80015cc: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 80015d0: 681b ldr r3, [r3, #0] - 80015d2: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 - 80015d6: f043 0380 orr.w r3, r3, #128 ; 0x80 - 80015da: 6013 str r3, [r2, #0] + 8001bd8: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001bdc: 681b ldr r3, [r3, #0] + 8001bde: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 + 8001be2: f043 0380 orr.w r3, r3, #128 ; 0x80 + 8001be6: 6013 str r3, [r2, #0] /*load desired value of ARR*/ TIM2->ARR = 100; - 80015dc: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 80015e0: 2264 movs r2, #100 ; 0x64 - 80015e2: 62da str r2, [r3, #44] ; 0x2c + 8001be8: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001bec: 2264 movs r2, #100 ; 0x64 + 8001bee: 62da str r2, [r3, #44] ; 0x2c /*enable counter*/ SET_BIT(TIM2 -> CR1 , 0); - 80015e4: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 80015e8: 681b ldr r3, [r3, #0] - 80015ea: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 - 80015ee: f043 0301 orr.w r3, r3, #1 - 80015f2: 6013 str r3, [r2, #0] + 8001bf0: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001bf4: 681b ldr r3, [r3, #0] + 8001bf6: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 + 8001bfa: f043 0301 orr.w r3, r3, #1 + 8001bfe: 6013 str r3, [r2, #0] /*enable update generation*/ SET_BIT(TIM2 -> EGR , 0); - 80015f4: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 80015f8: 695b ldr r3, [r3, #20] - 80015fa: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 - 80015fe: f043 0301 orr.w r3, r3, #1 - 8001602: 6153 str r3, [r2, #20] + 8001c00: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 8001c04: 695b ldr r3, [r3, #20] + 8001c06: f04f 4280 mov.w r2, #1073741824 ; 0x40000000 + 8001c0a: f043 0301 orr.w r3, r3, #1 + 8001c0e: 6153 str r3, [r2, #20] } - 8001604: bf00 nop - 8001606: 46bd mov sp, r7 - 8001608: bc80 pop {r7} - 800160a: 4770 bx lr + 8001c10: bf00 nop + 8001c12: 46bd mov sp, r7 + 8001c14: bc80 pop {r7} + 8001c16: 4770 bx lr -0800160c : +08001c18 : CLR_BIT(TIM2 -> SR , 0); } void MTIM2_voidOutputPWM_C2 (u16 Copy_16CompareValue) { - 800160c: b480 push {r7} - 800160e: b083 sub sp, #12 - 8001610: af00 add r7, sp, #0 - 8001612: 4603 mov r3, r0 - 8001614: 80fb strh r3, [r7, #6] + 8001c18: b480 push {r7} + 8001c1a: b083 sub sp, #12 + 8001c1c: af00 add r7, sp, #0 + 8001c1e: 4603 mov r3, r0 + 8001c20: 80fb strh r3, [r7, #6] /*load the desired value -- channel2*/ CCR2 = Copy_16CompareValue; - 8001616: 4a04 ldr r2, [pc, #16] ; (8001628 ) - 8001618: 88fb ldrh r3, [r7, #6] - 800161a: 6013 str r3, [r2, #0] + 8001c22: 4a04 ldr r2, [pc, #16] ; (8001c34 ) + 8001c24: 88fb ldrh r3, [r7, #6] + 8001c26: 6013 str r3, [r2, #0] } - 800161c: bf00 nop - 800161e: 370c adds r7, #12 - 8001620: 46bd mov sp, r7 - 8001622: bc80 pop {r7} - 8001624: 4770 bx lr - 8001626: bf00 nop - 8001628: 40000038 .word 0x40000038 - -0800162c : + 8001c28: bf00 nop + 8001c2a: 370c adds r7, #12 + 8001c2c: 46bd mov sp, r7 + 8001c2e: bc80 pop {r7} + 8001c30: 4770 bx lr + 8001c32: bf00 nop + 8001c34: 40000038 .word 0x40000038 + +08001c38 : #include "TIM3/TIM3_interface.h" #include "TIM3/TIM3_private.h" #include "TIM3/TIM3_config.h" void MTIM3_voidInit (void) { - 800162c: b480 push {r7} - 800162e: af00 add r7, sp, #0 + 8001c38: b480 push {r7} + 8001c3a: af00 add r7, sp, #0 /*direction of counter when it is edge aligned mode , no need for this bit if centered aligned*/ CLR_BIT(TIM3 -> CR1 , 4); - 8001630: 4b24 ldr r3, [pc, #144] ; (80016c4 ) - 8001632: 681b ldr r3, [r3, #0] - 8001634: 4a23 ldr r2, [pc, #140] ; (80016c4 ) - 8001636: f023 0310 bic.w r3, r3, #16 - 800163a: 6013 str r3, [r2, #0] + 8001c3c: 4b24 ldr r3, [pc, #144] ; (8001cd0 ) + 8001c3e: 681b ldr r3, [r3, #0] + 8001c40: 4a23 ldr r2, [pc, #140] ; (8001cd0 ) + 8001c42: f023 0310 bic.w r3, r3, #16 + 8001c46: 6013 str r3, [r2, #0] TIM3->CR1 |= (CR1_DIR << 4); - 800163c: 4b21 ldr r3, [pc, #132] ; (80016c4 ) - 800163e: 4a21 ldr r2, [pc, #132] ; (80016c4 ) - 8001640: 681b ldr r3, [r3, #0] - 8001642: 6013 str r3, [r2, #0] + 8001c48: 4b21 ldr r3, [pc, #132] ; (8001cd0 ) + 8001c4a: 4a21 ldr r2, [pc, #132] ; (8001cd0 ) + 8001c4c: 681b ldr r3, [r3, #0] + 8001c4e: 6013 str r3, [r2, #0] /*prescaler value*/ TIM3->PSC = TIM_PRESCALER; - 8001644: 4b1f ldr r3, [pc, #124] ; (80016c4 ) - 8001646: 2208 movs r2, #8 - 8001648: 629a str r2, [r3, #40] ; 0x28 + 8001c50: 4b1f ldr r3, [pc, #124] ; (8001cd0 ) + 8001c52: 2208 movs r2, #8 + 8001c54: 629a str r2, [r3, #40] ; 0x28 /*if there is interrupt then DIER_UIE must be enabled*/ SET_BIT(TIM3 -> DIER , 0); - 800164a: 4b1e ldr r3, [pc, #120] ; (80016c4 ) - 800164c: 68db ldr r3, [r3, #12] - 800164e: 4a1d ldr r2, [pc, #116] ; (80016c4 ) - 8001650: f043 0301 orr.w r3, r3, #1 - 8001654: 60d3 str r3, [r2, #12] + 8001c56: 4b1e ldr r3, [pc, #120] ; (8001cd0 ) + 8001c58: 68db ldr r3, [r3, #12] + 8001c5a: 4a1d ldr r2, [pc, #116] ; (8001cd0 ) + 8001c5c: f043 0301 orr.w r3, r3, #1 + 8001c60: 60d3 str r3, [r2, #12] /*enable channel1*/ SET_BIT(TIM3->CCER , 0); - 8001656: 4b1b ldr r3, [pc, #108] ; (80016c4 ) - 8001658: 6a1b ldr r3, [r3, #32] - 800165a: 4a1a ldr r2, [pc, #104] ; (80016c4 ) - 800165c: f043 0301 orr.w r3, r3, #1 - 8001660: 6213 str r3, [r2, #32] + 8001c62: 4b1b ldr r3, [pc, #108] ; (8001cd0 ) + 8001c64: 6a1b ldr r3, [r3, #32] + 8001c66: 4a1a ldr r2, [pc, #104] ; (8001cd0 ) + 8001c68: f043 0301 orr.w r3, r3, #1 + 8001c6c: 6213 str r3, [r2, #32] /*enable pwm mode 1 , channel1*/ CLR_BIT(TIM3->CCMR1 , 4); - 8001662: 4b18 ldr r3, [pc, #96] ; (80016c4 ) - 8001664: 699b ldr r3, [r3, #24] - 8001666: 4a17 ldr r2, [pc, #92] ; (80016c4 ) - 8001668: f023 0310 bic.w r3, r3, #16 - 800166c: 6193 str r3, [r2, #24] + 8001c6e: 4b18 ldr r3, [pc, #96] ; (8001cd0 ) + 8001c70: 699b ldr r3, [r3, #24] + 8001c72: 4a17 ldr r2, [pc, #92] ; (8001cd0 ) + 8001c74: f023 0310 bic.w r3, r3, #16 + 8001c78: 6193 str r3, [r2, #24] SET_BIT(TIM3->CCMR1 , 5); - 800166e: 4b15 ldr r3, [pc, #84] ; (80016c4 ) - 8001670: 699b ldr r3, [r3, #24] - 8001672: 4a14 ldr r2, [pc, #80] ; (80016c4 ) - 8001674: f043 0320 orr.w r3, r3, #32 - 8001678: 6193 str r3, [r2, #24] + 8001c7a: 4b15 ldr r3, [pc, #84] ; (8001cd0 ) + 8001c7c: 699b ldr r3, [r3, #24] + 8001c7e: 4a14 ldr r2, [pc, #80] ; (8001cd0 ) + 8001c80: f043 0320 orr.w r3, r3, #32 + 8001c84: 6193 str r3, [r2, #24] SET_BIT(TIM3->CCMR1 , 6); - 800167a: 4b12 ldr r3, [pc, #72] ; (80016c4 ) - 800167c: 699b ldr r3, [r3, #24] - 800167e: 4a11 ldr r2, [pc, #68] ; (80016c4 ) - 8001680: f043 0340 orr.w r3, r3, #64 ; 0x40 - 8001684: 6193 str r3, [r2, #24] + 8001c86: 4b12 ldr r3, [pc, #72] ; (8001cd0 ) + 8001c88: 699b ldr r3, [r3, #24] + 8001c8a: 4a11 ldr r2, [pc, #68] ; (8001cd0 ) + 8001c8c: f043 0340 orr.w r3, r3, #64 ; 0x40 + 8001c90: 6193 str r3, [r2, #24] /*enable output compare -- update value after overflow or immediately*/ CLR_BIT(TIM3->CCMR1 , 3); //immediately , channel1 - 8001686: 4b0f ldr r3, [pc, #60] ; (80016c4 ) - 8001688: 699b ldr r3, [r3, #24] - 800168a: 4a0e ldr r2, [pc, #56] ; (80016c4 ) - 800168c: f023 0308 bic.w r3, r3, #8 - 8001690: 6193 str r3, [r2, #24] + 8001c92: 4b0f ldr r3, [pc, #60] ; (8001cd0 ) + 8001c94: 699b ldr r3, [r3, #24] + 8001c96: 4a0e ldr r2, [pc, #56] ; (8001cd0 ) + 8001c98: f023 0308 bic.w r3, r3, #8 + 8001c9c: 6193 str r3, [r2, #24] /*enable auto reload preload for PWM*/ SET_BIT(TIM3 -> CR1 , 7); - 8001692: 4b0c ldr r3, [pc, #48] ; (80016c4 ) - 8001694: 681b ldr r3, [r3, #0] - 8001696: 4a0b ldr r2, [pc, #44] ; (80016c4 ) - 8001698: f043 0380 orr.w r3, r3, #128 ; 0x80 - 800169c: 6013 str r3, [r2, #0] + 8001c9e: 4b0c ldr r3, [pc, #48] ; (8001cd0 ) + 8001ca0: 681b ldr r3, [r3, #0] + 8001ca2: 4a0b ldr r2, [pc, #44] ; (8001cd0 ) + 8001ca4: f043 0380 orr.w r3, r3, #128 ; 0x80 + 8001ca8: 6013 str r3, [r2, #0] /*load desired value in ARR*/ TIM3->ARR = 100; - 800169e: 4b09 ldr r3, [pc, #36] ; (80016c4 ) - 80016a0: 2264 movs r2, #100 ; 0x64 - 80016a2: 62da str r2, [r3, #44] ; 0x2c + 8001caa: 4b09 ldr r3, [pc, #36] ; (8001cd0 ) + 8001cac: 2264 movs r2, #100 ; 0x64 + 8001cae: 62da str r2, [r3, #44] ; 0x2c /*enable counter*/ SET_BIT(TIM3 -> CR1 , 0); - 80016a4: 4b07 ldr r3, [pc, #28] ; (80016c4 ) - 80016a6: 681b ldr r3, [r3, #0] - 80016a8: 4a06 ldr r2, [pc, #24] ; (80016c4 ) - 80016aa: f043 0301 orr.w r3, r3, #1 - 80016ae: 6013 str r3, [r2, #0] + 8001cb0: 4b07 ldr r3, [pc, #28] ; (8001cd0 ) + 8001cb2: 681b ldr r3, [r3, #0] + 8001cb4: 4a06 ldr r2, [pc, #24] ; (8001cd0 ) + 8001cb6: f043 0301 orr.w r3, r3, #1 + 8001cba: 6013 str r3, [r2, #0] /*enable update generation*/ SET_BIT(TIM3 -> EGR , 0); - 80016b0: 4b04 ldr r3, [pc, #16] ; (80016c4 ) - 80016b2: 695b ldr r3, [r3, #20] - 80016b4: 4a03 ldr r2, [pc, #12] ; (80016c4 ) - 80016b6: f043 0301 orr.w r3, r3, #1 - 80016ba: 6153 str r3, [r2, #20] + 8001cbc: 4b04 ldr r3, [pc, #16] ; (8001cd0 ) + 8001cbe: 695b ldr r3, [r3, #20] + 8001cc0: 4a03 ldr r2, [pc, #12] ; (8001cd0 ) + 8001cc2: f043 0301 orr.w r3, r3, #1 + 8001cc6: 6153 str r3, [r2, #20] } - 80016bc: bf00 nop - 80016be: 46bd mov sp, r7 - 80016c0: bc80 pop {r7} - 80016c2: 4770 bx lr - 80016c4: 40000400 .word 0x40000400 + 8001cc8: bf00 nop + 8001cca: 46bd mov sp, r7 + 8001ccc: bc80 pop {r7} + 8001cce: 4770 bx lr + 8001cd0: 40000400 .word 0x40000400 -080016c8 : +08001cd4 : } void MTIM3_voidOutputPWM (u16 Copy_u16CompareValue) { - 80016c8: b480 push {r7} - 80016ca: b083 sub sp, #12 - 80016cc: af00 add r7, sp, #0 - 80016ce: 4603 mov r3, r0 - 80016d0: 80fb strh r3, [r7, #6] + 8001cd4: b480 push {r7} + 8001cd6: b083 sub sp, #12 + 8001cd8: af00 add r7, sp, #0 + 8001cda: 4603 mov r3, r0 + 8001cdc: 80fb strh r3, [r7, #6] /* load desired value in channel 1 */ CCR1 = Copy_u16CompareValue; - 80016d2: 4a04 ldr r2, [pc, #16] ; (80016e4 ) - 80016d4: 88fb ldrh r3, [r7, #6] - 80016d6: 6013 str r3, [r2, #0] + 8001cde: 4a04 ldr r2, [pc, #16] ; (8001cf0 ) + 8001ce0: 88fb ldrh r3, [r7, #6] + 8001ce2: 6013 str r3, [r2, #0] } - 80016d8: bf00 nop - 80016da: 370c adds r7, #12 - 80016dc: 46bd mov sp, r7 - 80016de: bc80 pop {r7} - 80016e0: 4770 bx lr - 80016e2: bf00 nop - 80016e4: 40000434 .word 0x40000434 - -080016e8 : + 8001ce4: bf00 nop + 8001ce6: 370c adds r7, #12 + 8001ce8: 46bd mov sp, r7 + 8001cea: bc80 pop {r7} + 8001cec: 4770 bx lr + 8001cee: bf00 nop + 8001cf0: 40000434 .word 0x40000434 + +08001cf4 : #include //u8 Global_u8ReceivedData = 0; void MUSART2_voidInit(void) { - 80016e8: b580 push {r7, lr} - 80016ea: af00 add r7, sp, #0 + 8001cf4: b580 push {r7, lr} + 8001cf6: af00 add r7, sp, #0 /*Enable clock of GPIO, AFIO , USART2*/ RCC_voidEnableClock(RCC_APB2,2); - 80016ec: 2102 movs r1, #2 - 80016ee: 2002 movs r0, #2 - 80016f0: f7ff fe82 bl 80013f8 + 8001cf8: 2102 movs r1, #2 + 8001cfa: 2002 movs r0, #2 + 8001cfc: f7ff fe5c bl 80019b8 //RCC_voidEnableClock(RCC_APB2,3); RCC_voidEnableClock(RCC_APB2,0); - 80016f4: 2100 movs r1, #0 - 80016f6: 2002 movs r0, #2 - 80016f8: f7ff fe7e bl 80013f8 + 8001d00: 2100 movs r1, #0 + 8001d02: 2002 movs r0, #2 + 8001d04: f7ff fe58 bl 80019b8 RCC_voidEnableClock(RCC_APB1,17); - 80016fc: 2111 movs r1, #17 - 80016fe: 2001 movs r0, #1 - 8001700: f7ff fe7a bl 80013f8 + 8001d08: 2111 movs r1, #17 + 8001d0a: 2001 movs r0, #1 + 8001d0c: f7ff fe54 bl 80019b8 /*pin mode*/ MGPIO_VoidSetPinDirection(GPIOA,PIN2,OUTPUT_10MHZ_AFPP); // TX - 8001704: 2209 movs r2, #9 - 8001706: 2102 movs r1, #2 - 8001708: 2000 movs r0, #0 - 800170a: f7ff fa9b bl 8000c44 + 8001d10: 2209 movs r2, #9 + 8001d12: 2102 movs r1, #2 + 8001d14: 2000 movs r0, #0 + 8001d16: f7ff fa75 bl 8001204 MGPIO_VoidSetPinDirection(GPIOA,PIN3,INPUT_FLOATING); // RX - 800170e: 2204 movs r2, #4 - 8001710: 2103 movs r1, #3 - 8001712: 2000 movs r0, #0 - 8001714: f7ff fa96 bl 8000c44 + 8001d1a: 2204 movs r2, #4 + 8001d1c: 2103 movs r1, #3 + 8001d1e: 2000 movs r0, #0 + 8001d20: f7ff fa70 bl 8001204 /* baud rate = 9600 */ USART2 -> BRR = 0x341; - 8001718: 4b0d ldr r3, [pc, #52] ; (8001750 ) - 800171a: f240 3241 movw r2, #833 ; 0x341 - 800171e: 609a str r2, [r3, #8] + 8001d24: 4b0d ldr r3, [pc, #52] ; (8001d5c ) + 8001d26: f240 3241 movw r2, #833 ; 0x341 + 8001d2a: 609a str r2, [r3, #8] SET_BIT((USART2-> CR1), 3); /* Enabling Transmitter */ - 8001720: 4b0b ldr r3, [pc, #44] ; (8001750 ) - 8001722: 68db ldr r3, [r3, #12] - 8001724: 4a0a ldr r2, [pc, #40] ; (8001750 ) - 8001726: f043 0308 orr.w r3, r3, #8 - 800172a: 60d3 str r3, [r2, #12] + 8001d2c: 4b0b ldr r3, [pc, #44] ; (8001d5c ) + 8001d2e: 68db ldr r3, [r3, #12] + 8001d30: 4a0a ldr r2, [pc, #40] ; (8001d5c ) + 8001d32: f043 0308 orr.w r3, r3, #8 + 8001d36: 60d3 str r3, [r2, #12] SET_BIT((USART2-> CR1), 2); /* Enabling Receiver */ - 800172c: 4b08 ldr r3, [pc, #32] ; (8001750 ) - 800172e: 68db ldr r3, [r3, #12] - 8001730: 4a07 ldr r2, [pc, #28] ; (8001750 ) - 8001732: f043 0304 orr.w r3, r3, #4 - 8001736: 60d3 str r3, [r2, #12] + 8001d38: 4b08 ldr r3, [pc, #32] ; (8001d5c ) + 8001d3a: 68db ldr r3, [r3, #12] + 8001d3c: 4a07 ldr r2, [pc, #28] ; (8001d5c ) + 8001d3e: f043 0304 orr.w r3, r3, #4 + 8001d42: 60d3 str r3, [r2, #12] SET_BIT((USART2-> CR1), 13); /* Enabling USART */ - 8001738: 4b05 ldr r3, [pc, #20] ; (8001750 ) - 800173a: 68db ldr r3, [r3, #12] - 800173c: 4a04 ldr r2, [pc, #16] ; (8001750 ) - 800173e: f443 5300 orr.w r3, r3, #8192 ; 0x2000 - 8001742: 60d3 str r3, [r2, #12] + 8001d44: 4b05 ldr r3, [pc, #20] ; (8001d5c ) + 8001d46: 68db ldr r3, [r3, #12] + 8001d48: 4a04 ldr r2, [pc, #16] ; (8001d5c ) + 8001d4a: f443 5300 orr.w r3, r3, #8192 ; 0x2000 + 8001d4e: 60d3 str r3, [r2, #12] USART2 -> SR = 0; /* Clearing status register */ - 8001744: 4b02 ldr r3, [pc, #8] ; (8001750 ) - 8001746: 2200 movs r2, #0 - 8001748: 601a str r2, [r3, #0] + 8001d50: 4b02 ldr r3, [pc, #8] ; (8001d5c ) + 8001d52: 2200 movs r2, #0 + 8001d54: 601a str r2, [r3, #0] } - 800174a: bf00 nop - 800174c: bd80 pop {r7, pc} - 800174e: bf00 nop - 8001750: 40004400 .word 0x40004400 + 8001d56: bf00 nop + 8001d58: bd80 pop {r7, pc} + 8001d5a: bf00 nop + 8001d5c: 40004400 .word 0x40004400 -08001754 : +08001d60 : void MUSART2_voidSendData(u8 Copy_u16Data) { - 8001754: b480 push {r7} - 8001756: b083 sub sp, #12 - 8001758: af00 add r7, sp, #0 - 800175a: 4603 mov r3, r0 - 800175c: 71fb strb r3, [r7, #7] + 8001d60: b480 push {r7} + 8001d62: b083 sub sp, #12 + 8001d64: af00 add r7, sp, #0 + 8001d66: 4603 mov r3, r0 + 8001d68: 71fb strb r3, [r7, #7] USART2 -> DR = Copy_u16Data; - 800175e: 4a0b ldr r2, [pc, #44] ; (800178c ) - 8001760: 79fb ldrb r3, [r7, #7] - 8001762: 6053 str r3, [r2, #4] + 8001d6a: 4a0b ldr r2, [pc, #44] ; (8001d98 ) + 8001d6c: 79fb ldrb r3, [r7, #7] + 8001d6e: 6053 str r3, [r2, #4] while((GET_BIT((USART2 -> SR), 6)) == 0); - 8001764: bf00 nop - 8001766: 4b09 ldr r3, [pc, #36] ; (800178c ) - 8001768: 681b ldr r3, [r3, #0] - 800176a: 099b lsrs r3, r3, #6 - 800176c: f003 0301 and.w r3, r3, #1 - 8001770: 2b00 cmp r3, #0 - 8001772: d0f8 beq.n 8001766 + 8001d70: bf00 nop + 8001d72: 4b09 ldr r3, [pc, #36] ; (8001d98 ) + 8001d74: 681b ldr r3, [r3, #0] + 8001d76: 099b lsrs r3, r3, #6 + 8001d78: f003 0301 and.w r3, r3, #1 + 8001d7c: 2b00 cmp r3, #0 + 8001d7e: d0f8 beq.n 8001d72 CLR_BIT(USART2->SR,6); - 8001774: 4b05 ldr r3, [pc, #20] ; (800178c ) - 8001776: 681b ldr r3, [r3, #0] - 8001778: 4a04 ldr r2, [pc, #16] ; (800178c ) - 800177a: f023 0340 bic.w r3, r3, #64 ; 0x40 - 800177e: 6013 str r3, [r2, #0] + 8001d80: 4b05 ldr r3, [pc, #20] ; (8001d98 ) + 8001d82: 681b ldr r3, [r3, #0] + 8001d84: 4a04 ldr r2, [pc, #16] ; (8001d98 ) + 8001d86: f023 0340 bic.w r3, r3, #64 ; 0x40 + 8001d8a: 6013 str r3, [r2, #0] } - 8001780: bf00 nop - 8001782: 370c adds r7, #12 - 8001784: 46bd mov sp, r7 - 8001786: bc80 pop {r7} - 8001788: 4770 bx lr - 800178a: bf00 nop - 800178c: 40004400 .word 0x40004400 + 8001d8c: bf00 nop + 8001d8e: 370c adds r7, #12 + 8001d90: 46bd mov sp, r7 + 8001d92: bc80 pop {r7} + 8001d94: 4770 bx lr + 8001d96: bf00 nop + 8001d98: 40004400 .word 0x40004400 -08001790 : +08001d9c : void MUSART2_voidSendString(u8 *Copy_u8String) { - 8001790: b580 push {r7, lr} - 8001792: b082 sub sp, #8 - 8001794: af00 add r7, sp, #0 - 8001796: 6078 str r0, [r7, #4] + 8001d9c: b580 push {r7, lr} + 8001d9e: b082 sub sp, #8 + 8001da0: af00 add r7, sp, #0 + 8001da2: 6078 str r0, [r7, #4] while( (*Copy_u8String) != '\0' ) - 8001798: e007 b.n 80017aa + 8001da4: e007 b.n 8001db6 { MUSART2_voidSendData(*Copy_u8String); - 800179a: 687b ldr r3, [r7, #4] - 800179c: 781b ldrb r3, [r3, #0] - 800179e: 4618 mov r0, r3 - 80017a0: f7ff ffd8 bl 8001754 + 8001da6: 687b ldr r3, [r7, #4] + 8001da8: 781b ldrb r3, [r3, #0] + 8001daa: 4618 mov r0, r3 + 8001dac: f7ff ffd8 bl 8001d60 Copy_u8String++; - 80017a4: 687b ldr r3, [r7, #4] - 80017a6: 3301 adds r3, #1 - 80017a8: 607b str r3, [r7, #4] + 8001db0: 687b ldr r3, [r7, #4] + 8001db2: 3301 adds r3, #1 + 8001db4: 607b str r3, [r7, #4] while( (*Copy_u8String) != '\0' ) - 80017aa: 687b ldr r3, [r7, #4] - 80017ac: 781b ldrb r3, [r3, #0] - 80017ae: 2b00 cmp r3, #0 - 80017b0: d1f3 bne.n 800179a + 8001db6: 687b ldr r3, [r7, #4] + 8001db8: 781b ldrb r3, [r3, #0] + 8001dba: 2b00 cmp r3, #0 + 8001dbc: d1f3 bne.n 8001da6 } } - 80017b2: bf00 nop - 80017b4: bf00 nop - 80017b6: 3708 adds r7, #8 - 80017b8: 46bd mov sp, r7 - 80017ba: bd80 pop {r7, pc} + 8001dbe: bf00 nop + 8001dc0: bf00 nop + 8001dc2: 3708 adds r7, #8 + 8001dc4: 46bd mov sp, r7 + 8001dc6: bd80 pop {r7, pc} -080017bc : +08001dc8 : + +void MUSART2_voidSendNumbers(s32 Copy_s32Number) +{ + 8001dc8: b580 push {r7, lr} + 8001dca: b088 sub sp, #32 + 8001dcc: af00 add r7, sp, #0 + 8001dce: 6078 str r0, [r7, #4] + char arr[15]; + /* convert number to string */ + // gcvt(Copy_s32Number, 8,arr); + itoa(Copy_s32Number , arr , 10); + 8001dd0: f107 030c add.w r3, r7, #12 + 8001dd4: 220a movs r2, #10 + 8001dd6: 4619 mov r1, r3 + 8001dd8: 6878 ldr r0, [r7, #4] + 8001dda: f000 fc69 bl 80026b0 + u8* string = (u8*)arr; + 8001dde: f107 030c add.w r3, r7, #12 + 8001de2: 61fb str r3, [r7, #28] MUSART2_voidSendString(string); + 8001de4: 69f8 ldr r0, [r7, #28] + 8001de6: f7ff ffd9 bl 8001d9c } + 8001dea: bf00 nop + 8001dec: 3720 adds r7, #32 + 8001dee: 46bd mov sp, r7 + 8001df0: bd80 pop {r7, pc} + ... + +08001df4 : u8 MUSART2_u8ReceiveData(void) { - 80017bc: b480 push {r7} - 80017be: b083 sub sp, #12 - 80017c0: af00 add r7, sp, #0 + 8001df4: b480 push {r7} + 8001df6: b083 sub sp, #12 + 8001df8: af00 add r7, sp, #0 u8 Loc_u8ReceivedData = 0; - 80017c2: 2300 movs r3, #0 - 80017c4: 71fb strb r3, [r7, #7] + 8001dfa: 2300 movs r3, #0 + 8001dfc: 71fb strb r3, [r7, #7] /* wait until receive complete*/ while((GET_BIT((USART2 -> SR), 5)) == 0); - 80017c6: bf00 nop - 80017c8: 4b07 ldr r3, [pc, #28] ; (80017e8 ) - 80017ca: 681b ldr r3, [r3, #0] - 80017cc: 095b lsrs r3, r3, #5 - 80017ce: f003 0301 and.w r3, r3, #1 - 80017d2: 2b00 cmp r3, #0 - 80017d4: d0f8 beq.n 80017c8 + 8001dfe: bf00 nop + 8001e00: 4b07 ldr r3, [pc, #28] ; (8001e20 ) + 8001e02: 681b ldr r3, [r3, #0] + 8001e04: 095b lsrs r3, r3, #5 + 8001e06: f003 0301 and.w r3, r3, #1 + 8001e0a: 2b00 cmp r3, #0 + 8001e0c: d0f8 beq.n 8001e00 Loc_u8ReceivedData = USART2 -> DR; - 80017d6: 4b04 ldr r3, [pc, #16] ; (80017e8 ) - 80017d8: 685b ldr r3, [r3, #4] - 80017da: 71fb strb r3, [r7, #7] + 8001e0e: 4b04 ldr r3, [pc, #16] ; (8001e20 ) + 8001e10: 685b ldr r3, [r3, #4] + 8001e12: 71fb strb r3, [r7, #7] return (Loc_u8ReceivedData); - 80017dc: 79fb ldrb r3, [r7, #7] + 8001e14: 79fb ldrb r3, [r7, #7] } - 80017de: 4618 mov r0, r3 - 80017e0: 370c adds r7, #12 - 80017e2: 46bd mov sp, r7 - 80017e4: bc80 pop {r7} - 80017e6: 4770 bx lr - 80017e8: 40004400 .word 0x40004400 + 8001e16: 4618 mov r0, r3 + 8001e18: 370c adds r7, #12 + 8001e1a: 46bd mov sp, r7 + 8001e1c: bc80 pop {r7} + 8001e1e: 4770 bx lr + 8001e20: 40004400 .word 0x40004400 -080017ec : +08001e24 : u8 MUSART2_u8ReceiveDataBlock(u8* Copy_u8DataArr) { - 80017ec: b580 push {r7, lr} - 80017ee: b084 sub sp, #16 - 80017f0: af00 add r7, sp, #0 - 80017f2: 6078 str r0, [r7, #4] + 8001e24: b580 push {r7, lr} + 8001e26: b084 sub sp, #16 + 8001e28: af00 add r7, sp, #0 + 8001e2a: 6078 str r0, [r7, #4] u8 Loc_u8Data = 0; - 80017f4: 2300 movs r3, #0 - 80017f6: 73fb strb r3, [r7, #15] + 8001e2c: 2300 movs r3, #0 + 8001e2e: 73fb strb r3, [r7, #15] u8 Loc_u8Index = 0; - 80017f8: 2300 movs r3, #0 - 80017fa: 73bb strb r3, [r7, #14] + 8001e30: 2300 movs r3, #0 + 8001e32: 73bb strb r3, [r7, #14] Loc_u8Data = MUSART2_u8ReceiveData(); - 80017fc: f7ff ffde bl 80017bc - 8001800: 4603 mov r3, r0 - 8001802: 73fb strb r3, [r7, #15] + 8001e34: f7ff ffde bl 8001df4 + 8001e38: 4603 mov r3, r0 + 8001e3a: 73fb strb r3, [r7, #15] while(Loc_u8Data != '\0') - 8001804: e00b b.n 800181e + 8001e3c: e00b b.n 8001e56 { Copy_u8DataArr[Loc_u8Index] = Loc_u8Data; - 8001806: 7bbb ldrb r3, [r7, #14] - 8001808: 687a ldr r2, [r7, #4] - 800180a: 4413 add r3, r2 - 800180c: 7bfa ldrb r2, [r7, #15] - 800180e: 701a strb r2, [r3, #0] + 8001e3e: 7bbb ldrb r3, [r7, #14] + 8001e40: 687a ldr r2, [r7, #4] + 8001e42: 4413 add r3, r2 + 8001e44: 7bfa ldrb r2, [r7, #15] + 8001e46: 701a strb r2, [r3, #0] Loc_u8Index++; - 8001810: 7bbb ldrb r3, [r7, #14] - 8001812: 3301 adds r3, #1 - 8001814: 73bb strb r3, [r7, #14] + 8001e48: 7bbb ldrb r3, [r7, #14] + 8001e4a: 3301 adds r3, #1 + 8001e4c: 73bb strb r3, [r7, #14] Loc_u8Data = MUSART2_u8ReceiveData(); - 8001816: f7ff ffd1 bl 80017bc - 800181a: 4603 mov r3, r0 - 800181c: 73fb strb r3, [r7, #15] + 8001e4e: f7ff ffd1 bl 8001df4 + 8001e52: 4603 mov r3, r0 + 8001e54: 73fb strb r3, [r7, #15] while(Loc_u8Data != '\0') - 800181e: 7bfb ldrb r3, [r7, #15] - 8001820: 2b00 cmp r3, #0 - 8001822: d1f0 bne.n 8001806 + 8001e56: 7bfb ldrb r3, [r7, #15] + 8001e58: 2b00 cmp r3, #0 + 8001e5a: d1f0 bne.n 8001e3e } return Loc_u8Index; - 8001824: 7bbb ldrb r3, [r7, #14] + 8001e5c: 7bbb ldrb r3, [r7, #14] } - 8001826: 4618 mov r0, r3 - 8001828: 3710 adds r7, #16 - 800182a: 46bd mov sp, r7 - 800182c: bd80 pop {r7, pc} + 8001e5e: 4618 mov r0, r3 + 8001e60: 3710 adds r7, #16 + 8001e62: 46bd mov sp, r7 + 8001e64: bd80 pop {r7, pc} ... -08001830 : +08001e68 : s16 Local_Reading = 0; /*ISR of EXTI8 (left encoder)*/ void LeftEncoderGetReading (void) { - 8001830: b580 push {r7, lr} - 8001832: af00 add r7, sp, #0 + 8001e68: b580 push {r7, lr} + 8001e6a: af00 add r7, sp, #0 left_counts = HENCODER_voidEncoderCounts(GPIOA,PIN8); - 8001834: 2108 movs r1, #8 - 8001836: 2000 movs r0, #0 - 8001838: f7ff fd2e bl 8001298 - 800183c: 4603 mov r3, r0 - 800183e: 4a02 ldr r2, [pc, #8] ; (8001848 ) - 8001840: 6013 str r3, [r2, #0] + 8001e6c: 2108 movs r1, #8 + 8001e6e: 2000 movs r0, #0 + 8001e70: f7ff fcf2 bl 8001858 + 8001e74: 4603 mov r3, r0 + 8001e76: 4a02 ldr r2, [pc, #8] ; (8001e80 ) + 8001e78: 6013 str r3, [r2, #0] } - 8001842: bf00 nop - 8001844: bd80 pop {r7, pc} - 8001846: bf00 nop - 8001848: 200000dc .word 0x200000dc + 8001e7a: bf00 nop + 8001e7c: bd80 pop {r7, pc} + 8001e7e: bf00 nop + 8001e80: 200000e0 .word 0x200000e0 -0800184c : +08001e84 : /*ISR of EXTI10 (right encoder)*/ void RightEncoderGetReading (void) { - 800184c: b580 push {r7, lr} - 800184e: af00 add r7, sp, #0 + 8001e84: b580 push {r7, lr} + 8001e86: af00 add r7, sp, #0 right_counts = HENCODER_voidEncoderCounts(GPIOB,PIN10); - 8001850: 210a movs r1, #10 - 8001852: 2001 movs r0, #1 - 8001854: f7ff fd20 bl 8001298 - 8001858: 4603 mov r3, r0 - 800185a: 4a02 ldr r2, [pc, #8] ; (8001864 ) - 800185c: 6013 str r3, [r2, #0] + 8001e88: 210a movs r1, #10 + 8001e8a: 2001 movs r0, #1 + 8001e8c: f7ff fce4 bl 8001858 + 8001e90: 4603 mov r3, r0 + 8001e92: 4a02 ldr r2, [pc, #8] ; (8001e9c ) + 8001e94: 6013 str r3, [r2, #0] } - 800185e: bf00 nop - 8001860: bd80 pop {r7, pc} - 8001862: bf00 nop - 8001864: 200000d8 .word 0x200000d8 - -08001868 : + 8001e96: bf00 nop + 8001e98: bd80 pop {r7, pc} + 8001e9a: bf00 nop + 8001e9c: 200000dc .word 0x200000dc +08001ea0 : s16 Get_Reading(void) { - 8001868: e92d 43b0 stmdb sp!, {r4, r5, r7, r8, r9, lr} - 800186c: b082 sub sp, #8 - 800186e: af00 add r7, sp, #0 + 8001ea0: e92d 43b0 stmdb sp!, {r4, r5, r7, r8, r9, lr} + 8001ea4: b082 sub sp, #8 + 8001ea6: af00 add r7, sp, #0 Rx_arrlength = MUSART2_u8ReceiveDataBlock(data_arr); - 8001870: 4853 ldr r0, [pc, #332] ; (80019c0 ) - 8001872: f7ff ffbb bl 80017ec - 8001876: 4603 mov r3, r0 - 8001878: 461a mov r2, r3 - 800187a: 4b52 ldr r3, [pc, #328] ; (80019c4 ) - 800187c: 701a strb r2, [r3, #0] + 8001ea8: 4853 ldr r0, [pc, #332] ; (8001ff8 ) + 8001eaa: f7ff ffbb bl 8001e24 + 8001eae: 4603 mov r3, r0 + 8001eb0: 461a mov r2, r3 + 8001eb2: 4b52 ldr r3, [pc, #328] ; (8001ffc ) + 8001eb4: 701a strb r2, [r3, #0] Rx_mpu = 0; - 800187e: 4b52 ldr r3, [pc, #328] ; (80019c8 ) - 8001880: 2200 movs r2, #0 - 8001882: 801a strh r2, [r3, #0] + 8001eb6: 4b52 ldr r3, [pc, #328] ; (8002000 ) + 8001eb8: 2200 movs r2, #0 + 8001eba: 801a strh r2, [r3, #0] if(data_arr[0] == 'a') - 8001884: 4b4e ldr r3, [pc, #312] ; (80019c0 ) - 8001886: 781b ldrb r3, [r3, #0] - 8001888: 2b61 cmp r3, #97 ; 0x61 - 800188a: f040 8090 bne.w 80019ae + 8001ebc: 4b4e ldr r3, [pc, #312] ; (8001ff8 ) + 8001ebe: 781b ldrb r3, [r3, #0] + 8001ec0: 2b61 cmp r3, #97 ; 0x61 + 8001ec2: f040 8090 bne.w 8001fe6 { if (data_arr[1] == '-') - 800188e: 4b4c ldr r3, [pc, #304] ; (80019c0 ) - 8001890: 785b ldrb r3, [r3, #1] - 8001892: 2b2d cmp r3, #45 ; 0x2d - 8001894: d14a bne.n 800192c + 8001ec6: 4b4c ldr r3, [pc, #304] ; (8001ff8 ) + 8001ec8: 785b ldrb r3, [r3, #1] + 8001eca: 2b2d cmp r3, #45 ; 0x2d + 8001ecc: d14a bne.n 8001f64 { for(u8 i = 2 ; i + 8001ece: 2302 movs r3, #2 + 8001ed0: 71fb strb r3, [r7, #7] + 8001ed2: e038 b.n 8001f46 { Rx_mpu = Rx_mpu + (data_arr[i]-48)*pow(10,Rx_arrlength-1-i); - 800189c: 4b4a ldr r3, [pc, #296] ; (80019c8 ) - 800189e: f9b3 3000 ldrsh.w r3, [r3] - 80018a2: 4618 mov r0, r3 - 80018a4: f7fe fdb6 bl 8000414 <__aeabi_i2d> - 80018a8: 4604 mov r4, r0 - 80018aa: 460d mov r5, r1 - 80018ac: 79fb ldrb r3, [r7, #7] - 80018ae: 4a44 ldr r2, [pc, #272] ; (80019c0 ) - 80018b0: 5cd3 ldrb r3, [r2, r3] - 80018b2: 3b30 subs r3, #48 ; 0x30 - 80018b4: 4618 mov r0, r3 - 80018b6: f7fe fdad bl 8000414 <__aeabi_i2d> - 80018ba: 4680 mov r8, r0 - 80018bc: 4689 mov r9, r1 - 80018be: 4b41 ldr r3, [pc, #260] ; (80019c4 ) - 80018c0: 781b ldrb r3, [r3, #0] - 80018c2: 1e5a subs r2, r3, #1 - 80018c4: 79fb ldrb r3, [r7, #7] - 80018c6: 1ad3 subs r3, r2, r3 - 80018c8: 4618 mov r0, r3 - 80018ca: f7fe fda3 bl 8000414 <__aeabi_i2d> - 80018ce: 4602 mov r2, r0 - 80018d0: 460b mov r3, r1 - 80018d2: f04f 0000 mov.w r0, #0 - 80018d6: 493d ldr r1, [pc, #244] ; (80019cc ) - 80018d8: f000 fb28 bl 8001f2c - 80018dc: 4602 mov r2, r0 - 80018de: 460b mov r3, r1 - 80018e0: 4640 mov r0, r8 - 80018e2: 4649 mov r1, r9 - 80018e4: f7fe fe00 bl 80004e8 <__aeabi_dmul> - 80018e8: 4602 mov r2, r0 - 80018ea: 460b mov r3, r1 - 80018ec: 4620 mov r0, r4 - 80018ee: 4629 mov r1, r5 - 80018f0: f7fe fc44 bl 800017c <__adddf3> - 80018f4: 4602 mov r2, r0 - 80018f6: 460b mov r3, r1 - 80018f8: 4610 mov r0, r2 - 80018fa: 4619 mov r1, r3 - 80018fc: f7ff f8a4 bl 8000a48 <__aeabi_d2iz> - 8001900: 4603 mov r3, r0 - 8001902: b21a sxth r2, r3 - 8001904: 4b30 ldr r3, [pc, #192] ; (80019c8 ) - 8001906: 801a strh r2, [r3, #0] + 8001ed4: 4b4a ldr r3, [pc, #296] ; (8002000 ) + 8001ed6: f9b3 3000 ldrsh.w r3, [r3] + 8001eda: 4618 mov r0, r3 + 8001edc: f7fe fa9a bl 8000414 <__aeabi_i2d> + 8001ee0: 4604 mov r4, r0 + 8001ee2: 460d mov r5, r1 + 8001ee4: 79fb ldrb r3, [r7, #7] + 8001ee6: 4a44 ldr r2, [pc, #272] ; (8001ff8 ) + 8001ee8: 5cd3 ldrb r3, [r2, r3] + 8001eea: 3b30 subs r3, #48 ; 0x30 + 8001eec: 4618 mov r0, r3 + 8001eee: f7fe fa91 bl 8000414 <__aeabi_i2d> + 8001ef2: 4680 mov r8, r0 + 8001ef4: 4689 mov r9, r1 + 8001ef6: 4b41 ldr r3, [pc, #260] ; (8001ffc ) + 8001ef8: 781b ldrb r3, [r3, #0] + 8001efa: 1e5a subs r2, r3, #1 + 8001efc: 79fb ldrb r3, [r7, #7] + 8001efe: 1ad3 subs r3, r2, r3 + 8001f00: 4618 mov r0, r3 + 8001f02: f7fe fa87 bl 8000414 <__aeabi_i2d> + 8001f06: 4602 mov r2, r0 + 8001f08: 460b mov r3, r1 + 8001f0a: f04f 0000 mov.w r0, #0 + 8001f0e: 493d ldr r1, [pc, #244] ; (8002004 ) + 8001f10: f000 fc12 bl 8002738 + 8001f14: 4602 mov r2, r0 + 8001f16: 460b mov r3, r1 + 8001f18: 4640 mov r0, r8 + 8001f1a: 4649 mov r1, r9 + 8001f1c: f7fe fae4 bl 80004e8 <__aeabi_dmul> + 8001f20: 4602 mov r2, r0 + 8001f22: 460b mov r3, r1 + 8001f24: 4620 mov r0, r4 + 8001f26: 4629 mov r1, r5 + 8001f28: f7fe f928 bl 800017c <__adddf3> + 8001f2c: 4602 mov r2, r0 + 8001f2e: 460b mov r3, r1 + 8001f30: 4610 mov r0, r2 + 8001f32: 4619 mov r1, r3 + 8001f34: f7fe fd88 bl 8000a48 <__aeabi_d2iz> + 8001f38: 4603 mov r3, r0 + 8001f3a: b21a sxth r2, r3 + 8001f3c: 4b30 ldr r3, [pc, #192] ; (8002000 ) + 8001f3e: 801a strh r2, [r3, #0] for(u8 i = 2 ; i) - 8001910: 781b ldrb r3, [r3, #0] - 8001912: 79fa ldrb r2, [r7, #7] - 8001914: 429a cmp r2, r3 - 8001916: d3c1 bcc.n 800189c + 8001f40: 79fb ldrb r3, [r7, #7] + 8001f42: 3301 adds r3, #1 + 8001f44: 71fb strb r3, [r7, #7] + 8001f46: 4b2d ldr r3, [pc, #180] ; (8001ffc ) + 8001f48: 781b ldrb r3, [r3, #0] + 8001f4a: 79fa ldrb r2, [r7, #7] + 8001f4c: 429a cmp r2, r3 + 8001f4e: d3c1 bcc.n 8001ed4 } Rx_mpu = Rx_mpu*-1; - 8001918: 4b2b ldr r3, [pc, #172] ; (80019c8 ) - 800191a: f9b3 3000 ldrsh.w r3, [r3] - 800191e: b29b uxth r3, r3 - 8001920: 425b negs r3, r3 - 8001922: b29b uxth r3, r3 - 8001924: b21a sxth r2, r3 - 8001926: 4b28 ldr r3, [pc, #160] ; (80019c8 ) - 8001928: 801a strh r2, [r3, #0] - 800192a: e040 b.n 80019ae + 8001f50: 4b2b ldr r3, [pc, #172] ; (8002000 ) + 8001f52: f9b3 3000 ldrsh.w r3, [r3] + 8001f56: b29b uxth r3, r3 + 8001f58: 425b negs r3, r3 + 8001f5a: b29b uxth r3, r3 + 8001f5c: b21a sxth r2, r3 + 8001f5e: 4b28 ldr r3, [pc, #160] ; (8002000 ) + 8001f60: 801a strh r2, [r3, #0] + 8001f62: e040 b.n 8001fe6 } else { for(u8 i = 1 ; i + 8001f64: 2301 movs r3, #1 + 8001f66: 71bb strb r3, [r7, #6] + 8001f68: e038 b.n 8001fdc { Rx_mpu = Rx_mpu + (data_arr[i]-48)*pow(10,Rx_arrlength-1-i); - 8001932: 4b25 ldr r3, [pc, #148] ; (80019c8 ) - 8001934: f9b3 3000 ldrsh.w r3, [r3] - 8001938: 4618 mov r0, r3 - 800193a: f7fe fd6b bl 8000414 <__aeabi_i2d> - 800193e: 4604 mov r4, r0 - 8001940: 460d mov r5, r1 - 8001942: 79bb ldrb r3, [r7, #6] - 8001944: 4a1e ldr r2, [pc, #120] ; (80019c0 ) - 8001946: 5cd3 ldrb r3, [r2, r3] - 8001948: 3b30 subs r3, #48 ; 0x30 - 800194a: 4618 mov r0, r3 - 800194c: f7fe fd62 bl 8000414 <__aeabi_i2d> - 8001950: 4680 mov r8, r0 - 8001952: 4689 mov r9, r1 - 8001954: 4b1b ldr r3, [pc, #108] ; (80019c4 ) - 8001956: 781b ldrb r3, [r3, #0] - 8001958: 1e5a subs r2, r3, #1 - 800195a: 79bb ldrb r3, [r7, #6] - 800195c: 1ad3 subs r3, r2, r3 - 800195e: 4618 mov r0, r3 - 8001960: f7fe fd58 bl 8000414 <__aeabi_i2d> - 8001964: 4602 mov r2, r0 - 8001966: 460b mov r3, r1 - 8001968: f04f 0000 mov.w r0, #0 - 800196c: 4917 ldr r1, [pc, #92] ; (80019cc ) - 800196e: f000 fadd bl 8001f2c - 8001972: 4602 mov r2, r0 - 8001974: 460b mov r3, r1 - 8001976: 4640 mov r0, r8 - 8001978: 4649 mov r1, r9 - 800197a: f7fe fdb5 bl 80004e8 <__aeabi_dmul> - 800197e: 4602 mov r2, r0 - 8001980: 460b mov r3, r1 - 8001982: 4620 mov r0, r4 - 8001984: 4629 mov r1, r5 - 8001986: f7fe fbf9 bl 800017c <__adddf3> - 800198a: 4602 mov r2, r0 - 800198c: 460b mov r3, r1 - 800198e: 4610 mov r0, r2 - 8001990: 4619 mov r1, r3 - 8001992: f7ff f859 bl 8000a48 <__aeabi_d2iz> - 8001996: 4603 mov r3, r0 - 8001998: b21a sxth r2, r3 - 800199a: 4b0b ldr r3, [pc, #44] ; (80019c8 ) - 800199c: 801a strh r2, [r3, #0] + 8001f6a: 4b25 ldr r3, [pc, #148] ; (8002000 ) + 8001f6c: f9b3 3000 ldrsh.w r3, [r3] + 8001f70: 4618 mov r0, r3 + 8001f72: f7fe fa4f bl 8000414 <__aeabi_i2d> + 8001f76: 4604 mov r4, r0 + 8001f78: 460d mov r5, r1 + 8001f7a: 79bb ldrb r3, [r7, #6] + 8001f7c: 4a1e ldr r2, [pc, #120] ; (8001ff8 ) + 8001f7e: 5cd3 ldrb r3, [r2, r3] + 8001f80: 3b30 subs r3, #48 ; 0x30 + 8001f82: 4618 mov r0, r3 + 8001f84: f7fe fa46 bl 8000414 <__aeabi_i2d> + 8001f88: 4680 mov r8, r0 + 8001f8a: 4689 mov r9, r1 + 8001f8c: 4b1b ldr r3, [pc, #108] ; (8001ffc ) + 8001f8e: 781b ldrb r3, [r3, #0] + 8001f90: 1e5a subs r2, r3, #1 + 8001f92: 79bb ldrb r3, [r7, #6] + 8001f94: 1ad3 subs r3, r2, r3 + 8001f96: 4618 mov r0, r3 + 8001f98: f7fe fa3c bl 8000414 <__aeabi_i2d> + 8001f9c: 4602 mov r2, r0 + 8001f9e: 460b mov r3, r1 + 8001fa0: f04f 0000 mov.w r0, #0 + 8001fa4: 4917 ldr r1, [pc, #92] ; (8002004 ) + 8001fa6: f000 fbc7 bl 8002738 + 8001faa: 4602 mov r2, r0 + 8001fac: 460b mov r3, r1 + 8001fae: 4640 mov r0, r8 + 8001fb0: 4649 mov r1, r9 + 8001fb2: f7fe fa99 bl 80004e8 <__aeabi_dmul> + 8001fb6: 4602 mov r2, r0 + 8001fb8: 460b mov r3, r1 + 8001fba: 4620 mov r0, r4 + 8001fbc: 4629 mov r1, r5 + 8001fbe: f7fe f8dd bl 800017c <__adddf3> + 8001fc2: 4602 mov r2, r0 + 8001fc4: 460b mov r3, r1 + 8001fc6: 4610 mov r0, r2 + 8001fc8: 4619 mov r1, r3 + 8001fca: f7fe fd3d bl 8000a48 <__aeabi_d2iz> + 8001fce: 4603 mov r3, r0 + 8001fd0: b21a sxth r2, r3 + 8001fd2: 4b0b ldr r3, [pc, #44] ; (8002000 ) + 8001fd4: 801a strh r2, [r3, #0] for(u8 i = 1 ; i) - 80019a6: 781b ldrb r3, [r3, #0] - 80019a8: 79ba ldrb r2, [r7, #6] - 80019aa: 429a cmp r2, r3 - 80019ac: d3c1 bcc.n 8001932 + 8001fd6: 79bb ldrb r3, [r7, #6] + 8001fd8: 3301 adds r3, #1 + 8001fda: 71bb strb r3, [r7, #6] + 8001fdc: 4b07 ldr r3, [pc, #28] ; (8001ffc ) + 8001fde: 781b ldrb r3, [r3, #0] + 8001fe0: 79ba ldrb r2, [r7, #6] + 8001fe2: 429a cmp r2, r3 + 8001fe4: d3c1 bcc.n 8001f6a } } } return Rx_mpu ; - 80019ae: 4b06 ldr r3, [pc, #24] ; (80019c8 ) - 80019b0: f9b3 3000 ldrsh.w r3, [r3] + 8001fe6: 4b06 ldr r3, [pc, #24] ; (8002000 ) + 8001fe8: f9b3 3000 ldrsh.w r3, [r3] } - 80019b4: 4618 mov r0, r3 - 80019b6: 3708 adds r7, #8 - 80019b8: 46bd mov sp, r7 - 80019ba: e8bd 83b0 ldmia.w sp!, {r4, r5, r7, r8, r9, pc} - 80019be: bf00 nop - 80019c0: 200000e4 .word 0x200000e4 - 80019c4: 200000e0 .word 0x200000e0 - 80019c8: 200000fa .word 0x200000fa - 80019cc: 40240000 .word 0x40240000 - -080019d0 : - + 8001fec: 4618 mov r0, r3 + 8001fee: 3708 adds r7, #8 + 8001ff0: 46bd mov sp, r7 + 8001ff2: e8bd 83b0 ldmia.w sp!, {r4, r5, r7, r8, r9, pc} + 8001ff6: bf00 nop + 8001ff8: 200000f4 .word 0x200000f4 + 8001ffc: 200000f0 .word 0x200000f0 + 8002000: 2000010a .word 0x2000010a + 8002004: 40240000 .word 0x40240000 +08002008 : void RotateRight() { - 80019d0: b580 push {r7, lr} - 80019d2: b082 sub sp, #8 - 80019d4: af00 add r7, sp, #0 + 8002008: b580 push {r7, lr} + 800200a: b082 sub sp, #8 + 800200c: af00 add r7, sp, #0 s16 Reading = 0 ; - 80019d6: 2300 movs r3, #0 - 80019d8: 807b strh r3, [r7, #2] + 800200e: 2300 movs r3, #0 + 8002010: 807b strh r3, [r7, #2] s16 Final_Value = 0 ; - 80019da: 2300 movs r3, #0 - 80019dc: 80fb strh r3, [r7, #6] + 8002012: 2300 movs r3, #0 + 8002014: 80fb strh r3, [r7, #6] s16 error = 0; - 80019de: 2300 movs r3, #0 - 80019e0: 80bb strh r3, [r7, #4] + 8002016: 2300 movs r3, #0 + 8002018: 80bb strh r3, [r7, #4] Reading = Get_Reading() ; - 80019e2: f7ff ff41 bl 8001868 - 80019e6: 4603 mov r3, r0 - 80019e8: 807b strh r3, [r7, #2] -// MUSART2_voidSendNumbers(Reading); -// MUSART2_voidSendString((u8*)"/r/n"); + 800201a: f7ff ff41 bl 8001ea0 + 800201e: 4603 mov r3, r0 + 8002020: 807b strh r3, [r7, #2] Final_Value = Reading + 90 ; - 80019ea: 887b ldrh r3, [r7, #2] - 80019ec: 335a adds r3, #90 ; 0x5a - 80019ee: b29b uxth r3, r3 - 80019f0: 80fb strh r3, [r7, #6] + 8002022: 887b ldrh r3, [r7, #2] + 8002024: 335a adds r3, #90 ; 0x5a + 8002026: b29b uxth r3, r3 + 8002028: 80fb strh r3, [r7, #6] if (Final_Value > 180 ) - 80019f2: f9b7 3006 ldrsh.w r3, [r7, #6] - 80019f6: 2bb4 cmp r3, #180 ; 0xb4 - 80019f8: dd04 ble.n 8001a04 + 800202a: f9b7 3006 ldrsh.w r3, [r7, #6] + 800202e: 2bb4 cmp r3, #180 ; 0xb4 + 8002030: dd04 ble.n 800203c { Final_Value = Final_Value - 360 ; - 80019fa: 88fb ldrh r3, [r7, #6] - 80019fc: f5a3 73b4 sub.w r3, r3, #360 ; 0x168 - 8001a00: b29b uxth r3, r3 - 8001a02: 80fb strh r3, [r7, #6] + 8002032: 88fb ldrh r3, [r7, #6] + 8002034: f5a3 73b4 sub.w r3, r3, #360 ; 0x168 + 8002038: b29b uxth r3, r3 + 800203a: 80fb strh r3, [r7, #6] } error = Final_Value - Reading ; - 8001a04: 88fa ldrh r2, [r7, #6] - 8001a06: 887b ldrh r3, [r7, #2] - 8001a08: 1ad3 subs r3, r2, r3 - 8001a0a: b29b uxth r3, r3 - 8001a0c: 80bb strh r3, [r7, #4] + 800203c: 88fa ldrh r2, [r7, #6] + 800203e: 887b ldrh r3, [r7, #2] + 8002040: 1ad3 subs r3, r2, r3 + 8002042: b29b uxth r3, r3 + 8002044: 80bb strh r3, [r7, #4] while (1) { MGPIO_VoidSetPinValue(GPIOA, 0, HIGH); - 8001a0e: 2201 movs r2, #1 - 8001a10: 2100 movs r1, #0 - 8001a12: 2000 movs r0, #0 - 8001a14: f7ff f9ec bl 8000df0 + 8002046: 2201 movs r2, #1 + 8002048: 2100 movs r1, #0 + 800204a: 2000 movs r0, #0 + 800204c: f7ff f9b0 bl 80013b0 MGPIO_VoidSetPinValue(GPIOA, 5, LOW); - 8001a18: 2200 movs r2, #0 - 8001a1a: 2105 movs r1, #5 - 8001a1c: 2000 movs r0, #0 - 8001a1e: f7ff f9e7 bl 8000df0 + 8002050: 2200 movs r2, #0 + 8002052: 2105 movs r1, #5 + 8002054: 2000 movs r0, #0 + 8002056: f7ff f9ab bl 80013b0 MTIM2_voidOutputPWM_C2(30); - 8001a22: 201e movs r0, #30 - 8001a24: f7ff fdf2 bl 800160c + 800205a: 201e movs r0, #30 + 800205c: f7ff fddc bl 8001c18 MTIM3_voidOutputPWM(30); - 8001a28: 201e movs r0, #30 - 8001a2a: f7ff fe4d bl 80016c8 + 8002060: 201e movs r0, #30 + 8002062: f7ff fe37 bl 8001cd4 if (error < -180 ) - 8001a2e: f9b7 3004 ldrsh.w r3, [r7, #4] - 8001a32: f113 0fb4 cmn.w r3, #180 ; 0xb4 - 8001a36: da04 bge.n 8001a42 + 8002066: f9b7 3004 ldrsh.w r3, [r7, #4] + 800206a: f113 0fb4 cmn.w r3, #180 ; 0xb4 + 800206e: da04 bge.n 800207a { error += 360 ; - 8001a38: 88bb ldrh r3, [r7, #4] - 8001a3a: f503 73b4 add.w r3, r3, #360 ; 0x168 - 8001a3e: b29b uxth r3, r3 - 8001a40: 80bb strh r3, [r7, #4] + 8002070: 88bb ldrh r3, [r7, #4] + 8002072: f503 73b4 add.w r3, r3, #360 ; 0x168 + 8002076: b29b uxth r3, r3 + 8002078: 80bb strh r3, [r7, #4] } if ( error <= 0 ) - 8001a42: f9b7 3004 ldrsh.w r3, [r7, #4] - 8001a46: 2b00 cmp r3, #0 - 8001a48: dc0c bgt.n 8001a64 + 800207a: f9b7 3004 ldrsh.w r3, [r7, #4] + 800207e: 2b00 cmp r3, #0 + 8002080: dc1e bgt.n 80020c0 { MTIM3_voidOutputPWM(0); - 8001a4a: 2000 movs r0, #0 - 8001a4c: f7ff fe3c bl 80016c8 + 8002082: 2000 movs r0, #0 + 8002084: f7ff fe26 bl 8001cd4 MTIM2_voidOutputPWM_C2(0); - 8001a50: 2000 movs r0, #0 - 8001a52: f7ff fddb bl 800160c + 8002088: 2000 movs r0, #0 + 800208a: f7ff fdc5 bl 8001c18 HENCODER_s32GetZeroCounts(PIN8); - 8001a56: 2008 movs r0, #8 - 8001a58: f7ff fc72 bl 8001340 + 800208e: 2008 movs r0, #8 + 8002090: f7ff fc36 bl 8001900 HENCODER_s32GetZeroCounts(PIN10); - 8001a5c: 200a movs r0, #10 - 8001a5e: f7ff fc6f bl 8001340 - -// MUSART2_voidSendString((u8*)"s2"); -// MUSART2_voidSendString((u8*)"/r/n"); + 8002094: 200a movs r0, #10 + 8002096: f7ff fc33 bl 8001900 + + MUSART2_voidSendString((u8*)"s2"); + 800209a: 4810 ldr r0, [pc, #64] ; (80020dc ) + 800209c: f7ff fe7e bl 8001d9c + MUSART2_voidSendString((u8*)"\r\n"); + 80020a0: 480f ldr r0, [pc, #60] ; (80020e0 ) + 80020a2: f7ff fe7b bl 8001d9c + + MUSART2_voidSendNumbers(reading); + 80020a6: 4b0f ldr r3, [pc, #60] ; (80020e4 ) + 80020a8: 681b ldr r3, [r3, #0] + 80020aa: 4618 mov r0, r3 + 80020ac: f7fe ffc2 bl 8001034 <__aeabi_f2iz> + 80020b0: 4603 mov r3, r0 + 80020b2: 4618 mov r0, r3 + 80020b4: f7ff fe88 bl 8001dc8 + MUSART2_voidSendString((u8*)"\r\n"); + 80020b8: 4809 ldr r0, [pc, #36] ; (80020e0 ) + 80020ba: f7ff fe6f bl 8001d9c break ; - 8001a62: e009 b.n 8001a78 + 80020be: e009 b.n 80020d4 } Reading = Get_Reading() ; - 8001a64: f7ff ff00 bl 8001868 - 8001a68: 4603 mov r3, r0 - 8001a6a: 807b strh r3, [r7, #2] + 80020c0: f7ff feee bl 8001ea0 + 80020c4: 4603 mov r3, r0 + 80020c6: 807b strh r3, [r7, #2] error = Final_Value - Reading ; - 8001a6c: 88fa ldrh r2, [r7, #6] - 8001a6e: 887b ldrh r3, [r7, #2] - 8001a70: 1ad3 subs r3, r2, r3 - 8001a72: b29b uxth r3, r3 - 8001a74: 80bb strh r3, [r7, #4] + 80020c8: 88fa ldrh r2, [r7, #6] + 80020ca: 887b ldrh r3, [r7, #2] + 80020cc: 1ad3 subs r3, r2, r3 + 80020ce: b29b uxth r3, r3 + 80020d0: 80bb strh r3, [r7, #4] MGPIO_VoidSetPinValue(GPIOA, 0, HIGH); - 8001a76: e7ca b.n 8001a0e -// MUSART2_voidSendString((u8*)"/r/n"); + 80020d2: e7b8 b.n 8002046 } - } - 8001a78: bf00 nop - 8001a7a: 3708 adds r7, #8 - 8001a7c: 46bd mov sp, r7 - 8001a7e: bd80 pop {r7, pc} - -08001a80 : + 80020d4: bf00 nop + 80020d6: 3708 adds r7, #8 + 80020d8: 46bd mov sp, r7 + 80020da: bd80 pop {r7, pc} + 80020dc: 08003518 .word 0x08003518 + 80020e0: 0800351c .word 0x0800351c + 80020e4: 200000e8 .word 0x200000e8 +080020e8 : void RotateLeft() { - 8001a80: b580 push {r7, lr} - 8001a82: b082 sub sp, #8 - 8001a84: af00 add r7, sp, #0 + 80020e8: b580 push {r7, lr} + 80020ea: b082 sub sp, #8 + 80020ec: af00 add r7, sp, #0 s16 Reading = 0 ; - 8001a86: 2300 movs r3, #0 - 8001a88: 807b strh r3, [r7, #2] + 80020ee: 2300 movs r3, #0 + 80020f0: 807b strh r3, [r7, #2] s16 Final_Value = 0 ; - 8001a8a: 2300 movs r3, #0 - 8001a8c: 80fb strh r3, [r7, #6] + 80020f2: 2300 movs r3, #0 + 80020f4: 80fb strh r3, [r7, #6] s16 error = 0; - 8001a8e: 2300 movs r3, #0 - 8001a90: 80bb strh r3, [r7, #4] + 80020f6: 2300 movs r3, #0 + 80020f8: 80bb strh r3, [r7, #4] Reading = Get_Reading() ; - 8001a92: f7ff fee9 bl 8001868 - 8001a96: 4603 mov r3, r0 - 8001a98: 807b strh r3, [r7, #2] -// MUSART2_voidSendString((u8*)"/r/n"); - -// MGPIO_VoidSetPinValue(GPIOA, 0, HIGH); -// MGPIO_VoidSetPinValue(GPIOA, 5, LOW); + 80020fa: f7ff fed1 bl 8001ea0 + 80020fe: 4603 mov r3, r0 + 8002100: 807b strh r3, [r7, #2] Final_Value = Reading - 90 ; - 8001a9a: 887b ldrh r3, [r7, #2] - 8001a9c: 3b5a subs r3, #90 ; 0x5a - 8001a9e: b29b uxth r3, r3 - 8001aa0: 80fb strh r3, [r7, #6] + 8002102: 887b ldrh r3, [r7, #2] + 8002104: 3b5a subs r3, #90 ; 0x5a + 8002106: b29b uxth r3, r3 + 8002108: 80fb strh r3, [r7, #6] if (Final_Value < -180 ) - 8001aa2: f9b7 3006 ldrsh.w r3, [r7, #6] - 8001aa6: f113 0fb4 cmn.w r3, #180 ; 0xb4 - 8001aaa: da04 bge.n 8001ab6 + 800210a: f9b7 3006 ldrsh.w r3, [r7, #6] + 800210e: f113 0fb4 cmn.w r3, #180 ; 0xb4 + 8002112: da04 bge.n 800211e { Final_Value = Final_Value + 360 ; - 8001aac: 88fb ldrh r3, [r7, #6] - 8001aae: f503 73b4 add.w r3, r3, #360 ; 0x168 - 8001ab2: b29b uxth r3, r3 - 8001ab4: 80fb strh r3, [r7, #6] + 8002114: 88fb ldrh r3, [r7, #6] + 8002116: f503 73b4 add.w r3, r3, #360 ; 0x168 + 800211a: b29b uxth r3, r3 + 800211c: 80fb strh r3, [r7, #6] } error = Final_Value - Reading ; - 8001ab6: 88fa ldrh r2, [r7, #6] - 8001ab8: 887b ldrh r3, [r7, #2] - 8001aba: 1ad3 subs r3, r2, r3 - 8001abc: b29b uxth r3, r3 - 8001abe: 80bb strh r3, [r7, #4] + 800211e: 88fa ldrh r2, [r7, #6] + 8002120: 887b ldrh r3, [r7, #2] + 8002122: 1ad3 subs r3, r2, r3 + 8002124: b29b uxth r3, r3 + 8002126: 80bb strh r3, [r7, #4] while (1) { MGPIO_VoidSetPinValue(GPIOA, 0, HIGH); - 8001ac0: 2201 movs r2, #1 - 8001ac2: 2100 movs r1, #0 - 8001ac4: 2000 movs r0, #0 - 8001ac6: f7ff f993 bl 8000df0 + 8002128: 2201 movs r2, #1 + 800212a: 2100 movs r1, #0 + 800212c: 2000 movs r0, #0 + 800212e: f7ff f93f bl 80013b0 MGPIO_VoidSetPinValue(GPIOA, 5, LOW); - 8001aca: 2200 movs r2, #0 - 8001acc: 2105 movs r1, #5 - 8001ace: 2000 movs r0, #0 - 8001ad0: f7ff f98e bl 8000df0 + 8002132: 2200 movs r2, #0 + 8002134: 2105 movs r1, #5 + 8002136: 2000 movs r0, #0 + 8002138: f7ff f93a bl 80013b0 MTIM2_voidOutputPWM_C2(30); - 8001ad4: 201e movs r0, #30 - 8001ad6: f7ff fd99 bl 800160c + 800213c: 201e movs r0, #30 + 800213e: f7ff fd6b bl 8001c18 MTIM3_voidOutputPWM(30); - 8001ada: 201e movs r0, #30 - 8001adc: f7ff fdf4 bl 80016c8 + 8002142: 201e movs r0, #30 + 8002144: f7ff fdc6 bl 8001cd4 if (error > 180 ) - 8001ae0: f9b7 3004 ldrsh.w r3, [r7, #4] - 8001ae4: 2bb4 cmp r3, #180 ; 0xb4 - 8001ae6: dd04 ble.n 8001af2 + 8002148: f9b7 3004 ldrsh.w r3, [r7, #4] + 800214c: 2bb4 cmp r3, #180 ; 0xb4 + 800214e: dd04 ble.n 800215a { error -= 360 ; - 8001ae8: 88bb ldrh r3, [r7, #4] - 8001aea: f5a3 73b4 sub.w r3, r3, #360 ; 0x168 - 8001aee: b29b uxth r3, r3 - 8001af0: 80bb strh r3, [r7, #4] + 8002150: 88bb ldrh r3, [r7, #4] + 8002152: f5a3 73b4 sub.w r3, r3, #360 ; 0x168 + 8002156: b29b uxth r3, r3 + 8002158: 80bb strh r3, [r7, #4] } if ( error >= 0 ) - 8001af2: f9b7 3004 ldrsh.w r3, [r7, #4] - 8001af6: 2b00 cmp r3, #0 - 8001af8: db0c blt.n 8001b14 + 800215a: f9b7 3004 ldrsh.w r3, [r7, #4] + 800215e: 2b00 cmp r3, #0 + 8002160: db1e blt.n 80021a0 { MTIM3_voidOutputPWM(0); - 8001afa: 2000 movs r0, #0 - 8001afc: f7ff fde4 bl 80016c8 + 8002162: 2000 movs r0, #0 + 8002164: f7ff fdb6 bl 8001cd4 MTIM2_voidOutputPWM_C2(0); - 8001b00: 2000 movs r0, #0 - 8001b02: f7ff fd83 bl 800160c + 8002168: 2000 movs r0, #0 + 800216a: f7ff fd55 bl 8001c18 HENCODER_s32GetZeroCounts(PIN8); - 8001b06: 2008 movs r0, #8 - 8001b08: f7ff fc1a bl 8001340 + 800216e: 2008 movs r0, #8 + 8002170: f7ff fbc6 bl 8001900 HENCODER_s32GetZeroCounts(PIN10); - 8001b0c: 200a movs r0, #10 - 8001b0e: f7ff fc17 bl 8001340 + 8002174: 200a movs r0, #10 + 8002176: f7ff fbc3 bl 8001900 + + MUSART2_voidSendString((u8*)"s2"); + 800217a: 4810 ldr r0, [pc, #64] ; (80021bc ) + 800217c: f7ff fe0e bl 8001d9c + MUSART2_voidSendString((u8*)"\r\n"); + 8002180: 480f ldr r0, [pc, #60] ; (80021c0 ) + 8002182: f7ff fe0b bl 8001d9c + + MUSART2_voidSendNumbers(reading); + 8002186: 4b0f ldr r3, [pc, #60] ; (80021c4 ) + 8002188: 681b ldr r3, [r3, #0] + 800218a: 4618 mov r0, r3 + 800218c: f7fe ff52 bl 8001034 <__aeabi_f2iz> + 8002190: 4603 mov r3, r0 + 8002192: 4618 mov r0, r3 + 8002194: f7ff fe18 bl 8001dc8 + MUSART2_voidSendString((u8*)"\r\n"); + 8002198: 4809 ldr r0, [pc, #36] ; (80021c0 ) + 800219a: f7ff fdff bl 8001d9c -// MUSART2_voidSendString((u8*)"s2"); -// MUSART2_voidSendString((u8*)"/r/n"); break ; - 8001b12: e009 b.n 8001b28 + 800219e: e009 b.n 80021b4 } Reading = Get_Reading() ; - 8001b14: f7ff fea8 bl 8001868 - 8001b18: 4603 mov r3, r0 - 8001b1a: 807b strh r3, [r7, #2] + 80021a0: f7ff fe7e bl 8001ea0 + 80021a4: 4603 mov r3, r0 + 80021a6: 807b strh r3, [r7, #2] error = Final_Value - Reading ; - 8001b1c: 88fa ldrh r2, [r7, #6] - 8001b1e: 887b ldrh r3, [r7, #2] - 8001b20: 1ad3 subs r3, r2, r3 - 8001b22: b29b uxth r3, r3 - 8001b24: 80bb strh r3, [r7, #4] + 80021a8: 88fa ldrh r2, [r7, #6] + 80021aa: 887b ldrh r3, [r7, #2] + 80021ac: 1ad3 subs r3, r2, r3 + 80021ae: b29b uxth r3, r3 + 80021b0: 80bb strh r3, [r7, #4] MGPIO_VoidSetPinValue(GPIOA, 0, HIGH); - 8001b26: e7cb b.n 8001ac0 -// MUSART2_voidSendNumbers(Reading); -// MUSART2_voidSendString((u8*)"/r/n"); - } + 80021b2: e7b9 b.n 8002128 + } } - 8001b28: bf00 nop - 8001b2a: 3708 adds r7, #8 - 8001b2c: 46bd mov sp, r7 - 8001b2e: bd80 pop {r7, pc} - -08001b30 : + 80021b4: bf00 nop + 80021b6: 3708 adds r7, #8 + 80021b8: 46bd mov sp, r7 + 80021ba: bd80 pop {r7, pc} + 80021bc: 08003518 .word 0x08003518 + 80021c0: 0800351c .word 0x0800351c + 80021c4: 200000e8 .word 0x200000e8 +080021c8 : void TargetDistance() { - 8001b30: b580 push {r7, lr} - 8001b32: b082 sub sp, #8 - 8001b34: af00 add r7, sp, #0 + 80021c8: b580 push {r7, lr} + 80021ca: b082 sub sp, #8 + 80021cc: af00 add r7, sp, #0 u32 target_count = 0; - 8001b36: 2300 movs r3, #0 - 8001b38: 607b str r3, [r7, #4] + 80021ce: 2300 movs r3, #0 + 80021d0: 607b str r3, [r7, #4] HENCODER_s32GetZeroCounts(PIN8); - 8001b3a: 2008 movs r0, #8 - 8001b3c: f7ff fc00 bl 8001340 + 80021d2: 2008 movs r0, #8 + 80021d4: f7ff fb94 bl 8001900 HENCODER_s32GetZeroCounts(PIN10); - 8001b40: 200a movs r0, #10 - 8001b42: f7ff fbfd bl 8001340 + 80021d8: 200a movs r0, #10 + 80021da: f7ff fb91 bl 8001900 HENCODER_f32GetZeroDistance(); - 8001b46: f7ff fc17 bl 8001378 + 80021de: f7ff fbab bl 8001938 target_count = step_distance*10.23; - 8001b4a: f44f 7333 mov.w r3, #716 ; 0x2cc - 8001b4e: 607b str r3, [r7, #4] + 80021e2: f44f 7333 mov.w r3, #716 ; 0x2cc + 80021e6: 607b str r3, [r7, #4] while(1) { MTIM2_voidOutputPWM_C2((u16)Rx_pwm); - 8001b50: 4b16 ldr r3, [pc, #88] ; (8001bac ) - 8001b52: 881b ldrh r3, [r3, #0] - 8001b54: 4618 mov r0, r3 - 8001b56: f7ff fd59 bl 800160c + 80021e8: 4b1c ldr r3, [pc, #112] ; (800225c ) + 80021ea: 881b ldrh r3, [r3, #0] + 80021ec: 4618 mov r0, r3 + 80021ee: f7ff fd13 bl 8001c18 MTIM3_voidOutputPWM((u16)Rx_pwm); - 8001b5a: 4b14 ldr r3, [pc, #80] ; (8001bac ) - 8001b5c: 881b ldrh r3, [r3, #0] - 8001b5e: 4618 mov r0, r3 - 8001b60: f7ff fdb2 bl 80016c8 - -// MUSART2_voidSendNumbers(right_counts); -// MUSART2_voidSendString((u8*)"\r\n"); + 80021f2: 4b1a ldr r3, [pc, #104] ; (800225c ) + 80021f4: 881b ldrh r3, [r3, #0] + 80021f6: 4618 mov r0, r3 + 80021f8: f7ff fd6c bl 8001cd4 if(abs(right_counts) >= target_count) - 8001b64: 4b12 ldr r3, [pc, #72] ; (8001bb0 ) - 8001b66: 681b ldr r3, [r3, #0] - 8001b68: 2b00 cmp r3, #0 - 8001b6a: bfb8 it lt - 8001b6c: 425b neglt r3, r3 - 8001b6e: 461a mov r2, r3 - 8001b70: 687b ldr r3, [r7, #4] - 8001b72: 4293 cmp r3, r2 - 8001b74: d8ec bhi.n 8001b50 + 80021fc: 4b18 ldr r3, [pc, #96] ; (8002260 ) + 80021fe: 681b ldr r3, [r3, #0] + 8002200: 2b00 cmp r3, #0 + 8002202: bfb8 it lt + 8002204: 425b neglt r3, r3 + 8002206: 461a mov r2, r3 + 8002208: 687b ldr r3, [r7, #4] + 800220a: 4293 cmp r3, r2 + 800220c: d8ec bhi.n 80021e8 { HENCODER_s32GetZeroCounts(PIN8); - 8001b76: 2008 movs r0, #8 - 8001b78: f7ff fbe2 bl 8001340 + 800220e: 2008 movs r0, #8 + 8002210: f7ff fb76 bl 8001900 HENCODER_s32GetZeroCounts(PIN10); - 8001b7c: 200a movs r0, #10 - 8001b7e: f7ff fbdf bl 8001340 + 8002214: 200a movs r0, #10 + 8002216: f7ff fb73 bl 8001900 Rx_pwm = 0; - 8001b82: 4b0a ldr r3, [pc, #40] ; (8001bac ) - 8001b84: 2200 movs r2, #0 - 8001b86: 801a strh r2, [r3, #0] + 800221a: 4b10 ldr r3, [pc, #64] ; (800225c ) + 800221c: 2200 movs r2, #0 + 800221e: 801a strh r2, [r3, #0] MTIM3_voidOutputPWM(0); - 8001b88: 2000 movs r0, #0 - 8001b8a: f7ff fd9d bl 80016c8 + 8002220: 2000 movs r0, #0 + 8002222: f7ff fd57 bl 8001cd4 MTIM2_voidOutputPWM_C2(0); - 8001b8e: 2000 movs r0, #0 - 8001b90: f7ff fd3c bl 800160c + 8002226: 2000 movs r0, #0 + 8002228: f7ff fcf6 bl 8001c18 MUSART2_voidSendString((u8*) "s1"); - 8001b94: 4807 ldr r0, [pc, #28] ; (8001bb4 ) - 8001b96: f7ff fdfb bl 8001790 + 800222c: 480d ldr r0, [pc, #52] ; (8002264 ) + 800222e: f7ff fdb5 bl 8001d9c + MUSART2_voidSendString((u8*)"\r\n"); + 8002232: 480d ldr r0, [pc, #52] ; (8002268 ) + 8002234: f7ff fdb2 bl 8001d9c + + MUSART2_voidSendNumbers(reading); + 8002238: 4b0c ldr r3, [pc, #48] ; (800226c ) + 800223a: 681b ldr r3, [r3, #0] + 800223c: 4618 mov r0, r3 + 800223e: f7fe fef9 bl 8001034 <__aeabi_f2iz> + 8002242: 4603 mov r3, r0 + 8002244: 4618 mov r0, r3 + 8002246: f7ff fdbf bl 8001dc8 MUSART2_voidSendString((u8*)"\r\n"); - 8001b9a: 4807 ldr r0, [pc, #28] ; (8001bb8 ) - 8001b9c: f7ff fdf8 bl 8001790 -// MUSART2_voidSendNumbers(reading); -// MUSART2_voidSendString((u8*)"\r\n"); + 800224a: 4807 ldr r0, [pc, #28] ; (8002268 ) + 800224c: f7ff fda6 bl 8001d9c break; - 8001ba0: bf00 nop + 8002250: bf00 nop } } } - 8001ba2: bf00 nop - 8001ba4: 3708 adds r7, #8 - 8001ba6: 46bd mov sp, r7 - 8001ba8: bd80 pop {r7, pc} - 8001baa: bf00 nop - 8001bac: 200000f8 .word 0x200000f8 - 8001bb0: 200000d8 .word 0x200000d8 - 8001bb4: 08002d10 .word 0x08002d10 - 8001bb8: 08002d14 .word 0x08002d14 - -08001bbc
: -//// MUSART2_voidSendNumbers(reading); -//// MUSART2_voidSendString((u8*)"\r\n"); -//} + 8002252: bf00 nop + 8002254: 3708 adds r7, #8 + 8002256: 46bd mov sp, r7 + 8002258: bd80 pop {r7, pc} + 800225a: bf00 nop + 800225c: 20000108 .word 0x20000108 + 8002260: 200000dc .word 0x200000dc + 8002264: 08003520 .word 0x08003520 + 8002268: 0800351c .word 0x0800351c + 800226c: 200000e8 .word 0x200000e8 + +08002270 : + + +void VoltageReading() +{ + 8002270: b598 push {r3, r4, r7, lr} + 8002272: af00 add r7, sp, #0 + adc_value = MADC1_u16ReadValue(); + 8002274: f7fe ff66 bl 8001144 + 8002278: 4603 mov r3, r0 + 800227a: 461a mov r2, r3 + 800227c: 4b22 ldr r3, [pc, #136] ; (8002308 ) + 800227e: 801a strh r2, [r3, #0] + adc_volt = (adc_value*3.3)/4096; + 8002280: 4b21 ldr r3, [pc, #132] ; (8002308 ) + 8002282: 881b ldrh r3, [r3, #0] + 8002284: 4618 mov r0, r3 + 8002286: f7fe f8c5 bl 8000414 <__aeabi_i2d> + 800228a: a31d add r3, pc, #116 ; (adr r3, 8002300 ) + 800228c: e9d3 2300 ldrd r2, r3, [r3] + 8002290: f7fe f92a bl 80004e8 <__aeabi_dmul> + 8002294: 4602 mov r2, r0 + 8002296: 460b mov r3, r1 + 8002298: 4610 mov r0, r2 + 800229a: 4619 mov r1, r3 + 800229c: f04f 0200 mov.w r2, #0 + 80022a0: 4b1a ldr r3, [pc, #104] ; (800230c ) + 80022a2: f7fe fa4b bl 800073c <__aeabi_ddiv> + 80022a6: 4602 mov r2, r0 + 80022a8: 460b mov r3, r1 + 80022aa: 4610 mov r0, r2 + 80022ac: 4619 mov r1, r3 + 80022ae: f7fe fc13 bl 8000ad8 <__aeabi_d2f> + 80022b2: 4603 mov r3, r0 + 80022b4: 4a16 ldr r2, [pc, #88] ; (8002310 ) + 80022b6: 6013 str r3, [r2, #0] + reading = (adc_volt*(R1+R2))/R2; + 80022b8: 4b16 ldr r3, [pc, #88] ; (8002314 ) + 80022ba: 881b ldrh r3, [r3, #0] + 80022bc: 461a mov r2, r3 + 80022be: 4b16 ldr r3, [pc, #88] ; (8002318 ) + 80022c0: 881b ldrh r3, [r3, #0] + 80022c2: 4413 add r3, r2 + 80022c4: 4618 mov r0, r3 + 80022c6: f7fe fd11 bl 8000cec <__aeabi_i2f> + 80022ca: 4602 mov r2, r0 + 80022cc: 4b10 ldr r3, [pc, #64] ; (8002310 ) + 80022ce: 681b ldr r3, [r3, #0] + 80022d0: 4619 mov r1, r3 + 80022d2: 4610 mov r0, r2 + 80022d4: f7fe fd5e bl 8000d94 <__aeabi_fmul> + 80022d8: 4603 mov r3, r0 + 80022da: 461c mov r4, r3 + 80022dc: 4b0e ldr r3, [pc, #56] ; (8002318 ) + 80022de: 881b ldrh r3, [r3, #0] + 80022e0: 4618 mov r0, r3 + 80022e2: f7fe fd03 bl 8000cec <__aeabi_i2f> + 80022e6: 4603 mov r3, r0 + 80022e8: 4619 mov r1, r3 + 80022ea: 4620 mov r0, r4 + 80022ec: f7fe fe06 bl 8000efc <__aeabi_fdiv> + 80022f0: 4603 mov r3, r0 + 80022f2: 461a mov r2, r3 + 80022f4: 4b09 ldr r3, [pc, #36] ; (800231c ) + 80022f6: 601a str r2, [r3, #0] + +// MUSART2_voidSendNumbers(reading); +// MUSART2_voidSendString((u8*)"\r\n"); +} + 80022f8: bf00 nop + 80022fa: bd98 pop {r3, r4, r7, pc} + 80022fc: f3af 8000 nop.w + 8002300: 66666666 .word 0x66666666 + 8002304: 400a6666 .word 0x400a6666 + 8002308: 200000e4 .word 0x200000e4 + 800230c: 40b00000 .word 0x40b00000 + 8002310: 200000ec .word 0x200000ec + 8002314: 20000000 .word 0x20000000 + 8002318: 20000002 .word 0x20000002 + 800231c: 200000e8 .word 0x200000e8 + +08002320
: + int main (void) { - 8001bbc: e92d 43b0 stmdb sp!, {r4, r5, r7, r8, r9, lr} - 8001bc0: b082 sub sp, #8 - 8001bc2: af00 add r7, sp, #0 + 8002320: e92d 43b0 stmdb sp!, {r4, r5, r7, r8, r9, lr} + 8002324: b082 sub sp, #8 + 8002326: af00 add r7, sp, #0 /*initialize RCC*/ RCC_voidInitSysClock(); - 8001bc4: f7ff fc06 bl 80013d4 + 8002328: f7ff fb34 bl 8001994 /*initialize peripherals clock - GPIO, AFIO, TIM2, TIM3, ADC1*/ RCC_voidEnableClock(RCC_APB2 , 2); - 8001bc8: 2102 movs r1, #2 - 8001bca: 2002 movs r0, #2 - 8001bcc: f7ff fc14 bl 80013f8 + 800232c: 2102 movs r1, #2 + 800232e: 2002 movs r0, #2 + 8002330: f7ff fb42 bl 80019b8 RCC_voidEnableClock(RCC_APB2 , 3); - 8001bd0: 2103 movs r1, #3 - 8001bd2: 2002 movs r0, #2 - 8001bd4: f7ff fc10 bl 80013f8 + 8002334: 2103 movs r1, #3 + 8002336: 2002 movs r0, #2 + 8002338: f7ff fb3e bl 80019b8 RCC_voidEnableClock(RCC_APB2 , 0); - 8001bd8: 2100 movs r1, #0 - 8001bda: 2002 movs r0, #2 - 8001bdc: f7ff fc0c bl 80013f8 + 800233c: 2100 movs r1, #0 + 800233e: 2002 movs r0, #2 + 8002340: f7ff fb3a bl 80019b8 RCC_voidEnableClock(RCC_APB1 , 0); - 8001be0: 2100 movs r1, #0 - 8001be2: 2001 movs r0, #1 - 8001be4: f7ff fc08 bl 80013f8 + 8002344: 2100 movs r1, #0 + 8002346: 2001 movs r0, #1 + 8002348: f7ff fb36 bl 80019b8 RCC_voidEnableClock(RCC_APB1 , 1); - 8001be8: 2101 movs r1, #1 - 8001bea: 2001 movs r0, #1 - 8001bec: f7ff fc04 bl 80013f8 + 800234c: 2101 movs r1, #1 + 800234e: 2001 movs r0, #1 + 8002350: f7ff fb32 bl 80019b8 RCC_voidEnableClock(RCC_APB2 , 9); - 8001bf0: 2109 movs r1, #9 - 8001bf2: 2002 movs r0, #2 - 8001bf4: f7ff fc00 bl 80013f8 + 8002354: 2109 movs r1, #9 + 8002356: 2002 movs r0, #2 + 8002358: f7ff fb2e bl 80019b8 /* cytron 1 */ //MGPIO_VoidSetPinDirection(GPIOA,PIN3,OUTPUT_2MHZ_AFPP); //MGPIO_VoidSetPinDirection(GPIOA,PIN2,OUTPUT_2MHZ_PP); MGPIO_VoidSetPinDirection(GPIOA,PIN1,OUTPUT_2MHZ_AFPP); //pwm - 8001bf8: 220a movs r2, #10 - 8001bfa: 2101 movs r1, #1 - 8001bfc: 2000 movs r0, #0 - 8001bfe: f7ff f821 bl 8000c44 + 800235c: 220a movs r2, #10 + 800235e: 2101 movs r1, #1 + 8002360: 2000 movs r0, #0 + 8002362: f7fe ff4f bl 8001204 MGPIO_VoidSetPinDirection(GPIOA,PIN0,OUTPUT_2MHZ_PP); //direction - 8001c02: 2202 movs r2, #2 - 8001c04: 2100 movs r1, #0 - 8001c06: 2000 movs r0, #0 - 8001c08: f7ff f81c bl 8000c44 + 8002366: 2202 movs r2, #2 + 8002368: 2100 movs r1, #0 + 800236a: 2000 movs r0, #0 + 800236c: f7fe ff4a bl 8001204 /* cytron 2 */ MGPIO_VoidSetPinDirection(GPIOA,PIN6,OUTPUT_2MHZ_AFPP); //pwm - 8001c0c: 220a movs r2, #10 - 8001c0e: 2106 movs r1, #6 - 8001c10: 2000 movs r0, #0 - 8001c12: f7ff f817 bl 8000c44 + 8002370: 220a movs r2, #10 + 8002372: 2106 movs r1, #6 + 8002374: 2000 movs r0, #0 + 8002376: f7fe ff45 bl 8001204 MGPIO_VoidSetPinDirection(GPIOA,PIN5,OUTPUT_2MHZ_PP); //direction - 8001c16: 2202 movs r2, #2 - 8001c18: 2105 movs r1, #5 - 8001c1a: 2000 movs r0, #0 - 8001c1c: f7ff f812 bl 8000c44 + 800237a: 2202 movs r2, #2 + 800237c: 2105 movs r1, #5 + 800237e: 2000 movs r0, #0 + 8002380: f7fe ff40 bl 8001204 /* Right encoder */ MGPIO_VoidSetPinDirection(GPIOA,PIN8,INPUT_FLOATING); - 8001c20: 2204 movs r2, #4 - 8001c22: 2108 movs r1, #8 - 8001c24: 2000 movs r0, #0 - 8001c26: f7ff f80d bl 8000c44 + 8002384: 2204 movs r2, #4 + 8002386: 2108 movs r1, #8 + 8002388: 2000 movs r0, #0 + 800238a: f7fe ff3b bl 8001204 MGPIO_VoidSetPinDirection(GPIOA,PIN9,INPUT_FLOATING); - 8001c2a: 2204 movs r2, #4 - 8001c2c: 2109 movs r1, #9 - 8001c2e: 2000 movs r0, #0 - 8001c30: f7ff f808 bl 8000c44 + 800238e: 2204 movs r2, #4 + 8002390: 2109 movs r1, #9 + 8002392: 2000 movs r0, #0 + 8002394: f7fe ff36 bl 8001204 /* Left encoder */ MGPIO_VoidSetPinDirection(GPIOB,PIN10,INPUT_FLOATING); - 8001c34: 2204 movs r2, #4 - 8001c36: 210a movs r1, #10 - 8001c38: 2001 movs r0, #1 - 8001c3a: f7ff f803 bl 8000c44 + 8002398: 2204 movs r2, #4 + 800239a: 210a movs r1, #10 + 800239c: 2001 movs r0, #1 + 800239e: f7fe ff31 bl 8001204 MGPIO_VoidSetPinDirection(GPIOB,PIN11,INPUT_FLOATING); - 8001c3e: 2204 movs r2, #4 - 8001c40: 210b movs r1, #11 - 8001c42: 2001 movs r0, #1 - 8001c44: f7fe fffe bl 8000c44 + 80023a2: 2204 movs r2, #4 + 80023a4: 210b movs r1, #11 + 80023a6: 2001 movs r0, #1 + 80023a8: f7fe ff2c bl 8001204 /* voltage sensor */ MGPIO_VoidSetPinDirection(GPIOB, PIN0, INPUT_ANALOG); - 8001c48: 2200 movs r2, #0 - 8001c4a: 2100 movs r1, #0 - 8001c4c: 2001 movs r0, #1 - 8001c4e: f7fe fff9 bl 8000c44 + 80023ac: 2200 movs r2, #0 + 80023ae: 2100 movs r1, #0 + 80023b0: 2001 movs r0, #1 + 80023b2: f7fe ff27 bl 8001204 /* AFIO for EXTI (Encoders) */ MAFIO_voidSetEXTIConfiguration(LINE8 , AFIOA); - 8001c52: 2100 movs r1, #0 - 8001c54: 2008 movs r0, #8 - 8001c56: f7fe ffa1 bl 8000b9c + 80023b6: 2100 movs r1, #0 + 80023b8: 2008 movs r0, #8 + 80023ba: f7fe fecf bl 800115c MAFIO_voidSetEXTIConfiguration(LINE10 , AFIOB); - 8001c5a: 2101 movs r1, #1 - 8001c5c: 200a movs r0, #10 - 8001c5e: f7fe ff9d bl 8000b9c + 80023be: 2101 movs r1, #1 + 80023c0: 200a movs r0, #10 + 80023c2: f7fe fecb bl 800115c /* call back for EXTI8,10*/ EXTI_voidSetCallBack(LeftEncoderGetReading,LINE8); - 8001c62: 2108 movs r1, #8 - 8001c64: 487f ldr r0, [pc, #508] ; (8001e64 ) - 8001c66: f7ff f9c3 bl 8000ff0 + 80023c6: 2108 movs r1, #8 + 80023c8: 487b ldr r0, [pc, #492] ; (80025b8 ) + 80023ca: f7ff f8f1 bl 80015b0 EXTI_voidSetCallBack(RightEncoderGetReading,LINE10); - 8001c6a: 210a movs r1, #10 - 8001c6c: 487e ldr r0, [pc, #504] ; (8001e68 ) - 8001c6e: f7ff f9bf bl 8000ff0 + 80023ce: 210a movs r1, #10 + 80023d0: 487a ldr r0, [pc, #488] ; (80025bc ) + 80023d2: f7ff f8ed bl 80015b0 /* EXTI initialization */ MEXTI_voidInit(); - 8001c72: f7ff f95b bl 8000f2c + 80023d6: f7ff f889 bl 80014ec MEXTI_voidSetSignalLatch(LINE8,RISING); - 8001c76: 2100 movs r1, #0 - 8001c78: 2008 movs r0, #8 - 8001c7a: f7ff f96b bl 8000f54 + 80023da: 2100 movs r1, #0 + 80023dc: 2008 movs r0, #8 + 80023de: f7ff f899 bl 8001514 MEXTI_voidSetSignalLatch(LINE10,RISING); - 8001c7e: 2100 movs r1, #0 - 8001c80: 200a movs r0, #10 - 8001c82: f7ff f967 bl 8000f54 + 80023e2: 2100 movs r1, #0 + 80023e4: 200a movs r0, #10 + 80023e6: f7ff f895 bl 8001514 /* ADC initialization & conversion */ MADC1_voidInit(); - 8001c86: f7fe ff27 bl 8000ad8 + 80023ea: f7fe fe49 bl 8001080 MADC1_voidStartConversion(8,1); - 8001c8a: 2101 movs r1, #1 - 8001c8c: 2008 movs r0, #8 - 8001c8e: f7fe ff3b bl 8000b08 + 80023ee: 2101 movs r1, #1 + 80023f0: 2008 movs r0, #8 + 80023f2: f7fe fe5d bl 80010b0 /*Enable EXTI from NVIC*/ MNVIC_voidEnableInterrupt(23); - 8001c92: 2017 movs r0, #23 - 8001c94: f7ff fb7c bl 8001390 + 80023f6: 2017 movs r0, #23 + 80023f8: f7ff faaa bl 8001950 MNVIC_voidEnableInterrupt(40); - 8001c98: 2028 movs r0, #40 ; 0x28 - 8001c9a: f7ff fb79 bl 8001390 + 80023fc: 2028 movs r0, #40 ; 0x28 + 80023fe: f7ff faa7 bl 8001950 /* Initialization */ MSTK_voidInit(); - 8001c9e: f7ff fbed bl 800147c + 8002402: f7ff fb1b bl 8001a3c MTIM2_voidInitC2(); - 8001ca2: f7ff fc4d bl 8001540 + 8002406: f7ff fba1 bl 8001b4c MTIM3_voidInit(); - 8001ca6: f7ff fcc1 bl 800162c + 800240a: f7ff fc15 bl 8001c38 MUSART2_voidInit(); - 8001caa: f7ff fd1d bl 80016e8 -// MTIM2_voidOutputPWM_C2(0); -// MTIM3_voidOutputPWM(0); + 800240e: f7ff fc71 bl 8001cf4 + + /*start timer 1sec*/ + MSTK_voidSetIntervalPeriodic(1000000, VoltageReading); + 8002412: 496b ldr r1, [pc, #428] ; (80025c0 ) + 8002414: 486b ldr r0, [pc, #428] ; (80025c4 ) + 8002416: f7ff fb45 bl 8001aa4 while(1) { Rx_arrlength = MUSART2_u8ReceiveDataBlock(data_arr); - 8001cae: 486f ldr r0, [pc, #444] ; (8001e6c ) - 8001cb0: f7ff fd9c bl 80017ec - 8001cb4: 4603 mov r3, r0 - 8001cb6: 461a mov r2, r3 - 8001cb8: 4b6d ldr r3, [pc, #436] ; (8001e70 ) - 8001cba: 701a strb r2, [r3, #0] + 800241a: 486b ldr r0, [pc, #428] ; (80025c8 ) + 800241c: f7ff fd02 bl 8001e24 + 8002420: 4603 mov r3, r0 + 8002422: 461a mov r2, r3 + 8002424: 4b69 ldr r3, [pc, #420] ; (80025cc ) + 8002426: 701a strb r2, [r3, #0] if (data_arr[0] == 'y') - 8001cbc: 4b6b ldr r3, [pc, #428] ; (8001e6c ) - 8001cbe: 781b ldrb r3, [r3, #0] - 8001cc0: 2b79 cmp r3, #121 ; 0x79 - 8001cc2: f040 80a7 bne.w 8001e14 + 8002428: 4b67 ldr r3, [pc, #412] ; (80025c8 ) + 800242a: 781b ldrb r3, [r3, #0] + 800242c: 2b79 cmp r3, #121 ; 0x79 + 800242e: f040 80a7 bne.w 8002580 { MTIM2_voidOutputPWM_C2(0); - 8001cc6: 2000 movs r0, #0 - 8001cc8: f7ff fca0 bl 800160c + 8002432: 2000 movs r0, #0 + 8002434: f7ff fbf0 bl 8001c18 MTIM3_voidOutputPWM(0); - 8001ccc: 2000 movs r0, #0 - 8001cce: f7ff fcfb bl 80016c8 + 8002438: 2000 movs r0, #0 + 800243a: f7ff fc4b bl 8001cd4 if (data_arr[1] == '-') - 8001cd2: 4b66 ldr r3, [pc, #408] ; (8001e6c ) - 8001cd4: 785b ldrb r3, [r3, #1] - 8001cd6: 2b2d cmp r3, #45 ; 0x2d - 8001cd8: d14c bne.n 8001d74 + 800243e: 4b62 ldr r3, [pc, #392] ; (80025c8 ) + 8002440: 785b ldrb r3, [r3, #1] + 8002442: 2b2d cmp r3, #45 ; 0x2d + 8002444: d14c bne.n 80024e0 { MGPIO_VoidSetPinValue(GPIOA, 0, LOW); - 8001cda: 2200 movs r2, #0 - 8001cdc: 2100 movs r1, #0 - 8001cde: 2000 movs r0, #0 - 8001ce0: f7ff f886 bl 8000df0 + 8002446: 2200 movs r2, #0 + 8002448: 2100 movs r1, #0 + 800244a: 2000 movs r0, #0 + 800244c: f7fe ffb0 bl 80013b0 MGPIO_VoidSetPinValue(GPIOA, 5, LOW); - 8001ce4: 2200 movs r2, #0 - 8001ce6: 2105 movs r1, #5 - 8001ce8: 2000 movs r0, #0 - 8001cea: f7ff f881 bl 8000df0 + 8002450: 2200 movs r2, #0 + 8002452: 2105 movs r1, #5 + 8002454: 2000 movs r0, #0 + 8002456: f7fe ffab bl 80013b0 for(u8 i = 2 ; i + 800245a: 2302 movs r3, #2 + 800245c: 71fb strb r3, [r7, #7] + 800245e: e037 b.n 80024d0 { Rx_pwm = Rx_pwm + (data_arr[i]-48)*pow(10,Rx_arrlength-1-i); - 8001cf4: 4b5f ldr r3, [pc, #380] ; (8001e74 ) - 8001cf6: 881b ldrh r3, [r3, #0] - 8001cf8: 4618 mov r0, r3 - 8001cfa: f7fe fb8b bl 8000414 <__aeabi_i2d> - 8001cfe: 4604 mov r4, r0 - 8001d00: 460d mov r5, r1 - 8001d02: 79fb ldrb r3, [r7, #7] - 8001d04: 4a59 ldr r2, [pc, #356] ; (8001e6c ) - 8001d06: 5cd3 ldrb r3, [r2, r3] - 8001d08: 3b30 subs r3, #48 ; 0x30 - 8001d0a: 4618 mov r0, r3 - 8001d0c: f7fe fb82 bl 8000414 <__aeabi_i2d> - 8001d10: 4680 mov r8, r0 - 8001d12: 4689 mov r9, r1 - 8001d14: 4b56 ldr r3, [pc, #344] ; (8001e70 ) - 8001d16: 781b ldrb r3, [r3, #0] - 8001d18: 1e5a subs r2, r3, #1 - 8001d1a: 79fb ldrb r3, [r7, #7] - 8001d1c: 1ad3 subs r3, r2, r3 - 8001d1e: 4618 mov r0, r3 - 8001d20: f7fe fb78 bl 8000414 <__aeabi_i2d> - 8001d24: 4602 mov r2, r0 - 8001d26: 460b mov r3, r1 - 8001d28: f04f 0000 mov.w r0, #0 - 8001d2c: 4952 ldr r1, [pc, #328] ; (8001e78 ) - 8001d2e: f000 f8fd bl 8001f2c - 8001d32: 4602 mov r2, r0 - 8001d34: 460b mov r3, r1 - 8001d36: 4640 mov r0, r8 - 8001d38: 4649 mov r1, r9 - 8001d3a: f7fe fbd5 bl 80004e8 <__aeabi_dmul> - 8001d3e: 4602 mov r2, r0 - 8001d40: 460b mov r3, r1 - 8001d42: 4620 mov r0, r4 - 8001d44: 4629 mov r1, r5 - 8001d46: f7fe fa19 bl 800017c <__adddf3> - 8001d4a: 4602 mov r2, r0 - 8001d4c: 460b mov r3, r1 - 8001d4e: 4610 mov r0, r2 - 8001d50: 4619 mov r1, r3 - 8001d52: f7fe fea1 bl 8000a98 <__aeabi_d2uiz> - 8001d56: 4603 mov r3, r0 - 8001d58: b29a uxth r2, r3 - 8001d5a: 4b46 ldr r3, [pc, #280] ; (8001e74 ) - 8001d5c: 801a strh r2, [r3, #0] + 8002460: 4b5b ldr r3, [pc, #364] ; (80025d0 ) + 8002462: 881b ldrh r3, [r3, #0] + 8002464: 4618 mov r0, r3 + 8002466: f7fd ffd5 bl 8000414 <__aeabi_i2d> + 800246a: 4604 mov r4, r0 + 800246c: 460d mov r5, r1 + 800246e: 79fb ldrb r3, [r7, #7] + 8002470: 4a55 ldr r2, [pc, #340] ; (80025c8 ) + 8002472: 5cd3 ldrb r3, [r2, r3] + 8002474: 3b30 subs r3, #48 ; 0x30 + 8002476: 4618 mov r0, r3 + 8002478: f7fd ffcc bl 8000414 <__aeabi_i2d> + 800247c: 4680 mov r8, r0 + 800247e: 4689 mov r9, r1 + 8002480: 4b52 ldr r3, [pc, #328] ; (80025cc ) + 8002482: 781b ldrb r3, [r3, #0] + 8002484: 1e5a subs r2, r3, #1 + 8002486: 79fb ldrb r3, [r7, #7] + 8002488: 1ad3 subs r3, r2, r3 + 800248a: 4618 mov r0, r3 + 800248c: f7fd ffc2 bl 8000414 <__aeabi_i2d> + 8002490: 4602 mov r2, r0 + 8002492: 460b mov r3, r1 + 8002494: f04f 0000 mov.w r0, #0 + 8002498: 494e ldr r1, [pc, #312] ; (80025d4 ) + 800249a: f000 f94d bl 8002738 + 800249e: 4602 mov r2, r0 + 80024a0: 460b mov r3, r1 + 80024a2: 4640 mov r0, r8 + 80024a4: 4649 mov r1, r9 + 80024a6: f7fe f81f bl 80004e8 <__aeabi_dmul> + 80024aa: 4602 mov r2, r0 + 80024ac: 460b mov r3, r1 + 80024ae: 4620 mov r0, r4 + 80024b0: 4629 mov r1, r5 + 80024b2: f7fd fe63 bl 800017c <__adddf3> + 80024b6: 4602 mov r2, r0 + 80024b8: 460b mov r3, r1 + 80024ba: 4610 mov r0, r2 + 80024bc: 4619 mov r1, r3 + 80024be: f7fe faeb bl 8000a98 <__aeabi_d2uiz> + 80024c2: 4603 mov r3, r0 + 80024c4: b29a uxth r2, r3 + 80024c6: 4b42 ldr r3, [pc, #264] ; (80025d0 ) + 80024c8: 801a strh r2, [r3, #0] for(u8 i = 2 ; i) - 8001d66: 781b ldrb r3, [r3, #0] - 8001d68: 79fa ldrb r2, [r7, #7] - 8001d6a: 429a cmp r2, r3 - 8001d6c: d3c2 bcc.n 8001cf4 + 80024ca: 79fb ldrb r3, [r7, #7] + 80024cc: 3301 adds r3, #1 + 80024ce: 71fb strb r3, [r7, #7] + 80024d0: 4b3e ldr r3, [pc, #248] ; (80025cc ) + 80024d2: 781b ldrb r3, [r3, #0] + 80024d4: 79fa ldrb r2, [r7, #7] + 80024d6: 429a cmp r2, r3 + 80024d8: d3c2 bcc.n 8002460 } TargetDistance(); - 8001d6e: f7ff fedf bl 8001b30 - 8001d72: e79c b.n 8001cae - //Rx_pwm = 0; + 80024da: f7ff fe75 bl 80021c8 + 80024de: e79c b.n 800241a + } else { MGPIO_VoidSetPinValue(GPIOA, 0, HIGH); - 8001d74: 2201 movs r2, #1 - 8001d76: 2100 movs r1, #0 - 8001d78: 2000 movs r0, #0 - 8001d7a: f7ff f839 bl 8000df0 + 80024e0: 2201 movs r2, #1 + 80024e2: 2100 movs r1, #0 + 80024e4: 2000 movs r0, #0 + 80024e6: f7fe ff63 bl 80013b0 MGPIO_VoidSetPinValue(GPIOA, 5, HIGH); - 8001d7e: 2201 movs r2, #1 - 8001d80: 2105 movs r1, #5 - 8001d82: 2000 movs r0, #0 - 8001d84: f7ff f834 bl 8000df0 + 80024ea: 2201 movs r2, #1 + 80024ec: 2105 movs r1, #5 + 80024ee: 2000 movs r0, #0 + 80024f0: f7fe ff5e bl 80013b0 for(u8 i = 1 ; i + 80024f4: 2301 movs r3, #1 + 80024f6: 71bb strb r3, [r7, #6] + 80024f8: e037 b.n 800256a { Rx_pwm = Rx_pwm + (data_arr[i]-48)*pow(10,Rx_arrlength-1-i); - 8001d8e: 4b39 ldr r3, [pc, #228] ; (8001e74 ) - 8001d90: 881b ldrh r3, [r3, #0] - 8001d92: 4618 mov r0, r3 - 8001d94: f7fe fb3e bl 8000414 <__aeabi_i2d> - 8001d98: 4604 mov r4, r0 - 8001d9a: 460d mov r5, r1 - 8001d9c: 79bb ldrb r3, [r7, #6] - 8001d9e: 4a33 ldr r2, [pc, #204] ; (8001e6c ) - 8001da0: 5cd3 ldrb r3, [r2, r3] - 8001da2: 3b30 subs r3, #48 ; 0x30 - 8001da4: 4618 mov r0, r3 - 8001da6: f7fe fb35 bl 8000414 <__aeabi_i2d> - 8001daa: 4680 mov r8, r0 - 8001dac: 4689 mov r9, r1 - 8001dae: 4b30 ldr r3, [pc, #192] ; (8001e70 ) - 8001db0: 781b ldrb r3, [r3, #0] - 8001db2: 1e5a subs r2, r3, #1 - 8001db4: 79bb ldrb r3, [r7, #6] - 8001db6: 1ad3 subs r3, r2, r3 - 8001db8: 4618 mov r0, r3 - 8001dba: f7fe fb2b bl 8000414 <__aeabi_i2d> - 8001dbe: 4602 mov r2, r0 - 8001dc0: 460b mov r3, r1 - 8001dc2: f04f 0000 mov.w r0, #0 - 8001dc6: 492c ldr r1, [pc, #176] ; (8001e78 ) - 8001dc8: f000 f8b0 bl 8001f2c - 8001dcc: 4602 mov r2, r0 - 8001dce: 460b mov r3, r1 - 8001dd0: 4640 mov r0, r8 - 8001dd2: 4649 mov r1, r9 - 8001dd4: f7fe fb88 bl 80004e8 <__aeabi_dmul> - 8001dd8: 4602 mov r2, r0 - 8001dda: 460b mov r3, r1 - 8001ddc: 4620 mov r0, r4 - 8001dde: 4629 mov r1, r5 - 8001de0: f7fe f9cc bl 800017c <__adddf3> - 8001de4: 4602 mov r2, r0 - 8001de6: 460b mov r3, r1 - 8001de8: 4610 mov r0, r2 - 8001dea: 4619 mov r1, r3 - 8001dec: f7fe fe54 bl 8000a98 <__aeabi_d2uiz> - 8001df0: 4603 mov r3, r0 - 8001df2: b29a uxth r2, r3 - 8001df4: 4b1f ldr r3, [pc, #124] ; (8001e74 ) - 8001df6: 801a strh r2, [r3, #0] + 80024fa: 4b35 ldr r3, [pc, #212] ; (80025d0 ) + 80024fc: 881b ldrh r3, [r3, #0] + 80024fe: 4618 mov r0, r3 + 8002500: f7fd ff88 bl 8000414 <__aeabi_i2d> + 8002504: 4604 mov r4, r0 + 8002506: 460d mov r5, r1 + 8002508: 79bb ldrb r3, [r7, #6] + 800250a: 4a2f ldr r2, [pc, #188] ; (80025c8 ) + 800250c: 5cd3 ldrb r3, [r2, r3] + 800250e: 3b30 subs r3, #48 ; 0x30 + 8002510: 4618 mov r0, r3 + 8002512: f7fd ff7f bl 8000414 <__aeabi_i2d> + 8002516: 4680 mov r8, r0 + 8002518: 4689 mov r9, r1 + 800251a: 4b2c ldr r3, [pc, #176] ; (80025cc ) + 800251c: 781b ldrb r3, [r3, #0] + 800251e: 1e5a subs r2, r3, #1 + 8002520: 79bb ldrb r3, [r7, #6] + 8002522: 1ad3 subs r3, r2, r3 + 8002524: 4618 mov r0, r3 + 8002526: f7fd ff75 bl 8000414 <__aeabi_i2d> + 800252a: 4602 mov r2, r0 + 800252c: 460b mov r3, r1 + 800252e: f04f 0000 mov.w r0, #0 + 8002532: 4928 ldr r1, [pc, #160] ; (80025d4 ) + 8002534: f000 f900 bl 8002738 + 8002538: 4602 mov r2, r0 + 800253a: 460b mov r3, r1 + 800253c: 4640 mov r0, r8 + 800253e: 4649 mov r1, r9 + 8002540: f7fd ffd2 bl 80004e8 <__aeabi_dmul> + 8002544: 4602 mov r2, r0 + 8002546: 460b mov r3, r1 + 8002548: 4620 mov r0, r4 + 800254a: 4629 mov r1, r5 + 800254c: f7fd fe16 bl 800017c <__adddf3> + 8002550: 4602 mov r2, r0 + 8002552: 460b mov r3, r1 + 8002554: 4610 mov r0, r2 + 8002556: 4619 mov r1, r3 + 8002558: f7fe fa9e bl 8000a98 <__aeabi_d2uiz> + 800255c: 4603 mov r3, r0 + 800255e: b29a uxth r2, r3 + 8002560: 4b1b ldr r3, [pc, #108] ; (80025d0 ) + 8002562: 801a strh r2, [r3, #0] for(u8 i = 1 ; i) - 8001e00: 781b ldrb r3, [r3, #0] - 8001e02: 79ba ldrb r2, [r7, #6] - 8001e04: 429a cmp r2, r3 - 8001e06: d3c2 bcc.n 8001d8e + 8002564: 79bb ldrb r3, [r7, #6] + 8002566: 3301 adds r3, #1 + 8002568: 71bb strb r3, [r7, #6] + 800256a: 4b18 ldr r3, [pc, #96] ; (80025cc ) + 800256c: 781b ldrb r3, [r3, #0] + 800256e: 79ba ldrb r2, [r7, #6] + 8002570: 429a cmp r2, r3 + 8002572: d3c2 bcc.n 80024fa } TargetDistance(Rx_pwm); - 8001e08: 4b1a ldr r3, [pc, #104] ; (8001e74 ) - 8001e0a: 881b ldrh r3, [r3, #0] - 8001e0c: 4618 mov r0, r3 - 8001e0e: f7ff fe8f bl 8001b30 - 8001e12: e74c b.n 8001cae - //Rx_pwm = 0; + 8002574: 4b16 ldr r3, [pc, #88] ; (80025d0 ) + 8002576: 881b ldrh r3, [r3, #0] + 8002578: 4618 mov r0, r3 + 800257a: f7ff fe25 bl 80021c8 + 800257e: e74c b.n 800241a + } } else if(data_arr[0] == 'm') - 8001e14: 4b15 ldr r3, [pc, #84] ; (8001e6c ) - 8001e16: 781b ldrb r3, [r3, #0] - 8001e18: 2b6d cmp r3, #109 ; 0x6d - 8001e1a: d11b bne.n 8001e54 + 8002580: 4b11 ldr r3, [pc, #68] ; (80025c8 ) + 8002582: 781b ldrb r3, [r3, #0] + 8002584: 2b6d cmp r3, #109 ; 0x6d + 8002586: d10f bne.n 80025a8 { MTIM2_voidOutputPWM_C2(0); - 8001e1c: 2000 movs r0, #0 - 8001e1e: f7ff fbf5 bl 800160c + 8002588: 2000 movs r0, #0 + 800258a: f7ff fb45 bl 8001c18 MTIM3_voidOutputPWM(0); - 8001e22: 2000 movs r0, #0 - 8001e24: f7ff fc50 bl 80016c8 + 800258e: 2000 movs r0, #0 + 8002590: f7ff fba0 bl 8001cd4 if(data_arr[1] == '-') - 8001e28: 4b10 ldr r3, [pc, #64] ; (8001e6c ) - 8001e2a: 785b ldrb r3, [r3, #1] - 8001e2c: 2b2d cmp r3, #45 ; 0x2d - 8001e2e: d108 bne.n 8001e42 + 8002594: 4b0c ldr r3, [pc, #48] ; (80025c8 ) + 8002596: 785b ldrb r3, [r3, #1] + 8002598: 2b2d cmp r3, #45 ; 0x2d + 800259a: d102 bne.n 80025a2 { /* rotate right */ RotateRight(); - 8001e30: f7ff fdce bl 80019d0 - - MUSART2_voidSendString((u8*)"s2"); - 8001e34: 4811 ldr r0, [pc, #68] ; (8001e7c ) - 8001e36: f7ff fcab bl 8001790 - MUSART2_voidSendString((u8*)"/r/n"); - 8001e3a: 4811 ldr r0, [pc, #68] ; (8001e80 ) - 8001e3c: f7ff fca8 bl 8001790 - 8001e40: e735 b.n 8001cae + 800259c: f7ff fd34 bl 8002008 + 80025a0: e73b b.n 800241a + } + else { /* rotate left */ -// MUSART2_voidSendString((u8*)"high"); -// MUSART2_voidSendString((u8*)"/r/n"); - RotateLeft(); - 8001e42: f7ff fe1d bl 8001a80 - - MUSART2_voidSendString((u8*)"s2"); - 8001e46: 480d ldr r0, [pc, #52] ; (8001e7c ) - 8001e48: f7ff fca2 bl 8001790 - MUSART2_voidSendString((u8*)"/r/n"); - 8001e4c: 480c ldr r0, [pc, #48] ; (8001e80 ) - 8001e4e: f7ff fc9f bl 8001790 - 8001e52: e72c b.n 8001cae + 80025a2: f7ff fda1 bl 80020e8 + 80025a6: e738 b.n 800241a } } else { MTIM3_voidOutputPWM(0); - 8001e54: 2000 movs r0, #0 - 8001e56: f7ff fc37 bl 80016c8 + 80025a8: 2000 movs r0, #0 + 80025aa: f7ff fb93 bl 8001cd4 MTIM2_voidOutputPWM_C2(0); - 8001e5a: 2000 movs r0, #0 - 8001e5c: f7ff fbd6 bl 800160c + 80025ae: 2000 movs r0, #0 + 80025b0: f7ff fb32 bl 8001c18 Rx_arrlength = MUSART2_u8ReceiveDataBlock(data_arr); - 8001e60: e725 b.n 8001cae - 8001e62: bf00 nop - 8001e64: 08001831 .word 0x08001831 - 8001e68: 0800184d .word 0x0800184d - 8001e6c: 200000e4 .word 0x200000e4 - 8001e70: 200000e0 .word 0x200000e0 - 8001e74: 200000f8 .word 0x200000f8 - 8001e78: 40240000 .word 0x40240000 - 8001e7c: 08002d18 .word 0x08002d18 - 8001e80: 08002d1c .word 0x08002d1c - -08001e84 : + 80025b4: e731 b.n 800241a + 80025b6: bf00 nop + 80025b8: 08001e69 .word 0x08001e69 + 80025bc: 08001e85 .word 0x08001e85 + 80025c0: 08002271 .word 0x08002271 + 80025c4: 000f4240 .word 0x000f4240 + 80025c8: 200000f4 .word 0x200000f4 + 80025cc: 200000f0 .word 0x200000f0 + 80025d0: 20000108 .word 0x20000108 + 80025d4: 40240000 .word 0x40240000 + +080025d8 : .section .text.Reset_Handler .weak Reset_Handler .type Reset_Handler, %function Reset_Handler: ldr r0, =_estack - 8001e84: 480d ldr r0, [pc, #52] ; (8001ebc ) + 80025d8: 480d ldr r0, [pc, #52] ; (8002610 ) mov sp, r0 /* set stack pointer */ - 8001e86: 4685 mov sp, r0 + 80025da: 4685 mov sp, r0 /* Call the clock system initialization function.*/ bl SystemInit - 8001e88: f3af 8000 nop.w + 80025dc: f3af 8000 nop.w /* Copy the data segment initializers from flash to SRAM */ ldr r0, =_sdata - 8001e8c: 480c ldr r0, [pc, #48] ; (8001ec0 ) + 80025e0: 480c ldr r0, [pc, #48] ; (8002614 ) ldr r1, =_edata - 8001e8e: 490d ldr r1, [pc, #52] ; (8001ec4 ) + 80025e2: 490d ldr r1, [pc, #52] ; (8002618 ) ldr r2, =_sidata - 8001e90: 4a0d ldr r2, [pc, #52] ; (8001ec8 ) + 80025e4: 4a0d ldr r2, [pc, #52] ; (800261c ) movs r3, #0 - 8001e92: 2300 movs r3, #0 + 80025e6: 2300 movs r3, #0 b LoopCopyDataInit - 8001e94: e002 b.n 8001e9c + 80025e8: e002 b.n 80025f0 -08001e96 : +080025ea : CopyDataInit: ldr r4, [r2, r3] - 8001e96: 58d4 ldr r4, [r2, r3] + 80025ea: 58d4 ldr r4, [r2, r3] str r4, [r0, r3] - 8001e98: 50c4 str r4, [r0, r3] + 80025ec: 50c4 str r4, [r0, r3] adds r3, r3, #4 - 8001e9a: 3304 adds r3, #4 + 80025ee: 3304 adds r3, #4 -08001e9c : +080025f0 : LoopCopyDataInit: adds r4, r0, r3 - 8001e9c: 18c4 adds r4, r0, r3 + 80025f0: 18c4 adds r4, r0, r3 cmp r4, r1 - 8001e9e: 428c cmp r4, r1 + 80025f2: 428c cmp r4, r1 bcc CopyDataInit - 8001ea0: d3f9 bcc.n 8001e96 + 80025f4: d3f9 bcc.n 80025ea /* Zero fill the bss segment. */ ldr r2, =_sbss - 8001ea2: 4a0a ldr r2, [pc, #40] ; (8001ecc ) + 80025f6: 4a0a ldr r2, [pc, #40] ; (8002620 ) ldr r4, =_ebss - 8001ea4: 4c0a ldr r4, [pc, #40] ; (8001ed0 ) + 80025f8: 4c0a ldr r4, [pc, #40] ; (8002624 ) movs r3, #0 - 8001ea6: 2300 movs r3, #0 + 80025fa: 2300 movs r3, #0 b LoopFillZerobss - 8001ea8: e001 b.n 8001eae + 80025fc: e001 b.n 8002602 -08001eaa : +080025fe : FillZerobss: str r3, [r2] - 8001eaa: 6013 str r3, [r2, #0] + 80025fe: 6013 str r3, [r2, #0] adds r2, r2, #4 - 8001eac: 3204 adds r2, #4 + 8002600: 3204 adds r2, #4 -08001eae : +08002602 : LoopFillZerobss: cmp r2, r4 - 8001eae: 42a2 cmp r2, r4 + 8002602: 42a2 cmp r2, r4 bcc FillZerobss - 8001eb0: d3fb bcc.n 8001eaa + 8002604: d3fb bcc.n 80025fe /* Call static constructors */ bl __libc_init_array - 8001eb2: f000 f817 bl 8001ee4 <__libc_init_array> + 8002606: f000 f817 bl 8002638 <__libc_init_array> /* Call the application's entry point.*/ bl main - 8001eb6: f7ff fe81 bl 8001bbc
+ 800260a: f7ff fe89 bl 8002320
-08001eba : +0800260e : LoopForever: b LoopForever - 8001eba: e7fe b.n 8001eba + 800260e: e7fe b.n 800260e ldr r0, =_estack - 8001ebc: 20005000 .word 0x20005000 + 8002610: 20005000 .word 0x20005000 ldr r0, =_sdata - 8001ec0: 20000000 .word 0x20000000 + 8002614: 20000000 .word 0x20000000 ldr r1, =_edata - 8001ec4: 20000064 .word 0x20000064 + 8002618: 20000068 .word 0x20000068 ldr r2, =_sidata - 8001ec8: 08002d60 .word 0x08002d60 + 800261c: 08003580 .word 0x08003580 ldr r2, =_sbss - 8001ecc: 20000064 .word 0x20000064 + 8002620: 20000068 .word 0x20000068 ldr r4, =_ebss - 8001ed0: 200000fc .word 0x200000fc + 8002624: 2000010c .word 0x2000010c -08001ed4 : +08002628 : * @retval : None */ .section .text.Default_Handler,"ax",%progbits Default_Handler: Infinite_Loop: b Infinite_Loop - 8001ed4: e7fe b.n 8001ed4 + 8002628: e7fe b.n 8002628 ... -08001ed8 <__errno>: - 8001ed8: 4b01 ldr r3, [pc, #4] ; (8001ee0 <__errno+0x8>) - 8001eda: 6818 ldr r0, [r3, #0] - 8001edc: 4770 bx lr - 8001ede: bf00 nop - 8001ee0: 20000000 .word 0x20000000 - -08001ee4 <__libc_init_array>: - 8001ee4: b570 push {r4, r5, r6, lr} - 8001ee6: 2600 movs r6, #0 - 8001ee8: 4d0c ldr r5, [pc, #48] ; (8001f1c <__libc_init_array+0x38>) - 8001eea: 4c0d ldr r4, [pc, #52] ; (8001f20 <__libc_init_array+0x3c>) - 8001eec: 1b64 subs r4, r4, r5 - 8001eee: 10a4 asrs r4, r4, #2 - 8001ef0: 42a6 cmp r6, r4 - 8001ef2: d109 bne.n 8001f08 <__libc_init_array+0x24> - 8001ef4: f000 fefe bl 8002cf4 <_init> - 8001ef8: 2600 movs r6, #0 - 8001efa: 4d0a ldr r5, [pc, #40] ; (8001f24 <__libc_init_array+0x40>) - 8001efc: 4c0a ldr r4, [pc, #40] ; (8001f28 <__libc_init_array+0x44>) - 8001efe: 1b64 subs r4, r4, r5 - 8001f00: 10a4 asrs r4, r4, #2 - 8001f02: 42a6 cmp r6, r4 - 8001f04: d105 bne.n 8001f12 <__libc_init_array+0x2e> - 8001f06: bd70 pop {r4, r5, r6, pc} - 8001f08: f855 3b04 ldr.w r3, [r5], #4 - 8001f0c: 4798 blx r3 - 8001f0e: 3601 adds r6, #1 - 8001f10: e7ee b.n 8001ef0 <__libc_init_array+0xc> - 8001f12: f855 3b04 ldr.w r3, [r5], #4 - 8001f16: 4798 blx r3 - 8001f18: 3601 adds r6, #1 - 8001f1a: e7f2 b.n 8001f02 <__libc_init_array+0x1e> - 8001f1c: 08002d58 .word 0x08002d58 - 8001f20: 08002d58 .word 0x08002d58 - 8001f24: 08002d58 .word 0x08002d58 - 8001f28: 08002d5c .word 0x08002d5c - -08001f2c : - 8001f2c: e92d 43f8 stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr} - 8001f30: 4614 mov r4, r2 - 8001f32: 461d mov r5, r3 - 8001f34: 4680 mov r8, r0 - 8001f36: 4689 mov r9, r1 - 8001f38: f000 f862 bl 8002000 <__ieee754_pow> - 8001f3c: 4622 mov r2, r4 - 8001f3e: 4606 mov r6, r0 - 8001f40: 460f mov r7, r1 - 8001f42: 462b mov r3, r5 - 8001f44: 4620 mov r0, r4 - 8001f46: 4629 mov r1, r5 - 8001f48: f7fe fd68 bl 8000a1c <__aeabi_dcmpun> - 8001f4c: bbc8 cbnz r0, 8001fc2 - 8001f4e: 2200 movs r2, #0 - 8001f50: 2300 movs r3, #0 - 8001f52: 4640 mov r0, r8 - 8001f54: 4649 mov r1, r9 - 8001f56: f7fe fd2f bl 80009b8 <__aeabi_dcmpeq> - 8001f5a: b1b8 cbz r0, 8001f8c - 8001f5c: 2200 movs r2, #0 - 8001f5e: 2300 movs r3, #0 - 8001f60: 4620 mov r0, r4 - 8001f62: 4629 mov r1, r5 - 8001f64: f7fe fd28 bl 80009b8 <__aeabi_dcmpeq> - 8001f68: 2800 cmp r0, #0 - 8001f6a: d141 bne.n 8001ff0 - 8001f6c: 4620 mov r0, r4 - 8001f6e: 4629 mov r1, r5 - 8001f70: f000 fe3b bl 8002bea - 8001f74: b328 cbz r0, 8001fc2 - 8001f76: 2200 movs r2, #0 - 8001f78: 2300 movs r3, #0 - 8001f7a: 4620 mov r0, r4 - 8001f7c: 4629 mov r1, r5 - 8001f7e: f7fe fd25 bl 80009cc <__aeabi_dcmplt> - 8001f82: b1f0 cbz r0, 8001fc2 - 8001f84: f7ff ffa8 bl 8001ed8 <__errno> - 8001f88: 2322 movs r3, #34 ; 0x22 - 8001f8a: e019 b.n 8001fc0 - 8001f8c: 4630 mov r0, r6 - 8001f8e: 4639 mov r1, r7 - 8001f90: f000 fe2b bl 8002bea - 8001f94: b9c8 cbnz r0, 8001fca - 8001f96: 4640 mov r0, r8 - 8001f98: 4649 mov r1, r9 - 8001f9a: f000 fe26 bl 8002bea - 8001f9e: b1a0 cbz r0, 8001fca - 8001fa0: 4620 mov r0, r4 - 8001fa2: 4629 mov r1, r5 - 8001fa4: f000 fe21 bl 8002bea - 8001fa8: b178 cbz r0, 8001fca - 8001faa: 4632 mov r2, r6 - 8001fac: 463b mov r3, r7 - 8001fae: 4630 mov r0, r6 - 8001fb0: 4639 mov r1, r7 - 8001fb2: f7fe fd33 bl 8000a1c <__aeabi_dcmpun> - 8001fb6: 2800 cmp r0, #0 - 8001fb8: d0e4 beq.n 8001f84 - 8001fba: f7ff ff8d bl 8001ed8 <__errno> - 8001fbe: 2321 movs r3, #33 ; 0x21 - 8001fc0: 6003 str r3, [r0, #0] - 8001fc2: 4630 mov r0, r6 - 8001fc4: 4639 mov r1, r7 - 8001fc6: e8bd 83f8 ldmia.w sp!, {r3, r4, r5, r6, r7, r8, r9, pc} - 8001fca: 2200 movs r2, #0 - 8001fcc: 2300 movs r3, #0 - 8001fce: 4630 mov r0, r6 - 8001fd0: 4639 mov r1, r7 - 8001fd2: f7fe fcf1 bl 80009b8 <__aeabi_dcmpeq> - 8001fd6: 2800 cmp r0, #0 - 8001fd8: d0f3 beq.n 8001fc2 - 8001fda: 4640 mov r0, r8 - 8001fdc: 4649 mov r1, r9 - 8001fde: f000 fe04 bl 8002bea - 8001fe2: 2800 cmp r0, #0 - 8001fe4: d0ed beq.n 8001fc2 - 8001fe6: 4620 mov r0, r4 - 8001fe8: 4629 mov r1, r5 - 8001fea: f000 fdfe bl 8002bea - 8001fee: e7c8 b.n 8001f82 - 8001ff0: 2600 movs r6, #0 - 8001ff2: 4f01 ldr r7, [pc, #4] ; (8001ff8 ) - 8001ff4: e7e5 b.n 8001fc2 - 8001ff6: bf00 nop - 8001ff8: 3ff00000 .word 0x3ff00000 - 8001ffc: 00000000 .word 0x00000000 - -08002000 <__ieee754_pow>: - 8002000: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} - 8002004: b093 sub sp, #76 ; 0x4c - 8002006: e9cd 2302 strd r2, r3, [sp, #8] - 800200a: e9dd 2702 ldrd r2, r7, [sp, #8] - 800200e: f027 4600 bic.w r6, r7, #2147483648 ; 0x80000000 - 8002012: 4689 mov r9, r1 - 8002014: ea56 0102 orrs.w r1, r6, r2 - 8002018: 4680 mov r8, r0 - 800201a: d111 bne.n 8002040 <__ieee754_pow+0x40> - 800201c: 1803 adds r3, r0, r0 - 800201e: f489 2200 eor.w r2, r9, #524288 ; 0x80000 - 8002022: 4152 adcs r2, r2 - 8002024: 4299 cmp r1, r3 - 8002026: 4b82 ldr r3, [pc, #520] ; (8002230 <__ieee754_pow+0x230>) - 8002028: 4193 sbcs r3, r2 - 800202a: f080 84b9 bcs.w 80029a0 <__ieee754_pow+0x9a0> - 800202e: e9dd 2302 ldrd r2, r3, [sp, #8] - 8002032: 4640 mov r0, r8 - 8002034: 4649 mov r1, r9 - 8002036: f7fe f8a1 bl 800017c <__adddf3> - 800203a: 4683 mov fp, r0 - 800203c: 468c mov ip, r1 - 800203e: e06f b.n 8002120 <__ieee754_pow+0x120> - 8002040: 4b7c ldr r3, [pc, #496] ; (8002234 <__ieee754_pow+0x234>) - 8002042: f029 4400 bic.w r4, r9, #2147483648 ; 0x80000000 - 8002046: 429c cmp r4, r3 - 8002048: 464d mov r5, r9 - 800204a: 4682 mov sl, r0 - 800204c: dc06 bgt.n 800205c <__ieee754_pow+0x5c> - 800204e: d101 bne.n 8002054 <__ieee754_pow+0x54> - 8002050: 2800 cmp r0, #0 - 8002052: d1ec bne.n 800202e <__ieee754_pow+0x2e> - 8002054: 429e cmp r6, r3 - 8002056: dc01 bgt.n 800205c <__ieee754_pow+0x5c> - 8002058: d10f bne.n 800207a <__ieee754_pow+0x7a> - 800205a: b172 cbz r2, 800207a <__ieee754_pow+0x7a> - 800205c: f105 4540 add.w r5, r5, #3221225472 ; 0xc0000000 - 8002060: f505 1580 add.w r5, r5, #1048576 ; 0x100000 - 8002064: ea55 050a orrs.w r5, r5, sl - 8002068: d1e1 bne.n 800202e <__ieee754_pow+0x2e> - 800206a: e9dd 3202 ldrd r3, r2, [sp, #8] - 800206e: 18db adds r3, r3, r3 - 8002070: f482 2200 eor.w r2, r2, #524288 ; 0x80000 - 8002074: 4152 adcs r2, r2 - 8002076: 429d cmp r5, r3 - 8002078: e7d5 b.n 8002026 <__ieee754_pow+0x26> - 800207a: 2d00 cmp r5, #0 - 800207c: da39 bge.n 80020f2 <__ieee754_pow+0xf2> - 800207e: 4b6e ldr r3, [pc, #440] ; (8002238 <__ieee754_pow+0x238>) - 8002080: 429e cmp r6, r3 - 8002082: dc52 bgt.n 800212a <__ieee754_pow+0x12a> - 8002084: f1a3 7354 sub.w r3, r3, #55574528 ; 0x3500000 - 8002088: 429e cmp r6, r3 - 800208a: f340 849c ble.w 80029c6 <__ieee754_pow+0x9c6> - 800208e: 1533 asrs r3, r6, #20 - 8002090: f2a3 33ff subw r3, r3, #1023 ; 0x3ff - 8002094: 2b14 cmp r3, #20 - 8002096: dd0f ble.n 80020b8 <__ieee754_pow+0xb8> - 8002098: f1c3 0334 rsb r3, r3, #52 ; 0x34 - 800209c: fa22 f103 lsr.w r1, r2, r3 - 80020a0: fa01 f303 lsl.w r3, r1, r3 - 80020a4: 4293 cmp r3, r2 - 80020a6: f040 848e bne.w 80029c6 <__ieee754_pow+0x9c6> - 80020aa: f001 0101 and.w r1, r1, #1 - 80020ae: f1c1 0302 rsb r3, r1, #2 - 80020b2: 9300 str r3, [sp, #0] - 80020b4: b182 cbz r2, 80020d8 <__ieee754_pow+0xd8> - 80020b6: e05d b.n 8002174 <__ieee754_pow+0x174> - 80020b8: 2a00 cmp r2, #0 - 80020ba: d159 bne.n 8002170 <__ieee754_pow+0x170> - 80020bc: f1c3 0314 rsb r3, r3, #20 - 80020c0: fa46 f103 asr.w r1, r6, r3 - 80020c4: fa01 f303 lsl.w r3, r1, r3 - 80020c8: 42b3 cmp r3, r6 - 80020ca: f040 8479 bne.w 80029c0 <__ieee754_pow+0x9c0> - 80020ce: f001 0101 and.w r1, r1, #1 - 80020d2: f1c1 0302 rsb r3, r1, #2 - 80020d6: 9300 str r3, [sp, #0] - 80020d8: 4b58 ldr r3, [pc, #352] ; (800223c <__ieee754_pow+0x23c>) - 80020da: 429e cmp r6, r3 - 80020dc: d132 bne.n 8002144 <__ieee754_pow+0x144> - 80020de: 2f00 cmp r7, #0 - 80020e0: f280 846a bge.w 80029b8 <__ieee754_pow+0x9b8> - 80020e4: 4642 mov r2, r8 - 80020e6: 464b mov r3, r9 - 80020e8: 2000 movs r0, #0 - 80020ea: 4954 ldr r1, [pc, #336] ; (800223c <__ieee754_pow+0x23c>) - 80020ec: f7fe fb26 bl 800073c <__aeabi_ddiv> - 80020f0: e7a3 b.n 800203a <__ieee754_pow+0x3a> - 80020f2: 2300 movs r3, #0 - 80020f4: 9300 str r3, [sp, #0] - 80020f6: 2a00 cmp r2, #0 - 80020f8: d13c bne.n 8002174 <__ieee754_pow+0x174> - 80020fa: 4b4e ldr r3, [pc, #312] ; (8002234 <__ieee754_pow+0x234>) - 80020fc: 429e cmp r6, r3 - 80020fe: d1eb bne.n 80020d8 <__ieee754_pow+0xd8> - 8002100: f104 4340 add.w r3, r4, #3221225472 ; 0xc0000000 - 8002104: f503 1380 add.w r3, r3, #1048576 ; 0x100000 - 8002108: ea53 030a orrs.w r3, r3, sl - 800210c: f000 8448 beq.w 80029a0 <__ieee754_pow+0x9a0> - 8002110: 4b4b ldr r3, [pc, #300] ; (8002240 <__ieee754_pow+0x240>) - 8002112: 429c cmp r4, r3 - 8002114: dd0b ble.n 800212e <__ieee754_pow+0x12e> - 8002116: 2f00 cmp r7, #0 - 8002118: f2c0 8448 blt.w 80029ac <__ieee754_pow+0x9ac> - 800211c: e9dd bc02 ldrd fp, ip, [sp, #8] - 8002120: 4658 mov r0, fp - 8002122: 4661 mov r1, ip - 8002124: b013 add sp, #76 ; 0x4c - 8002126: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} - 800212a: 2302 movs r3, #2 - 800212c: e7e2 b.n 80020f4 <__ieee754_pow+0xf4> - 800212e: 2f00 cmp r7, #0 - 8002130: f04f 0b00 mov.w fp, #0 - 8002134: f04f 0c00 mov.w ip, #0 - 8002138: daf2 bge.n 8002120 <__ieee754_pow+0x120> - 800213a: e9dd b302 ldrd fp, r3, [sp, #8] - 800213e: f103 4c00 add.w ip, r3, #2147483648 ; 0x80000000 - 8002142: e7ed b.n 8002120 <__ieee754_pow+0x120> - 8002144: f1b7 4f80 cmp.w r7, #1073741824 ; 0x40000000 - 8002148: d106 bne.n 8002158 <__ieee754_pow+0x158> - 800214a: 4642 mov r2, r8 - 800214c: 464b mov r3, r9 - 800214e: 4640 mov r0, r8 - 8002150: 4649 mov r1, r9 - 8002152: f7fe f9c9 bl 80004e8 <__aeabi_dmul> - 8002156: e770 b.n 800203a <__ieee754_pow+0x3a> - 8002158: 4b3a ldr r3, [pc, #232] ; (8002244 <__ieee754_pow+0x244>) - 800215a: 429f cmp r7, r3 - 800215c: d10a bne.n 8002174 <__ieee754_pow+0x174> - 800215e: 2d00 cmp r5, #0 - 8002160: db08 blt.n 8002174 <__ieee754_pow+0x174> - 8002162: 4640 mov r0, r8 - 8002164: 4649 mov r1, r9 - 8002166: b013 add sp, #76 ; 0x4c - 8002168: e8bd 4ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} - 800216c: f000 bc5e b.w 8002a2c <__ieee754_sqrt> - 8002170: 2300 movs r3, #0 - 8002172: 9300 str r3, [sp, #0] - 8002174: 4640 mov r0, r8 - 8002176: 4649 mov r1, r9 - 8002178: f000 fd34 bl 8002be4 - 800217c: 4683 mov fp, r0 - 800217e: 468c mov ip, r1 - 8002180: f1ba 0f00 cmp.w sl, #0 - 8002184: d128 bne.n 80021d8 <__ieee754_pow+0x1d8> - 8002186: b124 cbz r4, 8002192 <__ieee754_pow+0x192> - 8002188: 4b2c ldr r3, [pc, #176] ; (800223c <__ieee754_pow+0x23c>) - 800218a: f025 4240 bic.w r2, r5, #3221225472 ; 0xc0000000 - 800218e: 429a cmp r2, r3 - 8002190: d122 bne.n 80021d8 <__ieee754_pow+0x1d8> - 8002192: 2f00 cmp r7, #0 - 8002194: da07 bge.n 80021a6 <__ieee754_pow+0x1a6> - 8002196: 465a mov r2, fp - 8002198: 4663 mov r3, ip - 800219a: 2000 movs r0, #0 - 800219c: 4927 ldr r1, [pc, #156] ; (800223c <__ieee754_pow+0x23c>) - 800219e: f7fe facd bl 800073c <__aeabi_ddiv> - 80021a2: 4683 mov fp, r0 - 80021a4: 468c mov ip, r1 - 80021a6: 2d00 cmp r5, #0 - 80021a8: daba bge.n 8002120 <__ieee754_pow+0x120> - 80021aa: 9b00 ldr r3, [sp, #0] - 80021ac: f104 4440 add.w r4, r4, #3221225472 ; 0xc0000000 - 80021b0: f504 1480 add.w r4, r4, #1048576 ; 0x100000 - 80021b4: 4323 orrs r3, r4 - 80021b6: d108 bne.n 80021ca <__ieee754_pow+0x1ca> - 80021b8: 465a mov r2, fp - 80021ba: 4663 mov r3, ip - 80021bc: 4658 mov r0, fp - 80021be: 4661 mov r1, ip - 80021c0: f7fd ffda bl 8000178 <__aeabi_dsub> - 80021c4: 4602 mov r2, r0 - 80021c6: 460b mov r3, r1 - 80021c8: e790 b.n 80020ec <__ieee754_pow+0xec> - 80021ca: 9b00 ldr r3, [sp, #0] - 80021cc: 2b01 cmp r3, #1 - 80021ce: d1a7 bne.n 8002120 <__ieee754_pow+0x120> - 80021d0: f10c 4300 add.w r3, ip, #2147483648 ; 0x80000000 - 80021d4: 469c mov ip, r3 - 80021d6: e7a3 b.n 8002120 <__ieee754_pow+0x120> - 80021d8: 0feb lsrs r3, r5, #31 - 80021da: 3b01 subs r3, #1 - 80021dc: 930c str r3, [sp, #48] ; 0x30 - 80021de: 9a0c ldr r2, [sp, #48] ; 0x30 - 80021e0: 9b00 ldr r3, [sp, #0] - 80021e2: 4313 orrs r3, r2 - 80021e4: d104 bne.n 80021f0 <__ieee754_pow+0x1f0> - 80021e6: 4642 mov r2, r8 - 80021e8: 464b mov r3, r9 - 80021ea: 4640 mov r0, r8 - 80021ec: 4649 mov r1, r9 - 80021ee: e7e7 b.n 80021c0 <__ieee754_pow+0x1c0> - 80021f0: 4b15 ldr r3, [pc, #84] ; (8002248 <__ieee754_pow+0x248>) - 80021f2: 429e cmp r6, r3 - 80021f4: f340 80f6 ble.w 80023e4 <__ieee754_pow+0x3e4> - 80021f8: f103 7304 add.w r3, r3, #34603008 ; 0x2100000 - 80021fc: 429e cmp r6, r3 - 80021fe: 4b10 ldr r3, [pc, #64] ; (8002240 <__ieee754_pow+0x240>) - 8002200: dd09 ble.n 8002216 <__ieee754_pow+0x216> - 8002202: 429c cmp r4, r3 - 8002204: dc0c bgt.n 8002220 <__ieee754_pow+0x220> - 8002206: 2f00 cmp r7, #0 - 8002208: da0c bge.n 8002224 <__ieee754_pow+0x224> - 800220a: 2000 movs r0, #0 - 800220c: b013 add sp, #76 ; 0x4c - 800220e: e8bd 4ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} - 8002212: f000 bce2 b.w 8002bda <__math_oflow> - 8002216: 429c cmp r4, r3 - 8002218: dbf5 blt.n 8002206 <__ieee754_pow+0x206> - 800221a: 4b08 ldr r3, [pc, #32] ; (800223c <__ieee754_pow+0x23c>) - 800221c: 429c cmp r4, r3 - 800221e: dd15 ble.n 800224c <__ieee754_pow+0x24c> - 8002220: 2f00 cmp r7, #0 - 8002222: dcf2 bgt.n 800220a <__ieee754_pow+0x20a> - 8002224: 2000 movs r0, #0 - 8002226: b013 add sp, #76 ; 0x4c - 8002228: e8bd 4ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} - 800222c: f000 bcd0 b.w 8002bd0 <__math_uflow> - 8002230: fff00000 .word 0xfff00000 - 8002234: 7ff00000 .word 0x7ff00000 - 8002238: 433fffff .word 0x433fffff - 800223c: 3ff00000 .word 0x3ff00000 - 8002240: 3fefffff .word 0x3fefffff - 8002244: 3fe00000 .word 0x3fe00000 - 8002248: 41e00000 .word 0x41e00000 - 800224c: 4661 mov r1, ip - 800224e: 2200 movs r2, #0 - 8002250: 4658 mov r0, fp - 8002252: 4b5f ldr r3, [pc, #380] ; (80023d0 <__ieee754_pow+0x3d0>) - 8002254: f7fd ff90 bl 8000178 <__aeabi_dsub> - 8002258: a355 add r3, pc, #340 ; (adr r3, 80023b0 <__ieee754_pow+0x3b0>) - 800225a: e9d3 2300 ldrd r2, r3, [r3] - 800225e: 4604 mov r4, r0 - 8002260: 460d mov r5, r1 - 8002262: f7fe f941 bl 80004e8 <__aeabi_dmul> - 8002266: a354 add r3, pc, #336 ; (adr r3, 80023b8 <__ieee754_pow+0x3b8>) - 8002268: e9d3 2300 ldrd r2, r3, [r3] - 800226c: 4606 mov r6, r0 - 800226e: 460f mov r7, r1 - 8002270: 4620 mov r0, r4 - 8002272: 4629 mov r1, r5 - 8002274: f7fe f938 bl 80004e8 <__aeabi_dmul> - 8002278: 2200 movs r2, #0 - 800227a: 4682 mov sl, r0 - 800227c: 468b mov fp, r1 - 800227e: 4620 mov r0, r4 - 8002280: 4629 mov r1, r5 - 8002282: 4b54 ldr r3, [pc, #336] ; (80023d4 <__ieee754_pow+0x3d4>) - 8002284: f7fe f930 bl 80004e8 <__aeabi_dmul> - 8002288: 4602 mov r2, r0 - 800228a: 460b mov r3, r1 - 800228c: a14c add r1, pc, #304 ; (adr r1, 80023c0 <__ieee754_pow+0x3c0>) - 800228e: e9d1 0100 ldrd r0, r1, [r1] - 8002292: f7fd ff71 bl 8000178 <__aeabi_dsub> - 8002296: 4622 mov r2, r4 - 8002298: 462b mov r3, r5 - 800229a: f7fe f925 bl 80004e8 <__aeabi_dmul> - 800229e: 4602 mov r2, r0 - 80022a0: 460b mov r3, r1 - 80022a2: 2000 movs r0, #0 - 80022a4: 494c ldr r1, [pc, #304] ; (80023d8 <__ieee754_pow+0x3d8>) - 80022a6: f7fd ff67 bl 8000178 <__aeabi_dsub> - 80022aa: 4622 mov r2, r4 - 80022ac: 462b mov r3, r5 - 80022ae: 4680 mov r8, r0 - 80022b0: 4689 mov r9, r1 - 80022b2: 4620 mov r0, r4 - 80022b4: 4629 mov r1, r5 - 80022b6: f7fe f917 bl 80004e8 <__aeabi_dmul> - 80022ba: 4602 mov r2, r0 - 80022bc: 460b mov r3, r1 - 80022be: 4640 mov r0, r8 - 80022c0: 4649 mov r1, r9 - 80022c2: f7fe f911 bl 80004e8 <__aeabi_dmul> - 80022c6: a340 add r3, pc, #256 ; (adr r3, 80023c8 <__ieee754_pow+0x3c8>) - 80022c8: e9d3 2300 ldrd r2, r3, [r3] - 80022cc: f7fe f90c bl 80004e8 <__aeabi_dmul> - 80022d0: 4602 mov r2, r0 - 80022d2: 460b mov r3, r1 - 80022d4: 4650 mov r0, sl - 80022d6: 4659 mov r1, fp - 80022d8: f7fd ff4e bl 8000178 <__aeabi_dsub> - 80022dc: f04f 0a00 mov.w sl, #0 - 80022e0: 4602 mov r2, r0 - 80022e2: 460b mov r3, r1 - 80022e4: 4604 mov r4, r0 - 80022e6: 460d mov r5, r1 - 80022e8: 4630 mov r0, r6 - 80022ea: 4639 mov r1, r7 - 80022ec: f7fd ff46 bl 800017c <__adddf3> - 80022f0: 4632 mov r2, r6 - 80022f2: 463b mov r3, r7 - 80022f4: 4650 mov r0, sl - 80022f6: 468b mov fp, r1 - 80022f8: f7fd ff3e bl 8000178 <__aeabi_dsub> - 80022fc: 4602 mov r2, r0 - 80022fe: 460b mov r3, r1 - 8002300: 4620 mov r0, r4 - 8002302: 4629 mov r1, r5 - 8002304: f7fd ff38 bl 8000178 <__aeabi_dsub> - 8002308: e9dd 6702 ldrd r6, r7, [sp, #8] - 800230c: 9b00 ldr r3, [sp, #0] - 800230e: 9a0c ldr r2, [sp, #48] ; 0x30 - 8002310: 3b01 subs r3, #1 - 8002312: 4313 orrs r3, r2 - 8002314: f04f 0600 mov.w r6, #0 - 8002318: f04f 0200 mov.w r2, #0 - 800231c: bf0c ite eq - 800231e: 4b2f ldreq r3, [pc, #188] ; (80023dc <__ieee754_pow+0x3dc>) - 8002320: 4b2b ldrne r3, [pc, #172] ; (80023d0 <__ieee754_pow+0x3d0>) - 8002322: 4604 mov r4, r0 - 8002324: 460d mov r5, r1 - 8002326: e9dd 0102 ldrd r0, r1, [sp, #8] - 800232a: e9cd 2300 strd r2, r3, [sp] - 800232e: 4632 mov r2, r6 - 8002330: 463b mov r3, r7 - 8002332: f7fd ff21 bl 8000178 <__aeabi_dsub> - 8002336: 4652 mov r2, sl - 8002338: 465b mov r3, fp - 800233a: f7fe f8d5 bl 80004e8 <__aeabi_dmul> - 800233e: e9dd 2302 ldrd r2, r3, [sp, #8] - 8002342: 4680 mov r8, r0 - 8002344: 4689 mov r9, r1 - 8002346: 4620 mov r0, r4 - 8002348: 4629 mov r1, r5 - 800234a: f7fe f8cd bl 80004e8 <__aeabi_dmul> - 800234e: 4602 mov r2, r0 - 8002350: 460b mov r3, r1 - 8002352: 4640 mov r0, r8 - 8002354: 4649 mov r1, r9 - 8002356: f7fd ff11 bl 800017c <__adddf3> - 800235a: 4632 mov r2, r6 - 800235c: 463b mov r3, r7 - 800235e: 4680 mov r8, r0 - 8002360: 4689 mov r9, r1 - 8002362: 4650 mov r0, sl - 8002364: 4659 mov r1, fp - 8002366: f7fe f8bf bl 80004e8 <__aeabi_dmul> - 800236a: 4604 mov r4, r0 - 800236c: 460d mov r5, r1 - 800236e: 460b mov r3, r1 - 8002370: 4602 mov r2, r0 - 8002372: 4649 mov r1, r9 - 8002374: 4640 mov r0, r8 - 8002376: e9cd 4502 strd r4, r5, [sp, #8] - 800237a: f7fd feff bl 800017c <__adddf3> - 800237e: 4b18 ldr r3, [pc, #96] ; (80023e0 <__ieee754_pow+0x3e0>) - 8002380: 4682 mov sl, r0 - 8002382: 4299 cmp r1, r3 - 8002384: 460f mov r7, r1 - 8002386: 460e mov r6, r1 - 8002388: f340 82e5 ble.w 8002956 <__ieee754_pow+0x956> - 800238c: f101 433f add.w r3, r1, #3204448256 ; 0xbf000000 - 8002390: f503 03e0 add.w r3, r3, #7340032 ; 0x700000 - 8002394: 4303 orrs r3, r0 - 8002396: f000 81df beq.w 8002758 <__ieee754_pow+0x758> - 800239a: e9dd 0100 ldrd r0, r1, [sp] - 800239e: 2200 movs r2, #0 - 80023a0: 2300 movs r3, #0 - 80023a2: f7fe fb13 bl 80009cc <__aeabi_dcmplt> - 80023a6: 3800 subs r0, #0 - 80023a8: bf18 it ne - 80023aa: 2001 movne r0, #1 - 80023ac: e72e b.n 800220c <__ieee754_pow+0x20c> - 80023ae: bf00 nop - 80023b0: 60000000 .word 0x60000000 - 80023b4: 3ff71547 .word 0x3ff71547 - 80023b8: f85ddf44 .word 0xf85ddf44 - 80023bc: 3e54ae0b .word 0x3e54ae0b - 80023c0: 55555555 .word 0x55555555 - 80023c4: 3fd55555 .word 0x3fd55555 - 80023c8: 652b82fe .word 0x652b82fe - 80023cc: 3ff71547 .word 0x3ff71547 - 80023d0: 3ff00000 .word 0x3ff00000 - 80023d4: 3fd00000 .word 0x3fd00000 - 80023d8: 3fe00000 .word 0x3fe00000 - 80023dc: bff00000 .word 0xbff00000 - 80023e0: 408fffff .word 0x408fffff - 80023e4: 4bd2 ldr r3, [pc, #840] ; (8002730 <__ieee754_pow+0x730>) - 80023e6: 2200 movs r2, #0 - 80023e8: 402b ands r3, r5 - 80023ea: b943 cbnz r3, 80023fe <__ieee754_pow+0x3fe> - 80023ec: 4658 mov r0, fp - 80023ee: 4661 mov r1, ip - 80023f0: 4bd0 ldr r3, [pc, #832] ; (8002734 <__ieee754_pow+0x734>) - 80023f2: f7fe f879 bl 80004e8 <__aeabi_dmul> - 80023f6: f06f 0234 mvn.w r2, #52 ; 0x34 - 80023fa: 4683 mov fp, r0 - 80023fc: 460c mov r4, r1 - 80023fe: 1523 asrs r3, r4, #20 - 8002400: f2a3 33ff subw r3, r3, #1023 ; 0x3ff - 8002404: 4413 add r3, r2 - 8002406: 930b str r3, [sp, #44] ; 0x2c - 8002408: 4bcb ldr r3, [pc, #812] ; (8002738 <__ieee754_pow+0x738>) - 800240a: f3c4 0413 ubfx r4, r4, #0, #20 - 800240e: f044 557f orr.w r5, r4, #1069547520 ; 0x3fc00000 - 8002412: 429c cmp r4, r3 - 8002414: f445 1540 orr.w r5, r5, #3145728 ; 0x300000 - 8002418: dd08 ble.n 800242c <__ieee754_pow+0x42c> - 800241a: 4bc8 ldr r3, [pc, #800] ; (800273c <__ieee754_pow+0x73c>) - 800241c: 429c cmp r4, r3 - 800241e: f340 8199 ble.w 8002754 <__ieee754_pow+0x754> - 8002422: 9b0b ldr r3, [sp, #44] ; 0x2c - 8002424: f5a5 1580 sub.w r5, r5, #1048576 ; 0x100000 - 8002428: 3301 adds r3, #1 - 800242a: 930b str r3, [sp, #44] ; 0x2c - 800242c: 2600 movs r6, #0 - 800242e: 00f3 lsls r3, r6, #3 - 8002430: 930d str r3, [sp, #52] ; 0x34 - 8002432: 4bc3 ldr r3, [pc, #780] ; (8002740 <__ieee754_pow+0x740>) - 8002434: 4658 mov r0, fp - 8002436: eb03 03c6 add.w r3, r3, r6, lsl #3 - 800243a: e9d3 3400 ldrd r3, r4, [r3] - 800243e: 4629 mov r1, r5 - 8002440: 461a mov r2, r3 - 8002442: e9cd 3408 strd r3, r4, [sp, #32] - 8002446: 4623 mov r3, r4 - 8002448: f7fd fe96 bl 8000178 <__aeabi_dsub> - 800244c: 46da mov sl, fp - 800244e: 462b mov r3, r5 - 8002450: 4652 mov r2, sl - 8002452: e9cd 010e strd r0, r1, [sp, #56] ; 0x38 - 8002456: e9dd 0108 ldrd r0, r1, [sp, #32] - 800245a: f7fd fe8f bl 800017c <__adddf3> - 800245e: 4602 mov r2, r0 - 8002460: 460b mov r3, r1 - 8002462: 2000 movs r0, #0 - 8002464: 49b7 ldr r1, [pc, #732] ; (8002744 <__ieee754_pow+0x744>) - 8002466: f7fe f969 bl 800073c <__aeabi_ddiv> - 800246a: 4602 mov r2, r0 - 800246c: 460b mov r3, r1 - 800246e: e9cd 0110 strd r0, r1, [sp, #64] ; 0x40 - 8002472: e9dd 010e ldrd r0, r1, [sp, #56] ; 0x38 - 8002476: f7fe f837 bl 80004e8 <__aeabi_dmul> - 800247a: e9cd 0106 strd r0, r1, [sp, #24] - 800247e: e9dd 3406 ldrd r3, r4, [sp, #24] - 8002482: e9cd 3404 strd r3, r4, [sp, #16] - 8002486: 2300 movs r3, #0 - 8002488: 2200 movs r2, #0 - 800248a: 46ab mov fp, r5 - 800248c: 106d asrs r5, r5, #1 - 800248e: f045 5500 orr.w r5, r5, #536870912 ; 0x20000000 - 8002492: 9304 str r3, [sp, #16] - 8002494: f505 2500 add.w r5, r5, #524288 ; 0x80000 - 8002498: e9dd 8904 ldrd r8, r9, [sp, #16] - 800249c: eb05 4386 add.w r3, r5, r6, lsl #18 - 80024a0: 4640 mov r0, r8 - 80024a2: 4649 mov r1, r9 - 80024a4: 4614 mov r4, r2 - 80024a6: 461d mov r5, r3 - 80024a8: f7fe f81e bl 80004e8 <__aeabi_dmul> - 80024ac: 4602 mov r2, r0 - 80024ae: 460b mov r3, r1 - 80024b0: e9dd 010e ldrd r0, r1, [sp, #56] ; 0x38 - 80024b4: f7fd fe60 bl 8000178 <__aeabi_dsub> - 80024b8: e9dd 2308 ldrd r2, r3, [sp, #32] - 80024bc: 4606 mov r6, r0 - 80024be: 460f mov r7, r1 - 80024c0: 4620 mov r0, r4 - 80024c2: 4629 mov r1, r5 - 80024c4: f7fd fe58 bl 8000178 <__aeabi_dsub> - 80024c8: 4602 mov r2, r0 - 80024ca: 460b mov r3, r1 - 80024cc: 4650 mov r0, sl - 80024ce: 4659 mov r1, fp - 80024d0: f7fd fe52 bl 8000178 <__aeabi_dsub> - 80024d4: 4642 mov r2, r8 - 80024d6: 464b mov r3, r9 - 80024d8: f7fe f806 bl 80004e8 <__aeabi_dmul> - 80024dc: 4602 mov r2, r0 - 80024de: 460b mov r3, r1 - 80024e0: 4630 mov r0, r6 - 80024e2: 4639 mov r1, r7 - 80024e4: f7fd fe48 bl 8000178 <__aeabi_dsub> - 80024e8: e9dd 2310 ldrd r2, r3, [sp, #64] ; 0x40 - 80024ec: f7fd fffc bl 80004e8 <__aeabi_dmul> - 80024f0: e9dd 2306 ldrd r2, r3, [sp, #24] - 80024f4: e9cd 0108 strd r0, r1, [sp, #32] - 80024f8: 4610 mov r0, r2 - 80024fa: 4619 mov r1, r3 - 80024fc: f7fd fff4 bl 80004e8 <__aeabi_dmul> - 8002500: a379 add r3, pc, #484 ; (adr r3, 80026e8 <__ieee754_pow+0x6e8>) - 8002502: e9d3 2300 ldrd r2, r3, [r3] - 8002506: 4604 mov r4, r0 - 8002508: 460d mov r5, r1 - 800250a: f7fd ffed bl 80004e8 <__aeabi_dmul> - 800250e: a378 add r3, pc, #480 ; (adr r3, 80026f0 <__ieee754_pow+0x6f0>) - 8002510: e9d3 2300 ldrd r2, r3, [r3] - 8002514: f7fd fe32 bl 800017c <__adddf3> - 8002518: 4622 mov r2, r4 - 800251a: 462b mov r3, r5 - 800251c: f7fd ffe4 bl 80004e8 <__aeabi_dmul> - 8002520: a375 add r3, pc, #468 ; (adr r3, 80026f8 <__ieee754_pow+0x6f8>) - 8002522: e9d3 2300 ldrd r2, r3, [r3] - 8002526: f7fd fe29 bl 800017c <__adddf3> - 800252a: 4622 mov r2, r4 - 800252c: 462b mov r3, r5 - 800252e: f7fd ffdb bl 80004e8 <__aeabi_dmul> - 8002532: a373 add r3, pc, #460 ; (adr r3, 8002700 <__ieee754_pow+0x700>) - 8002534: e9d3 2300 ldrd r2, r3, [r3] - 8002538: f7fd fe20 bl 800017c <__adddf3> - 800253c: 4622 mov r2, r4 - 800253e: 462b mov r3, r5 - 8002540: f7fd ffd2 bl 80004e8 <__aeabi_dmul> - 8002544: a370 add r3, pc, #448 ; (adr r3, 8002708 <__ieee754_pow+0x708>) - 8002546: e9d3 2300 ldrd r2, r3, [r3] - 800254a: f7fd fe17 bl 800017c <__adddf3> - 800254e: 4622 mov r2, r4 - 8002550: 462b mov r3, r5 - 8002552: f7fd ffc9 bl 80004e8 <__aeabi_dmul> - 8002556: a36e add r3, pc, #440 ; (adr r3, 8002710 <__ieee754_pow+0x710>) - 8002558: e9d3 2300 ldrd r2, r3, [r3] - 800255c: f7fd fe0e bl 800017c <__adddf3> - 8002560: 4622 mov r2, r4 - 8002562: 4606 mov r6, r0 - 8002564: 460f mov r7, r1 - 8002566: 462b mov r3, r5 - 8002568: 4620 mov r0, r4 - 800256a: 4629 mov r1, r5 - 800256c: f7fd ffbc bl 80004e8 <__aeabi_dmul> - 8002570: 4602 mov r2, r0 - 8002572: 460b mov r3, r1 - 8002574: 4630 mov r0, r6 - 8002576: 4639 mov r1, r7 - 8002578: f7fd ffb6 bl 80004e8 <__aeabi_dmul> - 800257c: 4604 mov r4, r0 - 800257e: 460d mov r5, r1 - 8002580: e9dd 0106 ldrd r0, r1, [sp, #24] - 8002584: 4642 mov r2, r8 - 8002586: 464b mov r3, r9 - 8002588: f7fd fdf8 bl 800017c <__adddf3> - 800258c: e9dd 2308 ldrd r2, r3, [sp, #32] - 8002590: f7fd ffaa bl 80004e8 <__aeabi_dmul> - 8002594: 4622 mov r2, r4 - 8002596: 462b mov r3, r5 - 8002598: f7fd fdf0 bl 800017c <__adddf3> - 800259c: 4642 mov r2, r8 - 800259e: 4606 mov r6, r0 - 80025a0: 460f mov r7, r1 - 80025a2: 464b mov r3, r9 - 80025a4: 4640 mov r0, r8 - 80025a6: 4649 mov r1, r9 - 80025a8: f7fd ff9e bl 80004e8 <__aeabi_dmul> - 80025ac: 2200 movs r2, #0 - 80025ae: 4b66 ldr r3, [pc, #408] ; (8002748 <__ieee754_pow+0x748>) - 80025b0: 4682 mov sl, r0 - 80025b2: 468b mov fp, r1 - 80025b4: f7fd fde2 bl 800017c <__adddf3> - 80025b8: 4632 mov r2, r6 - 80025ba: 463b mov r3, r7 - 80025bc: f7fd fdde bl 800017c <__adddf3> - 80025c0: 2400 movs r4, #0 - 80025c2: 460d mov r5, r1 - 80025c4: 4622 mov r2, r4 - 80025c6: 460b mov r3, r1 - 80025c8: 4640 mov r0, r8 - 80025ca: 4649 mov r1, r9 - 80025cc: f7fd ff8c bl 80004e8 <__aeabi_dmul> - 80025d0: 2200 movs r2, #0 - 80025d2: 4680 mov r8, r0 - 80025d4: 4689 mov r9, r1 - 80025d6: 4620 mov r0, r4 - 80025d8: 4629 mov r1, r5 - 80025da: 4b5b ldr r3, [pc, #364] ; (8002748 <__ieee754_pow+0x748>) - 80025dc: f7fd fdcc bl 8000178 <__aeabi_dsub> - 80025e0: 4652 mov r2, sl - 80025e2: 465b mov r3, fp - 80025e4: f7fd fdc8 bl 8000178 <__aeabi_dsub> - 80025e8: 4602 mov r2, r0 - 80025ea: 460b mov r3, r1 - 80025ec: 4630 mov r0, r6 - 80025ee: 4639 mov r1, r7 - 80025f0: f7fd fdc2 bl 8000178 <__aeabi_dsub> - 80025f4: e9dd 2306 ldrd r2, r3, [sp, #24] - 80025f8: f7fd ff76 bl 80004e8 <__aeabi_dmul> - 80025fc: 4622 mov r2, r4 - 80025fe: 4606 mov r6, r0 - 8002600: 460f mov r7, r1 - 8002602: e9dd 0108 ldrd r0, r1, [sp, #32] - 8002606: 462b mov r3, r5 - 8002608: f7fd ff6e bl 80004e8 <__aeabi_dmul> - 800260c: 4602 mov r2, r0 - 800260e: 460b mov r3, r1 - 8002610: 4630 mov r0, r6 - 8002612: 4639 mov r1, r7 - 8002614: f7fd fdb2 bl 800017c <__adddf3> - 8002618: 2400 movs r4, #0 - 800261a: 4606 mov r6, r0 - 800261c: 460f mov r7, r1 - 800261e: 4602 mov r2, r0 - 8002620: 460b mov r3, r1 - 8002622: 4640 mov r0, r8 - 8002624: 4649 mov r1, r9 - 8002626: f7fd fda9 bl 800017c <__adddf3> - 800262a: a33b add r3, pc, #236 ; (adr r3, 8002718 <__ieee754_pow+0x718>) - 800262c: e9d3 2300 ldrd r2, r3, [r3] - 8002630: 4620 mov r0, r4 - 8002632: 460d mov r5, r1 - 8002634: f7fd ff58 bl 80004e8 <__aeabi_dmul> - 8002638: 4642 mov r2, r8 - 800263a: 464b mov r3, r9 - 800263c: e9cd 0106 strd r0, r1, [sp, #24] - 8002640: 4620 mov r0, r4 - 8002642: 4629 mov r1, r5 - 8002644: f7fd fd98 bl 8000178 <__aeabi_dsub> - 8002648: 4602 mov r2, r0 - 800264a: 460b mov r3, r1 - 800264c: 4630 mov r0, r6 - 800264e: 4639 mov r1, r7 - 8002650: f7fd fd92 bl 8000178 <__aeabi_dsub> - 8002654: a332 add r3, pc, #200 ; (adr r3, 8002720 <__ieee754_pow+0x720>) - 8002656: e9d3 2300 ldrd r2, r3, [r3] - 800265a: f7fd ff45 bl 80004e8 <__aeabi_dmul> - 800265e: a332 add r3, pc, #200 ; (adr r3, 8002728 <__ieee754_pow+0x728>) - 8002660: e9d3 2300 ldrd r2, r3, [r3] - 8002664: 4606 mov r6, r0 - 8002666: 460f mov r7, r1 - 8002668: 4620 mov r0, r4 - 800266a: 4629 mov r1, r5 - 800266c: f7fd ff3c bl 80004e8 <__aeabi_dmul> - 8002670: 4602 mov r2, r0 - 8002672: 460b mov r3, r1 - 8002674: 4630 mov r0, r6 - 8002676: 4639 mov r1, r7 - 8002678: f7fd fd80 bl 800017c <__adddf3> - 800267c: 9a0d ldr r2, [sp, #52] ; 0x34 - 800267e: 4b33 ldr r3, [pc, #204] ; (800274c <__ieee754_pow+0x74c>) - 8002680: f04f 0a00 mov.w sl, #0 - 8002684: 4413 add r3, r2 - 8002686: e9d3 2300 ldrd r2, r3, [r3] - 800268a: f7fd fd77 bl 800017c <__adddf3> - 800268e: 4680 mov r8, r0 - 8002690: 980b ldr r0, [sp, #44] ; 0x2c - 8002692: 4689 mov r9, r1 - 8002694: f7fd febe bl 8000414 <__aeabi_i2d> - 8002698: 4604 mov r4, r0 - 800269a: 460d mov r5, r1 - 800269c: 9a0d ldr r2, [sp, #52] ; 0x34 - 800269e: 4b2c ldr r3, [pc, #176] ; (8002750 <__ieee754_pow+0x750>) - 80026a0: 4413 add r3, r2 - 80026a2: e9d3 6700 ldrd r6, r7, [r3] - 80026a6: 4642 mov r2, r8 - 80026a8: e9dd 0106 ldrd r0, r1, [sp, #24] - 80026ac: 464b mov r3, r9 - 80026ae: f7fd fd65 bl 800017c <__adddf3> - 80026b2: 4632 mov r2, r6 - 80026b4: 463b mov r3, r7 - 80026b6: f7fd fd61 bl 800017c <__adddf3> - 80026ba: 4622 mov r2, r4 - 80026bc: 462b mov r3, r5 - 80026be: f7fd fd5d bl 800017c <__adddf3> - 80026c2: 4622 mov r2, r4 - 80026c4: 462b mov r3, r5 - 80026c6: 4650 mov r0, sl - 80026c8: 468b mov fp, r1 - 80026ca: f7fd fd55 bl 8000178 <__aeabi_dsub> - 80026ce: 4632 mov r2, r6 - 80026d0: 463b mov r3, r7 - 80026d2: f7fd fd51 bl 8000178 <__aeabi_dsub> - 80026d6: e9dd 2306 ldrd r2, r3, [sp, #24] - 80026da: f7fd fd4d bl 8000178 <__aeabi_dsub> - 80026de: 4602 mov r2, r0 - 80026e0: 460b mov r3, r1 - 80026e2: 4640 mov r0, r8 - 80026e4: 4649 mov r1, r9 - 80026e6: e60d b.n 8002304 <__ieee754_pow+0x304> - 80026e8: 4a454eef .word 0x4a454eef - 80026ec: 3fca7e28 .word 0x3fca7e28 - 80026f0: 93c9db65 .word 0x93c9db65 - 80026f4: 3fcd864a .word 0x3fcd864a - 80026f8: a91d4101 .word 0xa91d4101 - 80026fc: 3fd17460 .word 0x3fd17460 - 8002700: 518f264d .word 0x518f264d - 8002704: 3fd55555 .word 0x3fd55555 - 8002708: db6fabff .word 0xdb6fabff - 800270c: 3fdb6db6 .word 0x3fdb6db6 - 8002710: 33333303 .word 0x33333303 - 8002714: 3fe33333 .word 0x3fe33333 - 8002718: e0000000 .word 0xe0000000 - 800271c: 3feec709 .word 0x3feec709 - 8002720: dc3a03fd .word 0xdc3a03fd - 8002724: 3feec709 .word 0x3feec709 - 8002728: 145b01f5 .word 0x145b01f5 - 800272c: be3e2fe0 .word 0xbe3e2fe0 - 8002730: 7ff00000 .word 0x7ff00000 - 8002734: 43400000 .word 0x43400000 - 8002738: 0003988e .word 0x0003988e - 800273c: 000bb679 .word 0x000bb679 - 8002740: 08002d28 .word 0x08002d28 - 8002744: 3ff00000 .word 0x3ff00000 - 8002748: 40080000 .word 0x40080000 - 800274c: 08002d48 .word 0x08002d48 - 8002750: 08002d38 .word 0x08002d38 - 8002754: 2601 movs r6, #1 - 8002756: e66a b.n 800242e <__ieee754_pow+0x42e> - 8002758: a39d add r3, pc, #628 ; (adr r3, 80029d0 <__ieee754_pow+0x9d0>) - 800275a: e9d3 2300 ldrd r2, r3, [r3] +0800262c <__errno>: + 800262c: 4b01 ldr r3, [pc, #4] ; (8002634 <__errno+0x8>) + 800262e: 6818 ldr r0, [r3, #0] + 8002630: 4770 bx lr + 8002632: bf00 nop + 8002634: 20000004 .word 0x20000004 + +08002638 <__libc_init_array>: + 8002638: b570 push {r4, r5, r6, lr} + 800263a: 2600 movs r6, #0 + 800263c: 4d0c ldr r5, [pc, #48] ; (8002670 <__libc_init_array+0x38>) + 800263e: 4c0d ldr r4, [pc, #52] ; (8002674 <__libc_init_array+0x3c>) + 8002640: 1b64 subs r4, r4, r5 + 8002642: 10a4 asrs r4, r4, #2 + 8002644: 42a6 cmp r6, r4 + 8002646: d109 bne.n 800265c <__libc_init_array+0x24> + 8002648: f000 ff58 bl 80034fc <_init> + 800264c: 2600 movs r6, #0 + 800264e: 4d0a ldr r5, [pc, #40] ; (8002678 <__libc_init_array+0x40>) + 8002650: 4c0a ldr r4, [pc, #40] ; (800267c <__libc_init_array+0x44>) + 8002652: 1b64 subs r4, r4, r5 + 8002654: 10a4 asrs r4, r4, #2 + 8002656: 42a6 cmp r6, r4 + 8002658: d105 bne.n 8002666 <__libc_init_array+0x2e> + 800265a: bd70 pop {r4, r5, r6, pc} + 800265c: f855 3b04 ldr.w r3, [r5], #4 + 8002660: 4798 blx r3 + 8002662: 3601 adds r6, #1 + 8002664: e7ee b.n 8002644 <__libc_init_array+0xc> + 8002666: f855 3b04 ldr.w r3, [r5], #4 + 800266a: 4798 blx r3 + 800266c: 3601 adds r6, #1 + 800266e: e7f2 b.n 8002656 <__libc_init_array+0x1e> + 8002670: 08003578 .word 0x08003578 + 8002674: 08003578 .word 0x08003578 + 8002678: 08003578 .word 0x08003578 + 800267c: 0800357c .word 0x0800357c + +08002680 <__itoa>: + 8002680: 1e93 subs r3, r2, #2 + 8002682: 2b22 cmp r3, #34 ; 0x22 + 8002684: b510 push {r4, lr} + 8002686: 460c mov r4, r1 + 8002688: d904 bls.n 8002694 <__itoa+0x14> + 800268a: 2300 movs r3, #0 + 800268c: 461c mov r4, r3 + 800268e: 700b strb r3, [r1, #0] + 8002690: 4620 mov r0, r4 + 8002692: bd10 pop {r4, pc} + 8002694: 2a0a cmp r2, #10 + 8002696: d109 bne.n 80026ac <__itoa+0x2c> + 8002698: 2800 cmp r0, #0 + 800269a: da07 bge.n 80026ac <__itoa+0x2c> + 800269c: 232d movs r3, #45 ; 0x2d + 800269e: 700b strb r3, [r1, #0] + 80026a0: 2101 movs r1, #1 + 80026a2: 4240 negs r0, r0 + 80026a4: 4421 add r1, r4 + 80026a6: f000 f805 bl 80026b4 <__utoa> + 80026aa: e7f1 b.n 8002690 <__itoa+0x10> + 80026ac: 2100 movs r1, #0 + 80026ae: e7f9 b.n 80026a4 <__itoa+0x24> + +080026b0 : + 80026b0: f7ff bfe6 b.w 8002680 <__itoa> + +080026b4 <__utoa>: + 80026b4: b5f0 push {r4, r5, r6, r7, lr} + 80026b6: b08b sub sp, #44 ; 0x2c + 80026b8: 4605 mov r5, r0 + 80026ba: 460b mov r3, r1 + 80026bc: 466e mov r6, sp + 80026be: 4c1d ldr r4, [pc, #116] ; (8002734 <__utoa+0x80>) + 80026c0: f104 0c20 add.w ip, r4, #32 + 80026c4: 4637 mov r7, r6 + 80026c6: 6820 ldr r0, [r4, #0] + 80026c8: 6861 ldr r1, [r4, #4] + 80026ca: 3408 adds r4, #8 + 80026cc: c703 stmia r7!, {r0, r1} + 80026ce: 4564 cmp r4, ip + 80026d0: 463e mov r6, r7 + 80026d2: d1f7 bne.n 80026c4 <__utoa+0x10> + 80026d4: 7921 ldrb r1, [r4, #4] + 80026d6: 6820 ldr r0, [r4, #0] + 80026d8: 7139 strb r1, [r7, #4] + 80026da: 1e91 subs r1, r2, #2 + 80026dc: 2922 cmp r1, #34 ; 0x22 + 80026de: 6038 str r0, [r7, #0] + 80026e0: f04f 0100 mov.w r1, #0 + 80026e4: d904 bls.n 80026f0 <__utoa+0x3c> + 80026e6: 7019 strb r1, [r3, #0] + 80026e8: 460b mov r3, r1 + 80026ea: 4618 mov r0, r3 + 80026ec: b00b add sp, #44 ; 0x2c + 80026ee: bdf0 pop {r4, r5, r6, r7, pc} + 80026f0: 1e58 subs r0, r3, #1 + 80026f2: 4684 mov ip, r0 + 80026f4: fbb5 f7f2 udiv r7, r5, r2 + 80026f8: fb02 5617 mls r6, r2, r7, r5 + 80026fc: 3628 adds r6, #40 ; 0x28 + 80026fe: 446e add r6, sp + 8002700: f816 6c28 ldrb.w r6, [r6, #-40] + 8002704: 460c mov r4, r1 + 8002706: f80c 6f01 strb.w r6, [ip, #1]! + 800270a: 462e mov r6, r5 + 800270c: 42b2 cmp r2, r6 + 800270e: 463d mov r5, r7 + 8002710: f101 0101 add.w r1, r1, #1 + 8002714: d9ee bls.n 80026f4 <__utoa+0x40> + 8002716: 2200 movs r2, #0 + 8002718: 545a strb r2, [r3, r1] + 800271a: 1919 adds r1, r3, r4 + 800271c: 1aa5 subs r5, r4, r2 + 800271e: 42aa cmp r2, r5 + 8002720: dae3 bge.n 80026ea <__utoa+0x36> + 8002722: f810 5f01 ldrb.w r5, [r0, #1]! + 8002726: 780e ldrb r6, [r1, #0] + 8002728: 3201 adds r2, #1 + 800272a: 7006 strb r6, [r0, #0] + 800272c: f801 5901 strb.w r5, [r1], #-1 + 8002730: e7f4 b.n 800271c <__utoa+0x68> + 8002732: bf00 nop + 8002734: 08003523 .word 0x08003523 + +08002738 : + 8002738: e92d 43f8 stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr} + 800273c: 4614 mov r4, r2 + 800273e: 461d mov r5, r3 + 8002740: 4680 mov r8, r0 + 8002742: 4689 mov r9, r1 + 8002744: f000 f860 bl 8002808 <__ieee754_pow> + 8002748: 4622 mov r2, r4 + 800274a: 4606 mov r6, r0 + 800274c: 460f mov r7, r1 + 800274e: 462b mov r3, r5 + 8002750: 4620 mov r0, r4 + 8002752: 4629 mov r1, r5 + 8002754: f7fe f962 bl 8000a1c <__aeabi_dcmpun> + 8002758: bbc8 cbnz r0, 80027ce + 800275a: 2200 movs r2, #0 + 800275c: 2300 movs r3, #0 800275e: 4640 mov r0, r8 8002760: 4649 mov r1, r9 - 8002762: f7fd fd0b bl 800017c <__adddf3> - 8002766: 4622 mov r2, r4 - 8002768: e9cd 0104 strd r0, r1, [sp, #16] - 800276c: 462b mov r3, r5 - 800276e: 4650 mov r0, sl - 8002770: 4639 mov r1, r7 - 8002772: f7fd fd01 bl 8000178 <__aeabi_dsub> - 8002776: 4602 mov r2, r0 - 8002778: 460b mov r3, r1 - 800277a: e9dd 0104 ldrd r0, r1, [sp, #16] - 800277e: f7fe f943 bl 8000a08 <__aeabi_dcmpgt> - 8002782: 2800 cmp r0, #0 - 8002784: f47f ae09 bne.w 800239a <__ieee754_pow+0x39a> - 8002788: 4aa3 ldr r2, [pc, #652] ; (8002a18 <__ieee754_pow+0xa18>) - 800278a: f026 4300 bic.w r3, r6, #2147483648 ; 0x80000000 - 800278e: 4293 cmp r3, r2 - 8002790: f340 8101 ble.w 8002996 <__ieee754_pow+0x996> - 8002794: f44f 1a80 mov.w sl, #1048576 ; 0x100000 - 8002798: 2000 movs r0, #0 - 800279a: 151b asrs r3, r3, #20 - 800279c: f2a3 33fe subw r3, r3, #1022 ; 0x3fe - 80027a0: fa4a f303 asr.w r3, sl, r3 - 80027a4: 4433 add r3, r6 - 80027a6: f3c3 520a ubfx r2, r3, #20, #11 - 80027aa: 4f9c ldr r7, [pc, #624] ; (8002a1c <__ieee754_pow+0xa1c>) - 80027ac: f2a2 32ff subw r2, r2, #1023 ; 0x3ff - 80027b0: 4117 asrs r7, r2 - 80027b2: f3c3 0a13 ubfx sl, r3, #0, #20 - 80027b6: ea23 0107 bic.w r1, r3, r7 - 80027ba: f1c2 0214 rsb r2, r2, #20 - 80027be: f44a 1a80 orr.w sl, sl, #1048576 ; 0x100000 - 80027c2: 460b mov r3, r1 - 80027c4: fa4a fa02 asr.w sl, sl, r2 - 80027c8: 2e00 cmp r6, #0 - 80027ca: 4602 mov r2, r0 - 80027cc: 4629 mov r1, r5 - 80027ce: 4620 mov r0, r4 - 80027d0: bfb8 it lt - 80027d2: f1ca 0a00 rsblt sl, sl, #0 - 80027d6: f7fd fccf bl 8000178 <__aeabi_dsub> - 80027da: e9cd 0102 strd r0, r1, [sp, #8] - 80027de: e9dd 0102 ldrd r0, r1, [sp, #8] - 80027e2: 2400 movs r4, #0 - 80027e4: 4642 mov r2, r8 - 80027e6: 464b mov r3, r9 - 80027e8: f7fd fcc8 bl 800017c <__adddf3> - 80027ec: a37a add r3, pc, #488 ; (adr r3, 80029d8 <__ieee754_pow+0x9d8>) - 80027ee: e9d3 2300 ldrd r2, r3, [r3] + 8002762: f7fe f929 bl 80009b8 <__aeabi_dcmpeq> + 8002766: b1b8 cbz r0, 8002798 + 8002768: 2200 movs r2, #0 + 800276a: 2300 movs r3, #0 + 800276c: 4620 mov r0, r4 + 800276e: 4629 mov r1, r5 + 8002770: f7fe f922 bl 80009b8 <__aeabi_dcmpeq> + 8002774: 2800 cmp r0, #0 + 8002776: d141 bne.n 80027fc + 8002778: 4620 mov r0, r4 + 800277a: 4629 mov r1, r5 + 800277c: f000 fe39 bl 80033f2 + 8002780: b328 cbz r0, 80027ce + 8002782: 2200 movs r2, #0 + 8002784: 2300 movs r3, #0 + 8002786: 4620 mov r0, r4 + 8002788: 4629 mov r1, r5 + 800278a: f7fe f91f bl 80009cc <__aeabi_dcmplt> + 800278e: b1f0 cbz r0, 80027ce + 8002790: f7ff ff4c bl 800262c <__errno> + 8002794: 2322 movs r3, #34 ; 0x22 + 8002796: e019 b.n 80027cc + 8002798: 4630 mov r0, r6 + 800279a: 4639 mov r1, r7 + 800279c: f000 fe29 bl 80033f2 + 80027a0: b9c8 cbnz r0, 80027d6 + 80027a2: 4640 mov r0, r8 + 80027a4: 4649 mov r1, r9 + 80027a6: f000 fe24 bl 80033f2 + 80027aa: b1a0 cbz r0, 80027d6 + 80027ac: 4620 mov r0, r4 + 80027ae: 4629 mov r1, r5 + 80027b0: f000 fe1f bl 80033f2 + 80027b4: b178 cbz r0, 80027d6 + 80027b6: 4632 mov r2, r6 + 80027b8: 463b mov r3, r7 + 80027ba: 4630 mov r0, r6 + 80027bc: 4639 mov r1, r7 + 80027be: f7fe f92d bl 8000a1c <__aeabi_dcmpun> + 80027c2: 2800 cmp r0, #0 + 80027c4: d0e4 beq.n 8002790 + 80027c6: f7ff ff31 bl 800262c <__errno> + 80027ca: 2321 movs r3, #33 ; 0x21 + 80027cc: 6003 str r3, [r0, #0] + 80027ce: 4630 mov r0, r6 + 80027d0: 4639 mov r1, r7 + 80027d2: e8bd 83f8 ldmia.w sp!, {r3, r4, r5, r6, r7, r8, r9, pc} + 80027d6: 2200 movs r2, #0 + 80027d8: 2300 movs r3, #0 + 80027da: 4630 mov r0, r6 + 80027dc: 4639 mov r1, r7 + 80027de: f7fe f8eb bl 80009b8 <__aeabi_dcmpeq> + 80027e2: 2800 cmp r0, #0 + 80027e4: d0f3 beq.n 80027ce + 80027e6: 4640 mov r0, r8 + 80027e8: 4649 mov r1, r9 + 80027ea: f000 fe02 bl 80033f2 + 80027ee: 2800 cmp r0, #0 + 80027f0: d0ed beq.n 80027ce 80027f2: 4620 mov r0, r4 - 80027f4: 460d mov r5, r1 - 80027f6: f7fd fe77 bl 80004e8 <__aeabi_dmul> - 80027fa: e9dd 2302 ldrd r2, r3, [sp, #8] - 80027fe: 4606 mov r6, r0 - 8002800: 460f mov r7, r1 - 8002802: 4620 mov r0, r4 - 8002804: 4629 mov r1, r5 - 8002806: f7fd fcb7 bl 8000178 <__aeabi_dsub> - 800280a: 4602 mov r2, r0 - 800280c: 460b mov r3, r1 - 800280e: 4640 mov r0, r8 - 8002810: 4649 mov r1, r9 - 8002812: f7fd fcb1 bl 8000178 <__aeabi_dsub> - 8002816: a372 add r3, pc, #456 ; (adr r3, 80029e0 <__ieee754_pow+0x9e0>) - 8002818: e9d3 2300 ldrd r2, r3, [r3] - 800281c: f7fd fe64 bl 80004e8 <__aeabi_dmul> - 8002820: a371 add r3, pc, #452 ; (adr r3, 80029e8 <__ieee754_pow+0x9e8>) - 8002822: e9d3 2300 ldrd r2, r3, [r3] - 8002826: 4680 mov r8, r0 - 8002828: 4689 mov r9, r1 - 800282a: 4620 mov r0, r4 - 800282c: 4629 mov r1, r5 - 800282e: f7fd fe5b bl 80004e8 <__aeabi_dmul> - 8002832: 4602 mov r2, r0 - 8002834: 460b mov r3, r1 - 8002836: 4640 mov r0, r8 - 8002838: 4649 mov r1, r9 - 800283a: f7fd fc9f bl 800017c <__adddf3> - 800283e: 4604 mov r4, r0 - 8002840: 460d mov r5, r1 - 8002842: 4602 mov r2, r0 - 8002844: 460b mov r3, r1 - 8002846: 4630 mov r0, r6 - 8002848: 4639 mov r1, r7 - 800284a: f7fd fc97 bl 800017c <__adddf3> - 800284e: 4632 mov r2, r6 - 8002850: 463b mov r3, r7 - 8002852: 4680 mov r8, r0 - 8002854: 4689 mov r9, r1 - 8002856: f7fd fc8f bl 8000178 <__aeabi_dsub> - 800285a: 4602 mov r2, r0 - 800285c: 460b mov r3, r1 - 800285e: 4620 mov r0, r4 - 8002860: 4629 mov r1, r5 - 8002862: f7fd fc89 bl 8000178 <__aeabi_dsub> - 8002866: 4642 mov r2, r8 - 8002868: 4606 mov r6, r0 - 800286a: 460f mov r7, r1 - 800286c: 464b mov r3, r9 - 800286e: 4640 mov r0, r8 - 8002870: 4649 mov r1, r9 - 8002872: f7fd fe39 bl 80004e8 <__aeabi_dmul> - 8002876: a35e add r3, pc, #376 ; (adr r3, 80029f0 <__ieee754_pow+0x9f0>) - 8002878: e9d3 2300 ldrd r2, r3, [r3] - 800287c: 4604 mov r4, r0 - 800287e: 460d mov r5, r1 - 8002880: f7fd fe32 bl 80004e8 <__aeabi_dmul> - 8002884: a35c add r3, pc, #368 ; (adr r3, 80029f8 <__ieee754_pow+0x9f8>) - 8002886: e9d3 2300 ldrd r2, r3, [r3] - 800288a: f7fd fc75 bl 8000178 <__aeabi_dsub> - 800288e: 4622 mov r2, r4 - 8002890: 462b mov r3, r5 - 8002892: f7fd fe29 bl 80004e8 <__aeabi_dmul> - 8002896: a35a add r3, pc, #360 ; (adr r3, 8002a00 <__ieee754_pow+0xa00>) - 8002898: e9d3 2300 ldrd r2, r3, [r3] - 800289c: f7fd fc6e bl 800017c <__adddf3> - 80028a0: 4622 mov r2, r4 - 80028a2: 462b mov r3, r5 - 80028a4: f7fd fe20 bl 80004e8 <__aeabi_dmul> - 80028a8: a357 add r3, pc, #348 ; (adr r3, 8002a08 <__ieee754_pow+0xa08>) - 80028aa: e9d3 2300 ldrd r2, r3, [r3] - 80028ae: f7fd fc63 bl 8000178 <__aeabi_dsub> - 80028b2: 4622 mov r2, r4 - 80028b4: 462b mov r3, r5 - 80028b6: f7fd fe17 bl 80004e8 <__aeabi_dmul> - 80028ba: a355 add r3, pc, #340 ; (adr r3, 8002a10 <__ieee754_pow+0xa10>) - 80028bc: e9d3 2300 ldrd r2, r3, [r3] - 80028c0: f7fd fc5c bl 800017c <__adddf3> - 80028c4: 4622 mov r2, r4 - 80028c6: 462b mov r3, r5 - 80028c8: f7fd fe0e bl 80004e8 <__aeabi_dmul> - 80028cc: 4602 mov r2, r0 - 80028ce: 460b mov r3, r1 - 80028d0: 4640 mov r0, r8 - 80028d2: 4649 mov r1, r9 - 80028d4: f7fd fc50 bl 8000178 <__aeabi_dsub> - 80028d8: 4604 mov r4, r0 - 80028da: 460d mov r5, r1 - 80028dc: 4602 mov r2, r0 - 80028de: 460b mov r3, r1 - 80028e0: 4640 mov r0, r8 - 80028e2: 4649 mov r1, r9 - 80028e4: f7fd fe00 bl 80004e8 <__aeabi_dmul> - 80028e8: 2200 movs r2, #0 - 80028ea: e9cd 0102 strd r0, r1, [sp, #8] - 80028ee: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 - 80028f2: 4620 mov r0, r4 - 80028f4: 4629 mov r1, r5 - 80028f6: f7fd fc3f bl 8000178 <__aeabi_dsub> - 80028fa: 4602 mov r2, r0 - 80028fc: 460b mov r3, r1 - 80028fe: e9dd 0102 ldrd r0, r1, [sp, #8] - 8002902: f7fd ff1b bl 800073c <__aeabi_ddiv> - 8002906: 4632 mov r2, r6 - 8002908: 4604 mov r4, r0 - 800290a: 460d mov r5, r1 - 800290c: 463b mov r3, r7 - 800290e: 4640 mov r0, r8 - 8002910: 4649 mov r1, r9 - 8002912: f7fd fde9 bl 80004e8 <__aeabi_dmul> - 8002916: 4632 mov r2, r6 - 8002918: 463b mov r3, r7 - 800291a: f7fd fc2f bl 800017c <__adddf3> - 800291e: 4602 mov r2, r0 - 8002920: 460b mov r3, r1 - 8002922: 4620 mov r0, r4 - 8002924: 4629 mov r1, r5 - 8002926: f7fd fc27 bl 8000178 <__aeabi_dsub> - 800292a: 4642 mov r2, r8 - 800292c: 464b mov r3, r9 - 800292e: f7fd fc23 bl 8000178 <__aeabi_dsub> - 8002932: 4602 mov r2, r0 - 8002934: 460b mov r3, r1 - 8002936: 2000 movs r0, #0 - 8002938: 4939 ldr r1, [pc, #228] ; (8002a20 <__ieee754_pow+0xa20>) - 800293a: f7fd fc1d bl 8000178 <__aeabi_dsub> - 800293e: eb01 540a add.w r4, r1, sl, lsl #20 - 8002942: f5b4 1f80 cmp.w r4, #1048576 ; 0x100000 - 8002946: da29 bge.n 800299c <__ieee754_pow+0x99c> - 8002948: 4652 mov r2, sl - 800294a: f000 f955 bl 8002bf8 - 800294e: e9dd 2300 ldrd r2, r3, [sp] - 8002952: f7ff bbfe b.w 8002152 <__ieee754_pow+0x152> - 8002956: 4b33 ldr r3, [pc, #204] ; (8002a24 <__ieee754_pow+0xa24>) - 8002958: f021 4700 bic.w r7, r1, #2147483648 ; 0x80000000 - 800295c: 429f cmp r7, r3 - 800295e: f77f af13 ble.w 8002788 <__ieee754_pow+0x788> - 8002962: 4b31 ldr r3, [pc, #196] ; (8002a28 <__ieee754_pow+0xa28>) - 8002964: 440b add r3, r1 - 8002966: 4303 orrs r3, r0 - 8002968: d009 beq.n 800297e <__ieee754_pow+0x97e> - 800296a: e9dd 0100 ldrd r0, r1, [sp] - 800296e: 2200 movs r2, #0 - 8002970: 2300 movs r3, #0 - 8002972: f7fe f82b bl 80009cc <__aeabi_dcmplt> - 8002976: 3800 subs r0, #0 - 8002978: bf18 it ne - 800297a: 2001 movne r0, #1 - 800297c: e453 b.n 8002226 <__ieee754_pow+0x226> - 800297e: 4622 mov r2, r4 - 8002980: 462b mov r3, r5 - 8002982: f7fd fbf9 bl 8000178 <__aeabi_dsub> - 8002986: 4642 mov r2, r8 - 8002988: 464b mov r3, r9 - 800298a: f7fe f833 bl 80009f4 <__aeabi_dcmpge> - 800298e: 2800 cmp r0, #0 - 8002990: f43f aefa beq.w 8002788 <__ieee754_pow+0x788> - 8002994: e7e9 b.n 800296a <__ieee754_pow+0x96a> - 8002996: f04f 0a00 mov.w sl, #0 - 800299a: e720 b.n 80027de <__ieee754_pow+0x7de> - 800299c: 4621 mov r1, r4 - 800299e: e7d6 b.n 800294e <__ieee754_pow+0x94e> - 80029a0: f04f 0b00 mov.w fp, #0 - 80029a4: f8df c078 ldr.w ip, [pc, #120] ; 8002a20 <__ieee754_pow+0xa20> - 80029a8: f7ff bbba b.w 8002120 <__ieee754_pow+0x120> - 80029ac: f04f 0b00 mov.w fp, #0 - 80029b0: f04f 0c00 mov.w ip, #0 - 80029b4: f7ff bbb4 b.w 8002120 <__ieee754_pow+0x120> - 80029b8: 4640 mov r0, r8 - 80029ba: 4649 mov r1, r9 - 80029bc: f7ff bb3d b.w 800203a <__ieee754_pow+0x3a> - 80029c0: 9200 str r2, [sp, #0] - 80029c2: f7ff bb89 b.w 80020d8 <__ieee754_pow+0xd8> - 80029c6: 2300 movs r3, #0 - 80029c8: f7ff bb73 b.w 80020b2 <__ieee754_pow+0xb2> - 80029cc: f3af 8000 nop.w - 80029d0: 652b82fe .word 0x652b82fe - 80029d4: 3c971547 .word 0x3c971547 - 80029d8: 00000000 .word 0x00000000 - 80029dc: 3fe62e43 .word 0x3fe62e43 - 80029e0: fefa39ef .word 0xfefa39ef - 80029e4: 3fe62e42 .word 0x3fe62e42 - 80029e8: 0ca86c39 .word 0x0ca86c39 - 80029ec: be205c61 .word 0xbe205c61 - 80029f0: 72bea4d0 .word 0x72bea4d0 - 80029f4: 3e663769 .word 0x3e663769 - 80029f8: c5d26bf1 .word 0xc5d26bf1 - 80029fc: 3ebbbd41 .word 0x3ebbbd41 - 8002a00: af25de2c .word 0xaf25de2c - 8002a04: 3f11566a .word 0x3f11566a - 8002a08: 16bebd93 .word 0x16bebd93 - 8002a0c: 3f66c16c .word 0x3f66c16c - 8002a10: 5555553e .word 0x5555553e - 8002a14: 3fc55555 .word 0x3fc55555 - 8002a18: 3fe00000 .word 0x3fe00000 - 8002a1c: 000fffff .word 0x000fffff - 8002a20: 3ff00000 .word 0x3ff00000 - 8002a24: 4090cbff .word 0x4090cbff - 8002a28: 3f6f3400 .word 0x3f6f3400 - -08002a2c <__ieee754_sqrt>: - 8002a2c: f8df c158 ldr.w ip, [pc, #344] ; 8002b88 <__ieee754_sqrt+0x15c> - 8002a30: e92d 41f0 stmdb sp!, {r4, r5, r6, r7, r8, lr} - 8002a34: ea3c 0c01 bics.w ip, ip, r1 - 8002a38: 4606 mov r6, r0 - 8002a3a: 460d mov r5, r1 - 8002a3c: 460c mov r4, r1 - 8002a3e: 460a mov r2, r1 - 8002a40: 4607 mov r7, r0 - 8002a42: 4603 mov r3, r0 - 8002a44: d10f bne.n 8002a66 <__ieee754_sqrt+0x3a> - 8002a46: 4602 mov r2, r0 - 8002a48: 460b mov r3, r1 - 8002a4a: f7fd fd4d bl 80004e8 <__aeabi_dmul> - 8002a4e: 4602 mov r2, r0 - 8002a50: 460b mov r3, r1 - 8002a52: 4630 mov r0, r6 - 8002a54: 4629 mov r1, r5 - 8002a56: f7fd fb91 bl 800017c <__adddf3> - 8002a5a: 4606 mov r6, r0 - 8002a5c: 460d mov r5, r1 - 8002a5e: 4630 mov r0, r6 - 8002a60: 4629 mov r1, r5 - 8002a62: e8bd 81f0 ldmia.w sp!, {r4, r5, r6, r7, r8, pc} - 8002a66: 2900 cmp r1, #0 - 8002a68: dc0e bgt.n 8002a88 <__ieee754_sqrt+0x5c> - 8002a6a: f021 4c00 bic.w ip, r1, #2147483648 ; 0x80000000 - 8002a6e: ea5c 0707 orrs.w r7, ip, r7 - 8002a72: d0f4 beq.n 8002a5e <__ieee754_sqrt+0x32> - 8002a74: b141 cbz r1, 8002a88 <__ieee754_sqrt+0x5c> - 8002a76: 4602 mov r2, r0 - 8002a78: 460b mov r3, r1 - 8002a7a: f7fd fb7d bl 8000178 <__aeabi_dsub> - 8002a7e: 4602 mov r2, r0 - 8002a80: 460b mov r3, r1 - 8002a82: f7fd fe5b bl 800073c <__aeabi_ddiv> - 8002a86: e7e8 b.n 8002a5a <__ieee754_sqrt+0x2e> - 8002a88: 1521 asrs r1, r4, #20 - 8002a8a: d075 beq.n 8002b78 <__ieee754_sqrt+0x14c> - 8002a8c: 07cc lsls r4, r1, #31 - 8002a8e: f04f 0400 mov.w r4, #0 - 8002a92: f3c2 0213 ubfx r2, r2, #0, #20 - 8002a96: f2a1 37ff subw r7, r1, #1023 ; 0x3ff - 8002a9a: f442 1280 orr.w r2, r2, #1048576 ; 0x100000 - 8002a9e: bf5e ittt pl - 8002aa0: 0fd9 lsrpl r1, r3, #31 - 8002aa2: 005b lslpl r3, r3, #1 - 8002aa4: eb01 0242 addpl.w r2, r1, r2, lsl #1 - 8002aa8: 0fd9 lsrs r1, r3, #31 - 8002aaa: eb01 0242 add.w r2, r1, r2, lsl #1 - 8002aae: 2516 movs r5, #22 - 8002ab0: 4620 mov r0, r4 - 8002ab2: f44f 1100 mov.w r1, #2097152 ; 0x200000 - 8002ab6: 107f asrs r7, r7, #1 - 8002ab8: 005b lsls r3, r3, #1 - 8002aba: 1846 adds r6, r0, r1 - 8002abc: 4296 cmp r6, r2 - 8002abe: bfde ittt le - 8002ac0: 1b92 suble r2, r2, r6 - 8002ac2: 1870 addle r0, r6, r1 - 8002ac4: 1864 addle r4, r4, r1 - 8002ac6: 0052 lsls r2, r2, #1 - 8002ac8: 3d01 subs r5, #1 - 8002aca: eb02 72d3 add.w r2, r2, r3, lsr #31 - 8002ace: ea4f 0151 mov.w r1, r1, lsr #1 - 8002ad2: ea4f 0343 mov.w r3, r3, lsl #1 - 8002ad6: d1f0 bne.n 8002aba <__ieee754_sqrt+0x8e> - 8002ad8: 4629 mov r1, r5 - 8002ada: f04f 0e20 mov.w lr, #32 - 8002ade: f04f 4600 mov.w r6, #2147483648 ; 0x80000000 - 8002ae2: 4282 cmp r2, r0 - 8002ae4: eb06 0c05 add.w ip, r6, r5 - 8002ae8: dc02 bgt.n 8002af0 <__ieee754_sqrt+0xc4> - 8002aea: d113 bne.n 8002b14 <__ieee754_sqrt+0xe8> - 8002aec: 459c cmp ip, r3 - 8002aee: d811 bhi.n 8002b14 <__ieee754_sqrt+0xe8> - 8002af0: f1bc 0f00 cmp.w ip, #0 - 8002af4: eb0c 0506 add.w r5, ip, r6 - 8002af8: da43 bge.n 8002b82 <__ieee754_sqrt+0x156> - 8002afa: 2d00 cmp r5, #0 - 8002afc: db41 blt.n 8002b82 <__ieee754_sqrt+0x156> - 8002afe: f100 0801 add.w r8, r0, #1 - 8002b02: 1a12 subs r2, r2, r0 - 8002b04: 4640 mov r0, r8 - 8002b06: 459c cmp ip, r3 - 8002b08: bf88 it hi - 8002b0a: f102 32ff addhi.w r2, r2, #4294967295 ; 0xffffffff - 8002b0e: eba3 030c sub.w r3, r3, ip - 8002b12: 4431 add r1, r6 - 8002b14: ea4f 7cd3 mov.w ip, r3, lsr #31 - 8002b18: f1be 0e01 subs.w lr, lr, #1 - 8002b1c: eb0c 0242 add.w r2, ip, r2, lsl #1 - 8002b20: ea4f 0343 mov.w r3, r3, lsl #1 - 8002b24: ea4f 0656 mov.w r6, r6, lsr #1 - 8002b28: d1db bne.n 8002ae2 <__ieee754_sqrt+0xb6> - 8002b2a: 4313 orrs r3, r2 - 8002b2c: d006 beq.n 8002b3c <__ieee754_sqrt+0x110> - 8002b2e: 1c48 adds r0, r1, #1 - 8002b30: bf0b itete eq - 8002b32: 4671 moveq r1, lr - 8002b34: 3101 addne r1, #1 - 8002b36: 3401 addeq r4, #1 - 8002b38: f021 0101 bicne.w r1, r1, #1 - 8002b3c: 1063 asrs r3, r4, #1 - 8002b3e: 0849 lsrs r1, r1, #1 - 8002b40: f103 537f add.w r3, r3, #1069547520 ; 0x3fc00000 - 8002b44: 07e2 lsls r2, r4, #31 - 8002b46: f503 1300 add.w r3, r3, #2097152 ; 0x200000 - 8002b4a: bf48 it mi - 8002b4c: f041 4100 orrmi.w r1, r1, #2147483648 ; 0x80000000 - 8002b50: 460e mov r6, r1 - 8002b52: eb03 5507 add.w r5, r3, r7, lsl #20 - 8002b56: e782 b.n 8002a5e <__ieee754_sqrt+0x32> - 8002b58: 0ada lsrs r2, r3, #11 - 8002b5a: 3815 subs r0, #21 - 8002b5c: 055b lsls r3, r3, #21 - 8002b5e: 2a00 cmp r2, #0 - 8002b60: d0fa beq.n 8002b58 <__ieee754_sqrt+0x12c> - 8002b62: 02d5 lsls r5, r2, #11 - 8002b64: d50a bpl.n 8002b7c <__ieee754_sqrt+0x150> - 8002b66: f1c1 0420 rsb r4, r1, #32 - 8002b6a: fa23 f404 lsr.w r4, r3, r4 - 8002b6e: 1e4d subs r5, r1, #1 - 8002b70: 408b lsls r3, r1 - 8002b72: 4322 orrs r2, r4 - 8002b74: 1b41 subs r1, r0, r5 - 8002b76: e789 b.n 8002a8c <__ieee754_sqrt+0x60> - 8002b78: 4608 mov r0, r1 - 8002b7a: e7f0 b.n 8002b5e <__ieee754_sqrt+0x132> - 8002b7c: 0052 lsls r2, r2, #1 - 8002b7e: 3101 adds r1, #1 - 8002b80: e7ef b.n 8002b62 <__ieee754_sqrt+0x136> - 8002b82: 4680 mov r8, r0 - 8002b84: e7bd b.n 8002b02 <__ieee754_sqrt+0xd6> - 8002b86: bf00 nop - 8002b88: 7ff00000 .word 0x7ff00000 - -08002b8c : - 8002b8c: b570 push {r4, r5, r6, lr} - 8002b8e: 4604 mov r4, r0 - 8002b90: 460d mov r5, r1 - 8002b92: 4616 mov r6, r2 - 8002b94: f7ff f9a0 bl 8001ed8 <__errno> - 8002b98: 4629 mov r1, r5 - 8002b9a: 6006 str r6, [r0, #0] - 8002b9c: 4620 mov r0, r4 - 8002b9e: bd70 pop {r4, r5, r6, pc} - -08002ba0 : - 8002ba0: b537 push {r0, r1, r2, r4, r5, lr} - 8002ba2: 4615 mov r5, r2 - 8002ba4: 461c mov r4, r3 - 8002ba6: b180 cbz r0, 8002bca - 8002ba8: 4610 mov r0, r2 - 8002baa: f103 4100 add.w r1, r3, #2147483648 ; 0x80000000 - 8002bae: e9cd 0100 strd r0, r1, [sp] - 8002bb2: e9dd 2300 ldrd r2, r3, [sp] - 8002bb6: 4628 mov r0, r5 - 8002bb8: 4621 mov r1, r4 - 8002bba: f7fd fc95 bl 80004e8 <__aeabi_dmul> - 8002bbe: 2222 movs r2, #34 ; 0x22 - 8002bc0: b003 add sp, #12 - 8002bc2: e8bd 4030 ldmia.w sp!, {r4, r5, lr} - 8002bc6: f7ff bfe1 b.w 8002b8c - 8002bca: 4610 mov r0, r2 - 8002bcc: 4619 mov r1, r3 - 8002bce: e7ee b.n 8002bae - -08002bd0 <__math_uflow>: - 8002bd0: 2200 movs r2, #0 - 8002bd2: f04f 5380 mov.w r3, #268435456 ; 0x10000000 - 8002bd6: f7ff bfe3 b.w 8002ba0 - -08002bda <__math_oflow>: - 8002bda: 2200 movs r2, #0 - 8002bdc: f04f 43e0 mov.w r3, #1879048192 ; 0x70000000 - 8002be0: f7ff bfde b.w 8002ba0 - -08002be4 : - 8002be4: f021 4100 bic.w r1, r1, #2147483648 ; 0x80000000 - 8002be8: 4770 bx lr - -08002bea : - 8002bea: f041 4000 orr.w r0, r1, #2147483648 ; 0x80000000 - 8002bee: f500 1080 add.w r0, r0, #1048576 ; 0x100000 - 8002bf2: 0fc0 lsrs r0, r0, #31 - 8002bf4: 4770 bx lr + 80027f4: 4629 mov r1, r5 + 80027f6: f000 fdfc bl 80033f2 + 80027fa: e7c8 b.n 800278e + 80027fc: 2600 movs r6, #0 + 80027fe: 4f01 ldr r7, [pc, #4] ; (8002804 ) + 8002800: e7e5 b.n 80027ce + 8002802: bf00 nop + 8002804: 3ff00000 .word 0x3ff00000 + +08002808 <__ieee754_pow>: + 8002808: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} + 800280c: b093 sub sp, #76 ; 0x4c + 800280e: e9cd 2302 strd r2, r3, [sp, #8] + 8002812: e9dd 2702 ldrd r2, r7, [sp, #8] + 8002816: f027 4600 bic.w r6, r7, #2147483648 ; 0x80000000 + 800281a: 4689 mov r9, r1 + 800281c: ea56 0102 orrs.w r1, r6, r2 + 8002820: 4680 mov r8, r0 + 8002822: d111 bne.n 8002848 <__ieee754_pow+0x40> + 8002824: 1803 adds r3, r0, r0 + 8002826: f489 2200 eor.w r2, r9, #524288 ; 0x80000 + 800282a: 4152 adcs r2, r2 + 800282c: 4299 cmp r1, r3 + 800282e: 4b82 ldr r3, [pc, #520] ; (8002a38 <__ieee754_pow+0x230>) + 8002830: 4193 sbcs r3, r2 + 8002832: f080 84b9 bcs.w 80031a8 <__ieee754_pow+0x9a0> + 8002836: e9dd 2302 ldrd r2, r3, [sp, #8] + 800283a: 4640 mov r0, r8 + 800283c: 4649 mov r1, r9 + 800283e: f7fd fc9d bl 800017c <__adddf3> + 8002842: 4683 mov fp, r0 + 8002844: 468c mov ip, r1 + 8002846: e06f b.n 8002928 <__ieee754_pow+0x120> + 8002848: 4b7c ldr r3, [pc, #496] ; (8002a3c <__ieee754_pow+0x234>) + 800284a: f029 4400 bic.w r4, r9, #2147483648 ; 0x80000000 + 800284e: 429c cmp r4, r3 + 8002850: 464d mov r5, r9 + 8002852: 4682 mov sl, r0 + 8002854: dc06 bgt.n 8002864 <__ieee754_pow+0x5c> + 8002856: d101 bne.n 800285c <__ieee754_pow+0x54> + 8002858: 2800 cmp r0, #0 + 800285a: d1ec bne.n 8002836 <__ieee754_pow+0x2e> + 800285c: 429e cmp r6, r3 + 800285e: dc01 bgt.n 8002864 <__ieee754_pow+0x5c> + 8002860: d10f bne.n 8002882 <__ieee754_pow+0x7a> + 8002862: b172 cbz r2, 8002882 <__ieee754_pow+0x7a> + 8002864: f105 4540 add.w r5, r5, #3221225472 ; 0xc0000000 + 8002868: f505 1580 add.w r5, r5, #1048576 ; 0x100000 + 800286c: ea55 050a orrs.w r5, r5, sl + 8002870: d1e1 bne.n 8002836 <__ieee754_pow+0x2e> + 8002872: e9dd 3202 ldrd r3, r2, [sp, #8] + 8002876: 18db adds r3, r3, r3 + 8002878: f482 2200 eor.w r2, r2, #524288 ; 0x80000 + 800287c: 4152 adcs r2, r2 + 800287e: 429d cmp r5, r3 + 8002880: e7d5 b.n 800282e <__ieee754_pow+0x26> + 8002882: 2d00 cmp r5, #0 + 8002884: da39 bge.n 80028fa <__ieee754_pow+0xf2> + 8002886: 4b6e ldr r3, [pc, #440] ; (8002a40 <__ieee754_pow+0x238>) + 8002888: 429e cmp r6, r3 + 800288a: dc52 bgt.n 8002932 <__ieee754_pow+0x12a> + 800288c: f1a3 7354 sub.w r3, r3, #55574528 ; 0x3500000 + 8002890: 429e cmp r6, r3 + 8002892: f340 849c ble.w 80031ce <__ieee754_pow+0x9c6> + 8002896: 1533 asrs r3, r6, #20 + 8002898: f2a3 33ff subw r3, r3, #1023 ; 0x3ff + 800289c: 2b14 cmp r3, #20 + 800289e: dd0f ble.n 80028c0 <__ieee754_pow+0xb8> + 80028a0: f1c3 0334 rsb r3, r3, #52 ; 0x34 + 80028a4: fa22 f103 lsr.w r1, r2, r3 + 80028a8: fa01 f303 lsl.w r3, r1, r3 + 80028ac: 4293 cmp r3, r2 + 80028ae: f040 848e bne.w 80031ce <__ieee754_pow+0x9c6> + 80028b2: f001 0101 and.w r1, r1, #1 + 80028b6: f1c1 0302 rsb r3, r1, #2 + 80028ba: 9300 str r3, [sp, #0] + 80028bc: b182 cbz r2, 80028e0 <__ieee754_pow+0xd8> + 80028be: e05d b.n 800297c <__ieee754_pow+0x174> + 80028c0: 2a00 cmp r2, #0 + 80028c2: d159 bne.n 8002978 <__ieee754_pow+0x170> + 80028c4: f1c3 0314 rsb r3, r3, #20 + 80028c8: fa46 f103 asr.w r1, r6, r3 + 80028cc: fa01 f303 lsl.w r3, r1, r3 + 80028d0: 42b3 cmp r3, r6 + 80028d2: f040 8479 bne.w 80031c8 <__ieee754_pow+0x9c0> + 80028d6: f001 0101 and.w r1, r1, #1 + 80028da: f1c1 0302 rsb r3, r1, #2 + 80028de: 9300 str r3, [sp, #0] + 80028e0: 4b58 ldr r3, [pc, #352] ; (8002a44 <__ieee754_pow+0x23c>) + 80028e2: 429e cmp r6, r3 + 80028e4: d132 bne.n 800294c <__ieee754_pow+0x144> + 80028e6: 2f00 cmp r7, #0 + 80028e8: f280 846a bge.w 80031c0 <__ieee754_pow+0x9b8> + 80028ec: 4642 mov r2, r8 + 80028ee: 464b mov r3, r9 + 80028f0: 2000 movs r0, #0 + 80028f2: 4954 ldr r1, [pc, #336] ; (8002a44 <__ieee754_pow+0x23c>) + 80028f4: f7fd ff22 bl 800073c <__aeabi_ddiv> + 80028f8: e7a3 b.n 8002842 <__ieee754_pow+0x3a> + 80028fa: 2300 movs r3, #0 + 80028fc: 9300 str r3, [sp, #0] + 80028fe: 2a00 cmp r2, #0 + 8002900: d13c bne.n 800297c <__ieee754_pow+0x174> + 8002902: 4b4e ldr r3, [pc, #312] ; (8002a3c <__ieee754_pow+0x234>) + 8002904: 429e cmp r6, r3 + 8002906: d1eb bne.n 80028e0 <__ieee754_pow+0xd8> + 8002908: f104 4340 add.w r3, r4, #3221225472 ; 0xc0000000 + 800290c: f503 1380 add.w r3, r3, #1048576 ; 0x100000 + 8002910: ea53 030a orrs.w r3, r3, sl + 8002914: f000 8448 beq.w 80031a8 <__ieee754_pow+0x9a0> + 8002918: 4b4b ldr r3, [pc, #300] ; (8002a48 <__ieee754_pow+0x240>) + 800291a: 429c cmp r4, r3 + 800291c: dd0b ble.n 8002936 <__ieee754_pow+0x12e> + 800291e: 2f00 cmp r7, #0 + 8002920: f2c0 8448 blt.w 80031b4 <__ieee754_pow+0x9ac> + 8002924: e9dd bc02 ldrd fp, ip, [sp, #8] + 8002928: 4658 mov r0, fp + 800292a: 4661 mov r1, ip + 800292c: b013 add sp, #76 ; 0x4c + 800292e: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} + 8002932: 2302 movs r3, #2 + 8002934: e7e2 b.n 80028fc <__ieee754_pow+0xf4> + 8002936: 2f00 cmp r7, #0 + 8002938: f04f 0b00 mov.w fp, #0 + 800293c: f04f 0c00 mov.w ip, #0 + 8002940: daf2 bge.n 8002928 <__ieee754_pow+0x120> + 8002942: e9dd b302 ldrd fp, r3, [sp, #8] + 8002946: f103 4c00 add.w ip, r3, #2147483648 ; 0x80000000 + 800294a: e7ed b.n 8002928 <__ieee754_pow+0x120> + 800294c: f1b7 4f80 cmp.w r7, #1073741824 ; 0x40000000 + 8002950: d106 bne.n 8002960 <__ieee754_pow+0x158> + 8002952: 4642 mov r2, r8 + 8002954: 464b mov r3, r9 + 8002956: 4640 mov r0, r8 + 8002958: 4649 mov r1, r9 + 800295a: f7fd fdc5 bl 80004e8 <__aeabi_dmul> + 800295e: e770 b.n 8002842 <__ieee754_pow+0x3a> + 8002960: 4b3a ldr r3, [pc, #232] ; (8002a4c <__ieee754_pow+0x244>) + 8002962: 429f cmp r7, r3 + 8002964: d10a bne.n 800297c <__ieee754_pow+0x174> + 8002966: 2d00 cmp r5, #0 + 8002968: db08 blt.n 800297c <__ieee754_pow+0x174> + 800296a: 4640 mov r0, r8 + 800296c: 4649 mov r1, r9 + 800296e: b013 add sp, #76 ; 0x4c + 8002970: e8bd 4ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} + 8002974: f000 bc5e b.w 8003234 <__ieee754_sqrt> + 8002978: 2300 movs r3, #0 + 800297a: 9300 str r3, [sp, #0] + 800297c: 4640 mov r0, r8 + 800297e: 4649 mov r1, r9 + 8002980: f000 fd34 bl 80033ec + 8002984: 4683 mov fp, r0 + 8002986: 468c mov ip, r1 + 8002988: f1ba 0f00 cmp.w sl, #0 + 800298c: d128 bne.n 80029e0 <__ieee754_pow+0x1d8> + 800298e: b124 cbz r4, 800299a <__ieee754_pow+0x192> + 8002990: 4b2c ldr r3, [pc, #176] ; (8002a44 <__ieee754_pow+0x23c>) + 8002992: f025 4240 bic.w r2, r5, #3221225472 ; 0xc0000000 + 8002996: 429a cmp r2, r3 + 8002998: d122 bne.n 80029e0 <__ieee754_pow+0x1d8> + 800299a: 2f00 cmp r7, #0 + 800299c: da07 bge.n 80029ae <__ieee754_pow+0x1a6> + 800299e: 465a mov r2, fp + 80029a0: 4663 mov r3, ip + 80029a2: 2000 movs r0, #0 + 80029a4: 4927 ldr r1, [pc, #156] ; (8002a44 <__ieee754_pow+0x23c>) + 80029a6: f7fd fec9 bl 800073c <__aeabi_ddiv> + 80029aa: 4683 mov fp, r0 + 80029ac: 468c mov ip, r1 + 80029ae: 2d00 cmp r5, #0 + 80029b0: daba bge.n 8002928 <__ieee754_pow+0x120> + 80029b2: 9b00 ldr r3, [sp, #0] + 80029b4: f104 4440 add.w r4, r4, #3221225472 ; 0xc0000000 + 80029b8: f504 1480 add.w r4, r4, #1048576 ; 0x100000 + 80029bc: 4323 orrs r3, r4 + 80029be: d108 bne.n 80029d2 <__ieee754_pow+0x1ca> + 80029c0: 465a mov r2, fp + 80029c2: 4663 mov r3, ip + 80029c4: 4658 mov r0, fp + 80029c6: 4661 mov r1, ip + 80029c8: f7fd fbd6 bl 8000178 <__aeabi_dsub> + 80029cc: 4602 mov r2, r0 + 80029ce: 460b mov r3, r1 + 80029d0: e790 b.n 80028f4 <__ieee754_pow+0xec> + 80029d2: 9b00 ldr r3, [sp, #0] + 80029d4: 2b01 cmp r3, #1 + 80029d6: d1a7 bne.n 8002928 <__ieee754_pow+0x120> + 80029d8: f10c 4300 add.w r3, ip, #2147483648 ; 0x80000000 + 80029dc: 469c mov ip, r3 + 80029de: e7a3 b.n 8002928 <__ieee754_pow+0x120> + 80029e0: 0feb lsrs r3, r5, #31 + 80029e2: 3b01 subs r3, #1 + 80029e4: 930c str r3, [sp, #48] ; 0x30 + 80029e6: 9a0c ldr r2, [sp, #48] ; 0x30 + 80029e8: 9b00 ldr r3, [sp, #0] + 80029ea: 4313 orrs r3, r2 + 80029ec: d104 bne.n 80029f8 <__ieee754_pow+0x1f0> + 80029ee: 4642 mov r2, r8 + 80029f0: 464b mov r3, r9 + 80029f2: 4640 mov r0, r8 + 80029f4: 4649 mov r1, r9 + 80029f6: e7e7 b.n 80029c8 <__ieee754_pow+0x1c0> + 80029f8: 4b15 ldr r3, [pc, #84] ; (8002a50 <__ieee754_pow+0x248>) + 80029fa: 429e cmp r6, r3 + 80029fc: f340 80f6 ble.w 8002bec <__ieee754_pow+0x3e4> + 8002a00: f103 7304 add.w r3, r3, #34603008 ; 0x2100000 + 8002a04: 429e cmp r6, r3 + 8002a06: 4b10 ldr r3, [pc, #64] ; (8002a48 <__ieee754_pow+0x240>) + 8002a08: dd09 ble.n 8002a1e <__ieee754_pow+0x216> + 8002a0a: 429c cmp r4, r3 + 8002a0c: dc0c bgt.n 8002a28 <__ieee754_pow+0x220> + 8002a0e: 2f00 cmp r7, #0 + 8002a10: da0c bge.n 8002a2c <__ieee754_pow+0x224> + 8002a12: 2000 movs r0, #0 + 8002a14: b013 add sp, #76 ; 0x4c + 8002a16: e8bd 4ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} + 8002a1a: f000 bce2 b.w 80033e2 <__math_oflow> + 8002a1e: 429c cmp r4, r3 + 8002a20: dbf5 blt.n 8002a0e <__ieee754_pow+0x206> + 8002a22: 4b08 ldr r3, [pc, #32] ; (8002a44 <__ieee754_pow+0x23c>) + 8002a24: 429c cmp r4, r3 + 8002a26: dd15 ble.n 8002a54 <__ieee754_pow+0x24c> + 8002a28: 2f00 cmp r7, #0 + 8002a2a: dcf2 bgt.n 8002a12 <__ieee754_pow+0x20a> + 8002a2c: 2000 movs r0, #0 + 8002a2e: b013 add sp, #76 ; 0x4c + 8002a30: e8bd 4ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} + 8002a34: f000 bcd0 b.w 80033d8 <__math_uflow> + 8002a38: fff00000 .word 0xfff00000 + 8002a3c: 7ff00000 .word 0x7ff00000 + 8002a40: 433fffff .word 0x433fffff + 8002a44: 3ff00000 .word 0x3ff00000 + 8002a48: 3fefffff .word 0x3fefffff + 8002a4c: 3fe00000 .word 0x3fe00000 + 8002a50: 41e00000 .word 0x41e00000 + 8002a54: 4661 mov r1, ip + 8002a56: 2200 movs r2, #0 + 8002a58: 4658 mov r0, fp + 8002a5a: 4b5f ldr r3, [pc, #380] ; (8002bd8 <__ieee754_pow+0x3d0>) + 8002a5c: f7fd fb8c bl 8000178 <__aeabi_dsub> + 8002a60: a355 add r3, pc, #340 ; (adr r3, 8002bb8 <__ieee754_pow+0x3b0>) + 8002a62: e9d3 2300 ldrd r2, r3, [r3] + 8002a66: 4604 mov r4, r0 + 8002a68: 460d mov r5, r1 + 8002a6a: f7fd fd3d bl 80004e8 <__aeabi_dmul> + 8002a6e: a354 add r3, pc, #336 ; (adr r3, 8002bc0 <__ieee754_pow+0x3b8>) + 8002a70: e9d3 2300 ldrd r2, r3, [r3] + 8002a74: 4606 mov r6, r0 + 8002a76: 460f mov r7, r1 + 8002a78: 4620 mov r0, r4 + 8002a7a: 4629 mov r1, r5 + 8002a7c: f7fd fd34 bl 80004e8 <__aeabi_dmul> + 8002a80: 2200 movs r2, #0 + 8002a82: 4682 mov sl, r0 + 8002a84: 468b mov fp, r1 + 8002a86: 4620 mov r0, r4 + 8002a88: 4629 mov r1, r5 + 8002a8a: 4b54 ldr r3, [pc, #336] ; (8002bdc <__ieee754_pow+0x3d4>) + 8002a8c: f7fd fd2c bl 80004e8 <__aeabi_dmul> + 8002a90: 4602 mov r2, r0 + 8002a92: 460b mov r3, r1 + 8002a94: a14c add r1, pc, #304 ; (adr r1, 8002bc8 <__ieee754_pow+0x3c0>) + 8002a96: e9d1 0100 ldrd r0, r1, [r1] + 8002a9a: f7fd fb6d bl 8000178 <__aeabi_dsub> + 8002a9e: 4622 mov r2, r4 + 8002aa0: 462b mov r3, r5 + 8002aa2: f7fd fd21 bl 80004e8 <__aeabi_dmul> + 8002aa6: 4602 mov r2, r0 + 8002aa8: 460b mov r3, r1 + 8002aaa: 2000 movs r0, #0 + 8002aac: 494c ldr r1, [pc, #304] ; (8002be0 <__ieee754_pow+0x3d8>) + 8002aae: f7fd fb63 bl 8000178 <__aeabi_dsub> + 8002ab2: 4622 mov r2, r4 + 8002ab4: 462b mov r3, r5 + 8002ab6: 4680 mov r8, r0 + 8002ab8: 4689 mov r9, r1 + 8002aba: 4620 mov r0, r4 + 8002abc: 4629 mov r1, r5 + 8002abe: f7fd fd13 bl 80004e8 <__aeabi_dmul> + 8002ac2: 4602 mov r2, r0 + 8002ac4: 460b mov r3, r1 + 8002ac6: 4640 mov r0, r8 + 8002ac8: 4649 mov r1, r9 + 8002aca: f7fd fd0d bl 80004e8 <__aeabi_dmul> + 8002ace: a340 add r3, pc, #256 ; (adr r3, 8002bd0 <__ieee754_pow+0x3c8>) + 8002ad0: e9d3 2300 ldrd r2, r3, [r3] + 8002ad4: f7fd fd08 bl 80004e8 <__aeabi_dmul> + 8002ad8: 4602 mov r2, r0 + 8002ada: 460b mov r3, r1 + 8002adc: 4650 mov r0, sl + 8002ade: 4659 mov r1, fp + 8002ae0: f7fd fb4a bl 8000178 <__aeabi_dsub> + 8002ae4: f04f 0a00 mov.w sl, #0 + 8002ae8: 4602 mov r2, r0 + 8002aea: 460b mov r3, r1 + 8002aec: 4604 mov r4, r0 + 8002aee: 460d mov r5, r1 + 8002af0: 4630 mov r0, r6 + 8002af2: 4639 mov r1, r7 + 8002af4: f7fd fb42 bl 800017c <__adddf3> + 8002af8: 4632 mov r2, r6 + 8002afa: 463b mov r3, r7 + 8002afc: 4650 mov r0, sl + 8002afe: 468b mov fp, r1 + 8002b00: f7fd fb3a bl 8000178 <__aeabi_dsub> + 8002b04: 4602 mov r2, r0 + 8002b06: 460b mov r3, r1 + 8002b08: 4620 mov r0, r4 + 8002b0a: 4629 mov r1, r5 + 8002b0c: f7fd fb34 bl 8000178 <__aeabi_dsub> + 8002b10: e9dd 6702 ldrd r6, r7, [sp, #8] + 8002b14: 9b00 ldr r3, [sp, #0] + 8002b16: 9a0c ldr r2, [sp, #48] ; 0x30 + 8002b18: 3b01 subs r3, #1 + 8002b1a: 4313 orrs r3, r2 + 8002b1c: f04f 0600 mov.w r6, #0 + 8002b20: f04f 0200 mov.w r2, #0 + 8002b24: bf0c ite eq + 8002b26: 4b2f ldreq r3, [pc, #188] ; (8002be4 <__ieee754_pow+0x3dc>) + 8002b28: 4b2b ldrne r3, [pc, #172] ; (8002bd8 <__ieee754_pow+0x3d0>) + 8002b2a: 4604 mov r4, r0 + 8002b2c: 460d mov r5, r1 + 8002b2e: e9dd 0102 ldrd r0, r1, [sp, #8] + 8002b32: e9cd 2300 strd r2, r3, [sp] + 8002b36: 4632 mov r2, r6 + 8002b38: 463b mov r3, r7 + 8002b3a: f7fd fb1d bl 8000178 <__aeabi_dsub> + 8002b3e: 4652 mov r2, sl + 8002b40: 465b mov r3, fp + 8002b42: f7fd fcd1 bl 80004e8 <__aeabi_dmul> + 8002b46: e9dd 2302 ldrd r2, r3, [sp, #8] + 8002b4a: 4680 mov r8, r0 + 8002b4c: 4689 mov r9, r1 + 8002b4e: 4620 mov r0, r4 + 8002b50: 4629 mov r1, r5 + 8002b52: f7fd fcc9 bl 80004e8 <__aeabi_dmul> + 8002b56: 4602 mov r2, r0 + 8002b58: 460b mov r3, r1 + 8002b5a: 4640 mov r0, r8 + 8002b5c: 4649 mov r1, r9 + 8002b5e: f7fd fb0d bl 800017c <__adddf3> + 8002b62: 4632 mov r2, r6 + 8002b64: 463b mov r3, r7 + 8002b66: 4680 mov r8, r0 + 8002b68: 4689 mov r9, r1 + 8002b6a: 4650 mov r0, sl + 8002b6c: 4659 mov r1, fp + 8002b6e: f7fd fcbb bl 80004e8 <__aeabi_dmul> + 8002b72: 4604 mov r4, r0 + 8002b74: 460d mov r5, r1 + 8002b76: 460b mov r3, r1 + 8002b78: 4602 mov r2, r0 + 8002b7a: 4649 mov r1, r9 + 8002b7c: 4640 mov r0, r8 + 8002b7e: e9cd 4502 strd r4, r5, [sp, #8] + 8002b82: f7fd fafb bl 800017c <__adddf3> + 8002b86: 4b18 ldr r3, [pc, #96] ; (8002be8 <__ieee754_pow+0x3e0>) + 8002b88: 4682 mov sl, r0 + 8002b8a: 4299 cmp r1, r3 + 8002b8c: 460f mov r7, r1 + 8002b8e: 460e mov r6, r1 + 8002b90: f340 82e5 ble.w 800315e <__ieee754_pow+0x956> + 8002b94: f101 433f add.w r3, r1, #3204448256 ; 0xbf000000 + 8002b98: f503 03e0 add.w r3, r3, #7340032 ; 0x700000 + 8002b9c: 4303 orrs r3, r0 + 8002b9e: f000 81df beq.w 8002f60 <__ieee754_pow+0x758> + 8002ba2: e9dd 0100 ldrd r0, r1, [sp] + 8002ba6: 2200 movs r2, #0 + 8002ba8: 2300 movs r3, #0 + 8002baa: f7fd ff0f bl 80009cc <__aeabi_dcmplt> + 8002bae: 3800 subs r0, #0 + 8002bb0: bf18 it ne + 8002bb2: 2001 movne r0, #1 + 8002bb4: e72e b.n 8002a14 <__ieee754_pow+0x20c> + 8002bb6: bf00 nop + 8002bb8: 60000000 .word 0x60000000 + 8002bbc: 3ff71547 .word 0x3ff71547 + 8002bc0: f85ddf44 .word 0xf85ddf44 + 8002bc4: 3e54ae0b .word 0x3e54ae0b + 8002bc8: 55555555 .word 0x55555555 + 8002bcc: 3fd55555 .word 0x3fd55555 + 8002bd0: 652b82fe .word 0x652b82fe + 8002bd4: 3ff71547 .word 0x3ff71547 + 8002bd8: 3ff00000 .word 0x3ff00000 + 8002bdc: 3fd00000 .word 0x3fd00000 + 8002be0: 3fe00000 .word 0x3fe00000 + 8002be4: bff00000 .word 0xbff00000 + 8002be8: 408fffff .word 0x408fffff + 8002bec: 4bd2 ldr r3, [pc, #840] ; (8002f38 <__ieee754_pow+0x730>) + 8002bee: 2200 movs r2, #0 + 8002bf0: 402b ands r3, r5 + 8002bf2: b943 cbnz r3, 8002c06 <__ieee754_pow+0x3fe> + 8002bf4: 4658 mov r0, fp + 8002bf6: 4661 mov r1, ip + 8002bf8: 4bd0 ldr r3, [pc, #832] ; (8002f3c <__ieee754_pow+0x734>) + 8002bfa: f7fd fc75 bl 80004e8 <__aeabi_dmul> + 8002bfe: f06f 0234 mvn.w r2, #52 ; 0x34 + 8002c02: 4683 mov fp, r0 + 8002c04: 460c mov r4, r1 + 8002c06: 1523 asrs r3, r4, #20 + 8002c08: f2a3 33ff subw r3, r3, #1023 ; 0x3ff + 8002c0c: 4413 add r3, r2 + 8002c0e: 930b str r3, [sp, #44] ; 0x2c + 8002c10: 4bcb ldr r3, [pc, #812] ; (8002f40 <__ieee754_pow+0x738>) + 8002c12: f3c4 0413 ubfx r4, r4, #0, #20 + 8002c16: f044 557f orr.w r5, r4, #1069547520 ; 0x3fc00000 + 8002c1a: 429c cmp r4, r3 + 8002c1c: f445 1540 orr.w r5, r5, #3145728 ; 0x300000 + 8002c20: dd08 ble.n 8002c34 <__ieee754_pow+0x42c> + 8002c22: 4bc8 ldr r3, [pc, #800] ; (8002f44 <__ieee754_pow+0x73c>) + 8002c24: 429c cmp r4, r3 + 8002c26: f340 8199 ble.w 8002f5c <__ieee754_pow+0x754> + 8002c2a: 9b0b ldr r3, [sp, #44] ; 0x2c + 8002c2c: f5a5 1580 sub.w r5, r5, #1048576 ; 0x100000 + 8002c30: 3301 adds r3, #1 + 8002c32: 930b str r3, [sp, #44] ; 0x2c + 8002c34: 2600 movs r6, #0 + 8002c36: 00f3 lsls r3, r6, #3 + 8002c38: 930d str r3, [sp, #52] ; 0x34 + 8002c3a: 4bc3 ldr r3, [pc, #780] ; (8002f48 <__ieee754_pow+0x740>) + 8002c3c: 4658 mov r0, fp + 8002c3e: eb03 03c6 add.w r3, r3, r6, lsl #3 + 8002c42: e9d3 3400 ldrd r3, r4, [r3] + 8002c46: 4629 mov r1, r5 + 8002c48: 461a mov r2, r3 + 8002c4a: e9cd 3408 strd r3, r4, [sp, #32] + 8002c4e: 4623 mov r3, r4 + 8002c50: f7fd fa92 bl 8000178 <__aeabi_dsub> + 8002c54: 46da mov sl, fp + 8002c56: 462b mov r3, r5 + 8002c58: 4652 mov r2, sl + 8002c5a: e9cd 010e strd r0, r1, [sp, #56] ; 0x38 + 8002c5e: e9dd 0108 ldrd r0, r1, [sp, #32] + 8002c62: f7fd fa8b bl 800017c <__adddf3> + 8002c66: 4602 mov r2, r0 + 8002c68: 460b mov r3, r1 + 8002c6a: 2000 movs r0, #0 + 8002c6c: 49b7 ldr r1, [pc, #732] ; (8002f4c <__ieee754_pow+0x744>) + 8002c6e: f7fd fd65 bl 800073c <__aeabi_ddiv> + 8002c72: 4602 mov r2, r0 + 8002c74: 460b mov r3, r1 + 8002c76: e9cd 0110 strd r0, r1, [sp, #64] ; 0x40 + 8002c7a: e9dd 010e ldrd r0, r1, [sp, #56] ; 0x38 + 8002c7e: f7fd fc33 bl 80004e8 <__aeabi_dmul> + 8002c82: e9cd 0106 strd r0, r1, [sp, #24] + 8002c86: e9dd 3406 ldrd r3, r4, [sp, #24] + 8002c8a: e9cd 3404 strd r3, r4, [sp, #16] + 8002c8e: 2300 movs r3, #0 + 8002c90: 2200 movs r2, #0 + 8002c92: 46ab mov fp, r5 + 8002c94: 106d asrs r5, r5, #1 + 8002c96: f045 5500 orr.w r5, r5, #536870912 ; 0x20000000 + 8002c9a: 9304 str r3, [sp, #16] + 8002c9c: f505 2500 add.w r5, r5, #524288 ; 0x80000 + 8002ca0: e9dd 8904 ldrd r8, r9, [sp, #16] + 8002ca4: eb05 4386 add.w r3, r5, r6, lsl #18 + 8002ca8: 4640 mov r0, r8 + 8002caa: 4649 mov r1, r9 + 8002cac: 4614 mov r4, r2 + 8002cae: 461d mov r5, r3 + 8002cb0: f7fd fc1a bl 80004e8 <__aeabi_dmul> + 8002cb4: 4602 mov r2, r0 + 8002cb6: 460b mov r3, r1 + 8002cb8: e9dd 010e ldrd r0, r1, [sp, #56] ; 0x38 + 8002cbc: f7fd fa5c bl 8000178 <__aeabi_dsub> + 8002cc0: e9dd 2308 ldrd r2, r3, [sp, #32] + 8002cc4: 4606 mov r6, r0 + 8002cc6: 460f mov r7, r1 + 8002cc8: 4620 mov r0, r4 + 8002cca: 4629 mov r1, r5 + 8002ccc: f7fd fa54 bl 8000178 <__aeabi_dsub> + 8002cd0: 4602 mov r2, r0 + 8002cd2: 460b mov r3, r1 + 8002cd4: 4650 mov r0, sl + 8002cd6: 4659 mov r1, fp + 8002cd8: f7fd fa4e bl 8000178 <__aeabi_dsub> + 8002cdc: 4642 mov r2, r8 + 8002cde: 464b mov r3, r9 + 8002ce0: f7fd fc02 bl 80004e8 <__aeabi_dmul> + 8002ce4: 4602 mov r2, r0 + 8002ce6: 460b mov r3, r1 + 8002ce8: 4630 mov r0, r6 + 8002cea: 4639 mov r1, r7 + 8002cec: f7fd fa44 bl 8000178 <__aeabi_dsub> + 8002cf0: e9dd 2310 ldrd r2, r3, [sp, #64] ; 0x40 + 8002cf4: f7fd fbf8 bl 80004e8 <__aeabi_dmul> + 8002cf8: e9dd 2306 ldrd r2, r3, [sp, #24] + 8002cfc: e9cd 0108 strd r0, r1, [sp, #32] + 8002d00: 4610 mov r0, r2 + 8002d02: 4619 mov r1, r3 + 8002d04: f7fd fbf0 bl 80004e8 <__aeabi_dmul> + 8002d08: a379 add r3, pc, #484 ; (adr r3, 8002ef0 <__ieee754_pow+0x6e8>) + 8002d0a: e9d3 2300 ldrd r2, r3, [r3] + 8002d0e: 4604 mov r4, r0 + 8002d10: 460d mov r5, r1 + 8002d12: f7fd fbe9 bl 80004e8 <__aeabi_dmul> + 8002d16: a378 add r3, pc, #480 ; (adr r3, 8002ef8 <__ieee754_pow+0x6f0>) + 8002d18: e9d3 2300 ldrd r2, r3, [r3] + 8002d1c: f7fd fa2e bl 800017c <__adddf3> + 8002d20: 4622 mov r2, r4 + 8002d22: 462b mov r3, r5 + 8002d24: f7fd fbe0 bl 80004e8 <__aeabi_dmul> + 8002d28: a375 add r3, pc, #468 ; (adr r3, 8002f00 <__ieee754_pow+0x6f8>) + 8002d2a: e9d3 2300 ldrd r2, r3, [r3] + 8002d2e: f7fd fa25 bl 800017c <__adddf3> + 8002d32: 4622 mov r2, r4 + 8002d34: 462b mov r3, r5 + 8002d36: f7fd fbd7 bl 80004e8 <__aeabi_dmul> + 8002d3a: a373 add r3, pc, #460 ; (adr r3, 8002f08 <__ieee754_pow+0x700>) + 8002d3c: e9d3 2300 ldrd r2, r3, [r3] + 8002d40: f7fd fa1c bl 800017c <__adddf3> + 8002d44: 4622 mov r2, r4 + 8002d46: 462b mov r3, r5 + 8002d48: f7fd fbce bl 80004e8 <__aeabi_dmul> + 8002d4c: a370 add r3, pc, #448 ; (adr r3, 8002f10 <__ieee754_pow+0x708>) + 8002d4e: e9d3 2300 ldrd r2, r3, [r3] + 8002d52: f7fd fa13 bl 800017c <__adddf3> + 8002d56: 4622 mov r2, r4 + 8002d58: 462b mov r3, r5 + 8002d5a: f7fd fbc5 bl 80004e8 <__aeabi_dmul> + 8002d5e: a36e add r3, pc, #440 ; (adr r3, 8002f18 <__ieee754_pow+0x710>) + 8002d60: e9d3 2300 ldrd r2, r3, [r3] + 8002d64: f7fd fa0a bl 800017c <__adddf3> + 8002d68: 4622 mov r2, r4 + 8002d6a: 4606 mov r6, r0 + 8002d6c: 460f mov r7, r1 + 8002d6e: 462b mov r3, r5 + 8002d70: 4620 mov r0, r4 + 8002d72: 4629 mov r1, r5 + 8002d74: f7fd fbb8 bl 80004e8 <__aeabi_dmul> + 8002d78: 4602 mov r2, r0 + 8002d7a: 460b mov r3, r1 + 8002d7c: 4630 mov r0, r6 + 8002d7e: 4639 mov r1, r7 + 8002d80: f7fd fbb2 bl 80004e8 <__aeabi_dmul> + 8002d84: 4604 mov r4, r0 + 8002d86: 460d mov r5, r1 + 8002d88: e9dd 0106 ldrd r0, r1, [sp, #24] + 8002d8c: 4642 mov r2, r8 + 8002d8e: 464b mov r3, r9 + 8002d90: f7fd f9f4 bl 800017c <__adddf3> + 8002d94: e9dd 2308 ldrd r2, r3, [sp, #32] + 8002d98: f7fd fba6 bl 80004e8 <__aeabi_dmul> + 8002d9c: 4622 mov r2, r4 + 8002d9e: 462b mov r3, r5 + 8002da0: f7fd f9ec bl 800017c <__adddf3> + 8002da4: 4642 mov r2, r8 + 8002da6: 4606 mov r6, r0 + 8002da8: 460f mov r7, r1 + 8002daa: 464b mov r3, r9 + 8002dac: 4640 mov r0, r8 + 8002dae: 4649 mov r1, r9 + 8002db0: f7fd fb9a bl 80004e8 <__aeabi_dmul> + 8002db4: 2200 movs r2, #0 + 8002db6: 4b66 ldr r3, [pc, #408] ; (8002f50 <__ieee754_pow+0x748>) + 8002db8: 4682 mov sl, r0 + 8002dba: 468b mov fp, r1 + 8002dbc: f7fd f9de bl 800017c <__adddf3> + 8002dc0: 4632 mov r2, r6 + 8002dc2: 463b mov r3, r7 + 8002dc4: f7fd f9da bl 800017c <__adddf3> + 8002dc8: 2400 movs r4, #0 + 8002dca: 460d mov r5, r1 + 8002dcc: 4622 mov r2, r4 + 8002dce: 460b mov r3, r1 + 8002dd0: 4640 mov r0, r8 + 8002dd2: 4649 mov r1, r9 + 8002dd4: f7fd fb88 bl 80004e8 <__aeabi_dmul> + 8002dd8: 2200 movs r2, #0 + 8002dda: 4680 mov r8, r0 + 8002ddc: 4689 mov r9, r1 + 8002dde: 4620 mov r0, r4 + 8002de0: 4629 mov r1, r5 + 8002de2: 4b5b ldr r3, [pc, #364] ; (8002f50 <__ieee754_pow+0x748>) + 8002de4: f7fd f9c8 bl 8000178 <__aeabi_dsub> + 8002de8: 4652 mov r2, sl + 8002dea: 465b mov r3, fp + 8002dec: f7fd f9c4 bl 8000178 <__aeabi_dsub> + 8002df0: 4602 mov r2, r0 + 8002df2: 460b mov r3, r1 + 8002df4: 4630 mov r0, r6 + 8002df6: 4639 mov r1, r7 + 8002df8: f7fd f9be bl 8000178 <__aeabi_dsub> + 8002dfc: e9dd 2306 ldrd r2, r3, [sp, #24] + 8002e00: f7fd fb72 bl 80004e8 <__aeabi_dmul> + 8002e04: 4622 mov r2, r4 + 8002e06: 4606 mov r6, r0 + 8002e08: 460f mov r7, r1 + 8002e0a: e9dd 0108 ldrd r0, r1, [sp, #32] + 8002e0e: 462b mov r3, r5 + 8002e10: f7fd fb6a bl 80004e8 <__aeabi_dmul> + 8002e14: 4602 mov r2, r0 + 8002e16: 460b mov r3, r1 + 8002e18: 4630 mov r0, r6 + 8002e1a: 4639 mov r1, r7 + 8002e1c: f7fd f9ae bl 800017c <__adddf3> + 8002e20: 2400 movs r4, #0 + 8002e22: 4606 mov r6, r0 + 8002e24: 460f mov r7, r1 + 8002e26: 4602 mov r2, r0 + 8002e28: 460b mov r3, r1 + 8002e2a: 4640 mov r0, r8 + 8002e2c: 4649 mov r1, r9 + 8002e2e: f7fd f9a5 bl 800017c <__adddf3> + 8002e32: a33b add r3, pc, #236 ; (adr r3, 8002f20 <__ieee754_pow+0x718>) + 8002e34: e9d3 2300 ldrd r2, r3, [r3] + 8002e38: 4620 mov r0, r4 + 8002e3a: 460d mov r5, r1 + 8002e3c: f7fd fb54 bl 80004e8 <__aeabi_dmul> + 8002e40: 4642 mov r2, r8 + 8002e42: 464b mov r3, r9 + 8002e44: e9cd 0106 strd r0, r1, [sp, #24] + 8002e48: 4620 mov r0, r4 + 8002e4a: 4629 mov r1, r5 + 8002e4c: f7fd f994 bl 8000178 <__aeabi_dsub> + 8002e50: 4602 mov r2, r0 + 8002e52: 460b mov r3, r1 + 8002e54: 4630 mov r0, r6 + 8002e56: 4639 mov r1, r7 + 8002e58: f7fd f98e bl 8000178 <__aeabi_dsub> + 8002e5c: a332 add r3, pc, #200 ; (adr r3, 8002f28 <__ieee754_pow+0x720>) + 8002e5e: e9d3 2300 ldrd r2, r3, [r3] + 8002e62: f7fd fb41 bl 80004e8 <__aeabi_dmul> + 8002e66: a332 add r3, pc, #200 ; (adr r3, 8002f30 <__ieee754_pow+0x728>) + 8002e68: e9d3 2300 ldrd r2, r3, [r3] + 8002e6c: 4606 mov r6, r0 + 8002e6e: 460f mov r7, r1 + 8002e70: 4620 mov r0, r4 + 8002e72: 4629 mov r1, r5 + 8002e74: f7fd fb38 bl 80004e8 <__aeabi_dmul> + 8002e78: 4602 mov r2, r0 + 8002e7a: 460b mov r3, r1 + 8002e7c: 4630 mov r0, r6 + 8002e7e: 4639 mov r1, r7 + 8002e80: f7fd f97c bl 800017c <__adddf3> + 8002e84: 9a0d ldr r2, [sp, #52] ; 0x34 + 8002e86: 4b33 ldr r3, [pc, #204] ; (8002f54 <__ieee754_pow+0x74c>) + 8002e88: f04f 0a00 mov.w sl, #0 + 8002e8c: 4413 add r3, r2 + 8002e8e: e9d3 2300 ldrd r2, r3, [r3] + 8002e92: f7fd f973 bl 800017c <__adddf3> + 8002e96: 4680 mov r8, r0 + 8002e98: 980b ldr r0, [sp, #44] ; 0x2c + 8002e9a: 4689 mov r9, r1 + 8002e9c: f7fd faba bl 8000414 <__aeabi_i2d> + 8002ea0: 4604 mov r4, r0 + 8002ea2: 460d mov r5, r1 + 8002ea4: 9a0d ldr r2, [sp, #52] ; 0x34 + 8002ea6: 4b2c ldr r3, [pc, #176] ; (8002f58 <__ieee754_pow+0x750>) + 8002ea8: 4413 add r3, r2 + 8002eaa: e9d3 6700 ldrd r6, r7, [r3] + 8002eae: 4642 mov r2, r8 + 8002eb0: e9dd 0106 ldrd r0, r1, [sp, #24] + 8002eb4: 464b mov r3, r9 + 8002eb6: f7fd f961 bl 800017c <__adddf3> + 8002eba: 4632 mov r2, r6 + 8002ebc: 463b mov r3, r7 + 8002ebe: f7fd f95d bl 800017c <__adddf3> + 8002ec2: 4622 mov r2, r4 + 8002ec4: 462b mov r3, r5 + 8002ec6: f7fd f959 bl 800017c <__adddf3> + 8002eca: 4622 mov r2, r4 + 8002ecc: 462b mov r3, r5 + 8002ece: 4650 mov r0, sl + 8002ed0: 468b mov fp, r1 + 8002ed2: f7fd f951 bl 8000178 <__aeabi_dsub> + 8002ed6: 4632 mov r2, r6 + 8002ed8: 463b mov r3, r7 + 8002eda: f7fd f94d bl 8000178 <__aeabi_dsub> + 8002ede: e9dd 2306 ldrd r2, r3, [sp, #24] + 8002ee2: f7fd f949 bl 8000178 <__aeabi_dsub> + 8002ee6: 4602 mov r2, r0 + 8002ee8: 460b mov r3, r1 + 8002eea: 4640 mov r0, r8 + 8002eec: 4649 mov r1, r9 + 8002eee: e60d b.n 8002b0c <__ieee754_pow+0x304> + 8002ef0: 4a454eef .word 0x4a454eef + 8002ef4: 3fca7e28 .word 0x3fca7e28 + 8002ef8: 93c9db65 .word 0x93c9db65 + 8002efc: 3fcd864a .word 0x3fcd864a + 8002f00: a91d4101 .word 0xa91d4101 + 8002f04: 3fd17460 .word 0x3fd17460 + 8002f08: 518f264d .word 0x518f264d + 8002f0c: 3fd55555 .word 0x3fd55555 + 8002f10: db6fabff .word 0xdb6fabff + 8002f14: 3fdb6db6 .word 0x3fdb6db6 + 8002f18: 33333303 .word 0x33333303 + 8002f1c: 3fe33333 .word 0x3fe33333 + 8002f20: e0000000 .word 0xe0000000 + 8002f24: 3feec709 .word 0x3feec709 + 8002f28: dc3a03fd .word 0xdc3a03fd + 8002f2c: 3feec709 .word 0x3feec709 + 8002f30: 145b01f5 .word 0x145b01f5 + 8002f34: be3e2fe0 .word 0xbe3e2fe0 + 8002f38: 7ff00000 .word 0x7ff00000 + 8002f3c: 43400000 .word 0x43400000 + 8002f40: 0003988e .word 0x0003988e + 8002f44: 000bb679 .word 0x000bb679 + 8002f48: 08003548 .word 0x08003548 + 8002f4c: 3ff00000 .word 0x3ff00000 + 8002f50: 40080000 .word 0x40080000 + 8002f54: 08003568 .word 0x08003568 + 8002f58: 08003558 .word 0x08003558 + 8002f5c: 2601 movs r6, #1 + 8002f5e: e66a b.n 8002c36 <__ieee754_pow+0x42e> + 8002f60: a39d add r3, pc, #628 ; (adr r3, 80031d8 <__ieee754_pow+0x9d0>) + 8002f62: e9d3 2300 ldrd r2, r3, [r3] + 8002f66: 4640 mov r0, r8 + 8002f68: 4649 mov r1, r9 + 8002f6a: f7fd f907 bl 800017c <__adddf3> + 8002f6e: 4622 mov r2, r4 + 8002f70: e9cd 0104 strd r0, r1, [sp, #16] + 8002f74: 462b mov r3, r5 + 8002f76: 4650 mov r0, sl + 8002f78: 4639 mov r1, r7 + 8002f7a: f7fd f8fd bl 8000178 <__aeabi_dsub> + 8002f7e: 4602 mov r2, r0 + 8002f80: 460b mov r3, r1 + 8002f82: e9dd 0104 ldrd r0, r1, [sp, #16] + 8002f86: f7fd fd3f bl 8000a08 <__aeabi_dcmpgt> + 8002f8a: 2800 cmp r0, #0 + 8002f8c: f47f ae09 bne.w 8002ba2 <__ieee754_pow+0x39a> + 8002f90: 4aa3 ldr r2, [pc, #652] ; (8003220 <__ieee754_pow+0xa18>) + 8002f92: f026 4300 bic.w r3, r6, #2147483648 ; 0x80000000 + 8002f96: 4293 cmp r3, r2 + 8002f98: f340 8101 ble.w 800319e <__ieee754_pow+0x996> + 8002f9c: f44f 1a80 mov.w sl, #1048576 ; 0x100000 + 8002fa0: 2000 movs r0, #0 + 8002fa2: 151b asrs r3, r3, #20 + 8002fa4: f2a3 33fe subw r3, r3, #1022 ; 0x3fe + 8002fa8: fa4a f303 asr.w r3, sl, r3 + 8002fac: 4433 add r3, r6 + 8002fae: f3c3 520a ubfx r2, r3, #20, #11 + 8002fb2: 4f9c ldr r7, [pc, #624] ; (8003224 <__ieee754_pow+0xa1c>) + 8002fb4: f2a2 32ff subw r2, r2, #1023 ; 0x3ff + 8002fb8: 4117 asrs r7, r2 + 8002fba: f3c3 0a13 ubfx sl, r3, #0, #20 + 8002fbe: ea23 0107 bic.w r1, r3, r7 + 8002fc2: f1c2 0214 rsb r2, r2, #20 + 8002fc6: f44a 1a80 orr.w sl, sl, #1048576 ; 0x100000 + 8002fca: 460b mov r3, r1 + 8002fcc: fa4a fa02 asr.w sl, sl, r2 + 8002fd0: 2e00 cmp r6, #0 + 8002fd2: 4602 mov r2, r0 + 8002fd4: 4629 mov r1, r5 + 8002fd6: 4620 mov r0, r4 + 8002fd8: bfb8 it lt + 8002fda: f1ca 0a00 rsblt sl, sl, #0 + 8002fde: f7fd f8cb bl 8000178 <__aeabi_dsub> + 8002fe2: e9cd 0102 strd r0, r1, [sp, #8] + 8002fe6: e9dd 0102 ldrd r0, r1, [sp, #8] + 8002fea: 2400 movs r4, #0 + 8002fec: 4642 mov r2, r8 + 8002fee: 464b mov r3, r9 + 8002ff0: f7fd f8c4 bl 800017c <__adddf3> + 8002ff4: a37a add r3, pc, #488 ; (adr r3, 80031e0 <__ieee754_pow+0x9d8>) + 8002ff6: e9d3 2300 ldrd r2, r3, [r3] + 8002ffa: 4620 mov r0, r4 + 8002ffc: 460d mov r5, r1 + 8002ffe: f7fd fa73 bl 80004e8 <__aeabi_dmul> + 8003002: e9dd 2302 ldrd r2, r3, [sp, #8] + 8003006: 4606 mov r6, r0 + 8003008: 460f mov r7, r1 + 800300a: 4620 mov r0, r4 + 800300c: 4629 mov r1, r5 + 800300e: f7fd f8b3 bl 8000178 <__aeabi_dsub> + 8003012: 4602 mov r2, r0 + 8003014: 460b mov r3, r1 + 8003016: 4640 mov r0, r8 + 8003018: 4649 mov r1, r9 + 800301a: f7fd f8ad bl 8000178 <__aeabi_dsub> + 800301e: a372 add r3, pc, #456 ; (adr r3, 80031e8 <__ieee754_pow+0x9e0>) + 8003020: e9d3 2300 ldrd r2, r3, [r3] + 8003024: f7fd fa60 bl 80004e8 <__aeabi_dmul> + 8003028: a371 add r3, pc, #452 ; (adr r3, 80031f0 <__ieee754_pow+0x9e8>) + 800302a: e9d3 2300 ldrd r2, r3, [r3] + 800302e: 4680 mov r8, r0 + 8003030: 4689 mov r9, r1 + 8003032: 4620 mov r0, r4 + 8003034: 4629 mov r1, r5 + 8003036: f7fd fa57 bl 80004e8 <__aeabi_dmul> + 800303a: 4602 mov r2, r0 + 800303c: 460b mov r3, r1 + 800303e: 4640 mov r0, r8 + 8003040: 4649 mov r1, r9 + 8003042: f7fd f89b bl 800017c <__adddf3> + 8003046: 4604 mov r4, r0 + 8003048: 460d mov r5, r1 + 800304a: 4602 mov r2, r0 + 800304c: 460b mov r3, r1 + 800304e: 4630 mov r0, r6 + 8003050: 4639 mov r1, r7 + 8003052: f7fd f893 bl 800017c <__adddf3> + 8003056: 4632 mov r2, r6 + 8003058: 463b mov r3, r7 + 800305a: 4680 mov r8, r0 + 800305c: 4689 mov r9, r1 + 800305e: f7fd f88b bl 8000178 <__aeabi_dsub> + 8003062: 4602 mov r2, r0 + 8003064: 460b mov r3, r1 + 8003066: 4620 mov r0, r4 + 8003068: 4629 mov r1, r5 + 800306a: f7fd f885 bl 8000178 <__aeabi_dsub> + 800306e: 4642 mov r2, r8 + 8003070: 4606 mov r6, r0 + 8003072: 460f mov r7, r1 + 8003074: 464b mov r3, r9 + 8003076: 4640 mov r0, r8 + 8003078: 4649 mov r1, r9 + 800307a: f7fd fa35 bl 80004e8 <__aeabi_dmul> + 800307e: a35e add r3, pc, #376 ; (adr r3, 80031f8 <__ieee754_pow+0x9f0>) + 8003080: e9d3 2300 ldrd r2, r3, [r3] + 8003084: 4604 mov r4, r0 + 8003086: 460d mov r5, r1 + 8003088: f7fd fa2e bl 80004e8 <__aeabi_dmul> + 800308c: a35c add r3, pc, #368 ; (adr r3, 8003200 <__ieee754_pow+0x9f8>) + 800308e: e9d3 2300 ldrd r2, r3, [r3] + 8003092: f7fd f871 bl 8000178 <__aeabi_dsub> + 8003096: 4622 mov r2, r4 + 8003098: 462b mov r3, r5 + 800309a: f7fd fa25 bl 80004e8 <__aeabi_dmul> + 800309e: a35a add r3, pc, #360 ; (adr r3, 8003208 <__ieee754_pow+0xa00>) + 80030a0: e9d3 2300 ldrd r2, r3, [r3] + 80030a4: f7fd f86a bl 800017c <__adddf3> + 80030a8: 4622 mov r2, r4 + 80030aa: 462b mov r3, r5 + 80030ac: f7fd fa1c bl 80004e8 <__aeabi_dmul> + 80030b0: a357 add r3, pc, #348 ; (adr r3, 8003210 <__ieee754_pow+0xa08>) + 80030b2: e9d3 2300 ldrd r2, r3, [r3] + 80030b6: f7fd f85f bl 8000178 <__aeabi_dsub> + 80030ba: 4622 mov r2, r4 + 80030bc: 462b mov r3, r5 + 80030be: f7fd fa13 bl 80004e8 <__aeabi_dmul> + 80030c2: a355 add r3, pc, #340 ; (adr r3, 8003218 <__ieee754_pow+0xa10>) + 80030c4: e9d3 2300 ldrd r2, r3, [r3] + 80030c8: f7fd f858 bl 800017c <__adddf3> + 80030cc: 4622 mov r2, r4 + 80030ce: 462b mov r3, r5 + 80030d0: f7fd fa0a bl 80004e8 <__aeabi_dmul> + 80030d4: 4602 mov r2, r0 + 80030d6: 460b mov r3, r1 + 80030d8: 4640 mov r0, r8 + 80030da: 4649 mov r1, r9 + 80030dc: f7fd f84c bl 8000178 <__aeabi_dsub> + 80030e0: 4604 mov r4, r0 + 80030e2: 460d mov r5, r1 + 80030e4: 4602 mov r2, r0 + 80030e6: 460b mov r3, r1 + 80030e8: 4640 mov r0, r8 + 80030ea: 4649 mov r1, r9 + 80030ec: f7fd f9fc bl 80004e8 <__aeabi_dmul> + 80030f0: 2200 movs r2, #0 + 80030f2: e9cd 0102 strd r0, r1, [sp, #8] + 80030f6: f04f 4380 mov.w r3, #1073741824 ; 0x40000000 + 80030fa: 4620 mov r0, r4 + 80030fc: 4629 mov r1, r5 + 80030fe: f7fd f83b bl 8000178 <__aeabi_dsub> + 8003102: 4602 mov r2, r0 + 8003104: 460b mov r3, r1 + 8003106: e9dd 0102 ldrd r0, r1, [sp, #8] + 800310a: f7fd fb17 bl 800073c <__aeabi_ddiv> + 800310e: 4632 mov r2, r6 + 8003110: 4604 mov r4, r0 + 8003112: 460d mov r5, r1 + 8003114: 463b mov r3, r7 + 8003116: 4640 mov r0, r8 + 8003118: 4649 mov r1, r9 + 800311a: f7fd f9e5 bl 80004e8 <__aeabi_dmul> + 800311e: 4632 mov r2, r6 + 8003120: 463b mov r3, r7 + 8003122: f7fd f82b bl 800017c <__adddf3> + 8003126: 4602 mov r2, r0 + 8003128: 460b mov r3, r1 + 800312a: 4620 mov r0, r4 + 800312c: 4629 mov r1, r5 + 800312e: f7fd f823 bl 8000178 <__aeabi_dsub> + 8003132: 4642 mov r2, r8 + 8003134: 464b mov r3, r9 + 8003136: f7fd f81f bl 8000178 <__aeabi_dsub> + 800313a: 4602 mov r2, r0 + 800313c: 460b mov r3, r1 + 800313e: 2000 movs r0, #0 + 8003140: 4939 ldr r1, [pc, #228] ; (8003228 <__ieee754_pow+0xa20>) + 8003142: f7fd f819 bl 8000178 <__aeabi_dsub> + 8003146: eb01 540a add.w r4, r1, sl, lsl #20 + 800314a: f5b4 1f80 cmp.w r4, #1048576 ; 0x100000 + 800314e: da29 bge.n 80031a4 <__ieee754_pow+0x99c> + 8003150: 4652 mov r2, sl + 8003152: f000 f955 bl 8003400 + 8003156: e9dd 2300 ldrd r2, r3, [sp] + 800315a: f7ff bbfe b.w 800295a <__ieee754_pow+0x152> + 800315e: 4b33 ldr r3, [pc, #204] ; (800322c <__ieee754_pow+0xa24>) + 8003160: f021 4700 bic.w r7, r1, #2147483648 ; 0x80000000 + 8003164: 429f cmp r7, r3 + 8003166: f77f af13 ble.w 8002f90 <__ieee754_pow+0x788> + 800316a: 4b31 ldr r3, [pc, #196] ; (8003230 <__ieee754_pow+0xa28>) + 800316c: 440b add r3, r1 + 800316e: 4303 orrs r3, r0 + 8003170: d009 beq.n 8003186 <__ieee754_pow+0x97e> + 8003172: e9dd 0100 ldrd r0, r1, [sp] + 8003176: 2200 movs r2, #0 + 8003178: 2300 movs r3, #0 + 800317a: f7fd fc27 bl 80009cc <__aeabi_dcmplt> + 800317e: 3800 subs r0, #0 + 8003180: bf18 it ne + 8003182: 2001 movne r0, #1 + 8003184: e453 b.n 8002a2e <__ieee754_pow+0x226> + 8003186: 4622 mov r2, r4 + 8003188: 462b mov r3, r5 + 800318a: f7fc fff5 bl 8000178 <__aeabi_dsub> + 800318e: 4642 mov r2, r8 + 8003190: 464b mov r3, r9 + 8003192: f7fd fc2f bl 80009f4 <__aeabi_dcmpge> + 8003196: 2800 cmp r0, #0 + 8003198: f43f aefa beq.w 8002f90 <__ieee754_pow+0x788> + 800319c: e7e9 b.n 8003172 <__ieee754_pow+0x96a> + 800319e: f04f 0a00 mov.w sl, #0 + 80031a2: e720 b.n 8002fe6 <__ieee754_pow+0x7de> + 80031a4: 4621 mov r1, r4 + 80031a6: e7d6 b.n 8003156 <__ieee754_pow+0x94e> + 80031a8: f04f 0b00 mov.w fp, #0 + 80031ac: f8df c078 ldr.w ip, [pc, #120] ; 8003228 <__ieee754_pow+0xa20> + 80031b0: f7ff bbba b.w 8002928 <__ieee754_pow+0x120> + 80031b4: f04f 0b00 mov.w fp, #0 + 80031b8: f04f 0c00 mov.w ip, #0 + 80031bc: f7ff bbb4 b.w 8002928 <__ieee754_pow+0x120> + 80031c0: 4640 mov r0, r8 + 80031c2: 4649 mov r1, r9 + 80031c4: f7ff bb3d b.w 8002842 <__ieee754_pow+0x3a> + 80031c8: 9200 str r2, [sp, #0] + 80031ca: f7ff bb89 b.w 80028e0 <__ieee754_pow+0xd8> + 80031ce: 2300 movs r3, #0 + 80031d0: f7ff bb73 b.w 80028ba <__ieee754_pow+0xb2> + 80031d4: f3af 8000 nop.w + 80031d8: 652b82fe .word 0x652b82fe + 80031dc: 3c971547 .word 0x3c971547 + 80031e0: 00000000 .word 0x00000000 + 80031e4: 3fe62e43 .word 0x3fe62e43 + 80031e8: fefa39ef .word 0xfefa39ef + 80031ec: 3fe62e42 .word 0x3fe62e42 + 80031f0: 0ca86c39 .word 0x0ca86c39 + 80031f4: be205c61 .word 0xbe205c61 + 80031f8: 72bea4d0 .word 0x72bea4d0 + 80031fc: 3e663769 .word 0x3e663769 + 8003200: c5d26bf1 .word 0xc5d26bf1 + 8003204: 3ebbbd41 .word 0x3ebbbd41 + 8003208: af25de2c .word 0xaf25de2c + 800320c: 3f11566a .word 0x3f11566a + 8003210: 16bebd93 .word 0x16bebd93 + 8003214: 3f66c16c .word 0x3f66c16c + 8003218: 5555553e .word 0x5555553e + 800321c: 3fc55555 .word 0x3fc55555 + 8003220: 3fe00000 .word 0x3fe00000 + 8003224: 000fffff .word 0x000fffff + 8003228: 3ff00000 .word 0x3ff00000 + 800322c: 4090cbff .word 0x4090cbff + 8003230: 3f6f3400 .word 0x3f6f3400 + +08003234 <__ieee754_sqrt>: + 8003234: f8df c158 ldr.w ip, [pc, #344] ; 8003390 <__ieee754_sqrt+0x15c> + 8003238: e92d 41f0 stmdb sp!, {r4, r5, r6, r7, r8, lr} + 800323c: ea3c 0c01 bics.w ip, ip, r1 + 8003240: 4606 mov r6, r0 + 8003242: 460d mov r5, r1 + 8003244: 460c mov r4, r1 + 8003246: 460a mov r2, r1 + 8003248: 4607 mov r7, r0 + 800324a: 4603 mov r3, r0 + 800324c: d10f bne.n 800326e <__ieee754_sqrt+0x3a> + 800324e: 4602 mov r2, r0 + 8003250: 460b mov r3, r1 + 8003252: f7fd f949 bl 80004e8 <__aeabi_dmul> + 8003256: 4602 mov r2, r0 + 8003258: 460b mov r3, r1 + 800325a: 4630 mov r0, r6 + 800325c: 4629 mov r1, r5 + 800325e: f7fc ff8d bl 800017c <__adddf3> + 8003262: 4606 mov r6, r0 + 8003264: 460d mov r5, r1 + 8003266: 4630 mov r0, r6 + 8003268: 4629 mov r1, r5 + 800326a: e8bd 81f0 ldmia.w sp!, {r4, r5, r6, r7, r8, pc} + 800326e: 2900 cmp r1, #0 + 8003270: dc0e bgt.n 8003290 <__ieee754_sqrt+0x5c> + 8003272: f021 4c00 bic.w ip, r1, #2147483648 ; 0x80000000 + 8003276: ea5c 0707 orrs.w r7, ip, r7 + 800327a: d0f4 beq.n 8003266 <__ieee754_sqrt+0x32> + 800327c: b141 cbz r1, 8003290 <__ieee754_sqrt+0x5c> + 800327e: 4602 mov r2, r0 + 8003280: 460b mov r3, r1 + 8003282: f7fc ff79 bl 8000178 <__aeabi_dsub> + 8003286: 4602 mov r2, r0 + 8003288: 460b mov r3, r1 + 800328a: f7fd fa57 bl 800073c <__aeabi_ddiv> + 800328e: e7e8 b.n 8003262 <__ieee754_sqrt+0x2e> + 8003290: 1521 asrs r1, r4, #20 + 8003292: d075 beq.n 8003380 <__ieee754_sqrt+0x14c> + 8003294: 07cc lsls r4, r1, #31 + 8003296: f04f 0400 mov.w r4, #0 + 800329a: f3c2 0213 ubfx r2, r2, #0, #20 + 800329e: f2a1 37ff subw r7, r1, #1023 ; 0x3ff + 80032a2: f442 1280 orr.w r2, r2, #1048576 ; 0x100000 + 80032a6: bf5e ittt pl + 80032a8: 0fd9 lsrpl r1, r3, #31 + 80032aa: 005b lslpl r3, r3, #1 + 80032ac: eb01 0242 addpl.w r2, r1, r2, lsl #1 + 80032b0: 0fd9 lsrs r1, r3, #31 + 80032b2: eb01 0242 add.w r2, r1, r2, lsl #1 + 80032b6: 2516 movs r5, #22 + 80032b8: 4620 mov r0, r4 + 80032ba: f44f 1100 mov.w r1, #2097152 ; 0x200000 + 80032be: 107f asrs r7, r7, #1 + 80032c0: 005b lsls r3, r3, #1 + 80032c2: 1846 adds r6, r0, r1 + 80032c4: 4296 cmp r6, r2 + 80032c6: bfde ittt le + 80032c8: 1b92 suble r2, r2, r6 + 80032ca: 1870 addle r0, r6, r1 + 80032cc: 1864 addle r4, r4, r1 + 80032ce: 0052 lsls r2, r2, #1 + 80032d0: 3d01 subs r5, #1 + 80032d2: eb02 72d3 add.w r2, r2, r3, lsr #31 + 80032d6: ea4f 0151 mov.w r1, r1, lsr #1 + 80032da: ea4f 0343 mov.w r3, r3, lsl #1 + 80032de: d1f0 bne.n 80032c2 <__ieee754_sqrt+0x8e> + 80032e0: 4629 mov r1, r5 + 80032e2: f04f 0e20 mov.w lr, #32 + 80032e6: f04f 4600 mov.w r6, #2147483648 ; 0x80000000 + 80032ea: 4282 cmp r2, r0 + 80032ec: eb06 0c05 add.w ip, r6, r5 + 80032f0: dc02 bgt.n 80032f8 <__ieee754_sqrt+0xc4> + 80032f2: d113 bne.n 800331c <__ieee754_sqrt+0xe8> + 80032f4: 459c cmp ip, r3 + 80032f6: d811 bhi.n 800331c <__ieee754_sqrt+0xe8> + 80032f8: f1bc 0f00 cmp.w ip, #0 + 80032fc: eb0c 0506 add.w r5, ip, r6 + 8003300: da43 bge.n 800338a <__ieee754_sqrt+0x156> + 8003302: 2d00 cmp r5, #0 + 8003304: db41 blt.n 800338a <__ieee754_sqrt+0x156> + 8003306: f100 0801 add.w r8, r0, #1 + 800330a: 1a12 subs r2, r2, r0 + 800330c: 4640 mov r0, r8 + 800330e: 459c cmp ip, r3 + 8003310: bf88 it hi + 8003312: f102 32ff addhi.w r2, r2, #4294967295 ; 0xffffffff + 8003316: eba3 030c sub.w r3, r3, ip + 800331a: 4431 add r1, r6 + 800331c: ea4f 7cd3 mov.w ip, r3, lsr #31 + 8003320: f1be 0e01 subs.w lr, lr, #1 + 8003324: eb0c 0242 add.w r2, ip, r2, lsl #1 + 8003328: ea4f 0343 mov.w r3, r3, lsl #1 + 800332c: ea4f 0656 mov.w r6, r6, lsr #1 + 8003330: d1db bne.n 80032ea <__ieee754_sqrt+0xb6> + 8003332: 4313 orrs r3, r2 + 8003334: d006 beq.n 8003344 <__ieee754_sqrt+0x110> + 8003336: 1c48 adds r0, r1, #1 + 8003338: bf0b itete eq + 800333a: 4671 moveq r1, lr + 800333c: 3101 addne r1, #1 + 800333e: 3401 addeq r4, #1 + 8003340: f021 0101 bicne.w r1, r1, #1 + 8003344: 1063 asrs r3, r4, #1 + 8003346: 0849 lsrs r1, r1, #1 + 8003348: f103 537f add.w r3, r3, #1069547520 ; 0x3fc00000 + 800334c: 07e2 lsls r2, r4, #31 + 800334e: f503 1300 add.w r3, r3, #2097152 ; 0x200000 + 8003352: bf48 it mi + 8003354: f041 4100 orrmi.w r1, r1, #2147483648 ; 0x80000000 + 8003358: 460e mov r6, r1 + 800335a: eb03 5507 add.w r5, r3, r7, lsl #20 + 800335e: e782 b.n 8003266 <__ieee754_sqrt+0x32> + 8003360: 0ada lsrs r2, r3, #11 + 8003362: 3815 subs r0, #21 + 8003364: 055b lsls r3, r3, #21 + 8003366: 2a00 cmp r2, #0 + 8003368: d0fa beq.n 8003360 <__ieee754_sqrt+0x12c> + 800336a: 02d5 lsls r5, r2, #11 + 800336c: d50a bpl.n 8003384 <__ieee754_sqrt+0x150> + 800336e: f1c1 0420 rsb r4, r1, #32 + 8003372: fa23 f404 lsr.w r4, r3, r4 + 8003376: 1e4d subs r5, r1, #1 + 8003378: 408b lsls r3, r1 + 800337a: 4322 orrs r2, r4 + 800337c: 1b41 subs r1, r0, r5 + 800337e: e789 b.n 8003294 <__ieee754_sqrt+0x60> + 8003380: 4608 mov r0, r1 + 8003382: e7f0 b.n 8003366 <__ieee754_sqrt+0x132> + 8003384: 0052 lsls r2, r2, #1 + 8003386: 3101 adds r1, #1 + 8003388: e7ef b.n 800336a <__ieee754_sqrt+0x136> + 800338a: 4680 mov r8, r0 + 800338c: e7bd b.n 800330a <__ieee754_sqrt+0xd6> + 800338e: bf00 nop + 8003390: 7ff00000 .word 0x7ff00000 + +08003394 : + 8003394: b570 push {r4, r5, r6, lr} + 8003396: 4604 mov r4, r0 + 8003398: 460d mov r5, r1 + 800339a: 4616 mov r6, r2 + 800339c: f7ff f946 bl 800262c <__errno> + 80033a0: 4629 mov r1, r5 + 80033a2: 6006 str r6, [r0, #0] + 80033a4: 4620 mov r0, r4 + 80033a6: bd70 pop {r4, r5, r6, pc} + +080033a8 : + 80033a8: b537 push {r0, r1, r2, r4, r5, lr} + 80033aa: 4615 mov r5, r2 + 80033ac: 461c mov r4, r3 + 80033ae: b180 cbz r0, 80033d2 + 80033b0: 4610 mov r0, r2 + 80033b2: f103 4100 add.w r1, r3, #2147483648 ; 0x80000000 + 80033b6: e9cd 0100 strd r0, r1, [sp] + 80033ba: e9dd 2300 ldrd r2, r3, [sp] + 80033be: 4628 mov r0, r5 + 80033c0: 4621 mov r1, r4 + 80033c2: f7fd f891 bl 80004e8 <__aeabi_dmul> + 80033c6: 2222 movs r2, #34 ; 0x22 + 80033c8: b003 add sp, #12 + 80033ca: e8bd 4030 ldmia.w sp!, {r4, r5, lr} + 80033ce: f7ff bfe1 b.w 8003394 + 80033d2: 4610 mov r0, r2 + 80033d4: 4619 mov r1, r3 + 80033d6: e7ee b.n 80033b6 + +080033d8 <__math_uflow>: + 80033d8: 2200 movs r2, #0 + 80033da: f04f 5380 mov.w r3, #268435456 ; 0x10000000 + 80033de: f7ff bfe3 b.w 80033a8 + +080033e2 <__math_oflow>: + 80033e2: 2200 movs r2, #0 + 80033e4: f04f 43e0 mov.w r3, #1879048192 ; 0x70000000 + 80033e8: f7ff bfde b.w 80033a8 + +080033ec : + 80033ec: f021 4100 bic.w r1, r1, #2147483648 ; 0x80000000 + 80033f0: 4770 bx lr + +080033f2 : + 80033f2: f041 4000 orr.w r0, r1, #2147483648 ; 0x80000000 + 80033f6: f500 1080 add.w r0, r0, #1048576 ; 0x100000 + 80033fa: 0fc0 lsrs r0, r0, #31 + 80033fc: 4770 bx lr ... -08002bf8 : - 8002bf8: b5f8 push {r3, r4, r5, r6, r7, lr} - 8002bfa: f3c1 560a ubfx r6, r1, #20, #11 - 8002bfe: 4604 mov r4, r0 - 8002c00: 460d mov r5, r1 - 8002c02: 4617 mov r7, r2 - 8002c04: 460b mov r3, r1 - 8002c06: b996 cbnz r6, 8002c2e - 8002c08: f021 4300 bic.w r3, r1, #2147483648 ; 0x80000000 - 8002c0c: 4303 orrs r3, r0 - 8002c0e: d039 beq.n 8002c84 - 8002c10: 4b33 ldr r3, [pc, #204] ; (8002ce0 ) - 8002c12: 2200 movs r2, #0 - 8002c14: f7fd fc68 bl 80004e8 <__aeabi_dmul> - 8002c18: 4b32 ldr r3, [pc, #200] ; (8002ce4 ) - 8002c1a: 4604 mov r4, r0 - 8002c1c: 429f cmp r7, r3 - 8002c1e: 460d mov r5, r1 - 8002c20: da0f bge.n 8002c42 - 8002c22: a32b add r3, pc, #172 ; (adr r3, 8002cd0 ) - 8002c24: e9d3 2300 ldrd r2, r3, [r3] - 8002c28: f7fd fc5e bl 80004e8 <__aeabi_dmul> - 8002c2c: e006 b.n 8002c3c - 8002c2e: f240 72ff movw r2, #2047 ; 0x7ff - 8002c32: 4296 cmp r6, r2 - 8002c34: d10a bne.n 8002c4c - 8002c36: 4602 mov r2, r0 - 8002c38: f7fd faa0 bl 800017c <__adddf3> - 8002c3c: 4604 mov r4, r0 - 8002c3e: 460d mov r5, r1 - 8002c40: e020 b.n 8002c84 - 8002c42: 460b mov r3, r1 - 8002c44: f3c1 510a ubfx r1, r1, #20, #11 - 8002c48: f1a1 0636 sub.w r6, r1, #54 ; 0x36 - 8002c4c: f240 72fe movw r2, #2046 ; 0x7fe - 8002c50: 19b9 adds r1, r7, r6 - 8002c52: 4291 cmp r1, r2 - 8002c54: dd0e ble.n 8002c74 - 8002c56: f005 4400 and.w r4, r5, #2147483648 ; 0x80000000 - 8002c5a: f044 41fc orr.w r1, r4, #2113929216 ; 0x7e000000 - 8002c5e: f441 115f orr.w r1, r1, #3653632 ; 0x37c000 - 8002c62: f441 5110 orr.w r1, r1, #9216 ; 0x2400 - 8002c66: 4820 ldr r0, [pc, #128] ; (8002ce8 ) - 8002c68: f041 013c orr.w r1, r1, #60 ; 0x3c - 8002c6c: a31a add r3, pc, #104 ; (adr r3, 8002cd8 ) - 8002c6e: e9d3 2300 ldrd r2, r3, [r3] - 8002c72: e7d9 b.n 8002c28 - 8002c74: 2900 cmp r1, #0 - 8002c76: dd08 ble.n 8002c8a - 8002c78: f023 43ff bic.w r3, r3, #2139095040 ; 0x7f800000 - 8002c7c: f423 03e0 bic.w r3, r3, #7340032 ; 0x700000 - 8002c80: ea43 5501 orr.w r5, r3, r1, lsl #20 - 8002c84: 4620 mov r0, r4 - 8002c86: 4629 mov r1, r5 - 8002c88: bdf8 pop {r3, r4, r5, r6, r7, pc} - 8002c8a: f111 0f35 cmn.w r1, #53 ; 0x35 - 8002c8e: da12 bge.n 8002cb6 - 8002c90: f24c 3350 movw r3, #50000 ; 0xc350 - 8002c94: 429f cmp r7, r3 - 8002c96: ea4f 73d5 mov.w r3, r5, lsr #31 - 8002c9a: ea4f 74c3 mov.w r4, r3, lsl #31 - 8002c9e: dcdc bgt.n 8002c5a - 8002ca0: a30b add r3, pc, #44 ; (adr r3, 8002cd0 ) - 8002ca2: e9d3 2300 ldrd r2, r3, [r3] - 8002ca6: f044 71d2 orr.w r1, r4, #27525120 ; 0x1a40000 - 8002caa: f441 31b7 orr.w r1, r1, #93696 ; 0x16e00 - 8002cae: 480f ldr r0, [pc, #60] ; (8002cec ) - 8002cb0: f041 011f orr.w r1, r1, #31 - 8002cb4: e7b8 b.n 8002c28 - 8002cb6: f023 43ff bic.w r3, r3, #2139095040 ; 0x7f800000 - 8002cba: 3136 adds r1, #54 ; 0x36 - 8002cbc: f423 03e0 bic.w r3, r3, #7340032 ; 0x700000 - 8002cc0: ea43 5501 orr.w r5, r3, r1, lsl #20 - 8002cc4: 4620 mov r0, r4 - 8002cc6: 4629 mov r1, r5 - 8002cc8: 2200 movs r2, #0 - 8002cca: 4b09 ldr r3, [pc, #36] ; (8002cf0 ) - 8002ccc: e7ac b.n 8002c28 - 8002cce: bf00 nop - 8002cd0: c2f8f359 .word 0xc2f8f359 - 8002cd4: 01a56e1f .word 0x01a56e1f - 8002cd8: 8800759c .word 0x8800759c - 8002cdc: 7e37e43c .word 0x7e37e43c - 8002ce0: 43500000 .word 0x43500000 - 8002ce4: ffff3cb0 .word 0xffff3cb0 - 8002ce8: 8800759c .word 0x8800759c - 8002cec: c2f8f359 .word 0xc2f8f359 - 8002cf0: 3c900000 .word 0x3c900000 - -08002cf4 <_init>: - 8002cf4: b5f8 push {r3, r4, r5, r6, r7, lr} - 8002cf6: bf00 nop - 8002cf8: bcf8 pop {r3, r4, r5, r6, r7} - 8002cfa: bc08 pop {r3} - 8002cfc: 469e mov lr, r3 - 8002cfe: 4770 bx lr - -08002d00 <_fini>: - 8002d00: b5f8 push {r3, r4, r5, r6, r7, lr} - 8002d02: bf00 nop - 8002d04: bcf8 pop {r3, r4, r5, r6, r7} - 8002d06: bc08 pop {r3} - 8002d08: 469e mov lr, r3 - 8002d0a: 4770 bx lr +08003400 : + 8003400: b5f8 push {r3, r4, r5, r6, r7, lr} + 8003402: f3c1 560a ubfx r6, r1, #20, #11 + 8003406: 4604 mov r4, r0 + 8003408: 460d mov r5, r1 + 800340a: 4617 mov r7, r2 + 800340c: 460b mov r3, r1 + 800340e: b996 cbnz r6, 8003436 + 8003410: f021 4300 bic.w r3, r1, #2147483648 ; 0x80000000 + 8003414: 4303 orrs r3, r0 + 8003416: d039 beq.n 800348c + 8003418: 4b33 ldr r3, [pc, #204] ; (80034e8 ) + 800341a: 2200 movs r2, #0 + 800341c: f7fd f864 bl 80004e8 <__aeabi_dmul> + 8003420: 4b32 ldr r3, [pc, #200] ; (80034ec ) + 8003422: 4604 mov r4, r0 + 8003424: 429f cmp r7, r3 + 8003426: 460d mov r5, r1 + 8003428: da0f bge.n 800344a + 800342a: a32b add r3, pc, #172 ; (adr r3, 80034d8 ) + 800342c: e9d3 2300 ldrd r2, r3, [r3] + 8003430: f7fd f85a bl 80004e8 <__aeabi_dmul> + 8003434: e006 b.n 8003444 + 8003436: f240 72ff movw r2, #2047 ; 0x7ff + 800343a: 4296 cmp r6, r2 + 800343c: d10a bne.n 8003454 + 800343e: 4602 mov r2, r0 + 8003440: f7fc fe9c bl 800017c <__adddf3> + 8003444: 4604 mov r4, r0 + 8003446: 460d mov r5, r1 + 8003448: e020 b.n 800348c + 800344a: 460b mov r3, r1 + 800344c: f3c1 510a ubfx r1, r1, #20, #11 + 8003450: f1a1 0636 sub.w r6, r1, #54 ; 0x36 + 8003454: f240 72fe movw r2, #2046 ; 0x7fe + 8003458: 19b9 adds r1, r7, r6 + 800345a: 4291 cmp r1, r2 + 800345c: dd0e ble.n 800347c + 800345e: f005 4400 and.w r4, r5, #2147483648 ; 0x80000000 + 8003462: f044 41fc orr.w r1, r4, #2113929216 ; 0x7e000000 + 8003466: f441 115f orr.w r1, r1, #3653632 ; 0x37c000 + 800346a: f441 5110 orr.w r1, r1, #9216 ; 0x2400 + 800346e: 4820 ldr r0, [pc, #128] ; (80034f0 ) + 8003470: f041 013c orr.w r1, r1, #60 ; 0x3c + 8003474: a31a add r3, pc, #104 ; (adr r3, 80034e0 ) + 8003476: e9d3 2300 ldrd r2, r3, [r3] + 800347a: e7d9 b.n 8003430 + 800347c: 2900 cmp r1, #0 + 800347e: dd08 ble.n 8003492 + 8003480: f023 43ff bic.w r3, r3, #2139095040 ; 0x7f800000 + 8003484: f423 03e0 bic.w r3, r3, #7340032 ; 0x700000 + 8003488: ea43 5501 orr.w r5, r3, r1, lsl #20 + 800348c: 4620 mov r0, r4 + 800348e: 4629 mov r1, r5 + 8003490: bdf8 pop {r3, r4, r5, r6, r7, pc} + 8003492: f111 0f35 cmn.w r1, #53 ; 0x35 + 8003496: da12 bge.n 80034be + 8003498: f24c 3350 movw r3, #50000 ; 0xc350 + 800349c: 429f cmp r7, r3 + 800349e: ea4f 73d5 mov.w r3, r5, lsr #31 + 80034a2: ea4f 74c3 mov.w r4, r3, lsl #31 + 80034a6: dcdc bgt.n 8003462 + 80034a8: a30b add r3, pc, #44 ; (adr r3, 80034d8 ) + 80034aa: e9d3 2300 ldrd r2, r3, [r3] + 80034ae: f044 71d2 orr.w r1, r4, #27525120 ; 0x1a40000 + 80034b2: f441 31b7 orr.w r1, r1, #93696 ; 0x16e00 + 80034b6: 480f ldr r0, [pc, #60] ; (80034f4 ) + 80034b8: f041 011f orr.w r1, r1, #31 + 80034bc: e7b8 b.n 8003430 + 80034be: f023 43ff bic.w r3, r3, #2139095040 ; 0x7f800000 + 80034c2: 3136 adds r1, #54 ; 0x36 + 80034c4: f423 03e0 bic.w r3, r3, #7340032 ; 0x700000 + 80034c8: ea43 5501 orr.w r5, r3, r1, lsl #20 + 80034cc: 4620 mov r0, r4 + 80034ce: 4629 mov r1, r5 + 80034d0: 2200 movs r2, #0 + 80034d2: 4b09 ldr r3, [pc, #36] ; (80034f8 ) + 80034d4: e7ac b.n 8003430 + 80034d6: bf00 nop + 80034d8: c2f8f359 .word 0xc2f8f359 + 80034dc: 01a56e1f .word 0x01a56e1f + 80034e0: 8800759c .word 0x8800759c + 80034e4: 7e37e43c .word 0x7e37e43c + 80034e8: 43500000 .word 0x43500000 + 80034ec: ffff3cb0 .word 0xffff3cb0 + 80034f0: 8800759c .word 0x8800759c + 80034f4: c2f8f359 .word 0xc2f8f359 + 80034f8: 3c900000 .word 0x3c900000 + +080034fc <_init>: + 80034fc: b5f8 push {r3, r4, r5, r6, r7, lr} + 80034fe: bf00 nop + 8003500: bcf8 pop {r3, r4, r5, r6, r7} + 8003502: bc08 pop {r3} + 8003504: 469e mov lr, r3 + 8003506: 4770 bx lr + +08003508 <_fini>: + 8003508: b5f8 push {r3, r4, r5, r6, r7, lr} + 800350a: bf00 nop + 800350c: bcf8 pop {r3, r4, r5, r6, r7} + 800350e: bc08 pop {r3} + 8003510: 469e mov lr, r3 + 8003512: 4770 bx lr diff --git a/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.map b/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.map index b0e9baf..cda8377 100644 --- a/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.map +++ b/embedded-c-system-code/All_cubeIDE/Debug/All_cubeIDE.map @@ -30,6 +30,8 @@ Archive member included to satisfy reference by file (symbol) /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) (scalbn) /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldf3.o) ./Src/Encoder/ENCODER_program.o (__aeabi_dmul) +/opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_mulsf3.o) + ./Src/main.o (__aeabi_fmul) /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) (__aeabi_dsub) /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivdf3.o) @@ -44,6 +46,12 @@ Archive member included to satisfy reference by file (symbol) ./Src/main.o (__aeabi_d2uiz) /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_truncdfsf2.o) ./Src/Encoder/ENCODER_program.o (__aeabi_d2f) +/opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubsf3.o) + ./Src/main.o (__aeabi_i2f) +/opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivsf3.o) + ./Src/main.o (__aeabi_fdiv) +/opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixsfsi.o) + ./Src/main.o (__aeabi_f2iz) Discarded input sections @@ -66,8 +74,6 @@ Discarded input sections .text 0x0000000000000000 0x0 ./Src/ADC/ADC_program.o .data 0x0000000000000000 0x0 ./Src/ADC/ADC_program.o .bss 0x0000000000000000 0x0 ./Src/ADC/ADC_program.o - .text.MADC1_u16ReadValue - 0x0000000000000000 0x18 ./Src/ADC/ADC_program.o .group 0x0000000000000000 0xc ./Src/AFIO/AFIO_program.o .group 0x0000000000000000 0xc ./Src/AFIO/AFIO_program.o .group 0x0000000000000000 0xc ./Src/AFIO/AFIO_program.o @@ -162,8 +168,6 @@ Discarded input sections .bss 0x0000000000000000 0x0 ./Src/STK/STK_program.o .text.MSTK_voidSetIntervalSingle 0x0000000000000000 0x4c ./Src/STK/STK_program.o - .text.MSTK_voidSetIntervalPeriodic - 0x0000000000000000 0x4c ./Src/STK/STK_program.o .text.MSTK_voidStopInterval 0x0000000000000000 0x34 ./Src/STK/STK_program.o .text.MSTK_u32GetElapsedTime @@ -244,8 +248,6 @@ Discarded input sections .text 0x0000000000000000 0x0 ./Src/UART2/USART_program.o .data 0x0000000000000000 0x0 ./Src/UART2/USART_program.o .bss 0x0000000000000000 0x0 ./Src/UART2/USART_program.o - .text.MUSART2_voidSendNumbers - 0x0000000000000000 0x2a ./Src/UART2/USART_program.o .debug_macro 0x0000000000000000 0xa72 ./Src/UART2/USART_program.o .debug_macro 0x0000000000000000 0x22 ./Src/UART2/USART_program.o .debug_macro 0x0000000000000000 0x1c ./Src/UART2/USART_program.o @@ -275,6 +277,25 @@ Discarded input sections .group 0x0000000000000000 0xc ./Src/main.o .group 0x0000000000000000 0xc ./Src/main.o .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o + .group 0x0000000000000000 0xc ./Src/main.o .text 0x0000000000000000 0x0 ./Src/main.o .data 0x0000000000000000 0x0 ./Src/main.o .bss 0x0000000000000000 0x0 ./Src/main.o @@ -294,15 +315,35 @@ Discarded input sections .debug_macro 0x0000000000000000 0x3c ./Src/main.o .debug_macro 0x0000000000000000 0x34 ./Src/main.o .debug_macro 0x0000000000000000 0x16 ./Src/main.o - .debug_macro 0x0000000000000000 0x43 ./Src/main.o .debug_macro 0x0000000000000000 0x57 ./Src/main.o + .debug_macro 0x0000000000000000 0x97 ./Src/main.o + .debug_macro 0x0000000000000000 0x341 ./Src/main.o + .debug_macro 0x0000000000000000 0xfd ./Src/main.o + .debug_macro 0x0000000000000000 0x10 ./Src/main.o + .debug_macro 0x0000000000000000 0x16 ./Src/main.o + .debug_macro 0x0000000000000000 0x43 ./Src/main.o .debug_macro 0x0000000000000000 0x34 ./Src/main.o .debug_macro 0x0000000000000000 0x10 ./Src/main.o .debug_macro 0x0000000000000000 0x58 ./Src/main.o .debug_macro 0x0000000000000000 0x71 ./Src/main.o .debug_macro 0x0000000000000000 0x1c ./Src/main.o .debug_macro 0x0000000000000000 0x12a ./Src/main.o - .debug_macro 0x0000000000000000 0x341 ./Src/main.o + .debug_macro 0x0000000000000000 0x10 ./Src/main.o + .debug_macro 0x0000000000000000 0x6a ./Src/main.o + .debug_macro 0x0000000000000000 0x1c ./Src/main.o + .debug_macro 0x0000000000000000 0x52 ./Src/main.o + .debug_macro 0x0000000000000000 0x22 ./Src/main.o + .debug_macro 0x0000000000000000 0x10 ./Src/main.o + .debug_macro 0x0000000000000000 0x52 ./Src/main.o + .debug_macro 0x0000000000000000 0xd5 ./Src/main.o + .debug_macro 0x0000000000000000 0x1c ./Src/main.o + .debug_macro 0x0000000000000000 0x3d ./Src/main.o + .debug_macro 0x0000000000000000 0x16 ./Src/main.o + .debug_macro 0x0000000000000000 0x145 ./Src/main.o + .debug_macro 0x0000000000000000 0x16 ./Src/main.o + .debug_macro 0x0000000000000000 0x35 ./Src/main.o + .debug_macro 0x0000000000000000 0x16 ./Src/main.o + .debug_macro 0x0000000000000000 0x29 ./Src/main.o .group 0x0000000000000000 0xc ./Src/syscalls.o .group 0x0000000000000000 0xc ./Src/syscalls.o .group 0x0000000000000000 0xc ./Src/syscalls.o @@ -519,11 +560,6 @@ Discarded input sections .text 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-itoa.o) .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-itoa.o) .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-itoa.o) - .text.__itoa 0x0000000000000000 0x30 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-itoa.o) - .text.itoa 0x0000000000000000 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-itoa.o) - .debug_frame 0x0000000000000000 0x38 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-itoa.o) - .ARM.attributes - 0x0000000000000000 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-itoa.o) .text 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memset.o) .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memset.o) .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memset.o) @@ -534,13 +570,7 @@ Discarded input sections .text 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-utoa.o) .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-utoa.o) .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-utoa.o) - .rodata.__utoa.str1.1 - 0x0000000000000000 0x25 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-utoa.o) - .text.__utoa 0x0000000000000000 0x84 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-utoa.o) .text.utoa 0x0000000000000000 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-utoa.o) - .debug_frame 0x0000000000000000 0x48 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-utoa.o) - .ARM.attributes - 0x0000000000000000 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-utoa.o) .text 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-w_pow.o) .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-w_pow.o) .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-w_pow.o) @@ -578,6 +608,12 @@ Discarded input sections .debug_frame 0x0000000000000000 0x30 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldf3.o) .ARM.attributes 0x0000000000000000 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldf3.o) + .text 0x0000000000000000 0x168 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_mulsf3.o) + .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_mulsf3.o) + .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_mulsf3.o) + .debug_frame 0x0000000000000000 0x24 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_mulsf3.o) + .ARM.attributes + 0x0000000000000000 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_mulsf3.o) .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivdf3.o) @@ -590,12 +626,14 @@ Discarded input sections .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixdfsi.o) .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) - .text 0x0000000000000000 0xa0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_truncdfsf2.o) .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_truncdfsf2.o) .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_truncdfsf2.o) - .debug_frame 0x0000000000000000 0x24 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_truncdfsf2.o) - .ARM.attributes - 0x0000000000000000 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_truncdfsf2.o) + .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubsf3.o) + .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubsf3.o) + .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivsf3.o) + .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivsf3.o) + .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixsfsi.o) + .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixsfsi.o) .text 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtend.o .data 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtend.o .bss 0x0000000000000000 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtend.o @@ -665,7 +703,7 @@ LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools. 0x0000000008000000 g_pfnVectors 0x0000000008000130 . = ALIGN (0x4) -.text 0x0000000008000130 0x2bdc +.text 0x0000000008000130 0x33e4 0x0000000008000130 . = ALIGN (0x4) *(.text) .text 0x0000000008000130 0x40 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o @@ -715,382 +753,438 @@ LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools. .text 0x0000000008000a98 0x40 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) 0x0000000008000a98 __fixunsdfsi 0x0000000008000a98 __aeabi_d2uiz + .text 0x0000000008000ad8 0xa0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_truncdfsf2.o) + 0x0000000008000ad8 __aeabi_d2f + 0x0000000008000ad8 __truncdfsf2 + .text 0x0000000008000b78 0x21c /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubsf3.o) + 0x0000000008000b78 __aeabi_frsub + 0x0000000008000b80 __subsf3 + 0x0000000008000b80 __aeabi_fsub + 0x0000000008000b84 __aeabi_fadd + 0x0000000008000b84 __addsf3 + 0x0000000008000ce4 __aeabi_ui2f + 0x0000000008000ce4 __floatunsisf + 0x0000000008000cec __aeabi_i2f + 0x0000000008000cec __floatsisf + 0x0000000008000d08 __floatundisf + 0x0000000008000d08 __aeabi_ul2f + 0x0000000008000d18 __floatdisf + 0x0000000008000d18 __aeabi_l2f + .text 0x0000000008000d94 0x2a0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivsf3.o) + 0x0000000008000d94 __mulsf3 + 0x0000000008000d94 __aeabi_fmul + 0x0000000008000efc __divsf3 + 0x0000000008000efc __aeabi_fdiv + .text 0x0000000008001034 0x4c /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixsfsi.o) + 0x0000000008001034 __fixsfsi + 0x0000000008001034 __aeabi_f2iz *(.text*) .text.MADC1_voidInit - 0x0000000008000ad8 0x30 ./Src/ADC/ADC_program.o - 0x0000000008000ad8 MADC1_voidInit + 0x0000000008001080 0x30 ./Src/ADC/ADC_program.o + 0x0000000008001080 MADC1_voidInit .text.MADC1_voidStartConversion - 0x0000000008000b08 0x94 ./Src/ADC/ADC_program.o - 0x0000000008000b08 MADC1_voidStartConversion + 0x00000000080010b0 0x94 ./Src/ADC/ADC_program.o + 0x00000000080010b0 MADC1_voidStartConversion + .text.MADC1_u16ReadValue + 0x0000000008001144 0x18 ./Src/ADC/ADC_program.o + 0x0000000008001144 MADC1_u16ReadValue .text.MAFIO_voidSetEXTIConfiguration - 0x0000000008000b9c 0xa8 ./Src/AFIO/AFIO_program.o - 0x0000000008000b9c MAFIO_voidSetEXTIConfiguration + 0x000000000800115c 0xa8 ./Src/AFIO/AFIO_program.o + 0x000000000800115c MAFIO_voidSetEXTIConfiguration .text.MGPIO_VoidSetPinDirection - 0x0000000008000c44 0x1ac ./Src/DIO/DIO_program.o - 0x0000000008000c44 MGPIO_VoidSetPinDirection + 0x0000000008001204 0x1ac ./Src/DIO/DIO_program.o + 0x0000000008001204 MGPIO_VoidSetPinDirection .text.MGPIO_VoidSetPinValue - 0x0000000008000df0 0xc0 ./Src/DIO/DIO_program.o - 0x0000000008000df0 MGPIO_VoidSetPinValue + 0x00000000080013b0 0xc0 ./Src/DIO/DIO_program.o + 0x00000000080013b0 MGPIO_VoidSetPinValue .text.MGPIO_u8GetPinValue - 0x0000000008000eb0 0x7c ./Src/DIO/DIO_program.o - 0x0000000008000eb0 MGPIO_u8GetPinValue + 0x0000000008001470 0x7c ./Src/DIO/DIO_program.o + 0x0000000008001470 MGPIO_u8GetPinValue .text.MEXTI_voidInit - 0x0000000008000f2c 0x28 ./Src/EXTI/EXTI_program.o - 0x0000000008000f2c MEXTI_voidInit + 0x00000000080014ec 0x28 ./Src/EXTI/EXTI_program.o + 0x00000000080014ec MEXTI_voidInit .text.MEXTI_voidSetSignalLatch - 0x0000000008000f54 0x9c ./Src/EXTI/EXTI_program.o - 0x0000000008000f54 MEXTI_voidSetSignalLatch + 0x0000000008001514 0x9c ./Src/EXTI/EXTI_program.o + 0x0000000008001514 MEXTI_voidSetSignalLatch .text.EXTI_voidSetCallBack - 0x0000000008000ff0 0x24 ./Src/EXTI/EXTI_program.o - 0x0000000008000ff0 EXTI_voidSetCallBack + 0x00000000080015b0 0x24 ./Src/EXTI/EXTI_program.o + 0x00000000080015b0 EXTI_voidSetCallBack .text.EXTI0_IRQHandler - 0x0000000008001014 0x24 ./Src/EXTI/EXTI_program.o - 0x0000000008001014 EXTI0_IRQHandler + 0x00000000080015d4 0x24 ./Src/EXTI/EXTI_program.o + 0x00000000080015d4 EXTI0_IRQHandler .text.EXTI1_IRQHandler - 0x0000000008001038 0x24 ./Src/EXTI/EXTI_program.o - 0x0000000008001038 EXTI1_IRQHandler + 0x00000000080015f8 0x24 ./Src/EXTI/EXTI_program.o + 0x00000000080015f8 EXTI1_IRQHandler .text.EXTI2_IRQHandler - 0x000000000800105c 0x24 ./Src/EXTI/EXTI_program.o - 0x000000000800105c EXTI2_IRQHandler + 0x000000000800161c 0x24 ./Src/EXTI/EXTI_program.o + 0x000000000800161c EXTI2_IRQHandler .text.EXTI3_IRQHandler - 0x0000000008001080 0x24 ./Src/EXTI/EXTI_program.o - 0x0000000008001080 EXTI3_IRQHandler + 0x0000000008001640 0x24 ./Src/EXTI/EXTI_program.o + 0x0000000008001640 EXTI3_IRQHandler .text.EXTI4_IRQHandler - 0x00000000080010a4 0x24 ./Src/EXTI/EXTI_program.o - 0x00000000080010a4 EXTI4_IRQHandler + 0x0000000008001664 0x24 ./Src/EXTI/EXTI_program.o + 0x0000000008001664 EXTI4_IRQHandler .text.EXTI9_5_IRQHandler - 0x00000000080010c8 0xd4 ./Src/EXTI/EXTI_program.o - 0x00000000080010c8 EXTI9_5_IRQHandler + 0x0000000008001688 0xd4 ./Src/EXTI/EXTI_program.o + 0x0000000008001688 EXTI9_5_IRQHandler .text.EXTI15_10_IRQHandler - 0x000000000800119c 0xfc ./Src/EXTI/EXTI_program.o - 0x000000000800119c EXTI15_10_IRQHandler + 0x000000000800175c 0xfc ./Src/EXTI/EXTI_program.o + 0x000000000800175c EXTI15_10_IRQHandler .text.HENCODER_voidEncoderCounts - 0x0000000008001298 0xa8 ./Src/Encoder/ENCODER_program.o - 0x0000000008001298 HENCODER_voidEncoderCounts + 0x0000000008001858 0xa8 ./Src/Encoder/ENCODER_program.o + 0x0000000008001858 HENCODER_voidEncoderCounts .text.HENCODER_s32GetZeroCounts - 0x0000000008001340 0x38 ./Src/Encoder/ENCODER_program.o - 0x0000000008001340 HENCODER_s32GetZeroCounts + 0x0000000008001900 0x38 ./Src/Encoder/ENCODER_program.o + 0x0000000008001900 HENCODER_s32GetZeroCounts .text.HENCODER_f32GetZeroDistance - 0x0000000008001378 0x18 ./Src/Encoder/ENCODER_program.o - 0x0000000008001378 HENCODER_f32GetZeroDistance + 0x0000000008001938 0x18 ./Src/Encoder/ENCODER_program.o + 0x0000000008001938 HENCODER_f32GetZeroDistance .text.MNVIC_voidEnableInterrupt - 0x0000000008001390 0x44 ./Src/NVIC/NVIC_program.o - 0x0000000008001390 MNVIC_voidEnableInterrupt + 0x0000000008001950 0x44 ./Src/NVIC/NVIC_program.o + 0x0000000008001950 MNVIC_voidEnableInterrupt .text.RCC_voidInitSysClock - 0x00000000080013d4 0x24 ./Src/RCC/RCC_program.o - 0x00000000080013d4 RCC_voidInitSysClock + 0x0000000008001994 0x24 ./Src/RCC/RCC_program.o + 0x0000000008001994 RCC_voidInitSysClock .text.RCC_voidEnableClock - 0x00000000080013f8 0x84 ./Src/RCC/RCC_program.o - 0x00000000080013f8 RCC_voidEnableClock + 0x00000000080019b8 0x84 ./Src/RCC/RCC_program.o + 0x00000000080019b8 RCC_voidEnableClock .text.MSTK_voidInit - 0x000000000800147c 0x18 ./Src/STK/STK_program.o - 0x000000000800147c MSTK_voidInit + 0x0000000008001a3c 0x18 ./Src/STK/STK_program.o + 0x0000000008001a3c MSTK_voidInit .text.MSTK_voidSetBusyWait - 0x0000000008001494 0x50 ./Src/STK/STK_program.o - 0x0000000008001494 MSTK_voidSetBusyWait + 0x0000000008001a54 0x50 ./Src/STK/STK_program.o + 0x0000000008001a54 MSTK_voidSetBusyWait + .text.MSTK_voidSetIntervalPeriodic + 0x0000000008001aa4 0x4c ./Src/STK/STK_program.o + 0x0000000008001aa4 MSTK_voidSetIntervalPeriodic .text.SysTick_Handler - 0x00000000080014e4 0x5c ./Src/STK/STK_program.o - 0x00000000080014e4 SysTick_Handler + 0x0000000008001af0 0x5c ./Src/STK/STK_program.o + 0x0000000008001af0 SysTick_Handler .text.MTIM2_voidInitC2 - 0x0000000008001540 0xcc ./Src/TIM2/TIM2_program.o - 0x0000000008001540 MTIM2_voidInitC2 + 0x0000000008001b4c 0xcc ./Src/TIM2/TIM2_program.o + 0x0000000008001b4c MTIM2_voidInitC2 .text.MTIM2_voidOutputPWM_C2 - 0x000000000800160c 0x20 ./Src/TIM2/TIM2_program.o - 0x000000000800160c MTIM2_voidOutputPWM_C2 + 0x0000000008001c18 0x20 ./Src/TIM2/TIM2_program.o + 0x0000000008001c18 MTIM2_voidOutputPWM_C2 .text.MTIM3_voidInit - 0x000000000800162c 0x9c ./Src/TIM3/TIM3_program.o - 0x000000000800162c MTIM3_voidInit + 0x0000000008001c38 0x9c ./Src/TIM3/TIM3_program.o + 0x0000000008001c38 MTIM3_voidInit .text.MTIM3_voidOutputPWM - 0x00000000080016c8 0x20 ./Src/TIM3/TIM3_program.o - 0x00000000080016c8 MTIM3_voidOutputPWM + 0x0000000008001cd4 0x20 ./Src/TIM3/TIM3_program.o + 0x0000000008001cd4 MTIM3_voidOutputPWM .text.MUSART2_voidInit - 0x00000000080016e8 0x6c ./Src/UART2/USART_program.o - 0x00000000080016e8 MUSART2_voidInit + 0x0000000008001cf4 0x6c ./Src/UART2/USART_program.o + 0x0000000008001cf4 MUSART2_voidInit .text.MUSART2_voidSendData - 0x0000000008001754 0x3c ./Src/UART2/USART_program.o - 0x0000000008001754 MUSART2_voidSendData + 0x0000000008001d60 0x3c ./Src/UART2/USART_program.o + 0x0000000008001d60 MUSART2_voidSendData .text.MUSART2_voidSendString - 0x0000000008001790 0x2c ./Src/UART2/USART_program.o - 0x0000000008001790 MUSART2_voidSendString + 0x0000000008001d9c 0x2c ./Src/UART2/USART_program.o + 0x0000000008001d9c MUSART2_voidSendString + .text.MUSART2_voidSendNumbers + 0x0000000008001dc8 0x2a ./Src/UART2/USART_program.o + 0x0000000008001dc8 MUSART2_voidSendNumbers + *fill* 0x0000000008001df2 0x2 .text.MUSART2_u8ReceiveData - 0x00000000080017bc 0x30 ./Src/UART2/USART_program.o - 0x00000000080017bc MUSART2_u8ReceiveData + 0x0000000008001df4 0x30 ./Src/UART2/USART_program.o + 0x0000000008001df4 MUSART2_u8ReceiveData .text.MUSART2_u8ReceiveDataBlock - 0x00000000080017ec 0x42 ./Src/UART2/USART_program.o - 0x00000000080017ec MUSART2_u8ReceiveDataBlock - *fill* 0x000000000800182e 0x2 + 0x0000000008001e24 0x42 ./Src/UART2/USART_program.o + 0x0000000008001e24 MUSART2_u8ReceiveDataBlock + *fill* 0x0000000008001e66 0x2 .text.LeftEncoderGetReading - 0x0000000008001830 0x1c ./Src/main.o - 0x0000000008001830 LeftEncoderGetReading + 0x0000000008001e68 0x1c ./Src/main.o + 0x0000000008001e68 LeftEncoderGetReading .text.RightEncoderGetReading - 0x000000000800184c 0x1c ./Src/main.o - 0x000000000800184c RightEncoderGetReading + 0x0000000008001e84 0x1c ./Src/main.o + 0x0000000008001e84 RightEncoderGetReading .text.Get_Reading - 0x0000000008001868 0x168 ./Src/main.o - 0x0000000008001868 Get_Reading + 0x0000000008001ea0 0x168 ./Src/main.o + 0x0000000008001ea0 Get_Reading .text.RotateRight - 0x00000000080019d0 0xb0 ./Src/main.o - 0x00000000080019d0 RotateRight + 0x0000000008002008 0xe0 ./Src/main.o + 0x0000000008002008 RotateRight .text.RotateLeft - 0x0000000008001a80 0xb0 ./Src/main.o - 0x0000000008001a80 RotateLeft + 0x00000000080020e8 0xe0 ./Src/main.o + 0x00000000080020e8 RotateLeft .text.TargetDistance - 0x0000000008001b30 0x8c ./Src/main.o - 0x0000000008001b30 TargetDistance - .text.main 0x0000000008001bbc 0x2c8 ./Src/main.o - 0x0000000008001bbc main + 0x00000000080021c8 0xa8 ./Src/main.o + 0x00000000080021c8 TargetDistance + .text.VoltageReading + 0x0000000008002270 0xb0 ./Src/main.o + 0x0000000008002270 VoltageReading + .text.main 0x0000000008002320 0x2b8 ./Src/main.o + 0x0000000008002320 main .text.Reset_Handler - 0x0000000008001e84 0x50 ./Startup/startup_stm32f103c8tx.o - 0x0000000008001e84 Reset_Handler + 0x00000000080025d8 0x50 ./Startup/startup_stm32f103c8tx.o + 0x00000000080025d8 Reset_Handler .text.Default_Handler - 0x0000000008001ed4 0x2 ./Startup/startup_stm32f103c8tx.o - 0x0000000008001ed4 TIM8_TRG_COM_IRQHandler - 0x0000000008001ed4 TIM8_CC_IRQHandler - 0x0000000008001ed4 DebugMon_Handler - 0x0000000008001ed4 TIM1_CC_IRQHandler - 0x0000000008001ed4 HardFault_Handler - 0x0000000008001ed4 TIM6_IRQHandler - 0x0000000008001ed4 PVD_IRQHandler - 0x0000000008001ed4 SDIO_IRQHandler - 0x0000000008001ed4 PendSV_Handler - 0x0000000008001ed4 NMI_Handler - 0x0000000008001ed4 USB_HP_CAN_TX_IRQHandler - 0x0000000008001ed4 I2C2_EV_IRQHandler - 0x0000000008001ed4 UsageFault_Handler - 0x0000000008001ed4 ADC1_2_IRQHandler - 0x0000000008001ed4 SPI1_IRQHandler - 0x0000000008001ed4 CAN_SCE_IRQHandler - 0x0000000008001ed4 TAMPER_IRQHandler - 0x0000000008001ed4 TIM8_UP_IRQHandler - 0x0000000008001ed4 DMA2_Channel2_IRQHandler - 0x0000000008001ed4 DMA1_Channel4_IRQHandler - 0x0000000008001ed4 USART3_IRQHandler - 0x0000000008001ed4 RTC_IRQHandler - 0x0000000008001ed4 DMA1_Channel7_IRQHandler - 0x0000000008001ed4 UART5_IRQHandler - 0x0000000008001ed4 ADC3_IRQHandler - 0x0000000008001ed4 TIM4_IRQHandler - 0x0000000008001ed4 CAN_RX1_IRQHandler - 0x0000000008001ed4 DMA2_Channel1_IRQHandler - 0x0000000008001ed4 I2C1_EV_IRQHandler - 0x0000000008001ed4 DMA1_Channel6_IRQHandler - 0x0000000008001ed4 UART4_IRQHandler - 0x0000000008001ed4 TIM3_IRQHandler - 0x0000000008001ed4 RCC_IRQHandler - 0x0000000008001ed4 TIM1_TRG_COM_IRQHandler - 0x0000000008001ed4 DMA1_Channel1_IRQHandler - 0x0000000008001ed4 Default_Handler - 0x0000000008001ed4 TIM7_IRQHandler - 0x0000000008001ed4 TIM5_IRQHandler - 0x0000000008001ed4 SPI2_IRQHandler - 0x0000000008001ed4 USB_LP_CAN_RX0_IRQHandler - 0x0000000008001ed4 MemManage_Handler - 0x0000000008001ed4 SVC_Handler - 0x0000000008001ed4 DMA1_Channel5_IRQHandler - 0x0000000008001ed4 DMA1_Channel3_IRQHandler - 0x0000000008001ed4 FSMC_IRQHandler - 0x0000000008001ed4 TIM1_UP_IRQHandler - 0x0000000008001ed4 WWDG_IRQHandler - 0x0000000008001ed4 TIM2_IRQHandler - 0x0000000008001ed4 TIM1_BRK_IRQHandler - 0x0000000008001ed4 RTCAlarm_IRQHandler - 0x0000000008001ed4 DMA2_Channel4_5_IRQHandler - 0x0000000008001ed4 USART2_IRQHandler - 0x0000000008001ed4 I2C2_ER_IRQHandler - 0x0000000008001ed4 DMA1_Channel2_IRQHandler - 0x0000000008001ed4 TIM8_BRK_IRQHandler - 0x0000000008001ed4 FLASH_IRQHandler - 0x0000000008001ed4 BusFault_Handler - 0x0000000008001ed4 USART1_IRQHandler - 0x0000000008001ed4 SPI3_IRQHandler - 0x0000000008001ed4 I2C1_ER_IRQHandler - 0x0000000008001ed4 DMA2_Channel3_IRQHandler - *fill* 0x0000000008001ed6 0x2 - .text.__errno 0x0000000008001ed8 0xc /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-errno.o) - 0x0000000008001ed8 __errno + 0x0000000008002628 0x2 ./Startup/startup_stm32f103c8tx.o + 0x0000000008002628 TIM8_TRG_COM_IRQHandler + 0x0000000008002628 TIM8_CC_IRQHandler + 0x0000000008002628 DebugMon_Handler + 0x0000000008002628 TIM1_CC_IRQHandler + 0x0000000008002628 HardFault_Handler + 0x0000000008002628 TIM6_IRQHandler + 0x0000000008002628 PVD_IRQHandler + 0x0000000008002628 SDIO_IRQHandler + 0x0000000008002628 PendSV_Handler + 0x0000000008002628 NMI_Handler + 0x0000000008002628 USB_HP_CAN_TX_IRQHandler + 0x0000000008002628 I2C2_EV_IRQHandler + 0x0000000008002628 UsageFault_Handler + 0x0000000008002628 ADC1_2_IRQHandler + 0x0000000008002628 SPI1_IRQHandler + 0x0000000008002628 CAN_SCE_IRQHandler + 0x0000000008002628 TAMPER_IRQHandler + 0x0000000008002628 TIM8_UP_IRQHandler + 0x0000000008002628 DMA2_Channel2_IRQHandler + 0x0000000008002628 DMA1_Channel4_IRQHandler + 0x0000000008002628 USART3_IRQHandler + 0x0000000008002628 RTC_IRQHandler + 0x0000000008002628 DMA1_Channel7_IRQHandler + 0x0000000008002628 UART5_IRQHandler + 0x0000000008002628 ADC3_IRQHandler + 0x0000000008002628 TIM4_IRQHandler + 0x0000000008002628 CAN_RX1_IRQHandler + 0x0000000008002628 DMA2_Channel1_IRQHandler + 0x0000000008002628 I2C1_EV_IRQHandler + 0x0000000008002628 DMA1_Channel6_IRQHandler + 0x0000000008002628 UART4_IRQHandler + 0x0000000008002628 TIM3_IRQHandler + 0x0000000008002628 RCC_IRQHandler + 0x0000000008002628 TIM1_TRG_COM_IRQHandler + 0x0000000008002628 DMA1_Channel1_IRQHandler + 0x0000000008002628 Default_Handler + 0x0000000008002628 TIM7_IRQHandler + 0x0000000008002628 TIM5_IRQHandler + 0x0000000008002628 SPI2_IRQHandler + 0x0000000008002628 USB_LP_CAN_RX0_IRQHandler + 0x0000000008002628 MemManage_Handler + 0x0000000008002628 SVC_Handler + 0x0000000008002628 DMA1_Channel5_IRQHandler + 0x0000000008002628 DMA1_Channel3_IRQHandler + 0x0000000008002628 FSMC_IRQHandler + 0x0000000008002628 TIM1_UP_IRQHandler + 0x0000000008002628 WWDG_IRQHandler + 0x0000000008002628 TIM2_IRQHandler + 0x0000000008002628 TIM1_BRK_IRQHandler + 0x0000000008002628 RTCAlarm_IRQHandler + 0x0000000008002628 DMA2_Channel4_5_IRQHandler + 0x0000000008002628 USART2_IRQHandler + 0x0000000008002628 I2C2_ER_IRQHandler + 0x0000000008002628 DMA1_Channel2_IRQHandler + 0x0000000008002628 TIM8_BRK_IRQHandler + 0x0000000008002628 FLASH_IRQHandler + 0x0000000008002628 BusFault_Handler + 0x0000000008002628 USART1_IRQHandler + 0x0000000008002628 SPI3_IRQHandler + 0x0000000008002628 I2C1_ER_IRQHandler + 0x0000000008002628 DMA2_Channel3_IRQHandler + *fill* 0x000000000800262a 0x2 + .text.__errno 0x000000000800262c 0xc /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-errno.o) + 0x000000000800262c __errno .text.__libc_init_array - 0x0000000008001ee4 0x48 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-init.o) - 0x0000000008001ee4 __libc_init_array - .text.pow 0x0000000008001f2c 0xd0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-w_pow.o) - 0x0000000008001f2c pow - *fill* 0x0000000008001ffc 0x4 + 0x0000000008002638 0x48 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-init.o) + 0x0000000008002638 __libc_init_array + .text.__itoa 0x0000000008002680 0x30 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-itoa.o) + 0x0000000008002680 __itoa + .text.itoa 0x00000000080026b0 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-itoa.o) + 0x00000000080026b0 itoa + .text.__utoa 0x00000000080026b4 0x84 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-utoa.o) + 0x00000000080026b4 __utoa + .text.pow 0x0000000008002738 0xd0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-w_pow.o) + 0x0000000008002738 pow .text.__ieee754_pow - 0x0000000008002000 0xa2c /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) - 0x0000000008002000 __ieee754_pow + 0x0000000008002808 0xa2c /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) + 0x0000000008002808 __ieee754_pow .text.__ieee754_sqrt - 0x0000000008002a2c 0x160 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_sqrt.o) - 0x0000000008002a2c __ieee754_sqrt + 0x0000000008003234 0x160 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_sqrt.o) + 0x0000000008003234 __ieee754_sqrt .text.with_errno - 0x0000000008002b8c 0x14 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-math_err.o) - .text.xflow 0x0000000008002ba0 0x30 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-math_err.o) + 0x0000000008003394 0x14 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-math_err.o) + .text.xflow 0x00000000080033a8 0x30 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-math_err.o) .text.__math_uflow - 0x0000000008002bd0 0xa /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-math_err.o) - 0x0000000008002bd0 __math_uflow + 0x00000000080033d8 0xa /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-math_err.o) + 0x00000000080033d8 __math_uflow .text.__math_oflow - 0x0000000008002bda 0xa /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-math_err.o) - 0x0000000008002bda __math_oflow - .text.fabs 0x0000000008002be4 0x6 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_fabs.o) - 0x0000000008002be4 fabs - .text.finite 0x0000000008002bea 0xc /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_finite.o) - 0x0000000008002bea finite - *fill* 0x0000000008002bf6 0x2 - .text.scalbn 0x0000000008002bf8 0xfc /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_scalbn.o) - 0x0000000008002bf8 scalbn + 0x00000000080033e2 0xa /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-math_err.o) + 0x00000000080033e2 __math_oflow + .text.fabs 0x00000000080033ec 0x6 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_fabs.o) + 0x00000000080033ec fabs + .text.finite 0x00000000080033f2 0xc /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_finite.o) + 0x00000000080033f2 finite + *fill* 0x00000000080033fe 0x2 + .text.scalbn 0x0000000008003400 0xfc /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_scalbn.o) + 0x0000000008003400 scalbn *(.glue_7) - .glue_7 0x0000000008002cf4 0x0 linker stubs + .glue_7 0x00000000080034fc 0x0 linker stubs *(.glue_7t) - .glue_7t 0x0000000008002cf4 0x0 linker stubs + .glue_7t 0x00000000080034fc 0x0 linker stubs *(.eh_frame) - .eh_frame 0x0000000008002cf4 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o + .eh_frame 0x00000000080034fc 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o *(.init) - .init 0x0000000008002cf4 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crti.o - 0x0000000008002cf4 _init - .init 0x0000000008002cf8 0x8 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtn.o + .init 0x00000000080034fc 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crti.o + 0x00000000080034fc _init + .init 0x0000000008003500 0x8 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtn.o *(.fini) - .fini 0x0000000008002d00 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crti.o - 0x0000000008002d00 _fini - .fini 0x0000000008002d04 0x8 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtn.o - 0x0000000008002d0c . = ALIGN (0x4) - 0x0000000008002d0c _etext = . + .fini 0x0000000008003508 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crti.o + 0x0000000008003508 _fini + .fini 0x000000000800350c 0x8 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtn.o + 0x0000000008003514 . = ALIGN (0x4) + 0x0000000008003514 _etext = . -.vfp11_veneer 0x0000000008002d0c 0x0 - .vfp11_veneer 0x0000000008002d0c 0x0 linker stubs +.vfp11_veneer 0x0000000008003514 0x0 + .vfp11_veneer 0x0000000008003514 0x0 linker stubs -.v4_bx 0x0000000008002d0c 0x0 - .v4_bx 0x0000000008002d0c 0x0 linker stubs +.v4_bx 0x0000000008003514 0x0 + .v4_bx 0x0000000008003514 0x0 linker stubs -.iplt 0x0000000008002d0c 0x0 - .iplt 0x0000000008002d0c 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o +.iplt 0x0000000008003514 0x0 + .iplt 0x0000000008003514 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o -.rodata 0x0000000008002d10 0x48 - 0x0000000008002d10 . = ALIGN (0x4) +.rodata 0x0000000008003518 0x60 + 0x0000000008003518 . = ALIGN (0x4) *(.rodata) - .rodata 0x0000000008002d10 0x11 ./Src/main.o + .rodata 0x0000000008003518 0xb ./Src/main.o *(.rodata*) - *fill* 0x0000000008002d21 0x7 - .rodata.bp 0x0000000008002d28 0x10 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) - .rodata.dp_h 0x0000000008002d38 0x10 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) - .rodata.dp_l 0x0000000008002d48 0x10 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) - 0x0000000008002d58 . = ALIGN (0x4) + .rodata.__utoa.str1.1 + 0x0000000008003523 0x25 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-utoa.o) + .rodata.bp 0x0000000008003548 0x10 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) + .rodata.dp_h 0x0000000008003558 0x10 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) + .rodata.dp_l 0x0000000008003568 0x10 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) + 0x0000000008003578 . = ALIGN (0x4) -.rel.dyn 0x0000000008002d58 0x0 - .rel.iplt 0x0000000008002d58 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o +.rel.dyn 0x0000000008003578 0x0 + .rel.iplt 0x0000000008003578 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o -.ARM.extab 0x0000000008002d58 0x0 - 0x0000000008002d58 . = ALIGN (0x4) +.ARM.extab 0x0000000008003578 0x0 + 0x0000000008003578 . = ALIGN (0x4) *(.ARM.extab* .gnu.linkonce.armextab.*) - 0x0000000008002d58 . = ALIGN (0x4) + 0x0000000008003578 . = ALIGN (0x4) -.ARM 0x0000000008002d58 0x0 - 0x0000000008002d58 . = ALIGN (0x4) - 0x0000000008002d58 __exidx_start = . +.ARM 0x0000000008003578 0x0 + 0x0000000008003578 . = ALIGN (0x4) + 0x0000000008003578 __exidx_start = . *(.ARM.exidx*) - 0x0000000008002d58 __exidx_end = . - 0x0000000008002d58 . = ALIGN (0x4) + 0x0000000008003578 __exidx_end = . + 0x0000000008003578 . = ALIGN (0x4) -.preinit_array 0x0000000008002d58 0x0 - 0x0000000008002d58 . = ALIGN (0x4) - 0x0000000008002d58 PROVIDE (__preinit_array_start = .) +.preinit_array 0x0000000008003578 0x0 + 0x0000000008003578 . = ALIGN (0x4) + 0x0000000008003578 PROVIDE (__preinit_array_start = .) *(.preinit_array*) - 0x0000000008002d58 PROVIDE (__preinit_array_end = .) - 0x0000000008002d58 . = ALIGN (0x4) + 0x0000000008003578 PROVIDE (__preinit_array_end = .) + 0x0000000008003578 . = ALIGN (0x4) -.init_array 0x0000000008002d58 0x4 - 0x0000000008002d58 . = ALIGN (0x4) - 0x0000000008002d58 PROVIDE (__init_array_start = .) +.init_array 0x0000000008003578 0x4 + 0x0000000008003578 . = ALIGN (0x4) + 0x0000000008003578 PROVIDE (__init_array_start = .) *(SORT_BY_NAME(.init_array.*)) *(.init_array*) - .init_array 0x0000000008002d58 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o - 0x0000000008002d5c PROVIDE (__init_array_end = .) - 0x0000000008002d5c . = ALIGN (0x4) + .init_array 0x0000000008003578 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o + 0x000000000800357c PROVIDE (__init_array_end = .) + 0x000000000800357c . = ALIGN (0x4) -.fini_array 0x0000000008002d5c 0x4 - 0x0000000008002d5c . = ALIGN (0x4) +.fini_array 0x000000000800357c 0x4 + 0x000000000800357c . = ALIGN (0x4) [!provide] PROVIDE (__fini_array_start = .) *(SORT_BY_NAME(.fini_array.*)) *(.fini_array*) - .fini_array 0x0000000008002d5c 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o + .fini_array 0x000000000800357c 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o [!provide] PROVIDE (__fini_array_end = .) - 0x0000000008002d60 . = ALIGN (0x4) - 0x0000000008002d60 _sidata = LOADADDR (.data) + 0x0000000008003580 . = ALIGN (0x4) + 0x0000000008003580 _sidata = LOADADDR (.data) -.data 0x0000000020000000 0x64 load address 0x0000000008002d60 +.data 0x0000000020000000 0x68 load address 0x0000000008003580 0x0000000020000000 . = ALIGN (0x4) 0x0000000020000000 _sdata = . *(.data) *(.data*) + .data.R1 0x0000000020000000 0x2 ./Src/main.o + 0x0000000020000000 R1 + .data.R2 0x0000000020000002 0x2 ./Src/main.o + 0x0000000020000002 R2 .data._impure_ptr - 0x0000000020000000 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-impure.o) - 0x0000000020000000 _impure_ptr + 0x0000000020000004 0x4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-impure.o) + 0x0000000020000004 _impure_ptr .data.impure_data - 0x0000000020000004 0x60 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-impure.o) + 0x0000000020000008 0x60 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-impure.o) *(.RamFunc) *(.RamFunc*) - 0x0000000020000064 . = ALIGN (0x4) - 0x0000000020000064 _edata = . + 0x0000000020000068 . = ALIGN (0x4) + 0x0000000020000068 _edata = . -.igot.plt 0x0000000020000064 0x0 load address 0x0000000008002dc4 - .igot.plt 0x0000000020000064 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o - 0x0000000020000064 . = ALIGN (0x4) +.igot.plt 0x0000000020000068 0x0 load address 0x00000000080035e8 + .igot.plt 0x0000000020000068 0x0 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o + 0x0000000020000068 . = ALIGN (0x4) -.bss 0x0000000020000064 0x98 load address 0x0000000008002dc4 - 0x0000000020000064 _sbss = . - 0x0000000020000064 __bss_start__ = _sbss +.bss 0x0000000020000068 0xa4 load address 0x00000000080035e8 + 0x0000000020000068 _sbss = . + 0x0000000020000068 __bss_start__ = _sbss *(.bss) - .bss 0x0000000020000064 0x1c /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o + .bss 0x0000000020000068 0x1c /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtbegin.o *(.bss*) .bss.EXTI_GlobalPtr - 0x0000000020000080 0x40 ./Src/EXTI/EXTI_program.o + 0x0000000020000084 0x40 ./Src/EXTI/EXTI_program.o .bss.Global_u8MotorRightDirection - 0x00000000200000c0 0x1 ./Src/Encoder/ENCODER_program.o - 0x00000000200000c0 Global_u8MotorRightDirection + 0x00000000200000c4 0x1 ./Src/Encoder/ENCODER_program.o + 0x00000000200000c4 Global_u8MotorRightDirection .bss.Global_u8MotorLeftDirection - 0x00000000200000c1 0x1 ./Src/Encoder/ENCODER_program.o - 0x00000000200000c1 Global_u8MotorLeftDirection - *fill* 0x00000000200000c2 0x2 + 0x00000000200000c5 0x1 ./Src/Encoder/ENCODER_program.o + 0x00000000200000c5 Global_u8MotorLeftDirection + *fill* 0x00000000200000c6 0x2 .bss.Global_s32NumOfRightCounts - 0x00000000200000c4 0x4 ./Src/Encoder/ENCODER_program.o - .bss.Global_s32NumOfLeftCounts 0x00000000200000c8 0x4 ./Src/Encoder/ENCODER_program.o - .bss.Global_f32Distance + .bss.Global_s32NumOfLeftCounts 0x00000000200000cc 0x4 ./Src/Encoder/ENCODER_program.o + .bss.Global_f32Distance + 0x00000000200000d0 0x4 ./Src/Encoder/ENCODER_program.o .bss.MSTK_GlobalPtr - 0x00000000200000d0 0x4 ./Src/STK/STK_program.o + 0x00000000200000d4 0x4 ./Src/STK/STK_program.o .bss.MSTK_u8ModeOfInterval - 0x00000000200000d4 0x1 ./Src/STK/STK_program.o - *fill* 0x00000000200000d5 0x3 + 0x00000000200000d8 0x1 ./Src/STK/STK_program.o + *fill* 0x00000000200000d9 0x3 .bss.right_counts - 0x00000000200000d8 0x4 ./Src/main.o - 0x00000000200000d8 right_counts - .bss.left_counts 0x00000000200000dc 0x4 ./Src/main.o - 0x00000000200000dc left_counts + 0x00000000200000dc right_counts + .bss.left_counts + 0x00000000200000e0 0x4 ./Src/main.o + 0x00000000200000e0 left_counts + .bss.adc_value + 0x00000000200000e4 0x2 ./Src/main.o + 0x00000000200000e4 adc_value + *fill* 0x00000000200000e6 0x2 + .bss.reading 0x00000000200000e8 0x4 ./Src/main.o + 0x00000000200000e8 reading + .bss.adc_volt 0x00000000200000ec 0x4 ./Src/main.o + 0x00000000200000ec adc_volt .bss.Rx_arrlength - 0x00000000200000e0 0x1 ./Src/main.o - 0x00000000200000e0 Rx_arrlength - *fill* 0x00000000200000e1 0x3 - .bss.data_arr 0x00000000200000e4 0x14 ./Src/main.o - 0x00000000200000e4 data_arr - .bss.Rx_pwm 0x00000000200000f8 0x2 ./Src/main.o - 0x00000000200000f8 Rx_pwm - .bss.Rx_mpu 0x00000000200000fa 0x2 ./Src/main.o - 0x00000000200000fa Rx_mpu + 0x00000000200000f0 0x1 ./Src/main.o + 0x00000000200000f0 Rx_arrlength + *fill* 0x00000000200000f1 0x3 + .bss.data_arr 0x00000000200000f4 0x14 ./Src/main.o + 0x00000000200000f4 data_arr + .bss.Rx_pwm 0x0000000020000108 0x2 ./Src/main.o + 0x0000000020000108 Rx_pwm + .bss.Rx_mpu 0x000000002000010a 0x2 ./Src/main.o + 0x000000002000010a Rx_mpu *(COMMON) - 0x00000000200000fc . = ALIGN (0x4) - 0x00000000200000fc _ebss = . - 0x00000000200000fc __bss_end__ = _ebss + 0x000000002000010c . = ALIGN (0x4) + 0x000000002000010c _ebss = . + 0x000000002000010c __bss_end__ = _ebss ._user_heap_stack - 0x00000000200000fc 0x604 load address 0x0000000008002dc4 - 0x0000000020000100 . = ALIGN (0x8) - *fill* 0x00000000200000fc 0x4 + 0x000000002000010c 0x604 load address 0x00000000080035e8 + 0x0000000020000110 . = ALIGN (0x8) + *fill* 0x000000002000010c 0x4 [!provide] PROVIDE (end = .) - 0x0000000020000100 PROVIDE (_end = .) - 0x0000000020000300 . = (. + _Min_Heap_Size) - *fill* 0x0000000020000100 0x200 - 0x0000000020000700 . = (. + _Min_Stack_Size) - *fill* 0x0000000020000300 0x400 - 0x0000000020000700 . = ALIGN (0x8) + 0x0000000020000110 PROVIDE (_end = .) + 0x0000000020000310 . = (. + _Min_Heap_Size) + *fill* 0x0000000020000110 0x200 + 0x0000000020000710 . = (. + _Min_Stack_Size) + *fill* 0x0000000020000310 0x400 + 0x0000000020000710 . = ALIGN (0x8) /DISCARD/ libc.a(*) @@ -1137,40 +1231,52 @@ LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools. .ARM.attributes 0x00000000000002e1 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-init.o) .ARM.attributes - 0x000000000000030e 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-w_pow.o) + 0x000000000000030e 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-itoa.o) + .ARM.attributes + 0x000000000000033b 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-utoa.o) + .ARM.attributes + 0x0000000000000368 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-w_pow.o) + .ARM.attributes + 0x0000000000000395 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) + .ARM.attributes + 0x00000000000003c2 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_sqrt.o) + .ARM.attributes + 0x00000000000003ef 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-math_err.o) + .ARM.attributes + 0x000000000000041c 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_fabs.o) .ARM.attributes - 0x000000000000033b 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) + 0x0000000000000449 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_finite.o) .ARM.attributes - 0x0000000000000368 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_sqrt.o) + 0x0000000000000476 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_scalbn.o) .ARM.attributes - 0x0000000000000395 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-math_err.o) + 0x00000000000004a3 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) .ARM.attributes - 0x00000000000003c2 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_fabs.o) + 0x00000000000004c0 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivdf3.o) .ARM.attributes - 0x00000000000003ef 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_finite.o) + 0x00000000000004dd 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_cmpdf2.o) .ARM.attributes - 0x000000000000041c 0x2d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_scalbn.o) + 0x00000000000004fa 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_unorddf2.o) .ARM.attributes - 0x0000000000000449 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) + 0x0000000000000517 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixdfsi.o) .ARM.attributes - 0x0000000000000466 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivdf3.o) + 0x0000000000000534 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) .ARM.attributes - 0x0000000000000483 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_cmpdf2.o) + 0x0000000000000551 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_truncdfsf2.o) .ARM.attributes - 0x00000000000004a0 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_unorddf2.o) + 0x000000000000056e 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubsf3.o) .ARM.attributes - 0x00000000000004bd 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixdfsi.o) + 0x000000000000058b 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivsf3.o) .ARM.attributes - 0x00000000000004da 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) + 0x00000000000005a8 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixsfsi.o) .ARM.attributes - 0x00000000000004f7 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtn.o + 0x00000000000005c5 0x1d /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/crtn.o OUTPUT(All_cubeIDE.elf elf32-littlearm) LOAD linker stubs LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc.a LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a -.debug_info 0x0000000000000000 0x1936 +.debug_info 0x0000000000000000 0x19c9 .debug_info 0x0000000000000000 0x211 ./Src/ADC/ADC_program.o .debug_info 0x0000000000000211 0x124 ./Src/AFIO/AFIO_program.o .debug_info 0x0000000000000335 0x17a ./Src/DIO/DIO_program.o @@ -1182,10 +1288,10 @@ LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools. .debug_info 0x0000000000000e9b 0x1c6 ./Src/TIM2/TIM2_program.o .debug_info 0x0000000000001061 0x18e ./Src/TIM3/TIM3_program.o .debug_info 0x00000000000011ef 0x2a6 ./Src/UART2/USART_program.o - .debug_info 0x0000000000001495 0x47f ./Src/main.o - .debug_info 0x0000000000001914 0x22 ./Startup/startup_stm32f103c8tx.o + .debug_info 0x0000000000001495 0x512 ./Src/main.o + .debug_info 0x00000000000019a7 0x22 ./Startup/startup_stm32f103c8tx.o -.debug_abbrev 0x0000000000000000 0xba5 +.debug_abbrev 0x0000000000000000 0xbb6 .debug_abbrev 0x0000000000000000 0xf7 ./Src/ADC/ADC_program.o .debug_abbrev 0x00000000000000f7 0xb5 ./Src/AFIO/AFIO_program.o .debug_abbrev 0x00000000000001ac 0xa7 ./Src/DIO/DIO_program.o @@ -1197,10 +1303,10 @@ LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools. .debug_abbrev 0x00000000000006d5 0xbf ./Src/TIM2/TIM2_program.o .debug_abbrev 0x0000000000000794 0xbf ./Src/TIM3/TIM3_program.o .debug_abbrev 0x0000000000000853 0x192 ./Src/UART2/USART_program.o - .debug_abbrev 0x00000000000009e5 0x1ae ./Src/main.o - .debug_abbrev 0x0000000000000b93 0x12 ./Startup/startup_stm32f103c8tx.o + .debug_abbrev 0x00000000000009e5 0x1bf ./Src/main.o + .debug_abbrev 0x0000000000000ba4 0x12 ./Startup/startup_stm32f103c8tx.o -.debug_aranges 0x0000000000000000 0x350 +.debug_aranges 0x0000000000000000 0x358 .debug_aranges 0x0000000000000000 0x30 ./Src/ADC/ADC_program.o .debug_aranges @@ -1224,11 +1330,11 @@ LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools. .debug_aranges 0x0000000000000290 0x48 ./Src/UART2/USART_program.o .debug_aranges - 0x00000000000002d8 0x50 ./Src/main.o + 0x00000000000002d8 0x58 ./Src/main.o .debug_aranges - 0x0000000000000328 0x28 ./Startup/startup_stm32f103c8tx.o + 0x0000000000000330 0x28 ./Startup/startup_stm32f103c8tx.o -.debug_ranges 0x0000000000000000 0x288 +.debug_ranges 0x0000000000000000 0x290 .debug_ranges 0x0000000000000000 0x20 ./Src/ADC/ADC_program.o .debug_ranges 0x0000000000000020 0x10 ./Src/AFIO/AFIO_program.o .debug_ranges 0x0000000000000030 0x28 ./Src/DIO/DIO_program.o @@ -1240,10 +1346,10 @@ LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools. .debug_ranges 0x00000000000001a0 0x30 ./Src/TIM2/TIM2_program.o .debug_ranges 0x00000000000001d0 0x20 ./Src/TIM3/TIM3_program.o .debug_ranges 0x00000000000001f0 0x38 ./Src/UART2/USART_program.o - .debug_ranges 0x0000000000000228 0x40 ./Src/main.o - .debug_ranges 0x0000000000000268 0x20 ./Startup/startup_stm32f103c8tx.o + .debug_ranges 0x0000000000000228 0x48 ./Src/main.o + .debug_ranges 0x0000000000000270 0x20 ./Startup/startup_stm32f103c8tx.o -.debug_macro 0x0000000000000000 0x26f3 +.debug_macro 0x0000000000000000 0x2683 .debug_macro 0x0000000000000000 0x4a ./Src/ADC/ADC_program.o .debug_macro 0x000000000000004a 0xa72 ./Src/ADC/ADC_program.o .debug_macro 0x0000000000000abc 0x22 ./Src/ADC/ADC_program.o @@ -1319,11 +1425,10 @@ LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools. .debug_macro 0x0000000000002221 0x29 ./Src/UART2/USART_program.o .debug_macro 0x000000000000224a 0x16 ./Src/UART2/USART_program.o .debug_macro 0x0000000000002260 0x20 ./Src/UART2/USART_program.o - .debug_macro 0x0000000000002280 0x164 ./Src/main.o - .debug_macro 0x00000000000023e4 0x174 ./Src/main.o - .debug_macro 0x0000000000002558 0x19b ./Src/main.o + .debug_macro 0x0000000000002280 0x268 ./Src/main.o + .debug_macro 0x00000000000024e8 0x19b ./Src/main.o -.debug_line 0x0000000000000000 0x22ae +.debug_line 0x0000000000000000 0x23b6 .debug_line 0x0000000000000000 0x153 ./Src/ADC/ADC_program.o .debug_line 0x0000000000000153 0x112 ./Src/AFIO/AFIO_program.o .debug_line 0x0000000000000265 0x2d1 ./Src/DIO/DIO_program.o @@ -1335,10 +1440,10 @@ LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools. .debug_line 0x0000000000000efe 0x18b ./Src/TIM2/TIM2_program.o .debug_line 0x0000000000001089 0x13c ./Src/TIM3/TIM3_program.o .debug_line 0x00000000000011c5 0x727 ./Src/UART2/USART_program.o - .debug_line 0x00000000000018ec 0x93e ./Src/main.o - .debug_line 0x000000000000222a 0x84 ./Startup/startup_stm32f103c8tx.o + .debug_line 0x00000000000018ec 0xa46 ./Src/main.o + .debug_line 0x0000000000002332 0x84 ./Startup/startup_stm32f103c8tx.o -.debug_str 0x0000000000000000 0x9a7a +.debug_str 0x0000000000000000 0x9aa4 .debug_str 0x0000000000000000 0x2eb5 ./Src/ADC/ADC_program.o 0x2f0e (size before relaxing) .debug_str 0x0000000000002eb5 0x107 ./Src/AFIO/AFIO_program.o @@ -1361,9 +1466,9 @@ LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools. 0x2ffc (size before relaxing) .debug_str 0x0000000000004a2d 0x472e ./Src/UART2/USART_program.o 0x7860 (size before relaxing) - .debug_str 0x000000000000915b 0x8ee ./Src/main.o - 0x70d8 (size before relaxing) - .debug_str 0x0000000000009a49 0x31 ./Startup/startup_stm32f103c8tx.o + .debug_str 0x000000000000915b 0x918 ./Src/main.o + 0x8329 (size before relaxing) + .debug_str 0x0000000000009a73 0x31 ./Startup/startup_stm32f103c8tx.o 0x63 (size before relaxing) .comment 0x0000000000000000 0x50 @@ -1381,7 +1486,7 @@ LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools. .comment 0x0000000000000050 0x51 ./Src/UART2/USART_program.o .comment 0x0000000000000050 0x51 ./Src/main.o -.debug_frame 0x0000000000000000 0xef0 +.debug_frame 0x0000000000000000 0x105c .debug_frame 0x0000000000000000 0x74 ./Src/ADC/ADC_program.o .debug_frame 0x0000000000000074 0x38 ./Src/AFIO/AFIO_program.o .debug_frame 0x00000000000000ac 0xb0 ./Src/DIO/DIO_program.o @@ -1393,19 +1498,25 @@ LOAD /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools. .debug_frame 0x00000000000006d8 0xc8 ./Src/TIM2/TIM2_program.o .debug_frame 0x00000000000007a0 0x80 ./Src/TIM3/TIM3_program.o .debug_frame 0x0000000000000820 0xe8 ./Src/UART2/USART_program.o - .debug_frame 0x0000000000000908 0x108 ./Src/main.o - .debug_frame 0x0000000000000a10 0x20 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-errno.o) - .debug_frame 0x0000000000000a30 0x2c /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-init.o) - .debug_frame 0x0000000000000a5c 0x34 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-w_pow.o) - .debug_frame 0x0000000000000a90 0x78 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) - .debug_frame 0x0000000000000b08 0x30 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_sqrt.o) - .debug_frame 0x0000000000000b38 0x120 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-math_err.o) - .debug_frame 0x0000000000000c58 0x20 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_fabs.o) - .debug_frame 0x0000000000000c78 0x20 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_finite.o) - .debug_frame 0x0000000000000c98 0x30 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_scalbn.o) - .debug_frame 0x0000000000000cc8 0xac /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) - .debug_frame 0x0000000000000d74 0x50 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivdf3.o) - .debug_frame 0x0000000000000dc4 0xc4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_cmpdf2.o) - .debug_frame 0x0000000000000e88 0x20 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_unorddf2.o) - .debug_frame 0x0000000000000ea8 0x24 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixdfsi.o) - .debug_frame 0x0000000000000ecc 0x24 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) + .debug_frame 0x0000000000000908 0x128 ./Src/main.o + .debug_frame 0x0000000000000a30 0x20 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-errno.o) + .debug_frame 0x0000000000000a50 0x2c /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-init.o) + .debug_frame 0x0000000000000a7c 0x38 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-itoa.o) + .debug_frame 0x0000000000000ab4 0x48 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-utoa.o) + .debug_frame 0x0000000000000afc 0x34 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-w_pow.o) + .debug_frame 0x0000000000000b30 0x78 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_pow.o) + .debug_frame 0x0000000000000ba8 0x30 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-e_sqrt.o) + .debug_frame 0x0000000000000bd8 0x120 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-math_err.o) + .debug_frame 0x0000000000000cf8 0x20 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_fabs.o) + .debug_frame 0x0000000000000d18 0x20 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_finite.o) + .debug_frame 0x0000000000000d38 0x30 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a(lib_a-s_scalbn.o) + .debug_frame 0x0000000000000d68 0xac /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) + .debug_frame 0x0000000000000e14 0x50 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivdf3.o) + .debug_frame 0x0000000000000e64 0xc4 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_cmpdf2.o) + .debug_frame 0x0000000000000f28 0x20 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_unorddf2.o) + .debug_frame 0x0000000000000f48 0x24 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixdfsi.o) + .debug_frame 0x0000000000000f6c 0x24 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixunsdfsi.o) + .debug_frame 0x0000000000000f90 0x24 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_truncdfsf2.o) + .debug_frame 0x0000000000000fb4 0x4c /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubsf3.o) + .debug_frame 0x0000000000001000 0x38 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivsf3.o) + .debug_frame 0x0000000000001038 0x24 /opt/st/stm32cubeide_1.12.1/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.10.3-2021.10.linux64_1.0.200.202301161003/tools/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixsfsi.o) diff --git a/embedded-c-system-code/All_cubeIDE/Debug/Src/main.cyclo b/embedded-c-system-code/All_cubeIDE/Debug/Src/main.cyclo index e21871a..1a7540f 100644 --- a/embedded-c-system-code/All_cubeIDE/Debug/Src/main.cyclo +++ b/embedded-c-system-code/All_cubeIDE/Debug/Src/main.cyclo @@ -1,7 +1,8 @@ -main.c:47:6:LeftEncoderGetReading 1 -main.c:53:6:RightEncoderGetReading 1 -main.c:60:5:Get_Reading 5 -main.c:90:6:RotateRight 4 -main.c:152:6:RotateLeft 4 -main.c:215:6:TargetDistance 2 -main.c:264:5:main 7 +main.c:49:6:LeftEncoderGetReading 1 +main.c:55:6:RightEncoderGetReading 1 +main.c:61:5:Get_Reading 5 +main.c:89:6:RotateRight 4 +main.c:147:6:RotateLeft 4 +main.c:206:6:TargetDistance 2 +main.c:242:6:VoltageReading 1 +main.c:253:5:main 7 diff --git a/embedded-c-system-code/All_cubeIDE/Debug/Src/main.o b/embedded-c-system-code/All_cubeIDE/Debug/Src/main.o index 61b3be71c10b7a99c27743fdf5e511f97cd188ea..6c0aa81116db5830fab4b6ec7d02dfa9640b1b3d 100644 GIT binary patch literal 75732 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 literal 61316 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 +#include #include /**/ @@ -32,9 +34,9 @@ s32 right_counts = 0 , left_counts = 0; /* ADC variables */ -//u16 adc_value = 0; -//f32 reading = 0 ,adc_volt = 0; -//u16 R1 = 30000, R2 = 7500; +u16 adc_value = 0; +f32 reading = 0 ,adc_volt = 0; +u16 R1 = 30000, R2 = 7500; /* Communication */ u8 Rx_arrlength = 0, data_arr[20] = {0} ; @@ -56,7 +58,6 @@ void RightEncoderGetReading (void) } - s16 Get_Reading(void) { Rx_arrlength = MUSART2_u8ReceiveDataBlock(data_arr); @@ -85,8 +86,6 @@ s16 Get_Reading(void) } - - void RotateRight() { @@ -96,8 +95,6 @@ void RotateRight() Reading = Get_Reading() ; -// MUSART2_voidSendNumbers(Reading); -// MUSART2_voidSendString((u8*)"/r/n"); Final_Value = Reading + 90 ; @@ -132,23 +129,21 @@ void RotateRight() HENCODER_s32GetZeroCounts(PIN8); HENCODER_s32GetZeroCounts(PIN10); -// MUSART2_voidSendString((u8*)"s2"); -// MUSART2_voidSendString((u8*)"/r/n"); + MUSART2_voidSendString((u8*)"s2"); + MUSART2_voidSendString((u8*)"\r\n"); + + MUSART2_voidSendNumbers(reading); + MUSART2_voidSendString((u8*)"\r\n"); break ; } Reading = Get_Reading() ; error = Final_Value - Reading ; -// MUSART2_voidSendNumbers(Reading); -// MUSART2_voidSendString((u8*)"/r/n"); - } - } - void RotateLeft() { @@ -158,11 +153,6 @@ void RotateLeft() Reading = Get_Reading() ; -// MUSART2_voidSendNumbers(Reading); -// MUSART2_voidSendString((u8*)"/r/n"); - -// MGPIO_VoidSetPinValue(GPIOA, 0, HIGH); -// MGPIO_VoidSetPinValue(GPIOA, 5, LOW); Final_Value = Reading - 90 ; @@ -197,21 +187,22 @@ void RotateLeft() HENCODER_s32GetZeroCounts(PIN8); HENCODER_s32GetZeroCounts(PIN10); -// MUSART2_voidSendString((u8*)"s2"); -// MUSART2_voidSendString((u8*)"/r/n"); + MUSART2_voidSendString((u8*)"s2"); + MUSART2_voidSendString((u8*)"\r\n"); + + MUSART2_voidSendNumbers(reading); + MUSART2_voidSendString((u8*)"\r\n"); + break ; } Reading = Get_Reading() ; error = Final_Value - Reading ; -// MUSART2_voidSendNumbers(Reading); -// MUSART2_voidSendString((u8*)"/r/n"); - } + } } - void TargetDistance() { u32 target_count = 0; @@ -226,9 +217,6 @@ void TargetDistance() MTIM2_voidOutputPWM_C2((u16)Rx_pwm); MTIM3_voidOutputPWM((u16)Rx_pwm); -// MUSART2_voidSendNumbers(right_counts); -// MUSART2_voidSendString((u8*)"\r\n"); - if(abs(right_counts) >= target_count) { HENCODER_s32GetZeroCounts(PIN8); @@ -241,25 +229,26 @@ void TargetDistance() MUSART2_voidSendString((u8*) "s1"); MUSART2_voidSendString((u8*)"\r\n"); -// MUSART2_voidSendNumbers(reading); -// MUSART2_voidSendString((u8*)"\r\n"); + + MUSART2_voidSendNumbers(reading); + MUSART2_voidSendString((u8*)"\r\n"); break; } } } -//void VoltageReading() -//{ -// adc_value = MADC1_u16ReadValue(); -// adc_volt = (adc_value*3.3)/4096; //3.3 -// reading = (adc_volt*(R1+R2))/R2; -// -//// reading = floor(reading * 100) / 100; // %.2f -// -//// MUSART2_voidSendNumbers(reading); -//// MUSART2_voidSendString((u8*)"\r\n"); -//} + +void VoltageReading() +{ + adc_value = MADC1_u16ReadValue(); + adc_volt = (adc_value*3.3)/4096; + reading = (adc_volt*(R1+R2))/R2; + +// MUSART2_voidSendNumbers(reading); +// MUSART2_voidSendString((u8*)"\r\n"); +} + int main (void) { @@ -322,13 +311,8 @@ int main (void) MTIM3_voidInit(); MUSART2_voidInit(); - /*start timer 1sec*/ - //MSTK_voidSetIntervalPeriodic(1000000, VoltageReading); - - -// MTIM2_voidOutputPWM_C2(0); -// MTIM3_voidOutputPWM(0); + MSTK_voidSetIntervalPeriodic(1000000, VoltageReading); while(1) { @@ -350,7 +334,7 @@ int main (void) } TargetDistance(); - //Rx_pwm = 0; + } else { @@ -363,7 +347,7 @@ int main (void) } TargetDistance(Rx_pwm); - //Rx_pwm = 0; + } } @@ -377,21 +361,11 @@ int main (void) { /* rotate right */ RotateRight(); - - MUSART2_voidSendString((u8*)"s2"); - MUSART2_voidSendString((u8*)"/r/n"); - } else { /* rotate left */ -// MUSART2_voidSendString((u8*)"high"); -// MUSART2_voidSendString((u8*)"/r/n"); - RotateLeft(); - - MUSART2_voidSendString((u8*)"s2"); - MUSART2_voidSendString((u8*)"/r/n"); } }