hard_led.lst 86 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310
  1. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 1
  2. 1 .cpu cortex-m4
  3. 2 .arch armv7e-m
  4. 3 .fpu fpv4-sp-d16
  5. 4 .eabi_attribute 27, 1
  6. 5 .eabi_attribute 28, 1
  7. 6 .eabi_attribute 20, 1
  8. 7 .eabi_attribute 21, 1
  9. 8 .eabi_attribute 23, 3
  10. 9 .eabi_attribute 24, 1
  11. 10 .eabi_attribute 25, 1
  12. 11 .eabi_attribute 26, 1
  13. 12 .eabi_attribute 30, 6
  14. 13 .eabi_attribute 34, 1
  15. 14 .eabi_attribute 18, 4
  16. 15 .file "hard_led.c"
  17. 16 .text
  18. 17 .Ltext0:
  19. 18 .cfi_sections .debug_frame
  20. 19 .global L_red
  21. 20 .section .bss.L_red,"aw",%nobits
  22. 21 .align 2
  23. 24 L_red:
  24. 25 0000 00000000 .space 20
  25. 25 00000000
  26. 25 00000000
  27. 25 00000000
  28. 25 00000000
  29. 26 .global L_blue
  30. 27 .section .bss.L_blue,"aw",%nobits
  31. 28 .align 2
  32. 31 L_blue:
  33. 32 0000 00000000 .space 20
  34. 32 00000000
  35. 32 00000000
  36. 32 00000000
  37. 32 00000000
  38. 33 .global L_green
  39. 34 .section .bss.L_green,"aw",%nobits
  40. 35 .align 2
  41. 38 L_green:
  42. 39 0000 00000000 .space 20
  43. 39 00000000
  44. 39 00000000
  45. 39 00000000
  46. 39 00000000
  47. 40 .global L_purple
  48. 41 .section .bss.L_purple,"aw",%nobits
  49. 42 .align 2
  50. 45 L_purple:
  51. 46 0000 00000000 .space 20
  52. 46 00000000
  53. 46 00000000
  54. 46 00000000
  55. 46 00000000
  56. 47 .global L_cyan
  57. 48 .section .bss.L_cyan,"aw",%nobits
  58. 49 .align 2
  59. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 2
  60. 52 L_cyan:
  61. 53 0000 00000000 .space 20
  62. 53 00000000
  63. 53 00000000
  64. 53 00000000
  65. 53 00000000
  66. 54 .global L_yellow
  67. 55 .section .bss.L_yellow,"aw",%nobits
  68. 56 .align 2
  69. 59 L_yellow:
  70. 60 0000 00000000 .space 20
  71. 60 00000000
  72. 60 00000000
  73. 60 00000000
  74. 60 00000000
  75. 61 .global L_white
  76. 62 .section .bss.L_white,"aw",%nobits
  77. 63 .align 2
  78. 66 L_white:
  79. 67 0000 00000000 .space 20
  80. 67 00000000
  81. 67 00000000
  82. 67 00000000
  83. 67 00000000
  84. 68 .global led_is_ok
  85. 69 .section .bss.led_is_ok,"aw",%nobits
  86. 72 led_is_ok:
  87. 73 0000 00 .space 1
  88. 74 .section .text.Update_LED_Time,"ax",%progbits
  89. 75 .align 1
  90. 76 .global Update_LED_Time
  91. 77 .syntax unified
  92. 78 .thumb
  93. 79 .thumb_func
  94. 81 Update_LED_Time:
  95. 82 .LFB133:
  96. 83 .file 1 "user_src/hard_led.c"
  97. 1:user_src/hard_led.c **** #include "hard_led.h"
  98. 2:user_src/hard_led.c **** #include <stdint.h>
  99. 3:user_src/hard_led.c **** #include "gpio.h"
  100. 4:user_src/hard_led.c **** #include "soft_p_2_c.h"
  101. 5:user_src/hard_led.c **** #include "soft_flash.h"
  102. 6:user_src/hard_led.c ****
  103. 7:user_src/hard_led.c ****
  104. 8:user_src/hard_led.c **** LED_Red L_red;
  105. 9:user_src/hard_led.c **** LED_Blue L_blue;
  106. 10:user_src/hard_led.c **** LED_Green L_green;
  107. 11:user_src/hard_led.c **** LED_Purple L_purple;
  108. 12:user_src/hard_led.c **** LED_Cyan L_cyan;
  109. 13:user_src/hard_led.c **** LED_Yellow L_yellow;
  110. 14:user_src/hard_led.c **** LED_White L_white;
  111. 15:user_src/hard_led.c **** bool led_is_ok = false;
  112. 16:user_src/hard_led.c ****
  113. 17:user_src/hard_led.c **** void Update_LED_Time(){
  114. 84 .loc 1 17 23
  115. 85 .cfi_startproc
  116. 86 @ args = 0, pretend = 0, frame = 0
  117. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 3
  118. 87 @ frame_needed = 1, uses_anonymous_args = 0
  119. 88 0000 80B5 push {r7, lr}
  120. 89 .LCFI0:
  121. 90 .cfi_def_cfa_offset 8
  122. 91 .cfi_offset 7, -8
  123. 92 .cfi_offset 14, -4
  124. 93 0002 00AF add r7, sp, #0
  125. 94 .LCFI1:
  126. 95 .cfi_def_cfa_register 7
  127. 18:user_src/hard_led.c **** L_red.time = HAL_GetTick();
  128. 96 .loc 1 18 15
  129. 97 0004 FFF7FEFF bl HAL_GetTick
  130. 98 0008 0346 mov r3, r0
  131. 99 .loc 1 18 13
  132. 100 000a 114A ldr r2, .L2
  133. 101 000c 1361 str r3, [r2, #16]
  134. 19:user_src/hard_led.c **** L_blue.time = HAL_GetTick();
  135. 102 .loc 1 19 16
  136. 103 000e FFF7FEFF bl HAL_GetTick
  137. 104 0012 0346 mov r3, r0
  138. 105 .loc 1 19 14
  139. 106 0014 0F4A ldr r2, .L2+4
  140. 107 0016 1361 str r3, [r2, #16]
  141. 20:user_src/hard_led.c **** L_green.time = HAL_GetTick();
  142. 108 .loc 1 20 17
  143. 109 0018 FFF7FEFF bl HAL_GetTick
  144. 110 001c 0346 mov r3, r0
  145. 111 .loc 1 20 15
  146. 112 001e 0E4A ldr r2, .L2+8
  147. 113 0020 1361 str r3, [r2, #16]
  148. 21:user_src/hard_led.c **** L_purple.time = HAL_GetTick();
  149. 114 .loc 1 21 18
  150. 115 0022 FFF7FEFF bl HAL_GetTick
  151. 116 0026 0346 mov r3, r0
  152. 117 .loc 1 21 16
  153. 118 0028 0C4A ldr r2, .L2+12
  154. 119 002a 1361 str r3, [r2, #16]
  155. 22:user_src/hard_led.c **** L_cyan.time = HAL_GetTick();
  156. 120 .loc 1 22 16
  157. 121 002c FFF7FEFF bl HAL_GetTick
  158. 122 0030 0346 mov r3, r0
  159. 123 .loc 1 22 14
  160. 124 0032 0B4A ldr r2, .L2+16
  161. 125 0034 1361 str r3, [r2, #16]
  162. 23:user_src/hard_led.c **** L_yellow.time = HAL_GetTick();
  163. 126 .loc 1 23 18
  164. 127 0036 FFF7FEFF bl HAL_GetTick
  165. 128 003a 0346 mov r3, r0
  166. 129 .loc 1 23 16
  167. 130 003c 094A ldr r2, .L2+20
  168. 131 003e 1361 str r3, [r2, #16]
  169. 24:user_src/hard_led.c **** L_white.time = HAL_GetTick();
  170. 132 .loc 1 24 17
  171. 133 0040 FFF7FEFF bl HAL_GetTick
  172. 134 0044 0346 mov r3, r0
  173. 135 .loc 1 24 15
  174. 136 0046 084A ldr r2, .L2+24
  175. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 4
  176. 137 0048 1361 str r3, [r2, #16]
  177. 25:user_src/hard_led.c **** }
  178. 138 .loc 1 25 1
  179. 139 004a 00BF nop
  180. 140 004c 80BD pop {r7, pc}
  181. 141 .L3:
  182. 142 004e 00BF .align 2
  183. 143 .L2:
  184. 144 0050 00000000 .word L_red
  185. 145 0054 00000000 .word L_blue
  186. 146 0058 00000000 .word L_green
  187. 147 005c 00000000 .word L_purple
  188. 148 0060 00000000 .word L_cyan
  189. 149 0064 00000000 .word L_yellow
  190. 150 0068 00000000 .word L_white
  191. 151 .cfi_endproc
  192. 152 .LFE133:
  193. 154 .section .text.led_set_blink,"ax",%progbits
  194. 155 .align 1
  195. 156 .global led_set_blink
  196. 157 .syntax unified
  197. 158 .thumb
  198. 159 .thumb_func
  199. 161 led_set_blink:
  200. 162 .LFB134:
  201. 26:user_src/hard_led.c ****
  202. 27:user_src/hard_led.c **** /**
  203. 28:user_src/hard_led.c **** * @file led_set_blink
  204. 29:user_src/hard_led.c **** * @brief LED闪烁
  205. 30:user_src/hard_led.c **** * @param none
  206. 31:user_src/hard_led.c **** * @details
  207. 32:user_src/hard_led.c **** * @author Zhang Sir
  208. 33:user_src/hard_led.c **** **/
  209. 34:user_src/hard_led.c **** void led_set_blink(uint8_t LED, uint8_t on_time, uint8_t off_time, uint8_t repeat)
  210. 35:user_src/hard_led.c **** {
  211. 163 .loc 1 35 1
  212. 164 .cfi_startproc
  213. 165 @ args = 0, pretend = 0, frame = 8
  214. 166 @ frame_needed = 1, uses_anonymous_args = 0
  215. 167 0000 90B5 push {r4, r7, lr}
  216. 168 .LCFI2:
  217. 169 .cfi_def_cfa_offset 12
  218. 170 .cfi_offset 4, -12
  219. 171 .cfi_offset 7, -8
  220. 172 .cfi_offset 14, -4
  221. 173 0002 83B0 sub sp, sp, #12
  222. 174 .LCFI3:
  223. 175 .cfi_def_cfa_offset 24
  224. 176 0004 00AF add r7, sp, #0
  225. 177 .LCFI4:
  226. 178 .cfi_def_cfa_register 7
  227. 179 0006 0446 mov r4, r0
  228. 180 0008 0846 mov r0, r1
  229. 181 000a 1146 mov r1, r2
  230. 182 000c 1A46 mov r2, r3
  231. 183 000e 2346 mov r3, r4
  232. 184 0010 FB71 strb r3, [r7, #7]
  233. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 5
  234. 185 0012 0346 mov r3, r0
  235. 186 0014 BB71 strb r3, [r7, #6]
  236. 187 0016 0B46 mov r3, r1
  237. 188 0018 7B71 strb r3, [r7, #5]
  238. 189 001a 1346 mov r3, r2
  239. 190 001c 3B71 strb r3, [r7, #4]
  240. 36:user_src/hard_led.c **** if (LED == Red)
  241. 191 .loc 1 36 5
  242. 192 001e FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  243. 193 0020 002B cmp r3, #0
  244. 194 0022 1ED1 bne .L5
  245. 37:user_src/hard_led.c **** {
  246. 38:user_src/hard_led.c **** L_red.on_time_ms = on_time * 100;
  247. 195 .loc 1 38 30
  248. 196 0024 BB79 ldrb r3, [r7, #6] @ zero_extendqisi2
  249. 197 0026 6422 movs r2, #100
  250. 198 0028 02FB03F3 mul r3, r2, r3
  251. 199 002c 1A46 mov r2, r3
  252. 200 .loc 1 38 20
  253. 201 002e 744B ldr r3, .L13
  254. 202 0030 5A60 str r2, [r3, #4]
  255. 39:user_src/hard_led.c **** L_red.off_time_ms = off_time * 100;
  256. 203 .loc 1 39 32
  257. 204 0032 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2
  258. 205 0034 6422 movs r2, #100
  259. 206 0036 02FB03F3 mul r3, r2, r3
  260. 207 003a 1A46 mov r2, r3
  261. 208 .loc 1 39 21
  262. 209 003c 704B ldr r3, .L13
  263. 210 003e 9A60 str r2, [r3, #8]
  264. 40:user_src/hard_led.c **** LEDRed_OFF();
  265. 211 .loc 1 40 3
  266. 212 0040 0022 movs r2, #0
  267. 213 0042 0121 movs r1, #1
  268. 214 0044 6F48 ldr r0, .L13+4
  269. 215 0046 FFF7FEFF bl HAL_GPIO_WritePin
  270. 41:user_src/hard_led.c **** L_red.repeat = repeat;
  271. 216 .loc 1 41 16
  272. 217 004a 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2
  273. 218 004c 6C4A ldr r2, .L13
  274. 219 004e D360 str r3, [r2, #12]
  275. 42:user_src/hard_led.c **** L_red.time = HAL_GetTick();
  276. 220 .loc 1 42 16
  277. 221 0050 FFF7FEFF bl HAL_GetTick
  278. 222 0054 0346 mov r3, r0
  279. 223 .loc 1 42 14
  280. 224 0056 6A4A ldr r2, .L13
  281. 225 0058 1361 str r3, [r2, #16]
  282. 43:user_src/hard_led.c **** L_red.status = OFF;
  283. 226 .loc 1 43 16
  284. 227 005a 694B ldr r3, .L13
  285. 228 005c 0022 movs r2, #0
  286. 229 005e 1A70 strb r2, [r3]
  287. 44:user_src/hard_led.c **** }
  288. 45:user_src/hard_led.c **** else if (LED == Green)
  289. 46:user_src/hard_led.c **** {
  290. 47:user_src/hard_led.c **** L_green.on_time_ms = on_time * 100;
  291. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 6
  292. 48:user_src/hard_led.c **** L_green.off_time_ms = off_time * 100;
  293. 49:user_src/hard_led.c **** LEDGreen_OFF();
  294. 50:user_src/hard_led.c **** L_green.repeat = repeat;
  295. 51:user_src/hard_led.c **** L_green.time = HAL_GetTick();
  296. 52:user_src/hard_led.c **** L_green.status = OFF;
  297. 53:user_src/hard_led.c **** }
  298. 54:user_src/hard_led.c **** else if (LED == Blue)
  299. 55:user_src/hard_led.c **** {
  300. 56:user_src/hard_led.c **** L_blue.on_time_ms = on_time * 100;
  301. 57:user_src/hard_led.c **** L_blue.off_time_ms = off_time * 100;
  302. 58:user_src/hard_led.c **** LEDBlue_OFF();
  303. 59:user_src/hard_led.c **** L_blue.repeat = repeat;
  304. 60:user_src/hard_led.c **** L_blue.time = HAL_GetTick();
  305. 61:user_src/hard_led.c **** L_blue.status = OFF;
  306. 62:user_src/hard_led.c **** }
  307. 63:user_src/hard_led.c **** else if (LED == Purple)
  308. 64:user_src/hard_led.c **** {
  309. 65:user_src/hard_led.c **** L_purple.on_time_ms = on_time * 100;
  310. 66:user_src/hard_led.c **** L_purple.off_time_ms = off_time * 100;
  311. 67:user_src/hard_led.c **** LEDPurple_OFF();
  312. 68:user_src/hard_led.c **** L_purple.repeat = repeat;
  313. 69:user_src/hard_led.c **** L_purple.time = HAL_GetTick();
  314. 70:user_src/hard_led.c **** L_purple.status = OFF;
  315. 71:user_src/hard_led.c **** }
  316. 72:user_src/hard_led.c **** else if (LED == Yellow)
  317. 73:user_src/hard_led.c **** {
  318. 74:user_src/hard_led.c **** L_yellow.on_time_ms = on_time * 100;
  319. 75:user_src/hard_led.c **** L_yellow.off_time_ms = off_time * 100;
  320. 76:user_src/hard_led.c **** LEDYellow_OFF();
  321. 77:user_src/hard_led.c **** L_yellow.repeat = repeat;
  322. 78:user_src/hard_led.c **** L_yellow.time = HAL_GetTick();
  323. 79:user_src/hard_led.c **** L_yellow.status = OFF;
  324. 80:user_src/hard_led.c **** }
  325. 81:user_src/hard_led.c **** else if (LED == Cyan)
  326. 82:user_src/hard_led.c **** {
  327. 83:user_src/hard_led.c **** L_cyan.on_time_ms = on_time * 100;
  328. 84:user_src/hard_led.c **** L_cyan.off_time_ms = off_time * 100;
  329. 85:user_src/hard_led.c **** LEDCyan_OFF();
  330. 86:user_src/hard_led.c **** L_cyan.repeat = repeat;
  331. 87:user_src/hard_led.c **** L_cyan.time = HAL_GetTick();
  332. 88:user_src/hard_led.c **** L_cyan.status = OFF;
  333. 89:user_src/hard_led.c **** }
  334. 90:user_src/hard_led.c **** else if (LED == White)
  335. 91:user_src/hard_led.c **** {
  336. 92:user_src/hard_led.c **** L_white.on_time_ms = on_time * 100;
  337. 93:user_src/hard_led.c **** L_white.off_time_ms = off_time * 100;
  338. 94:user_src/hard_led.c **** LEDWhite_OFF();
  339. 95:user_src/hard_led.c **** L_white.repeat = repeat;
  340. 96:user_src/hard_led.c **** L_white.time = HAL_GetTick();
  341. 97:user_src/hard_led.c **** L_white.status = OFF;
  342. 98:user_src/hard_led.c **** }
  343. 99:user_src/hard_led.c **** }
  344. 230 .loc 1 99 1
  345. 231 0060 CAE0 b .L12
  346. 232 .L5:
  347. 45:user_src/hard_led.c **** {
  348. 233 .loc 1 45 10
  349. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 7
  350. 234 0062 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  351. 235 0064 012B cmp r3, #1
  352. 236 0066 1ED1 bne .L7
  353. 47:user_src/hard_led.c **** L_green.off_time_ms = off_time * 100;
  354. 237 .loc 1 47 32
  355. 238 0068 BB79 ldrb r3, [r7, #6] @ zero_extendqisi2
  356. 239 006a 6422 movs r2, #100
  357. 240 006c 02FB03F3 mul r3, r2, r3
  358. 241 0070 1A46 mov r2, r3
  359. 47:user_src/hard_led.c **** L_green.off_time_ms = off_time * 100;
  360. 242 .loc 1 47 22
  361. 243 0072 654B ldr r3, .L13+8
  362. 244 0074 5A60 str r2, [r3, #4]
  363. 48:user_src/hard_led.c **** LEDGreen_OFF();
  364. 245 .loc 1 48 34
  365. 246 0076 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2
  366. 247 0078 6422 movs r2, #100
  367. 248 007a 02FB03F3 mul r3, r2, r3
  368. 249 007e 1A46 mov r2, r3
  369. 48:user_src/hard_led.c **** LEDGreen_OFF();
  370. 250 .loc 1 48 23
  371. 251 0080 614B ldr r3, .L13+8
  372. 252 0082 9A60 str r2, [r3, #8]
  373. 49:user_src/hard_led.c **** L_green.repeat = repeat;
  374. 253 .loc 1 49 3
  375. 254 0084 0022 movs r2, #0
  376. 255 0086 0221 movs r1, #2
  377. 256 0088 5E48 ldr r0, .L13+4
  378. 257 008a FFF7FEFF bl HAL_GPIO_WritePin
  379. 50:user_src/hard_led.c **** L_green.time = HAL_GetTick();
  380. 258 .loc 1 50 18
  381. 259 008e 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2
  382. 260 0090 5D4A ldr r2, .L13+8
  383. 261 0092 D360 str r3, [r2, #12]
  384. 51:user_src/hard_led.c **** L_green.status = OFF;
  385. 262 .loc 1 51 18
  386. 263 0094 FFF7FEFF bl HAL_GetTick
  387. 264 0098 0346 mov r3, r0
  388. 51:user_src/hard_led.c **** L_green.status = OFF;
  389. 265 .loc 1 51 16
  390. 266 009a 5B4A ldr r2, .L13+8
  391. 267 009c 1361 str r3, [r2, #16]
  392. 52:user_src/hard_led.c **** }
  393. 268 .loc 1 52 18
  394. 269 009e 5A4B ldr r3, .L13+8
  395. 270 00a0 0022 movs r2, #0
  396. 271 00a2 1A70 strb r2, [r3]
  397. 272 .loc 1 99 1
  398. 273 00a4 A8E0 b .L12
  399. 274 .L7:
  400. 54:user_src/hard_led.c **** {
  401. 275 .loc 1 54 10
  402. 276 00a6 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  403. 277 00a8 022B cmp r3, #2
  404. 278 00aa 1ED1 bne .L8
  405. 56:user_src/hard_led.c **** L_blue.off_time_ms = off_time * 100;
  406. 279 .loc 1 56 31
  407. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 8
  408. 280 00ac BB79 ldrb r3, [r7, #6] @ zero_extendqisi2
  409. 281 00ae 6422 movs r2, #100
  410. 282 00b0 02FB03F3 mul r3, r2, r3
  411. 283 00b4 1A46 mov r2, r3
  412. 56:user_src/hard_led.c **** L_blue.off_time_ms = off_time * 100;
  413. 284 .loc 1 56 21
  414. 285 00b6 554B ldr r3, .L13+12
  415. 286 00b8 5A60 str r2, [r3, #4]
  416. 57:user_src/hard_led.c **** LEDBlue_OFF();
  417. 287 .loc 1 57 33
  418. 288 00ba 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2
  419. 289 00bc 6422 movs r2, #100
  420. 290 00be 02FB03F3 mul r3, r2, r3
  421. 291 00c2 1A46 mov r2, r3
  422. 57:user_src/hard_led.c **** LEDBlue_OFF();
  423. 292 .loc 1 57 22
  424. 293 00c4 514B ldr r3, .L13+12
  425. 294 00c6 9A60 str r2, [r3, #8]
  426. 58:user_src/hard_led.c **** L_blue.repeat = repeat;
  427. 295 .loc 1 58 3
  428. 296 00c8 0022 movs r2, #0
  429. 297 00ca 0421 movs r1, #4
  430. 298 00cc 4D48 ldr r0, .L13+4
  431. 299 00ce FFF7FEFF bl HAL_GPIO_WritePin
  432. 59:user_src/hard_led.c **** L_blue.time = HAL_GetTick();
  433. 300 .loc 1 59 17
  434. 301 00d2 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2
  435. 302 00d4 4D4A ldr r2, .L13+12
  436. 303 00d6 D360 str r3, [r2, #12]
  437. 60:user_src/hard_led.c **** L_blue.status = OFF;
  438. 304 .loc 1 60 17
  439. 305 00d8 FFF7FEFF bl HAL_GetTick
  440. 306 00dc 0346 mov r3, r0
  441. 60:user_src/hard_led.c **** L_blue.status = OFF;
  442. 307 .loc 1 60 15
  443. 308 00de 4B4A ldr r2, .L13+12
  444. 309 00e0 1361 str r3, [r2, #16]
  445. 61:user_src/hard_led.c **** }
  446. 310 .loc 1 61 17
  447. 311 00e2 4A4B ldr r3, .L13+12
  448. 312 00e4 0022 movs r2, #0
  449. 313 00e6 1A70 strb r2, [r3]
  450. 314 .loc 1 99 1
  451. 315 00e8 86E0 b .L12
  452. 316 .L8:
  453. 63:user_src/hard_led.c **** {
  454. 317 .loc 1 63 10
  455. 318 00ea FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  456. 319 00ec 032B cmp r3, #3
  457. 320 00ee 1ED1 bne .L9
  458. 65:user_src/hard_led.c **** L_purple.off_time_ms = off_time * 100;
  459. 321 .loc 1 65 33
  460. 322 00f0 BB79 ldrb r3, [r7, #6] @ zero_extendqisi2
  461. 323 00f2 6422 movs r2, #100
  462. 324 00f4 02FB03F3 mul r3, r2, r3
  463. 325 00f8 1A46 mov r2, r3
  464. 65:user_src/hard_led.c **** L_purple.off_time_ms = off_time * 100;
  465. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 9
  466. 326 .loc 1 65 23
  467. 327 00fa 454B ldr r3, .L13+16
  468. 328 00fc 5A60 str r2, [r3, #4]
  469. 66:user_src/hard_led.c **** LEDPurple_OFF();
  470. 329 .loc 1 66 35
  471. 330 00fe 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2
  472. 331 0100 6422 movs r2, #100
  473. 332 0102 02FB03F3 mul r3, r2, r3
  474. 333 0106 1A46 mov r2, r3
  475. 66:user_src/hard_led.c **** LEDPurple_OFF();
  476. 334 .loc 1 66 24
  477. 335 0108 414B ldr r3, .L13+16
  478. 336 010a 9A60 str r2, [r3, #8]
  479. 67:user_src/hard_led.c **** L_purple.repeat = repeat;
  480. 337 .loc 1 67 3
  481. 338 010c 0022 movs r2, #0
  482. 339 010e 0521 movs r1, #5
  483. 340 0110 3C48 ldr r0, .L13+4
  484. 341 0112 FFF7FEFF bl HAL_GPIO_WritePin
  485. 68:user_src/hard_led.c **** L_purple.time = HAL_GetTick();
  486. 342 .loc 1 68 19
  487. 343 0116 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2
  488. 344 0118 3D4A ldr r2, .L13+16
  489. 345 011a D360 str r3, [r2, #12]
  490. 69:user_src/hard_led.c **** L_purple.status = OFF;
  491. 346 .loc 1 69 19
  492. 347 011c FFF7FEFF bl HAL_GetTick
  493. 348 0120 0346 mov r3, r0
  494. 69:user_src/hard_led.c **** L_purple.status = OFF;
  495. 349 .loc 1 69 17
  496. 350 0122 3B4A ldr r2, .L13+16
  497. 351 0124 1361 str r3, [r2, #16]
  498. 70:user_src/hard_led.c **** }
  499. 352 .loc 1 70 19
  500. 353 0126 3A4B ldr r3, .L13+16
  501. 354 0128 0022 movs r2, #0
  502. 355 012a 1A70 strb r2, [r3]
  503. 356 .loc 1 99 1
  504. 357 012c 64E0 b .L12
  505. 358 .L9:
  506. 72:user_src/hard_led.c **** {
  507. 359 .loc 1 72 10
  508. 360 012e FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  509. 361 0130 042B cmp r3, #4
  510. 362 0132 1ED1 bne .L10
  511. 74:user_src/hard_led.c **** L_yellow.off_time_ms = off_time * 100;
  512. 363 .loc 1 74 33
  513. 364 0134 BB79 ldrb r3, [r7, #6] @ zero_extendqisi2
  514. 365 0136 6422 movs r2, #100
  515. 366 0138 02FB03F3 mul r3, r2, r3
  516. 367 013c 1A46 mov r2, r3
  517. 74:user_src/hard_led.c **** L_yellow.off_time_ms = off_time * 100;
  518. 368 .loc 1 74 23
  519. 369 013e 354B ldr r3, .L13+20
  520. 370 0140 5A60 str r2, [r3, #4]
  521. 75:user_src/hard_led.c **** LEDYellow_OFF();
  522. 371 .loc 1 75 35
  523. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 10
  524. 372 0142 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2
  525. 373 0144 6422 movs r2, #100
  526. 374 0146 02FB03F3 mul r3, r2, r3
  527. 375 014a 1A46 mov r2, r3
  528. 75:user_src/hard_led.c **** LEDYellow_OFF();
  529. 376 .loc 1 75 24
  530. 377 014c 314B ldr r3, .L13+20
  531. 378 014e 9A60 str r2, [r3, #8]
  532. 76:user_src/hard_led.c **** L_yellow.repeat = repeat;
  533. 379 .loc 1 76 3
  534. 380 0150 0022 movs r2, #0
  535. 381 0152 0321 movs r1, #3
  536. 382 0154 2B48 ldr r0, .L13+4
  537. 383 0156 FFF7FEFF bl HAL_GPIO_WritePin
  538. 77:user_src/hard_led.c **** L_yellow.time = HAL_GetTick();
  539. 384 .loc 1 77 19
  540. 385 015a 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2
  541. 386 015c 2D4A ldr r2, .L13+20
  542. 387 015e D360 str r3, [r2, #12]
  543. 78:user_src/hard_led.c **** L_yellow.status = OFF;
  544. 388 .loc 1 78 19
  545. 389 0160 FFF7FEFF bl HAL_GetTick
  546. 390 0164 0346 mov r3, r0
  547. 78:user_src/hard_led.c **** L_yellow.status = OFF;
  548. 391 .loc 1 78 17
  549. 392 0166 2B4A ldr r2, .L13+20
  550. 393 0168 1361 str r3, [r2, #16]
  551. 79:user_src/hard_led.c **** }
  552. 394 .loc 1 79 19
  553. 395 016a 2A4B ldr r3, .L13+20
  554. 396 016c 0022 movs r2, #0
  555. 397 016e 1A70 strb r2, [r3]
  556. 398 .loc 1 99 1
  557. 399 0170 42E0 b .L12
  558. 400 .L10:
  559. 81:user_src/hard_led.c **** {
  560. 401 .loc 1 81 10
  561. 402 0172 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  562. 403 0174 052B cmp r3, #5
  563. 404 0176 1ED1 bne .L11
  564. 83:user_src/hard_led.c **** L_cyan.off_time_ms = off_time * 100;
  565. 405 .loc 1 83 31
  566. 406 0178 BB79 ldrb r3, [r7, #6] @ zero_extendqisi2
  567. 407 017a 6422 movs r2, #100
  568. 408 017c 02FB03F3 mul r3, r2, r3
  569. 409 0180 1A46 mov r2, r3
  570. 83:user_src/hard_led.c **** L_cyan.off_time_ms = off_time * 100;
  571. 410 .loc 1 83 21
  572. 411 0182 254B ldr r3, .L13+24
  573. 412 0184 5A60 str r2, [r3, #4]
  574. 84:user_src/hard_led.c **** LEDCyan_OFF();
  575. 413 .loc 1 84 33
  576. 414 0186 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2
  577. 415 0188 6422 movs r2, #100
  578. 416 018a 02FB03F3 mul r3, r2, r3
  579. 417 018e 1A46 mov r2, r3
  580. 84:user_src/hard_led.c **** LEDCyan_OFF();
  581. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 11
  582. 418 .loc 1 84 22
  583. 419 0190 214B ldr r3, .L13+24
  584. 420 0192 9A60 str r2, [r3, #8]
  585. 85:user_src/hard_led.c **** L_cyan.repeat = repeat;
  586. 421 .loc 1 85 3
  587. 422 0194 0022 movs r2, #0
  588. 423 0196 0621 movs r1, #6
  589. 424 0198 1A48 ldr r0, .L13+4
  590. 425 019a FFF7FEFF bl HAL_GPIO_WritePin
  591. 86:user_src/hard_led.c **** L_cyan.time = HAL_GetTick();
  592. 426 .loc 1 86 17
  593. 427 019e 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2
  594. 428 01a0 1D4A ldr r2, .L13+24
  595. 429 01a2 D360 str r3, [r2, #12]
  596. 87:user_src/hard_led.c **** L_cyan.status = OFF;
  597. 430 .loc 1 87 17
  598. 431 01a4 FFF7FEFF bl HAL_GetTick
  599. 432 01a8 0346 mov r3, r0
  600. 87:user_src/hard_led.c **** L_cyan.status = OFF;
  601. 433 .loc 1 87 15
  602. 434 01aa 1B4A ldr r2, .L13+24
  603. 435 01ac 1361 str r3, [r2, #16]
  604. 88:user_src/hard_led.c **** }
  605. 436 .loc 1 88 17
  606. 437 01ae 1A4B ldr r3, .L13+24
  607. 438 01b0 0022 movs r2, #0
  608. 439 01b2 1A70 strb r2, [r3]
  609. 440 .loc 1 99 1
  610. 441 01b4 20E0 b .L12
  611. 442 .L11:
  612. 90:user_src/hard_led.c **** {
  613. 443 .loc 1 90 10
  614. 444 01b6 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  615. 445 01b8 062B cmp r3, #6
  616. 446 01ba 1DD1 bne .L12
  617. 92:user_src/hard_led.c **** L_white.off_time_ms = off_time * 100;
  618. 447 .loc 1 92 32
  619. 448 01bc BB79 ldrb r3, [r7, #6] @ zero_extendqisi2
  620. 449 01be 6422 movs r2, #100
  621. 450 01c0 02FB03F3 mul r3, r2, r3
  622. 451 01c4 1A46 mov r2, r3
  623. 92:user_src/hard_led.c **** L_white.off_time_ms = off_time * 100;
  624. 452 .loc 1 92 22
  625. 453 01c6 154B ldr r3, .L13+28
  626. 454 01c8 5A60 str r2, [r3, #4]
  627. 93:user_src/hard_led.c **** LEDWhite_OFF();
  628. 455 .loc 1 93 34
  629. 456 01ca 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2
  630. 457 01cc 6422 movs r2, #100
  631. 458 01ce 02FB03F3 mul r3, r2, r3
  632. 459 01d2 1A46 mov r2, r3
  633. 93:user_src/hard_led.c **** LEDWhite_OFF();
  634. 460 .loc 1 93 23
  635. 461 01d4 114B ldr r3, .L13+28
  636. 462 01d6 9A60 str r2, [r3, #8]
  637. 94:user_src/hard_led.c **** L_white.repeat = repeat;
  638. 463 .loc 1 94 3
  639. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 12
  640. 464 01d8 0022 movs r2, #0
  641. 465 01da 0721 movs r1, #7
  642. 466 01dc 0948 ldr r0, .L13+4
  643. 467 01de FFF7FEFF bl HAL_GPIO_WritePin
  644. 95:user_src/hard_led.c **** L_white.time = HAL_GetTick();
  645. 468 .loc 1 95 18
  646. 469 01e2 3B79 ldrb r3, [r7, #4] @ zero_extendqisi2
  647. 470 01e4 0D4A ldr r2, .L13+28
  648. 471 01e6 D360 str r3, [r2, #12]
  649. 96:user_src/hard_led.c **** L_white.status = OFF;
  650. 472 .loc 1 96 18
  651. 473 01e8 FFF7FEFF bl HAL_GetTick
  652. 474 01ec 0346 mov r3, r0
  653. 96:user_src/hard_led.c **** L_white.status = OFF;
  654. 475 .loc 1 96 16
  655. 476 01ee 0B4A ldr r2, .L13+28
  656. 477 01f0 1361 str r3, [r2, #16]
  657. 97:user_src/hard_led.c **** }
  658. 478 .loc 1 97 18
  659. 479 01f2 0A4B ldr r3, .L13+28
  660. 480 01f4 0022 movs r2, #0
  661. 481 01f6 1A70 strb r2, [r3]
  662. 482 .L12:
  663. 483 .loc 1 99 1
  664. 484 01f8 00BF nop
  665. 485 01fa 0C37 adds r7, r7, #12
  666. 486 .LCFI5:
  667. 487 .cfi_def_cfa_offset 12
  668. 488 01fc BD46 mov sp, r7
  669. 489 .LCFI6:
  670. 490 .cfi_def_cfa_register 13
  671. 491 @ sp needed
  672. 492 01fe 90BD pop {r4, r7, pc}
  673. 493 .L14:
  674. 494 .align 2
  675. 495 .L13:
  676. 496 0200 00000000 .word L_red
  677. 497 0204 00040048 .word 1207960576
  678. 498 0208 00000000 .word L_green
  679. 499 020c 00000000 .word L_blue
  680. 500 0210 00000000 .word L_purple
  681. 501 0214 00000000 .word L_yellow
  682. 502 0218 00000000 .word L_cyan
  683. 503 021c 00000000 .word L_white
  684. 504 .cfi_endproc
  685. 505 .LFE134:
  686. 507 .global L_red_time
  687. 508 .section .bss.L_red_time,"aw",%nobits
  688. 509 .align 2
  689. 512 L_red_time:
  690. 513 0000 00000000 .space 4
  691. 514 .section .text.led_blink_repeat,"ax",%progbits
  692. 515 .align 1
  693. 516 .global led_blink_repeat
  694. 517 .syntax unified
  695. 518 .thumb
  696. 519 .thumb_func
  697. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 13
  698. 521 led_blink_repeat:
  699. 522 .LFB135:
  700. 100:user_src/hard_led.c ****
  701. 101:user_src/hard_led.c **** /**
  702. 102:user_src/hard_led.c **** * @file led_blink_repeat
  703. 103:user_src/hard_led.c **** * @brief LED循环
  704. 104:user_src/hard_led.c **** * @param none
  705. 105:user_src/hard_led.c **** * @details
  706. 106:user_src/hard_led.c **** * @author Zhang Sir
  707. 107:user_src/hard_led.c **** **/
  708. 108:user_src/hard_led.c **** uint32_t L_red_time = 0;
  709. 109:user_src/hard_led.c **** void led_blink_repeat()
  710. 110:user_src/hard_led.c **** {
  711. 523 .loc 1 110 1
  712. 524 .cfi_startproc
  713. 525 @ args = 0, pretend = 0, frame = 0
  714. 526 @ frame_needed = 1, uses_anonymous_args = 0
  715. 527 0000 80B5 push {r7, lr}
  716. 528 .LCFI7:
  717. 529 .cfi_def_cfa_offset 8
  718. 530 .cfi_offset 7, -8
  719. 531 .cfi_offset 14, -4
  720. 532 0002 00AF add r7, sp, #0
  721. 533 .LCFI8:
  722. 534 .cfi_def_cfa_register 7
  723. 111:user_src/hard_led.c **** //青岛中飞机型不需要LED
  724. 112:user_src/hard_led.c **** if(current_pmu_par.uavtype == VK_ALL_IN_ONE)
  725. 535 .loc 1 112 20
  726. 536 0004 9F4B ldr r3, .L71
  727. 537 0006 B3F90230 ldrsh r3, [r3, #2]
  728. 538 .loc 1 112 4
  729. 539 000a 122B cmp r3, #18
  730. 540 000c 00F04483 beq .L62
  731. 113:user_src/hard_led.c **** return;
  732. 114:user_src/hard_led.c ****
  733. 115:user_src/hard_led.c **** //没收到fmu数据 15秒内常亮红灯
  734. 116:user_src/hard_led.c **** if(recv_fmu_data == false)
  735. 541 .loc 1 116 19
  736. 542 0010 9D4B ldr r3, .L71+4
  737. 543 0012 1B78 ldrb r3, [r3] @ zero_extendqisi2
  738. 544 0014 83F00103 eor r3, r3, #1
  739. 545 0018 DBB2 uxtb r3, r3
  740. 546 .loc 1 116 4
  741. 547 001a 002B cmp r3, #0
  742. 548 001c 1ED0 beq .L18
  743. 117:user_src/hard_led.c **** {
  744. 118:user_src/hard_led.c **** if (HAL_GetTick() < 15000)
  745. 549 .loc 1 118 7
  746. 550 001e FFF7FEFF bl HAL_GetTick
  747. 551 0022 0346 mov r3, r0
  748. 552 .loc 1 118 6
  749. 553 0024 43F69722 movw r2, #14999
  750. 554 0028 9342 cmp r3, r2
  751. 555 002a 05D8 bhi .L19
  752. 119:user_src/hard_led.c **** {
  753. 120:user_src/hard_led.c **** LEDRed_ON();
  754. 556 .loc 1 120 4
  755. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 14
  756. 557 002c 0122 movs r2, #1
  757. 558 002e 0121 movs r1, #1
  758. 559 0030 9648 ldr r0, .L71+8
  759. 560 0032 FFF7FEFF bl HAL_GPIO_WritePin
  760. 561 0036 11E0 b .L18
  761. 562 .L19:
  762. 121:user_src/hard_led.c **** }
  763. 122:user_src/hard_led.c **** else
  764. 123:user_src/hard_led.c **** {
  765. 124:user_src/hard_led.c **** if(HAL_GetTick() - L_red_time > 2000)
  766. 563 .loc 1 124 7
  767. 564 0038 FFF7FEFF bl HAL_GetTick
  768. 565 003c 0246 mov r2, r0
  769. 566 .loc 1 124 21
  770. 567 003e 944B ldr r3, .L71+12
  771. 568 0040 1B68 ldr r3, [r3]
  772. 569 0042 D31A subs r3, r2, r3
  773. 570 .loc 1 124 6
  774. 571 0044 B3F5FA6F cmp r3, #2000
  775. 572 0048 08D9 bls .L18
  776. 125:user_src/hard_led.c **** {
  777. 126:user_src/hard_led.c **** HAL_GPIO_TogglePin(GPIOB,LED_R_Pin);
  778. 573 .loc 1 126 5
  779. 574 004a 0121 movs r1, #1
  780. 575 004c 8F48 ldr r0, .L71+8
  781. 576 004e FFF7FEFF bl HAL_GPIO_TogglePin
  782. 127:user_src/hard_led.c **** L_red_time = HAL_GetTick();
  783. 577 .loc 1 127 18
  784. 578 0052 FFF7FEFF bl HAL_GetTick
  785. 579 0056 0346 mov r3, r0
  786. 580 .loc 1 127 16
  787. 581 0058 8D4A ldr r2, .L71+12
  788. 582 005a 1360 str r3, [r2]
  789. 583 .L18:
  790. 128:user_src/hard_led.c **** }
  791. 129:user_src/hard_led.c **** }
  792. 130:user_src/hard_led.c **** }
  793. 131:user_src/hard_led.c ****
  794. 132:user_src/hard_led.c ****
  795. 133:user_src/hard_led.c **** if ((L_red.repeat == 0) && (L_blue.repeat == 0) && (L_green.repeat == 0) && (L_cyan.repeat == 0) &
  796. 584 .loc 1 133 12
  797. 585 005c 8D4B ldr r3, .L71+16
  798. 586 005e DB68 ldr r3, [r3, #12]
  799. 587 .loc 1 133 5
  800. 588 0060 002B cmp r3, #0
  801. 589 0062 18D1 bne .L20
  802. 590 .loc 1 133 36 discriminator 1
  803. 591 0064 8C4B ldr r3, .L71+20
  804. 592 0066 DB68 ldr r3, [r3, #12]
  805. 593 .loc 1 133 26 discriminator 1
  806. 594 0068 002B cmp r3, #0
  807. 595 006a 14D1 bne .L20
  808. 596 .loc 1 133 61 discriminator 2
  809. 597 006c 8B4B ldr r3, .L71+24
  810. 598 006e DB68 ldr r3, [r3, #12]
  811. 599 .loc 1 133 50 discriminator 2
  812. 600 0070 002B cmp r3, #0
  813. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 15
  814. 601 0072 10D1 bne .L20
  815. 602 .loc 1 133 85 discriminator 3
  816. 603 0074 8A4B ldr r3, .L71+28
  817. 604 0076 DB68 ldr r3, [r3, #12]
  818. 605 .loc 1 133 75 discriminator 3
  819. 606 0078 002B cmp r3, #0
  820. 607 007a 0CD1 bne .L20
  821. 134:user_src/hard_led.c **** (L_purple.repeat == 0) && (L_yellow.repeat == 0) && (L_white.repeat == 0))
  822. 608 .loc 1 134 12 discriminator 4
  823. 609 007c 894B ldr r3, .L71+32
  824. 610 007e DB68 ldr r3, [r3, #12]
  825. 133:user_src/hard_led.c **** (L_purple.repeat == 0) && (L_yellow.repeat == 0) && (L_white.repeat == 0))
  826. 611 .loc 1 133 99 discriminator 4
  827. 612 0080 002B cmp r3, #0
  828. 613 0082 08D1 bne .L20
  829. 614 .loc 1 134 38
  830. 615 0084 884B ldr r3, .L71+36
  831. 616 0086 DB68 ldr r3, [r3, #12]
  832. 617 .loc 1 134 26
  833. 618 0088 002B cmp r3, #0
  834. 619 008a 04D1 bne .L20
  835. 620 .loc 1 134 63 discriminator 1
  836. 621 008c 874B ldr r3, .L71+40
  837. 622 008e DB68 ldr r3, [r3, #12]
  838. 623 .loc 1 134 52 discriminator 1
  839. 624 0090 002B cmp r3, #0
  840. 625 0092 00F00383 beq .L63
  841. 626 .L20:
  842. 135:user_src/hard_led.c **** {
  843. 136:user_src/hard_led.c **** return;
  844. 137:user_src/hard_led.c **** }
  845. 138:user_src/hard_led.c **** if(recv_fmu_data == true)
  846. 627 .loc 1 138 19
  847. 628 0096 7C4B ldr r3, .L71+4
  848. 629 0098 1B78 ldrb r3, [r3] @ zero_extendqisi2
  849. 630 .loc 1 138 4
  850. 631 009a 002B cmp r3, #0
  851. 632 009c 00F00D83 beq .L15
  852. 139:user_src/hard_led.c **** {
  853. 140:user_src/hard_led.c **** if (L_red.repeat != 0)
  854. 633 .loc 1 140 12
  855. 634 00a0 7C4B ldr r3, .L71+16
  856. 635 00a2 DB68 ldr r3, [r3, #12]
  857. 636 .loc 1 140 6
  858. 637 00a4 002B cmp r3, #0
  859. 638 00a6 64D0 beq .L21
  860. 141:user_src/hard_led.c **** {
  861. 142:user_src/hard_led.c ****
  862. 143:user_src/hard_led.c **** if ((L_red.off_time_ms == 25500) || (L_red.on_time_ms == 25500))
  863. 639 .loc 1 143 14
  864. 640 00a8 7A4B ldr r3, .L71+16
  865. 641 00aa 9B68 ldr r3, [r3, #8]
  866. 642 .loc 1 143 7
  867. 643 00ac 46F29C32 movw r2, #25500
  868. 644 00b0 9342 cmp r3, r2
  869. 645 00b2 05D0 beq .L22
  870. 646 .loc 1 143 46 discriminator 1
  871. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 16
  872. 647 00b4 774B ldr r3, .L71+16
  873. 648 00b6 5B68 ldr r3, [r3, #4]
  874. 649 .loc 1 143 37 discriminator 1
  875. 650 00b8 46F29C32 movw r2, #25500
  876. 651 00bc 9342 cmp r3, r2
  877. 652 00be 1BD1 bne .L23
  878. 653 .L22:
  879. 144:user_src/hard_led.c **** {
  880. 145:user_src/hard_led.c **** L_red.repeat = 0;
  881. 654 .loc 1 145 18
  882. 655 00c0 744B ldr r3, .L71+16
  883. 656 00c2 0022 movs r2, #0
  884. 657 00c4 DA60 str r2, [r3, #12]
  885. 146:user_src/hard_led.c **** if (L_red.off_time_ms == 25500)
  886. 658 .loc 1 146 14
  887. 659 00c6 734B ldr r3, .L71+16
  888. 660 00c8 9B68 ldr r3, [r3, #8]
  889. 661 .loc 1 146 8
  890. 662 00ca 46F29C32 movw r2, #25500
  891. 663 00ce 9342 cmp r3, r2
  892. 664 00d0 05D1 bne .L24
  893. 147:user_src/hard_led.c **** {
  894. 148:user_src/hard_led.c **** LEDRed_OFF();
  895. 665 .loc 1 148 6
  896. 666 00d2 0022 movs r2, #0
  897. 667 00d4 0121 movs r1, #1
  898. 668 00d6 6D48 ldr r0, .L71+8
  899. 669 00d8 FFF7FEFF bl HAL_GPIO_WritePin
  900. 149:user_src/hard_led.c **** }
  901. 150:user_src/hard_led.c **** else if (L_red.on_time_ms == 25500)
  902. 151:user_src/hard_led.c **** {
  903. 152:user_src/hard_led.c **** LEDRed_ON();
  904. 153:user_src/hard_led.c **** }
  905. 154:user_src/hard_led.c ****
  906. 155:user_src/hard_led.c **** return;
  907. 670 .loc 1 155 5
  908. 671 00dc E0E2 b .L64
  909. 672 .L24:
  910. 150:user_src/hard_led.c **** {
  911. 673 .loc 1 150 19
  912. 674 00de 6D4B ldr r3, .L71+16
  913. 675 00e0 5B68 ldr r3, [r3, #4]
  914. 150:user_src/hard_led.c **** {
  915. 676 .loc 1 150 13
  916. 677 00e2 46F29C32 movw r2, #25500
  917. 678 00e6 9342 cmp r3, r2
  918. 679 00e8 40F0DA82 bne .L64
  919. 152:user_src/hard_led.c **** }
  920. 680 .loc 1 152 6
  921. 681 00ec 0122 movs r2, #1
  922. 682 00ee 0121 movs r1, #1
  923. 683 00f0 6648 ldr r0, .L71+8
  924. 684 00f2 FFF7FEFF bl HAL_GPIO_WritePin
  925. 685 .loc 1 155 5
  926. 686 00f6 D3E2 b .L64
  927. 687 .L23:
  928. 156:user_src/hard_led.c **** }
  929. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 17
  930. 157:user_src/hard_led.c **** if (L_red.status == ON)
  931. 688 .loc 1 157 13
  932. 689 00f8 664B ldr r3, .L71+16
  933. 690 00fa 1B78 ldrb r3, [r3] @ zero_extendqisi2
  934. 691 .loc 1 157 7
  935. 692 00fc FF2B cmp r3, #255
  936. 693 00fe 1AD1 bne .L26
  937. 158:user_src/hard_led.c **** {
  938. 159:user_src/hard_led.c **** if (HAL_GetTick() - L_red.time > L_red.on_time_ms)
  939. 694 .loc 1 159 9
  940. 695 0100 FFF7FEFF bl HAL_GetTick
  941. 696 0104 0246 mov r2, r0
  942. 697 .loc 1 159 30
  943. 698 0106 634B ldr r3, .L71+16
  944. 699 0108 1B69 ldr r3, [r3, #16]
  945. 700 .loc 1 159 23
  946. 701 010a D21A subs r2, r2, r3
  947. 702 .loc 1 159 43
  948. 703 010c 614B ldr r3, .L71+16
  949. 704 010e 5B68 ldr r3, [r3, #4]
  950. 705 .loc 1 159 8
  951. 706 0110 9A42 cmp r2, r3
  952. 707 0112 40F2D282 bls .L15
  953. 160:user_src/hard_led.c **** {
  954. 161:user_src/hard_led.c **** L_red.repeat--;
  955. 708 .loc 1 161 11
  956. 709 0116 5F4B ldr r3, .L71+16
  957. 710 0118 DB68 ldr r3, [r3, #12]
  958. 711 .loc 1 161 18
  959. 712 011a 013B subs r3, r3, #1
  960. 713 011c 5D4A ldr r2, .L71+16
  961. 714 011e D360 str r3, [r2, #12]
  962. 162:user_src/hard_led.c **** LEDRed_OFF();
  963. 715 .loc 1 162 6
  964. 716 0120 0022 movs r2, #0
  965. 717 0122 0121 movs r1, #1
  966. 718 0124 5948 ldr r0, .L71+8
  967. 719 0126 FFF7FEFF bl HAL_GPIO_WritePin
  968. 163:user_src/hard_led.c **** Update_LED_Time();
  969. 720 .loc 1 163 6
  970. 721 012a FFF7FEFF bl Update_LED_Time
  971. 164:user_src/hard_led.c **** L_red.status =OFF;
  972. 722 .loc 1 164 19
  973. 723 012e 594B ldr r3, .L71+16
  974. 724 0130 0022 movs r2, #0
  975. 725 0132 1A70 strb r2, [r3]
  976. 726 0134 C1E2 b .L15
  977. 727 .L26:
  978. 165:user_src/hard_led.c ****
  979. 166:user_src/hard_led.c **** }
  980. 167:user_src/hard_led.c **** }
  981. 168:user_src/hard_led.c **** else
  982. 169:user_src/hard_led.c **** {
  983. 170:user_src/hard_led.c **** if (HAL_GetTick() - L_red.time > L_red.off_time_ms)
  984. 728 .loc 1 170 9
  985. 729 0136 FFF7FEFF bl HAL_GetTick
  986. 730 013a 0246 mov r2, r0
  987. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 18
  988. 731 .loc 1 170 30
  989. 732 013c 554B ldr r3, .L71+16
  990. 733 013e 1B69 ldr r3, [r3, #16]
  991. 734 .loc 1 170 23
  992. 735 0140 D21A subs r2, r2, r3
  993. 736 .loc 1 170 43
  994. 737 0142 544B ldr r3, .L71+16
  995. 738 0144 9B68 ldr r3, [r3, #8]
  996. 739 .loc 1 170 8
  997. 740 0146 9A42 cmp r2, r3
  998. 741 0148 40F2B782 bls .L15
  999. 171:user_src/hard_led.c **** {
  1000. 172:user_src/hard_led.c **** if (L_red.repeat != 0)
  1001. 742 .loc 1 172 15
  1002. 743 014c 514B ldr r3, .L71+16
  1003. 744 014e DB68 ldr r3, [r3, #12]
  1004. 745 .loc 1 172 9
  1005. 746 0150 002B cmp r3, #0
  1006. 747 0152 00F0B282 beq .L15
  1007. 173:user_src/hard_led.c **** {
  1008. 174:user_src/hard_led.c **** LEDRed_ON();
  1009. 748 .loc 1 174 7
  1010. 749 0156 0122 movs r2, #1
  1011. 750 0158 0121 movs r1, #1
  1012. 751 015a 4C48 ldr r0, .L71+8
  1013. 752 015c FFF7FEFF bl HAL_GPIO_WritePin
  1014. 175:user_src/hard_led.c **** L_red.time = HAL_GetTick();
  1015. 753 .loc 1 175 20
  1016. 754 0160 FFF7FEFF bl HAL_GetTick
  1017. 755 0164 0346 mov r3, r0
  1018. 756 .loc 1 175 18
  1019. 757 0166 4B4A ldr r2, .L71+16
  1020. 758 0168 1361 str r3, [r2, #16]
  1021. 176:user_src/hard_led.c **** L_red.status = ON;
  1022. 759 .loc 1 176 20
  1023. 760 016a 4A4B ldr r3, .L71+16
  1024. 761 016c FF22 movs r2, #255
  1025. 762 016e 1A70 strb r2, [r3]
  1026. 763 0170 A3E2 b .L15
  1027. 764 .L21:
  1028. 177:user_src/hard_led.c **** }
  1029. 178:user_src/hard_led.c **** }
  1030. 179:user_src/hard_led.c **** }
  1031. 180:user_src/hard_led.c **** }
  1032. 181:user_src/hard_led.c **** else if (L_green.repeat != 0)
  1033. 765 .loc 1 181 19
  1034. 766 0172 4A4B ldr r3, .L71+24
  1035. 767 0174 DB68 ldr r3, [r3, #12]
  1036. 768 .loc 1 181 11
  1037. 769 0176 002B cmp r3, #0
  1038. 770 0178 64D0 beq .L27
  1039. 182:user_src/hard_led.c **** {
  1040. 183:user_src/hard_led.c ****
  1041. 184:user_src/hard_led.c **** if ((L_green.off_time_ms == 25500) || (L_green.on_time_ms == 25500))
  1042. 771 .loc 1 184 16
  1043. 772 017a 484B ldr r3, .L71+24
  1044. 773 017c 9B68 ldr r3, [r3, #8]
  1045. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 19
  1046. 774 .loc 1 184 7
  1047. 775 017e 46F29C32 movw r2, #25500
  1048. 776 0182 9342 cmp r3, r2
  1049. 777 0184 05D0 beq .L28
  1050. 778 .loc 1 184 50 discriminator 1
  1051. 779 0186 454B ldr r3, .L71+24
  1052. 780 0188 5B68 ldr r3, [r3, #4]
  1053. 781 .loc 1 184 39 discriminator 1
  1054. 782 018a 46F29C32 movw r2, #25500
  1055. 783 018e 9342 cmp r3, r2
  1056. 784 0190 1BD1 bne .L29
  1057. 785 .L28:
  1058. 185:user_src/hard_led.c **** {
  1059. 186:user_src/hard_led.c **** L_green.repeat = 0;
  1060. 786 .loc 1 186 20
  1061. 787 0192 424B ldr r3, .L71+24
  1062. 788 0194 0022 movs r2, #0
  1063. 789 0196 DA60 str r2, [r3, #12]
  1064. 187:user_src/hard_led.c **** if (L_green.off_time_ms == 25500)
  1065. 790 .loc 1 187 16
  1066. 791 0198 404B ldr r3, .L71+24
  1067. 792 019a 9B68 ldr r3, [r3, #8]
  1068. 793 .loc 1 187 8
  1069. 794 019c 46F29C32 movw r2, #25500
  1070. 795 01a0 9342 cmp r3, r2
  1071. 796 01a2 05D1 bne .L30
  1072. 188:user_src/hard_led.c **** {
  1073. 189:user_src/hard_led.c **** LEDGreen_OFF();
  1074. 797 .loc 1 189 6
  1075. 798 01a4 0022 movs r2, #0
  1076. 799 01a6 0221 movs r1, #2
  1077. 800 01a8 3848 ldr r0, .L71+8
  1078. 801 01aa FFF7FEFF bl HAL_GPIO_WritePin
  1079. 190:user_src/hard_led.c **** }
  1080. 191:user_src/hard_led.c **** else if (L_green.on_time_ms == 25500)
  1081. 192:user_src/hard_led.c **** {
  1082. 193:user_src/hard_led.c **** LEDGreen_ON();
  1083. 194:user_src/hard_led.c **** }
  1084. 195:user_src/hard_led.c ****
  1085. 196:user_src/hard_led.c **** return;
  1086. 802 .loc 1 196 5
  1087. 803 01ae 79E2 b .L65
  1088. 804 .L30:
  1089. 191:user_src/hard_led.c **** {
  1090. 805 .loc 1 191 21
  1091. 806 01b0 3A4B ldr r3, .L71+24
  1092. 807 01b2 5B68 ldr r3, [r3, #4]
  1093. 191:user_src/hard_led.c **** {
  1094. 808 .loc 1 191 13
  1095. 809 01b4 46F29C32 movw r2, #25500
  1096. 810 01b8 9342 cmp r3, r2
  1097. 811 01ba 40F07382 bne .L65
  1098. 193:user_src/hard_led.c **** }
  1099. 812 .loc 1 193 6
  1100. 813 01be 0122 movs r2, #1
  1101. 814 01c0 0221 movs r1, #2
  1102. 815 01c2 3248 ldr r0, .L71+8
  1103. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 20
  1104. 816 01c4 FFF7FEFF bl HAL_GPIO_WritePin
  1105. 817 .loc 1 196 5
  1106. 818 01c8 6CE2 b .L65
  1107. 819 .L29:
  1108. 197:user_src/hard_led.c **** }
  1109. 198:user_src/hard_led.c **** if (L_green.status == ON)
  1110. 820 .loc 1 198 15
  1111. 821 01ca 344B ldr r3, .L71+24
  1112. 822 01cc 1B78 ldrb r3, [r3] @ zero_extendqisi2
  1113. 823 .loc 1 198 7
  1114. 824 01ce FF2B cmp r3, #255
  1115. 825 01d0 1AD1 bne .L32
  1116. 199:user_src/hard_led.c **** {
  1117. 200:user_src/hard_led.c **** if (HAL_GetTick() - L_green.time > L_green.on_time_ms)
  1118. 826 .loc 1 200 9
  1119. 827 01d2 FFF7FEFF bl HAL_GetTick
  1120. 828 01d6 0246 mov r2, r0
  1121. 829 .loc 1 200 32
  1122. 830 01d8 304B ldr r3, .L71+24
  1123. 831 01da 1B69 ldr r3, [r3, #16]
  1124. 832 .loc 1 200 23
  1125. 833 01dc D21A subs r2, r2, r3
  1126. 834 .loc 1 200 47
  1127. 835 01de 2F4B ldr r3, .L71+24
  1128. 836 01e0 5B68 ldr r3, [r3, #4]
  1129. 837 .loc 1 200 8
  1130. 838 01e2 9A42 cmp r2, r3
  1131. 839 01e4 40F26982 bls .L15
  1132. 201:user_src/hard_led.c **** {
  1133. 202:user_src/hard_led.c **** L_green.repeat--;
  1134. 840 .loc 1 202 13
  1135. 841 01e8 2C4B ldr r3, .L71+24
  1136. 842 01ea DB68 ldr r3, [r3, #12]
  1137. 843 .loc 1 202 20
  1138. 844 01ec 013B subs r3, r3, #1
  1139. 845 01ee 2B4A ldr r2, .L71+24
  1140. 846 01f0 D360 str r3, [r2, #12]
  1141. 203:user_src/hard_led.c **** LEDGreen_OFF();
  1142. 847 .loc 1 203 6
  1143. 848 01f2 0022 movs r2, #0
  1144. 849 01f4 0221 movs r1, #2
  1145. 850 01f6 2548 ldr r0, .L71+8
  1146. 851 01f8 FFF7FEFF bl HAL_GPIO_WritePin
  1147. 204:user_src/hard_led.c **** Update_LED_Time();
  1148. 852 .loc 1 204 6
  1149. 853 01fc FFF7FEFF bl Update_LED_Time
  1150. 205:user_src/hard_led.c **** L_green.status = OFF;
  1151. 854 .loc 1 205 21
  1152. 855 0200 264B ldr r3, .L71+24
  1153. 856 0202 0022 movs r2, #0
  1154. 857 0204 1A70 strb r2, [r3]
  1155. 858 0206 58E2 b .L15
  1156. 859 .L32:
  1157. 206:user_src/hard_led.c **** }
  1158. 207:user_src/hard_led.c **** }
  1159. 208:user_src/hard_led.c **** else
  1160. 209:user_src/hard_led.c **** {
  1161. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 21
  1162. 210:user_src/hard_led.c **** if (HAL_GetTick() - L_green.time > L_green.off_time_ms)
  1163. 860 .loc 1 210 9
  1164. 861 0208 FFF7FEFF bl HAL_GetTick
  1165. 862 020c 0246 mov r2, r0
  1166. 863 .loc 1 210 32
  1167. 864 020e 234B ldr r3, .L71+24
  1168. 865 0210 1B69 ldr r3, [r3, #16]
  1169. 866 .loc 1 210 23
  1170. 867 0212 D21A subs r2, r2, r3
  1171. 868 .loc 1 210 47
  1172. 869 0214 214B ldr r3, .L71+24
  1173. 870 0216 9B68 ldr r3, [r3, #8]
  1174. 871 .loc 1 210 8
  1175. 872 0218 9A42 cmp r2, r3
  1176. 873 021a 40F24E82 bls .L15
  1177. 211:user_src/hard_led.c **** {
  1178. 212:user_src/hard_led.c **** if (L_green.repeat != 0)
  1179. 874 .loc 1 212 17
  1180. 875 021e 1F4B ldr r3, .L71+24
  1181. 876 0220 DB68 ldr r3, [r3, #12]
  1182. 877 .loc 1 212 9
  1183. 878 0222 002B cmp r3, #0
  1184. 879 0224 00F04982 beq .L15
  1185. 213:user_src/hard_led.c **** {
  1186. 214:user_src/hard_led.c **** LEDGreen_ON();
  1187. 880 .loc 1 214 7
  1188. 881 0228 0122 movs r2, #1
  1189. 882 022a 0221 movs r1, #2
  1190. 883 022c 1748 ldr r0, .L71+8
  1191. 884 022e FFF7FEFF bl HAL_GPIO_WritePin
  1192. 215:user_src/hard_led.c **** L_green.time = HAL_GetTick();
  1193. 885 .loc 1 215 22
  1194. 886 0232 FFF7FEFF bl HAL_GetTick
  1195. 887 0236 0346 mov r3, r0
  1196. 888 .loc 1 215 20
  1197. 889 0238 184A ldr r2, .L71+24
  1198. 890 023a 1361 str r3, [r2, #16]
  1199. 216:user_src/hard_led.c **** L_green.status = ON;
  1200. 891 .loc 1 216 22
  1201. 892 023c 174B ldr r3, .L71+24
  1202. 893 023e FF22 movs r2, #255
  1203. 894 0240 1A70 strb r2, [r3]
  1204. 895 0242 3AE2 b .L15
  1205. 896 .L27:
  1206. 217:user_src/hard_led.c **** }
  1207. 218:user_src/hard_led.c **** }
  1208. 219:user_src/hard_led.c **** }
  1209. 220:user_src/hard_led.c **** }
  1210. 221:user_src/hard_led.c ****
  1211. 222:user_src/hard_led.c **** else if (L_blue.repeat != 0)
  1212. 897 .loc 1 222 18
  1213. 898 0244 144B ldr r3, .L71+20
  1214. 899 0246 DB68 ldr r3, [r3, #12]
  1215. 900 .loc 1 222 11
  1216. 901 0248 002B cmp r3, #0
  1217. 902 024a 7BD0 beq .L33
  1218. 223:user_src/hard_led.c **** {
  1219. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 22
  1220. 224:user_src/hard_led.c **** if ((L_blue.off_time_ms == 25500) || (L_blue.on_time_ms == 25500))
  1221. 903 .loc 1 224 15
  1222. 904 024c 124B ldr r3, .L71+20
  1223. 905 024e 9B68 ldr r3, [r3, #8]
  1224. 906 .loc 1 224 7
  1225. 907 0250 46F29C32 movw r2, #25500
  1226. 908 0254 9342 cmp r3, r2
  1227. 909 0256 05D0 beq .L34
  1228. 910 .loc 1 224 48 discriminator 1
  1229. 911 0258 0F4B ldr r3, .L71+20
  1230. 912 025a 5B68 ldr r3, [r3, #4]
  1231. 913 .loc 1 224 38 discriminator 1
  1232. 914 025c 46F29C32 movw r2, #25500
  1233. 915 0260 9342 cmp r3, r2
  1234. 916 0262 32D1 bne .L35
  1235. 917 .L34:
  1236. 225:user_src/hard_led.c **** {
  1237. 226:user_src/hard_led.c **** L_blue.repeat = 0;
  1238. 918 .loc 1 226 19
  1239. 919 0264 0C4B ldr r3, .L71+20
  1240. 920 0266 0022 movs r2, #0
  1241. 921 0268 DA60 str r2, [r3, #12]
  1242. 227:user_src/hard_led.c **** if (L_blue.off_time_ms == 25500)
  1243. 922 .loc 1 227 15
  1244. 923 026a 0B4B ldr r3, .L71+20
  1245. 924 026c 9B68 ldr r3, [r3, #8]
  1246. 925 .loc 1 227 8
  1247. 926 026e 46F29C32 movw r2, #25500
  1248. 927 0272 9342 cmp r3, r2
  1249. 928 0274 1CD1 bne .L36
  1250. 228:user_src/hard_led.c **** {
  1251. 229:user_src/hard_led.c **** LEDBlue_OFF();
  1252. 929 .loc 1 229 6
  1253. 930 0276 0022 movs r2, #0
  1254. 931 0278 0421 movs r1, #4
  1255. 932 027a 0448 ldr r0, .L71+8
  1256. 933 027c FFF7FEFF bl HAL_GPIO_WritePin
  1257. 230:user_src/hard_led.c **** }
  1258. 231:user_src/hard_led.c **** else if (L_blue.on_time_ms == 25500)
  1259. 232:user_src/hard_led.c **** {
  1260. 233:user_src/hard_led.c **** LEDBlue_ON();
  1261. 234:user_src/hard_led.c **** }
  1262. 235:user_src/hard_led.c ****
  1263. 236:user_src/hard_led.c **** return;
  1264. 934 .loc 1 236 5
  1265. 935 0280 12E2 b .L66
  1266. 936 .L72:
  1267. 937 0282 00BF .align 2
  1268. 938 .L71:
  1269. 939 0284 00000000 .word current_pmu_par
  1270. 940 0288 00000000 .word recv_fmu_data
  1271. 941 028c 00040048 .word 1207960576
  1272. 942 0290 00000000 .word L_red_time
  1273. 943 0294 00000000 .word L_red
  1274. 944 0298 00000000 .word L_blue
  1275. 945 029c 00000000 .word L_green
  1276. 946 02a0 00000000 .word L_cyan
  1277. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 23
  1278. 947 02a4 00000000 .word L_purple
  1279. 948 02a8 00000000 .word L_yellow
  1280. 949 02ac 00000000 .word L_white
  1281. 950 .L36:
  1282. 231:user_src/hard_led.c **** {
  1283. 951 .loc 1 231 20
  1284. 952 02b0 A34B ldr r3, .L73
  1285. 953 02b2 5B68 ldr r3, [r3, #4]
  1286. 231:user_src/hard_led.c **** {
  1287. 954 .loc 1 231 13
  1288. 955 02b4 46F29C32 movw r2, #25500
  1289. 956 02b8 9342 cmp r3, r2
  1290. 957 02ba 40F0F581 bne .L66
  1291. 233:user_src/hard_led.c **** }
  1292. 958 .loc 1 233 6
  1293. 959 02be 0122 movs r2, #1
  1294. 960 02c0 0421 movs r1, #4
  1295. 961 02c2 A048 ldr r0, .L73+4
  1296. 962 02c4 FFF7FEFF bl HAL_GPIO_WritePin
  1297. 963 .loc 1 236 5
  1298. 964 02c8 EEE1 b .L66
  1299. 965 .L35:
  1300. 237:user_src/hard_led.c **** }
  1301. 238:user_src/hard_led.c **** if (L_blue.status == ON)
  1302. 966 .loc 1 238 14
  1303. 967 02ca 9D4B ldr r3, .L73
  1304. 968 02cc 1B78 ldrb r3, [r3] @ zero_extendqisi2
  1305. 969 .loc 1 238 7
  1306. 970 02ce FF2B cmp r3, #255
  1307. 971 02d0 1AD1 bne .L38
  1308. 239:user_src/hard_led.c **** {
  1309. 240:user_src/hard_led.c **** if (HAL_GetTick() - L_blue.time > L_blue.on_time_ms)
  1310. 972 .loc 1 240 9
  1311. 973 02d2 FFF7FEFF bl HAL_GetTick
  1312. 974 02d6 0246 mov r2, r0
  1313. 975 .loc 1 240 31
  1314. 976 02d8 994B ldr r3, .L73
  1315. 977 02da 1B69 ldr r3, [r3, #16]
  1316. 978 .loc 1 240 23
  1317. 979 02dc D21A subs r2, r2, r3
  1318. 980 .loc 1 240 45
  1319. 981 02de 984B ldr r3, .L73
  1320. 982 02e0 5B68 ldr r3, [r3, #4]
  1321. 983 .loc 1 240 8
  1322. 984 02e2 9A42 cmp r2, r3
  1323. 985 02e4 40F2E981 bls .L15
  1324. 241:user_src/hard_led.c **** {
  1325. 242:user_src/hard_led.c **** L_blue.repeat--;
  1326. 986 .loc 1 242 12
  1327. 987 02e8 954B ldr r3, .L73
  1328. 988 02ea DB68 ldr r3, [r3, #12]
  1329. 989 .loc 1 242 19
  1330. 990 02ec 013B subs r3, r3, #1
  1331. 991 02ee 944A ldr r2, .L73
  1332. 992 02f0 D360 str r3, [r2, #12]
  1333. 243:user_src/hard_led.c **** LEDBlue_OFF();
  1334. 993 .loc 1 243 6
  1335. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 24
  1336. 994 02f2 0022 movs r2, #0
  1337. 995 02f4 0421 movs r1, #4
  1338. 996 02f6 9348 ldr r0, .L73+4
  1339. 997 02f8 FFF7FEFF bl HAL_GPIO_WritePin
  1340. 244:user_src/hard_led.c **** Update_LED_Time();
  1341. 998 .loc 1 244 6
  1342. 999 02fc FFF7FEFF bl Update_LED_Time
  1343. 245:user_src/hard_led.c **** L_blue.status = OFF;
  1344. 1000 .loc 1 245 20
  1345. 1001 0300 8F4B ldr r3, .L73
  1346. 1002 0302 0022 movs r2, #0
  1347. 1003 0304 1A70 strb r2, [r3]
  1348. 1004 0306 D8E1 b .L15
  1349. 1005 .L38:
  1350. 246:user_src/hard_led.c **** }
  1351. 247:user_src/hard_led.c **** }
  1352. 248:user_src/hard_led.c **** else
  1353. 249:user_src/hard_led.c **** {
  1354. 250:user_src/hard_led.c **** if (HAL_GetTick() - L_blue.time > L_blue.off_time_ms)
  1355. 1006 .loc 1 250 9
  1356. 1007 0308 FFF7FEFF bl HAL_GetTick
  1357. 1008 030c 0246 mov r2, r0
  1358. 1009 .loc 1 250 31
  1359. 1010 030e 8C4B ldr r3, .L73
  1360. 1011 0310 1B69 ldr r3, [r3, #16]
  1361. 1012 .loc 1 250 23
  1362. 1013 0312 D21A subs r2, r2, r3
  1363. 1014 .loc 1 250 45
  1364. 1015 0314 8A4B ldr r3, .L73
  1365. 1016 0316 9B68 ldr r3, [r3, #8]
  1366. 1017 .loc 1 250 8
  1367. 1018 0318 9A42 cmp r2, r3
  1368. 1019 031a 40F2CE81 bls .L15
  1369. 251:user_src/hard_led.c **** {
  1370. 252:user_src/hard_led.c **** if (L_blue.repeat != 0)
  1371. 1020 .loc 1 252 16
  1372. 1021 031e 884B ldr r3, .L73
  1373. 1022 0320 DB68 ldr r3, [r3, #12]
  1374. 1023 .loc 1 252 9
  1375. 1024 0322 002B cmp r3, #0
  1376. 1025 0324 00F0C981 beq .L15
  1377. 253:user_src/hard_led.c **** {
  1378. 254:user_src/hard_led.c **** LEDBlue_ON();
  1379. 1026 .loc 1 254 7
  1380. 1027 0328 0122 movs r2, #1
  1381. 1028 032a 0421 movs r1, #4
  1382. 1029 032c 8548 ldr r0, .L73+4
  1383. 1030 032e FFF7FEFF bl HAL_GPIO_WritePin
  1384. 255:user_src/hard_led.c **** L_blue.time = HAL_GetTick();
  1385. 1031 .loc 1 255 21
  1386. 1032 0332 FFF7FEFF bl HAL_GetTick
  1387. 1033 0336 0346 mov r3, r0
  1388. 1034 .loc 1 255 19
  1389. 1035 0338 814A ldr r2, .L73
  1390. 1036 033a 1361 str r3, [r2, #16]
  1391. 256:user_src/hard_led.c **** L_blue.status = ON;
  1392. 1037 .loc 1 256 21
  1393. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 25
  1394. 1038 033c 804B ldr r3, .L73
  1395. 1039 033e FF22 movs r2, #255
  1396. 1040 0340 1A70 strb r2, [r3]
  1397. 1041 0342 BAE1 b .L15
  1398. 1042 .L33:
  1399. 257:user_src/hard_led.c **** }
  1400. 258:user_src/hard_led.c **** }
  1401. 259:user_src/hard_led.c **** }
  1402. 260:user_src/hard_led.c **** }
  1403. 261:user_src/hard_led.c ****
  1404. 262:user_src/hard_led.c **** else if (L_purple.repeat != 0)
  1405. 1043 .loc 1 262 20
  1406. 1044 0344 804B ldr r3, .L73+8
  1407. 1045 0346 DB68 ldr r3, [r3, #12]
  1408. 1046 .loc 1 262 11
  1409. 1047 0348 002B cmp r3, #0
  1410. 1048 034a 64D0 beq .L39
  1411. 263:user_src/hard_led.c **** {
  1412. 264:user_src/hard_led.c ****
  1413. 265:user_src/hard_led.c **** if ((L_purple.off_time_ms == 25500) || (L_purple.on_time_ms == 25500))
  1414. 1049 .loc 1 265 17
  1415. 1050 034c 7E4B ldr r3, .L73+8
  1416. 1051 034e 9B68 ldr r3, [r3, #8]
  1417. 1052 .loc 1 265 7
  1418. 1053 0350 46F29C32 movw r2, #25500
  1419. 1054 0354 9342 cmp r3, r2
  1420. 1055 0356 05D0 beq .L40
  1421. 1056 .loc 1 265 52 discriminator 1
  1422. 1057 0358 7B4B ldr r3, .L73+8
  1423. 1058 035a 5B68 ldr r3, [r3, #4]
  1424. 1059 .loc 1 265 40 discriminator 1
  1425. 1060 035c 46F29C32 movw r2, #25500
  1426. 1061 0360 9342 cmp r3, r2
  1427. 1062 0362 1BD1 bne .L41
  1428. 1063 .L40:
  1429. 266:user_src/hard_led.c **** {
  1430. 267:user_src/hard_led.c **** L_purple.repeat = 0;
  1431. 1064 .loc 1 267 21
  1432. 1065 0364 784B ldr r3, .L73+8
  1433. 1066 0366 0022 movs r2, #0
  1434. 1067 0368 DA60 str r2, [r3, #12]
  1435. 268:user_src/hard_led.c **** if (L_purple.off_time_ms == 25500)
  1436. 1068 .loc 1 268 17
  1437. 1069 036a 774B ldr r3, .L73+8
  1438. 1070 036c 9B68 ldr r3, [r3, #8]
  1439. 1071 .loc 1 268 8
  1440. 1072 036e 46F29C32 movw r2, #25500
  1441. 1073 0372 9342 cmp r3, r2
  1442. 1074 0374 05D1 bne .L42
  1443. 269:user_src/hard_led.c **** {
  1444. 270:user_src/hard_led.c **** LEDPurple_OFF();
  1445. 1075 .loc 1 270 6
  1446. 1076 0376 0022 movs r2, #0
  1447. 1077 0378 0521 movs r1, #5
  1448. 1078 037a 7248 ldr r0, .L73+4
  1449. 1079 037c FFF7FEFF bl HAL_GPIO_WritePin
  1450. 271:user_src/hard_led.c **** }
  1451. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 26
  1452. 272:user_src/hard_led.c **** else if (L_purple.on_time_ms == 25500)
  1453. 273:user_src/hard_led.c **** {
  1454. 274:user_src/hard_led.c **** LEDPurple_ON();
  1455. 275:user_src/hard_led.c **** }
  1456. 276:user_src/hard_led.c ****
  1457. 277:user_src/hard_led.c **** return;
  1458. 1080 .loc 1 277 5
  1459. 1081 0380 94E1 b .L67
  1460. 1082 .L42:
  1461. 272:user_src/hard_led.c **** {
  1462. 1083 .loc 1 272 22
  1463. 1084 0382 714B ldr r3, .L73+8
  1464. 1085 0384 5B68 ldr r3, [r3, #4]
  1465. 272:user_src/hard_led.c **** {
  1466. 1086 .loc 1 272 13
  1467. 1087 0386 46F29C32 movw r2, #25500
  1468. 1088 038a 9342 cmp r3, r2
  1469. 1089 038c 40F08E81 bne .L67
  1470. 274:user_src/hard_led.c **** }
  1471. 1090 .loc 1 274 6
  1472. 1091 0390 0122 movs r2, #1
  1473. 1092 0392 0521 movs r1, #5
  1474. 1093 0394 6B48 ldr r0, .L73+4
  1475. 1094 0396 FFF7FEFF bl HAL_GPIO_WritePin
  1476. 1095 .loc 1 277 5
  1477. 1096 039a 87E1 b .L67
  1478. 1097 .L41:
  1479. 278:user_src/hard_led.c **** }
  1480. 279:user_src/hard_led.c **** if (L_purple.status == ON)
  1481. 1098 .loc 1 279 16
  1482. 1099 039c 6A4B ldr r3, .L73+8
  1483. 1100 039e 1B78 ldrb r3, [r3] @ zero_extendqisi2
  1484. 1101 .loc 1 279 7
  1485. 1102 03a0 FF2B cmp r3, #255
  1486. 1103 03a2 1AD1 bne .L44
  1487. 280:user_src/hard_led.c **** {
  1488. 281:user_src/hard_led.c **** if (HAL_GetTick() - L_purple.time > L_purple.on_time_ms)
  1489. 1104 .loc 1 281 9
  1490. 1105 03a4 FFF7FEFF bl HAL_GetTick
  1491. 1106 03a8 0246 mov r2, r0
  1492. 1107 .loc 1 281 33
  1493. 1108 03aa 674B ldr r3, .L73+8
  1494. 1109 03ac 1B69 ldr r3, [r3, #16]
  1495. 1110 .loc 1 281 23
  1496. 1111 03ae D21A subs r2, r2, r3
  1497. 1112 .loc 1 281 49
  1498. 1113 03b0 654B ldr r3, .L73+8
  1499. 1114 03b2 5B68 ldr r3, [r3, #4]
  1500. 1115 .loc 1 281 8
  1501. 1116 03b4 9A42 cmp r2, r3
  1502. 1117 03b6 40F28081 bls .L15
  1503. 282:user_src/hard_led.c **** {
  1504. 283:user_src/hard_led.c **** L_purple.repeat--;
  1505. 1118 .loc 1 283 14
  1506. 1119 03ba 634B ldr r3, .L73+8
  1507. 1120 03bc DB68 ldr r3, [r3, #12]
  1508. 1121 .loc 1 283 21
  1509. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 27
  1510. 1122 03be 013B subs r3, r3, #1
  1511. 1123 03c0 614A ldr r2, .L73+8
  1512. 1124 03c2 D360 str r3, [r2, #12]
  1513. 284:user_src/hard_led.c **** LEDPurple_OFF();
  1514. 1125 .loc 1 284 6
  1515. 1126 03c4 0022 movs r2, #0
  1516. 1127 03c6 0521 movs r1, #5
  1517. 1128 03c8 5E48 ldr r0, .L73+4
  1518. 1129 03ca FFF7FEFF bl HAL_GPIO_WritePin
  1519. 285:user_src/hard_led.c **** Update_LED_Time();
  1520. 1130 .loc 1 285 6
  1521. 1131 03ce FFF7FEFF bl Update_LED_Time
  1522. 286:user_src/hard_led.c **** L_purple.status = OFF;
  1523. 1132 .loc 1 286 22
  1524. 1133 03d2 5D4B ldr r3, .L73+8
  1525. 1134 03d4 0022 movs r2, #0
  1526. 1135 03d6 1A70 strb r2, [r3]
  1527. 1136 03d8 6FE1 b .L15
  1528. 1137 .L44:
  1529. 287:user_src/hard_led.c **** }
  1530. 288:user_src/hard_led.c **** }
  1531. 289:user_src/hard_led.c **** else
  1532. 290:user_src/hard_led.c **** {
  1533. 291:user_src/hard_led.c **** if (HAL_GetTick() - L_purple.time > L_purple.off_time_ms)
  1534. 1138 .loc 1 291 9
  1535. 1139 03da FFF7FEFF bl HAL_GetTick
  1536. 1140 03de 0246 mov r2, r0
  1537. 1141 .loc 1 291 33
  1538. 1142 03e0 594B ldr r3, .L73+8
  1539. 1143 03e2 1B69 ldr r3, [r3, #16]
  1540. 1144 .loc 1 291 23
  1541. 1145 03e4 D21A subs r2, r2, r3
  1542. 1146 .loc 1 291 49
  1543. 1147 03e6 584B ldr r3, .L73+8
  1544. 1148 03e8 9B68 ldr r3, [r3, #8]
  1545. 1149 .loc 1 291 8
  1546. 1150 03ea 9A42 cmp r2, r3
  1547. 1151 03ec 40F26581 bls .L15
  1548. 292:user_src/hard_led.c **** {
  1549. 293:user_src/hard_led.c **** if (L_purple.repeat != 0)
  1550. 1152 .loc 1 293 18
  1551. 1153 03f0 554B ldr r3, .L73+8
  1552. 1154 03f2 DB68 ldr r3, [r3, #12]
  1553. 1155 .loc 1 293 9
  1554. 1156 03f4 002B cmp r3, #0
  1555. 1157 03f6 00F06081 beq .L15
  1556. 294:user_src/hard_led.c **** {
  1557. 295:user_src/hard_led.c **** LEDPurple_ON();
  1558. 1158 .loc 1 295 7
  1559. 1159 03fa 0122 movs r2, #1
  1560. 1160 03fc 0521 movs r1, #5
  1561. 1161 03fe 5148 ldr r0, .L73+4
  1562. 1162 0400 FFF7FEFF bl HAL_GPIO_WritePin
  1563. 296:user_src/hard_led.c **** L_purple.time = HAL_GetTick();
  1564. 1163 .loc 1 296 23
  1565. 1164 0404 FFF7FEFF bl HAL_GetTick
  1566. 1165 0408 0346 mov r3, r0
  1567. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 28
  1568. 1166 .loc 1 296 21
  1569. 1167 040a 4F4A ldr r2, .L73+8
  1570. 1168 040c 1361 str r3, [r2, #16]
  1571. 297:user_src/hard_led.c **** L_purple.status = ON;
  1572. 1169 .loc 1 297 23
  1573. 1170 040e 4E4B ldr r3, .L73+8
  1574. 1171 0410 FF22 movs r2, #255
  1575. 1172 0412 1A70 strb r2, [r3]
  1576. 1173 0414 51E1 b .L15
  1577. 1174 .L39:
  1578. 298:user_src/hard_led.c **** }
  1579. 299:user_src/hard_led.c **** }
  1580. 300:user_src/hard_led.c **** }
  1581. 301:user_src/hard_led.c **** }
  1582. 302:user_src/hard_led.c ****
  1583. 303:user_src/hard_led.c **** else if (L_yellow.repeat != 0)
  1584. 1175 .loc 1 303 20
  1585. 1176 0416 4D4B ldr r3, .L73+12
  1586. 1177 0418 DB68 ldr r3, [r3, #12]
  1587. 1178 .loc 1 303 11
  1588. 1179 041a 002B cmp r3, #0
  1589. 1180 041c 64D0 beq .L45
  1590. 304:user_src/hard_led.c **** {
  1591. 305:user_src/hard_led.c ****
  1592. 306:user_src/hard_led.c **** if ((L_yellow.off_time_ms == 25500) || (L_yellow.on_time_ms == 25500))
  1593. 1181 .loc 1 306 17
  1594. 1182 041e 4B4B ldr r3, .L73+12
  1595. 1183 0420 9B68 ldr r3, [r3, #8]
  1596. 1184 .loc 1 306 7
  1597. 1185 0422 46F29C32 movw r2, #25500
  1598. 1186 0426 9342 cmp r3, r2
  1599. 1187 0428 05D0 beq .L46
  1600. 1188 .loc 1 306 52 discriminator 1
  1601. 1189 042a 484B ldr r3, .L73+12
  1602. 1190 042c 5B68 ldr r3, [r3, #4]
  1603. 1191 .loc 1 306 40 discriminator 1
  1604. 1192 042e 46F29C32 movw r2, #25500
  1605. 1193 0432 9342 cmp r3, r2
  1606. 1194 0434 1BD1 bne .L47
  1607. 1195 .L46:
  1608. 307:user_src/hard_led.c **** {
  1609. 308:user_src/hard_led.c **** L_yellow.repeat = 0;
  1610. 1196 .loc 1 308 21
  1611. 1197 0436 454B ldr r3, .L73+12
  1612. 1198 0438 0022 movs r2, #0
  1613. 1199 043a DA60 str r2, [r3, #12]
  1614. 309:user_src/hard_led.c **** if (L_yellow.off_time_ms == 25500)
  1615. 1200 .loc 1 309 17
  1616. 1201 043c 434B ldr r3, .L73+12
  1617. 1202 043e 9B68 ldr r3, [r3, #8]
  1618. 1203 .loc 1 309 8
  1619. 1204 0440 46F29C32 movw r2, #25500
  1620. 1205 0444 9342 cmp r3, r2
  1621. 1206 0446 05D1 bne .L48
  1622. 310:user_src/hard_led.c **** {
  1623. 311:user_src/hard_led.c **** LEDYellow_OFF();
  1624. 1207 .loc 1 311 6
  1625. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 29
  1626. 1208 0448 0022 movs r2, #0
  1627. 1209 044a 0321 movs r1, #3
  1628. 1210 044c 3D48 ldr r0, .L73+4
  1629. 1211 044e FFF7FEFF bl HAL_GPIO_WritePin
  1630. 312:user_src/hard_led.c **** }
  1631. 313:user_src/hard_led.c **** else if (L_yellow.on_time_ms == 25500)
  1632. 314:user_src/hard_led.c **** {
  1633. 315:user_src/hard_led.c **** LEDYellow_ON();
  1634. 316:user_src/hard_led.c **** }
  1635. 317:user_src/hard_led.c ****
  1636. 318:user_src/hard_led.c **** return;
  1637. 1212 .loc 1 318 5
  1638. 1213 0452 2DE1 b .L68
  1639. 1214 .L48:
  1640. 313:user_src/hard_led.c **** {
  1641. 1215 .loc 1 313 22
  1642. 1216 0454 3D4B ldr r3, .L73+12
  1643. 1217 0456 5B68 ldr r3, [r3, #4]
  1644. 313:user_src/hard_led.c **** {
  1645. 1218 .loc 1 313 13
  1646. 1219 0458 46F29C32 movw r2, #25500
  1647. 1220 045c 9342 cmp r3, r2
  1648. 1221 045e 40F02781 bne .L68
  1649. 315:user_src/hard_led.c **** }
  1650. 1222 .loc 1 315 6
  1651. 1223 0462 0122 movs r2, #1
  1652. 1224 0464 0321 movs r1, #3
  1653. 1225 0466 3748 ldr r0, .L73+4
  1654. 1226 0468 FFF7FEFF bl HAL_GPIO_WritePin
  1655. 1227 .loc 1 318 5
  1656. 1228 046c 20E1 b .L68
  1657. 1229 .L47:
  1658. 319:user_src/hard_led.c **** }
  1659. 320:user_src/hard_led.c **** if (L_yellow.status == ON)
  1660. 1230 .loc 1 320 16
  1661. 1231 046e 374B ldr r3, .L73+12
  1662. 1232 0470 1B78 ldrb r3, [r3] @ zero_extendqisi2
  1663. 1233 .loc 1 320 7
  1664. 1234 0472 FF2B cmp r3, #255
  1665. 1235 0474 1AD1 bne .L50
  1666. 321:user_src/hard_led.c **** {
  1667. 322:user_src/hard_led.c **** if (HAL_GetTick() - L_yellow.time > L_yellow.on_time_ms)
  1668. 1236 .loc 1 322 9
  1669. 1237 0476 FFF7FEFF bl HAL_GetTick
  1670. 1238 047a 0246 mov r2, r0
  1671. 1239 .loc 1 322 33
  1672. 1240 047c 334B ldr r3, .L73+12
  1673. 1241 047e 1B69 ldr r3, [r3, #16]
  1674. 1242 .loc 1 322 23
  1675. 1243 0480 D21A subs r2, r2, r3
  1676. 1244 .loc 1 322 49
  1677. 1245 0482 324B ldr r3, .L73+12
  1678. 1246 0484 5B68 ldr r3, [r3, #4]
  1679. 1247 .loc 1 322 8
  1680. 1248 0486 9A42 cmp r2, r3
  1681. 1249 0488 40F21781 bls .L15
  1682. 323:user_src/hard_led.c **** {
  1683. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 30
  1684. 324:user_src/hard_led.c **** L_yellow.repeat--;
  1685. 1250 .loc 1 324 14
  1686. 1251 048c 2F4B ldr r3, .L73+12
  1687. 1252 048e DB68 ldr r3, [r3, #12]
  1688. 1253 .loc 1 324 21
  1689. 1254 0490 013B subs r3, r3, #1
  1690. 1255 0492 2E4A ldr r2, .L73+12
  1691. 1256 0494 D360 str r3, [r2, #12]
  1692. 325:user_src/hard_led.c **** LEDYellow_OFF();
  1693. 1257 .loc 1 325 6
  1694. 1258 0496 0022 movs r2, #0
  1695. 1259 0498 0321 movs r1, #3
  1696. 1260 049a 2A48 ldr r0, .L73+4
  1697. 1261 049c FFF7FEFF bl HAL_GPIO_WritePin
  1698. 326:user_src/hard_led.c **** Update_LED_Time();
  1699. 1262 .loc 1 326 6
  1700. 1263 04a0 FFF7FEFF bl Update_LED_Time
  1701. 327:user_src/hard_led.c **** L_yellow.status = OFF;
  1702. 1264 .loc 1 327 22
  1703. 1265 04a4 294B ldr r3, .L73+12
  1704. 1266 04a6 0022 movs r2, #0
  1705. 1267 04a8 1A70 strb r2, [r3]
  1706. 1268 04aa 06E1 b .L15
  1707. 1269 .L50:
  1708. 328:user_src/hard_led.c **** }
  1709. 329:user_src/hard_led.c **** }
  1710. 330:user_src/hard_led.c **** else
  1711. 331:user_src/hard_led.c **** {
  1712. 332:user_src/hard_led.c **** if (HAL_GetTick() - L_yellow.time > L_yellow.off_time_ms)
  1713. 1270 .loc 1 332 9
  1714. 1271 04ac FFF7FEFF bl HAL_GetTick
  1715. 1272 04b0 0246 mov r2, r0
  1716. 1273 .loc 1 332 33
  1717. 1274 04b2 264B ldr r3, .L73+12
  1718. 1275 04b4 1B69 ldr r3, [r3, #16]
  1719. 1276 .loc 1 332 23
  1720. 1277 04b6 D21A subs r2, r2, r3
  1721. 1278 .loc 1 332 49
  1722. 1279 04b8 244B ldr r3, .L73+12
  1723. 1280 04ba 9B68 ldr r3, [r3, #8]
  1724. 1281 .loc 1 332 8
  1725. 1282 04bc 9A42 cmp r2, r3
  1726. 1283 04be 40F2FC80 bls .L15
  1727. 333:user_src/hard_led.c **** {
  1728. 334:user_src/hard_led.c **** if (L_yellow.repeat != 0)
  1729. 1284 .loc 1 334 18
  1730. 1285 04c2 224B ldr r3, .L73+12
  1731. 1286 04c4 DB68 ldr r3, [r3, #12]
  1732. 1287 .loc 1 334 9
  1733. 1288 04c6 002B cmp r3, #0
  1734. 1289 04c8 00F0F780 beq .L15
  1735. 335:user_src/hard_led.c **** {
  1736. 336:user_src/hard_led.c **** LEDYellow_ON();
  1737. 1290 .loc 1 336 7
  1738. 1291 04cc 0122 movs r2, #1
  1739. 1292 04ce 0321 movs r1, #3
  1740. 1293 04d0 1C48 ldr r0, .L73+4
  1741. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 31
  1742. 1294 04d2 FFF7FEFF bl HAL_GPIO_WritePin
  1743. 337:user_src/hard_led.c **** L_yellow.time = HAL_GetTick();
  1744. 1295 .loc 1 337 23
  1745. 1296 04d6 FFF7FEFF bl HAL_GetTick
  1746. 1297 04da 0346 mov r3, r0
  1747. 1298 .loc 1 337 21
  1748. 1299 04dc 1B4A ldr r2, .L73+12
  1749. 1300 04de 1361 str r3, [r2, #16]
  1750. 338:user_src/hard_led.c **** L_yellow.status = ON;
  1751. 1301 .loc 1 338 23
  1752. 1302 04e0 1A4B ldr r3, .L73+12
  1753. 1303 04e2 FF22 movs r2, #255
  1754. 1304 04e4 1A70 strb r2, [r3]
  1755. 1305 04e6 E8E0 b .L15
  1756. 1306 .L45:
  1757. 339:user_src/hard_led.c **** }
  1758. 340:user_src/hard_led.c **** }
  1759. 341:user_src/hard_led.c **** }
  1760. 342:user_src/hard_led.c **** }
  1761. 343:user_src/hard_led.c ****
  1762. 344:user_src/hard_led.c **** else if (L_cyan.repeat != 0)
  1763. 1307 .loc 1 344 18
  1764. 1308 04e8 194B ldr r3, .L73+16
  1765. 1309 04ea DB68 ldr r3, [r3, #12]
  1766. 1310 .loc 1 344 11
  1767. 1311 04ec 002B cmp r3, #0
  1768. 1312 04ee 6ED0 beq .L51
  1769. 345:user_src/hard_led.c **** {
  1770. 346:user_src/hard_led.c ****
  1771. 347:user_src/hard_led.c **** if ((L_cyan.off_time_ms == 25500) || (L_cyan.on_time_ms == 25500))
  1772. 1313 .loc 1 347 15
  1773. 1314 04f0 174B ldr r3, .L73+16
  1774. 1315 04f2 9B68 ldr r3, [r3, #8]
  1775. 1316 .loc 1 347 7
  1776. 1317 04f4 46F29C32 movw r2, #25500
  1777. 1318 04f8 9342 cmp r3, r2
  1778. 1319 04fa 05D0 beq .L52
  1779. 1320 .loc 1 347 48 discriminator 1
  1780. 1321 04fc 144B ldr r3, .L73+16
  1781. 1322 04fe 5B68 ldr r3, [r3, #4]
  1782. 1323 .loc 1 347 38 discriminator 1
  1783. 1324 0500 46F29C32 movw r2, #25500
  1784. 1325 0504 9342 cmp r3, r2
  1785. 1326 0506 25D1 bne .L53
  1786. 1327 .L52:
  1787. 348:user_src/hard_led.c **** {
  1788. 349:user_src/hard_led.c **** L_cyan.repeat = 0;
  1789. 1328 .loc 1 349 19
  1790. 1329 0508 114B ldr r3, .L73+16
  1791. 1330 050a 0022 movs r2, #0
  1792. 1331 050c DA60 str r2, [r3, #12]
  1793. 350:user_src/hard_led.c **** if (L_cyan.off_time_ms == 25500)
  1794. 1332 .loc 1 350 15
  1795. 1333 050e 104B ldr r3, .L73+16
  1796. 1334 0510 9B68 ldr r3, [r3, #8]
  1797. 1335 .loc 1 350 8
  1798. 1336 0512 46F29C32 movw r2, #25500
  1799. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 32
  1800. 1337 0516 9342 cmp r3, r2
  1801. 1338 0518 05D1 bne .L54
  1802. 351:user_src/hard_led.c **** {
  1803. 352:user_src/hard_led.c **** LEDCyan_OFF();
  1804. 1339 .loc 1 352 6
  1805. 1340 051a 0022 movs r2, #0
  1806. 1341 051c 0621 movs r1, #6
  1807. 1342 051e 0948 ldr r0, .L73+4
  1808. 1343 0520 FFF7FEFF bl HAL_GPIO_WritePin
  1809. 353:user_src/hard_led.c **** }
  1810. 354:user_src/hard_led.c **** else if (L_cyan.on_time_ms == 25500)
  1811. 355:user_src/hard_led.c **** {
  1812. 356:user_src/hard_led.c **** LEDCyan_ON();
  1813. 357:user_src/hard_led.c **** }
  1814. 358:user_src/hard_led.c ****
  1815. 359:user_src/hard_led.c **** return;
  1816. 1344 .loc 1 359 5
  1817. 1345 0524 C6E0 b .L69
  1818. 1346 .L54:
  1819. 354:user_src/hard_led.c **** {
  1820. 1347 .loc 1 354 20
  1821. 1348 0526 0A4B ldr r3, .L73+16
  1822. 1349 0528 5B68 ldr r3, [r3, #4]
  1823. 354:user_src/hard_led.c **** {
  1824. 1350 .loc 1 354 13
  1825. 1351 052a 46F29C32 movw r2, #25500
  1826. 1352 052e 9342 cmp r3, r2
  1827. 1353 0530 40F0C080 bne .L69
  1828. 356:user_src/hard_led.c **** }
  1829. 1354 .loc 1 356 6
  1830. 1355 0534 0122 movs r2, #1
  1831. 1356 0536 0621 movs r1, #6
  1832. 1357 0538 0248 ldr r0, .L73+4
  1833. 1358 053a FFF7FEFF bl HAL_GPIO_WritePin
  1834. 1359 .loc 1 359 5
  1835. 1360 053e B9E0 b .L69
  1836. 1361 .L74:
  1837. 1362 .align 2
  1838. 1363 .L73:
  1839. 1364 0540 00000000 .word L_blue
  1840. 1365 0544 00040048 .word 1207960576
  1841. 1366 0548 00000000 .word L_purple
  1842. 1367 054c 00000000 .word L_yellow
  1843. 1368 0550 00000000 .word L_cyan
  1844. 1369 .L53:
  1845. 360:user_src/hard_led.c **** }
  1846. 361:user_src/hard_led.c **** if (L_cyan.status == ON)
  1847. 1370 .loc 1 361 14
  1848. 1371 0554 594B ldr r3, .L75
  1849. 1372 0556 1B78 ldrb r3, [r3] @ zero_extendqisi2
  1850. 1373 .loc 1 361 7
  1851. 1374 0558 FF2B cmp r3, #255
  1852. 1375 055a 1AD1 bne .L56
  1853. 362:user_src/hard_led.c **** {
  1854. 363:user_src/hard_led.c **** if (HAL_GetTick() - L_cyan.time > L_cyan.on_time_ms)
  1855. 1376 .loc 1 363 9
  1856. 1377 055c FFF7FEFF bl HAL_GetTick
  1857. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 33
  1858. 1378 0560 0246 mov r2, r0
  1859. 1379 .loc 1 363 31
  1860. 1380 0562 564B ldr r3, .L75
  1861. 1381 0564 1B69 ldr r3, [r3, #16]
  1862. 1382 .loc 1 363 23
  1863. 1383 0566 D21A subs r2, r2, r3
  1864. 1384 .loc 1 363 45
  1865. 1385 0568 544B ldr r3, .L75
  1866. 1386 056a 5B68 ldr r3, [r3, #4]
  1867. 1387 .loc 1 363 8
  1868. 1388 056c 9A42 cmp r2, r3
  1869. 1389 056e 40F2A480 bls .L15
  1870. 364:user_src/hard_led.c **** {
  1871. 365:user_src/hard_led.c **** L_cyan.repeat--;
  1872. 1390 .loc 1 365 12
  1873. 1391 0572 524B ldr r3, .L75
  1874. 1392 0574 DB68 ldr r3, [r3, #12]
  1875. 1393 .loc 1 365 19
  1876. 1394 0576 013B subs r3, r3, #1
  1877. 1395 0578 504A ldr r2, .L75
  1878. 1396 057a D360 str r3, [r2, #12]
  1879. 366:user_src/hard_led.c **** LEDCyan_OFF();
  1880. 1397 .loc 1 366 6
  1881. 1398 057c 0022 movs r2, #0
  1882. 1399 057e 0621 movs r1, #6
  1883. 1400 0580 4F48 ldr r0, .L75+4
  1884. 1401 0582 FFF7FEFF bl HAL_GPIO_WritePin
  1885. 367:user_src/hard_led.c **** Update_LED_Time();
  1886. 1402 .loc 1 367 6
  1887. 1403 0586 FFF7FEFF bl Update_LED_Time
  1888. 368:user_src/hard_led.c **** L_cyan.status = OFF;
  1889. 1404 .loc 1 368 20
  1890. 1405 058a 4C4B ldr r3, .L75
  1891. 1406 058c 0022 movs r2, #0
  1892. 1407 058e 1A70 strb r2, [r3]
  1893. 1408 0590 93E0 b .L15
  1894. 1409 .L56:
  1895. 369:user_src/hard_led.c **** }
  1896. 370:user_src/hard_led.c **** }
  1897. 371:user_src/hard_led.c **** else
  1898. 372:user_src/hard_led.c **** {
  1899. 373:user_src/hard_led.c **** if (HAL_GetTick() - L_cyan.time > L_cyan.off_time_ms)
  1900. 1410 .loc 1 373 9
  1901. 1411 0592 FFF7FEFF bl HAL_GetTick
  1902. 1412 0596 0246 mov r2, r0
  1903. 1413 .loc 1 373 31
  1904. 1414 0598 484B ldr r3, .L75
  1905. 1415 059a 1B69 ldr r3, [r3, #16]
  1906. 1416 .loc 1 373 23
  1907. 1417 059c D21A subs r2, r2, r3
  1908. 1418 .loc 1 373 45
  1909. 1419 059e 474B ldr r3, .L75
  1910. 1420 05a0 9B68 ldr r3, [r3, #8]
  1911. 1421 .loc 1 373 8
  1912. 1422 05a2 9A42 cmp r2, r3
  1913. 1423 05a4 40F28980 bls .L15
  1914. 374:user_src/hard_led.c **** {
  1915. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 34
  1916. 375:user_src/hard_led.c **** if (L_cyan.repeat != 0)
  1917. 1424 .loc 1 375 16
  1918. 1425 05a8 444B ldr r3, .L75
  1919. 1426 05aa DB68 ldr r3, [r3, #12]
  1920. 1427 .loc 1 375 9
  1921. 1428 05ac 002B cmp r3, #0
  1922. 1429 05ae 00F08480 beq .L15
  1923. 376:user_src/hard_led.c **** {
  1924. 377:user_src/hard_led.c **** LEDCyan_ON();
  1925. 1430 .loc 1 377 7
  1926. 1431 05b2 0122 movs r2, #1
  1927. 1432 05b4 0621 movs r1, #6
  1928. 1433 05b6 4248 ldr r0, .L75+4
  1929. 1434 05b8 FFF7FEFF bl HAL_GPIO_WritePin
  1930. 378:user_src/hard_led.c **** L_cyan.time = HAL_GetTick();
  1931. 1435 .loc 1 378 21
  1932. 1436 05bc FFF7FEFF bl HAL_GetTick
  1933. 1437 05c0 0346 mov r3, r0
  1934. 1438 .loc 1 378 19
  1935. 1439 05c2 3E4A ldr r2, .L75
  1936. 1440 05c4 1361 str r3, [r2, #16]
  1937. 379:user_src/hard_led.c **** L_cyan.status = ON;
  1938. 1441 .loc 1 379 21
  1939. 1442 05c6 3D4B ldr r3, .L75
  1940. 1443 05c8 FF22 movs r2, #255
  1941. 1444 05ca 1A70 strb r2, [r3]
  1942. 1445 05cc 75E0 b .L15
  1943. 1446 .L51:
  1944. 380:user_src/hard_led.c **** }
  1945. 381:user_src/hard_led.c **** }
  1946. 382:user_src/hard_led.c **** }
  1947. 383:user_src/hard_led.c **** }
  1948. 384:user_src/hard_led.c **** else if (L_white.repeat != 0)
  1949. 1447 .loc 1 384 19
  1950. 1448 05ce 3D4B ldr r3, .L75+8
  1951. 1449 05d0 DB68 ldr r3, [r3, #12]
  1952. 1450 .loc 1 384 11
  1953. 1451 05d2 002B cmp r3, #0
  1954. 1452 05d4 71D0 beq .L15
  1955. 385:user_src/hard_led.c **** {
  1956. 386:user_src/hard_led.c ****
  1957. 387:user_src/hard_led.c **** if ((L_white.off_time_ms == 25500) || (L_white.on_time_ms == 25500))
  1958. 1453 .loc 1 387 16
  1959. 1454 05d6 3B4B ldr r3, .L75+8
  1960. 1455 05d8 9B68 ldr r3, [r3, #8]
  1961. 1456 .loc 1 387 7
  1962. 1457 05da 46F29C32 movw r2, #25500
  1963. 1458 05de 9342 cmp r3, r2
  1964. 1459 05e0 05D0 beq .L57
  1965. 1460 .loc 1 387 50 discriminator 1
  1966. 1461 05e2 384B ldr r3, .L75+8
  1967. 1462 05e4 5B68 ldr r3, [r3, #4]
  1968. 1463 .loc 1 387 39 discriminator 1
  1969. 1464 05e6 46F29C32 movw r2, #25500
  1970. 1465 05ea 9342 cmp r3, r2
  1971. 1466 05ec 1AD1 bne .L58
  1972. 1467 .L57:
  1973. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 35
  1974. 388:user_src/hard_led.c **** {
  1975. 389:user_src/hard_led.c **** L_white.repeat = 0;
  1976. 1468 .loc 1 389 20
  1977. 1469 05ee 354B ldr r3, .L75+8
  1978. 1470 05f0 0022 movs r2, #0
  1979. 1471 05f2 DA60 str r2, [r3, #12]
  1980. 390:user_src/hard_led.c **** if (L_white.off_time_ms == 25500)
  1981. 1472 .loc 1 390 16
  1982. 1473 05f4 334B ldr r3, .L75+8
  1983. 1474 05f6 9B68 ldr r3, [r3, #8]
  1984. 1475 .loc 1 390 8
  1985. 1476 05f8 46F29C32 movw r2, #25500
  1986. 1477 05fc 9342 cmp r3, r2
  1987. 1478 05fe 05D1 bne .L59
  1988. 391:user_src/hard_led.c **** {
  1989. 392:user_src/hard_led.c **** LEDWhite_OFF();
  1990. 1479 .loc 1 392 6
  1991. 1480 0600 0022 movs r2, #0
  1992. 1481 0602 0721 movs r1, #7
  1993. 1482 0604 2E48 ldr r0, .L75+4
  1994. 1483 0606 FFF7FEFF bl HAL_GPIO_WritePin
  1995. 393:user_src/hard_led.c **** }
  1996. 394:user_src/hard_led.c **** else if (L_white.on_time_ms == 25500)
  1997. 395:user_src/hard_led.c **** {
  1998. 396:user_src/hard_led.c **** LEDWhite_ON();
  1999. 397:user_src/hard_led.c **** }
  2000. 398:user_src/hard_led.c ****
  2001. 399:user_src/hard_led.c **** return;
  2002. 1484 .loc 1 399 5
  2003. 1485 060a 55E0 b .L70
  2004. 1486 .L59:
  2005. 394:user_src/hard_led.c **** {
  2006. 1487 .loc 1 394 21
  2007. 1488 060c 2D4B ldr r3, .L75+8
  2008. 1489 060e 5B68 ldr r3, [r3, #4]
  2009. 394:user_src/hard_led.c **** {
  2010. 1490 .loc 1 394 13
  2011. 1491 0610 46F29C32 movw r2, #25500
  2012. 1492 0614 9342 cmp r3, r2
  2013. 1493 0616 4FD1 bne .L70
  2014. 396:user_src/hard_led.c **** }
  2015. 1494 .loc 1 396 6
  2016. 1495 0618 0122 movs r2, #1
  2017. 1496 061a 0721 movs r1, #7
  2018. 1497 061c 2848 ldr r0, .L75+4
  2019. 1498 061e FFF7FEFF bl HAL_GPIO_WritePin
  2020. 1499 .loc 1 399 5
  2021. 1500 0622 49E0 b .L70
  2022. 1501 .L58:
  2023. 400:user_src/hard_led.c **** }
  2024. 401:user_src/hard_led.c **** if (L_white.status == ON)
  2025. 1502 .loc 1 401 15
  2026. 1503 0624 274B ldr r3, .L75+8
  2027. 1504 0626 1B78 ldrb r3, [r3] @ zero_extendqisi2
  2028. 1505 .loc 1 401 7
  2029. 1506 0628 FF2B cmp r3, #255
  2030. 1507 062a 19D1 bne .L61
  2031. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 36
  2032. 402:user_src/hard_led.c **** {
  2033. 403:user_src/hard_led.c **** if (HAL_GetTick() - L_white.time > L_white.on_time_ms)
  2034. 1508 .loc 1 403 9
  2035. 1509 062c FFF7FEFF bl HAL_GetTick
  2036. 1510 0630 0246 mov r2, r0
  2037. 1511 .loc 1 403 32
  2038. 1512 0632 244B ldr r3, .L75+8
  2039. 1513 0634 1B69 ldr r3, [r3, #16]
  2040. 1514 .loc 1 403 23
  2041. 1515 0636 D21A subs r2, r2, r3
  2042. 1516 .loc 1 403 47
  2043. 1517 0638 224B ldr r3, .L75+8
  2044. 1518 063a 5B68 ldr r3, [r3, #4]
  2045. 1519 .loc 1 403 8
  2046. 1520 063c 9A42 cmp r2, r3
  2047. 1521 063e 3CD9 bls .L15
  2048. 404:user_src/hard_led.c **** {
  2049. 405:user_src/hard_led.c **** L_white.repeat--;
  2050. 1522 .loc 1 405 13
  2051. 1523 0640 204B ldr r3, .L75+8
  2052. 1524 0642 DB68 ldr r3, [r3, #12]
  2053. 1525 .loc 1 405 20
  2054. 1526 0644 013B subs r3, r3, #1
  2055. 1527 0646 1F4A ldr r2, .L75+8
  2056. 1528 0648 D360 str r3, [r2, #12]
  2057. 406:user_src/hard_led.c **** LEDWhite_OFF();
  2058. 1529 .loc 1 406 6
  2059. 1530 064a 0022 movs r2, #0
  2060. 1531 064c 0721 movs r1, #7
  2061. 1532 064e 1C48 ldr r0, .L75+4
  2062. 1533 0650 FFF7FEFF bl HAL_GPIO_WritePin
  2063. 407:user_src/hard_led.c **** Update_LED_Time();
  2064. 1534 .loc 1 407 6
  2065. 1535 0654 FFF7FEFF bl Update_LED_Time
  2066. 408:user_src/hard_led.c **** L_white.status = OFF;
  2067. 1536 .loc 1 408 21
  2068. 1537 0658 1A4B ldr r3, .L75+8
  2069. 1538 065a 0022 movs r2, #0
  2070. 1539 065c 1A70 strb r2, [r3]
  2071. 1540 065e 2CE0 b .L15
  2072. 1541 .L61:
  2073. 409:user_src/hard_led.c **** }
  2074. 410:user_src/hard_led.c **** }
  2075. 411:user_src/hard_led.c **** else
  2076. 412:user_src/hard_led.c **** {
  2077. 413:user_src/hard_led.c **** if (HAL_GetTick() - L_white.time > L_white.off_time_ms)
  2078. 1542 .loc 1 413 9
  2079. 1543 0660 FFF7FEFF bl HAL_GetTick
  2080. 1544 0664 0246 mov r2, r0
  2081. 1545 .loc 1 413 32
  2082. 1546 0666 174B ldr r3, .L75+8
  2083. 1547 0668 1B69 ldr r3, [r3, #16]
  2084. 1548 .loc 1 413 23
  2085. 1549 066a D21A subs r2, r2, r3
  2086. 1550 .loc 1 413 47
  2087. 1551 066c 154B ldr r3, .L75+8
  2088. 1552 066e 9B68 ldr r3, [r3, #8]
  2089. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 37
  2090. 1553 .loc 1 413 8
  2091. 1554 0670 9A42 cmp r2, r3
  2092. 1555 0672 22D9 bls .L15
  2093. 414:user_src/hard_led.c **** {
  2094. 415:user_src/hard_led.c **** if (L_white.repeat != 0)
  2095. 1556 .loc 1 415 17
  2096. 1557 0674 134B ldr r3, .L75+8
  2097. 1558 0676 DB68 ldr r3, [r3, #12]
  2098. 1559 .loc 1 415 9
  2099. 1560 0678 002B cmp r3, #0
  2100. 1561 067a 1ED0 beq .L15
  2101. 416:user_src/hard_led.c **** {
  2102. 417:user_src/hard_led.c **** LEDWhite_ON();
  2103. 1562 .loc 1 417 7
  2104. 1563 067c 0122 movs r2, #1
  2105. 1564 067e 0721 movs r1, #7
  2106. 1565 0680 0F48 ldr r0, .L75+4
  2107. 1566 0682 FFF7FEFF bl HAL_GPIO_WritePin
  2108. 418:user_src/hard_led.c **** L_white.time = HAL_GetTick();
  2109. 1567 .loc 1 418 22
  2110. 1568 0686 FFF7FEFF bl HAL_GetTick
  2111. 1569 068a 0346 mov r3, r0
  2112. 1570 .loc 1 418 20
  2113. 1571 068c 0D4A ldr r2, .L75+8
  2114. 1572 068e 1361 str r3, [r2, #16]
  2115. 419:user_src/hard_led.c **** L_white.status = ON;
  2116. 1573 .loc 1 419 22
  2117. 1574 0690 0C4B ldr r3, .L75+8
  2118. 1575 0692 FF22 movs r2, #255
  2119. 1576 0694 1A70 strb r2, [r3]
  2120. 1577 0696 10E0 b .L15
  2121. 1578 .L62:
  2122. 113:user_src/hard_led.c ****
  2123. 1579 .loc 1 113 3
  2124. 1580 0698 00BF nop
  2125. 1581 069a 0EE0 b .L15
  2126. 1582 .L63:
  2127. 136:user_src/hard_led.c **** }
  2128. 1583 .loc 1 136 3
  2129. 1584 069c 00BF nop
  2130. 1585 069e 0CE0 b .L15
  2131. 1586 .L64:
  2132. 155:user_src/hard_led.c **** }
  2133. 1587 .loc 1 155 5
  2134. 1588 06a0 00BF nop
  2135. 1589 06a2 0AE0 b .L15
  2136. 1590 .L65:
  2137. 196:user_src/hard_led.c **** }
  2138. 1591 .loc 1 196 5
  2139. 1592 06a4 00BF nop
  2140. 1593 06a6 08E0 b .L15
  2141. 1594 .L66:
  2142. 236:user_src/hard_led.c **** }
  2143. 1595 .loc 1 236 5
  2144. 1596 06a8 00BF nop
  2145. 1597 06aa 06E0 b .L15
  2146. 1598 .L67:
  2147. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 38
  2148. 277:user_src/hard_led.c **** }
  2149. 1599 .loc 1 277 5
  2150. 1600 06ac 00BF nop
  2151. 1601 06ae 04E0 b .L15
  2152. 1602 .L68:
  2153. 318:user_src/hard_led.c **** }
  2154. 1603 .loc 1 318 5
  2155. 1604 06b0 00BF nop
  2156. 1605 06b2 02E0 b .L15
  2157. 1606 .L69:
  2158. 359:user_src/hard_led.c **** }
  2159. 1607 .loc 1 359 5
  2160. 1608 06b4 00BF nop
  2161. 1609 06b6 00E0 b .L15
  2162. 1610 .L70:
  2163. 399:user_src/hard_led.c **** }
  2164. 1611 .loc 1 399 5
  2165. 1612 06b8 00BF nop
  2166. 1613 .L15:
  2167. 420:user_src/hard_led.c **** }
  2168. 421:user_src/hard_led.c **** }
  2169. 422:user_src/hard_led.c **** }
  2170. 423:user_src/hard_led.c **** }
  2171. 424:user_src/hard_led.c **** }
  2172. 425:user_src/hard_led.c **** }
  2173. 1614 .loc 1 425 1
  2174. 1615 06ba 80BD pop {r7, pc}
  2175. 1616 .L76:
  2176. 1617 .align 2
  2177. 1618 .L75:
  2178. 1619 06bc 00000000 .word L_cyan
  2179. 1620 06c0 00040048 .word 1207960576
  2180. 1621 06c4 00000000 .word L_white
  2181. 1622 .cfi_endproc
  2182. 1623 .LFE135:
  2183. 1625 .text
  2184. 1626 .Letext0:
  2185. 1627 .file 2 "d:\\arm-gcc\\arm-none-eabi\\include\\machine\\_default_types.h"
  2186. 1628 .file 3 "d:\\arm-gcc\\arm-none-eabi\\include\\sys\\_stdint.h"
  2187. 1629 .file 4 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302xc.h"
  2188. 1630 .file 5 "user_inc/hard_led.h"
  2189. 1631 .file 6 "user_inc/soft_p_2_c.h"
  2190. 1632 .file 7 "user_inc/soft_flash.h"
  2191. 1633 .file 8 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_gpio.h"
  2192. ARM GAS C:\Users\zl835\AppData\Local\Temp\cclTbvme.s page 39
  2193. DEFINED SYMBOLS
  2194. *ABS*:00000000 hard_led.c
  2195. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:24 .bss.L_red:00000000 L_red
  2196. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:21 .bss.L_red:00000000 $d
  2197. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:31 .bss.L_blue:00000000 L_blue
  2198. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:28 .bss.L_blue:00000000 $d
  2199. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:38 .bss.L_green:00000000 L_green
  2200. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:35 .bss.L_green:00000000 $d
  2201. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:45 .bss.L_purple:00000000 L_purple
  2202. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:42 .bss.L_purple:00000000 $d
  2203. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:52 .bss.L_cyan:00000000 L_cyan
  2204. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:49 .bss.L_cyan:00000000 $d
  2205. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:59 .bss.L_yellow:00000000 L_yellow
  2206. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:56 .bss.L_yellow:00000000 $d
  2207. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:66 .bss.L_white:00000000 L_white
  2208. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:63 .bss.L_white:00000000 $d
  2209. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:72 .bss.led_is_ok:00000000 led_is_ok
  2210. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:73 .bss.led_is_ok:00000000 $d
  2211. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:75 .text.Update_LED_Time:00000000 $t
  2212. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:81 .text.Update_LED_Time:00000000 Update_LED_Time
  2213. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:144 .text.Update_LED_Time:00000050 $d
  2214. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:155 .text.led_set_blink:00000000 $t
  2215. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:161 .text.led_set_blink:00000000 led_set_blink
  2216. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:496 .text.led_set_blink:00000200 $d
  2217. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:512 .bss.L_red_time:00000000 L_red_time
  2218. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:509 .bss.L_red_time:00000000 $d
  2219. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:515 .text.led_blink_repeat:00000000 $t
  2220. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:521 .text.led_blink_repeat:00000000 led_blink_repeat
  2221. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:939 .text.led_blink_repeat:00000284 $d
  2222. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:952 .text.led_blink_repeat:000002b0 $t
  2223. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:1364 .text.led_blink_repeat:00000540 $d
  2224. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:1371 .text.led_blink_repeat:00000554 $t
  2225. C:\Users\zl835\AppData\Local\Temp\cclTbvme.s:1619 .text.led_blink_repeat:000006bc $d
  2226. UNDEFINED SYMBOLS
  2227. HAL_GetTick
  2228. HAL_GPIO_WritePin
  2229. HAL_GPIO_TogglePin
  2230. current_pmu_par
  2231. recv_fmu_data