soft_test.lst 79 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937
  1. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.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 "soft_test.c"
  17. 16 .text
  18. 17 .Ltext0:
  19. 18 .cfi_sections .debug_frame
  20. 19 .global UART3_send_buf
  21. 20 .section .data.UART3_send_buf,"aw"
  22. 21 .align 2
  23. 24 UART3_send_buf:
  24. 25 0000 00010203 .ascii "\000\001\002\003\004\005\006\007"
  25. 25 04050607
  26. 26 .section .text.uart_send_msg,"ax",%progbits
  27. 27 .align 1
  28. 28 .global uart_send_msg
  29. 29 .syntax unified
  30. 30 .thumb
  31. 31 .thumb_func
  32. 33 uart_send_msg:
  33. 34 .LFB133:
  34. 35 .file 1 "user_src/soft_test.c"
  35. 1:user_src/soft_test.c **** #include "soft_test.h"
  36. 2:user_src/soft_test.c **** #include "main.h"
  37. 3:user_src/soft_test.c **** #include "tim.h"
  38. 4:user_src/soft_test.c **** #include "soft_can.h"
  39. 5:user_src/soft_test.c **** #include "soft_uart.h"
  40. 6:user_src/soft_test.c **** #include "can.h"
  41. 7:user_src/soft_test.c **** #include "usart.h"
  42. 8:user_src/soft_test.c **** #include "soft_terrain.h"
  43. 9:user_src/soft_test.c **** #include "soft_obstacle.h"
  44. 10:user_src/soft_test.c **** #include "soft_p_2_c.h"
  45. 11:user_src/soft_test.c **** #include "soft_flash.h"
  46. 12:user_src/soft_test.c **** #include "soft_obstacle.h"
  47. 13:user_src/soft_test.c **** #include "string.h"
  48. 14:user_src/soft_test.c **** #include "can_debug.h"
  49. 15:user_src/soft_test.c **** #include "soft_version.h"
  50. 16:user_src/soft_test.c **** #include "config.h"
  51. 17:user_src/soft_test.c ****
  52. 18:user_src/soft_test.c **** /******************************************************************
  53. 19:user_src/soft_test.c **** * ****************测试程�*****************************************
  54. 20:user_src/soft_test.c **** * ****************************************************************/
  55. 21:user_src/soft_test.c **** uint8_t UART3_send_buf[8] = {0, 1, 2, 3, 4, 5, 6, 7}; //DMAå�‘é€� ä¸�能用局部å�˜é‡� å�¯ä»¥ä½¿ç
  56. 22:user_src/soft_test.c **** void uart_send_msg(void)
  57. 23:user_src/soft_test.c **** {
  58. 36 .loc 1 23 1
  59. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 2
  60. 37 .cfi_startproc
  61. 38 @ args = 0, pretend = 0, frame = 8
  62. 39 @ frame_needed = 1, uses_anonymous_args = 0
  63. 40 0000 80B5 push {r7, lr}
  64. 41 .LCFI0:
  65. 42 .cfi_def_cfa_offset 8
  66. 43 .cfi_offset 7, -8
  67. 44 .cfi_offset 14, -4
  68. 45 0002 82B0 sub sp, sp, #8
  69. 46 .LCFI1:
  70. 47 .cfi_def_cfa_offset 16
  71. 48 0004 00AF add r7, sp, #0
  72. 49 .LCFI2:
  73. 50 .cfi_def_cfa_register 7
  74. 24:user_src/soft_test.c **** static uint32_t uart_time = 0;
  75. 25:user_src/soft_test.c **** if (HAL_GetTick() - uart_time < 100)
  76. 51 .loc 1 25 7
  77. 52 0006 FFF7FEFF bl HAL_GetTick
  78. 53 000a 0246 mov r2, r0
  79. 54 .loc 1 25 21
  80. 55 000c 0D4B ldr r3, .L5
  81. 56 000e 1B68 ldr r3, [r3]
  82. 57 0010 D31A subs r3, r2, r3
  83. 58 .loc 1 25 6
  84. 59 0012 632B cmp r3, #99
  85. 60 0014 11D9 bls .L4
  86. 26:user_src/soft_test.c **** {
  87. 27:user_src/soft_test.c **** return;
  88. 28:user_src/soft_test.c **** }
  89. 29:user_src/soft_test.c **** else
  90. 30:user_src/soft_test.c **** {
  91. 31:user_src/soft_test.c **** uart_time = HAL_GetTick();
  92. 61 .loc 1 31 17
  93. 62 0016 FFF7FEFF bl HAL_GetTick
  94. 63 001a 0346 mov r3, r0
  95. 64 .loc 1 31 15
  96. 65 001c 094A ldr r2, .L5
  97. 66 001e 1360 str r3, [r2]
  98. 32:user_src/soft_test.c **** }
  99. 33:user_src/soft_test.c ****
  100. 34:user_src/soft_test.c **** uint32_t cur_time = HAL_GetTick();
  101. 67 .loc 1 34 23
  102. 68 0020 FFF7FEFF bl HAL_GetTick
  103. 69 0024 0346 mov r3, r0
  104. 70 .loc 1 34 12
  105. 71 0026 7B60 str r3, [r7, #4]
  106. 72 0028 7B68 ldr r3, [r7, #4]
  107. 35:user_src/soft_test.c **** memcpy(&UART3_send_buf[0],&cur_time,4);
  108. 73 .loc 1 35 3
  109. 74 002a 074A ldr r2, .L5+4
  110. 75 002c 1360 str r3, [r2]
  111. 36:user_src/soft_test.c **** //HAL_UART_Transmit(&huart3,&UART3_send_buf[i],1,0xFFFF);
  112. 37:user_src/soft_test.c **** //HAL_UART_Transmit_DMA(&huart2, UART2_send_buf, 8); //DMA��数�
  113. 38:user_src/soft_test.c **** //HAL_UART_Transmit(&huart2,&UART2_send_buf[i],1,0xFFFF);
  114. 39:user_src/soft_test.c **** /*
  115. 40:user_src/soft_test.c **** while (huart3.gState == HAL_UART_STATE_READY)
  116. 41:user_src/soft_test.c **** {
  117. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 3
  118. 42:user_src/soft_test.c **** assd++;
  119. 43:user_src/soft_test.c **** }
  120. 44:user_src/soft_test.c **** */
  121. 45:user_src/soft_test.c **** HAL_UART_Transmit_DMA(&huart3, UART3_send_buf, 4);
  122. 76 .loc 1 45 3
  123. 77 002e 0422 movs r2, #4
  124. 78 0030 0549 ldr r1, .L5+4
  125. 79 0032 0648 ldr r0, .L5+8
  126. 80 0034 FFF7FEFF bl HAL_UART_Transmit_DMA
  127. 81 0038 00E0 b .L1
  128. 82 .L4:
  129. 27:user_src/soft_test.c **** }
  130. 83 .loc 1 27 5
  131. 84 003a 00BF nop
  132. 85 .L1:
  133. 46:user_src/soft_test.c **** }
  134. 86 .loc 1 46 1
  135. 87 003c 0837 adds r7, r7, #8
  136. 88 .LCFI3:
  137. 89 .cfi_def_cfa_offset 8
  138. 90 003e BD46 mov sp, r7
  139. 91 .LCFI4:
  140. 92 .cfi_def_cfa_register 13
  141. 93 @ sp needed
  142. 94 0040 80BD pop {r7, pc}
  143. 95 .L6:
  144. 96 0042 00BF .align 2
  145. 97 .L5:
  146. 98 0044 00000000 .word uart_time.2
  147. 99 0048 00000000 .word UART3_send_buf
  148. 100 004c 00000000 .word huart3
  149. 101 .cfi_endproc
  150. 102 .LFE133:
  151. 104 .section .text.ttest_func,"ax",%progbits
  152. 105 .align 1
  153. 106 .global ttest_func
  154. 107 .syntax unified
  155. 108 .thumb
  156. 109 .thumb_func
  157. 111 ttest_func:
  158. 112 .LFB134:
  159. 47:user_src/soft_test.c ****
  160. 48:user_src/soft_test.c ****
  161. 49:user_src/soft_test.c **** void ttest_func(void)
  162. 50:user_src/soft_test.c **** {
  163. 113 .loc 1 50 1
  164. 114 .cfi_startproc
  165. 115 @ args = 0, pretend = 0, frame = 0
  166. 116 @ frame_needed = 1, uses_anonymous_args = 0
  167. 117 @ link register save eliminated.
  168. 118 0000 80B4 push {r7}
  169. 119 .LCFI5:
  170. 120 .cfi_def_cfa_offset 4
  171. 121 .cfi_offset 7, -4
  172. 122 0002 00AF add r7, sp, #0
  173. 123 .LCFI6:
  174. 124 .cfi_def_cfa_register 7
  175. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 4
  176. 51:user_src/soft_test.c **** /*
  177. 52:user_src/soft_test.c **** if (HAL_GetTick() - led_time > 1000 && HAL_GetTick() > 10000)
  178. 53:user_src/soft_test.c **** {
  179. 54:user_src/soft_test.c **** HAL_GPIO_TogglePin(GPIOA,LED2_Pin);
  180. 55:user_src/soft_test.c **** led_time = HAL_GetTick();
  181. 56:user_src/soft_test.c **** }
  182. 57:user_src/soft_test.c ****
  183. 58:user_src/soft_test.c **** if ((HAL_GetTick() > 5000) && (a == 1))
  184. 59:user_src/soft_test.c **** {
  185. 60:user_src/soft_test.c **** __HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_1, 1300);
  186. 61:user_src/soft_test.c **** __HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_2, 1700);
  187. 62:user_src/soft_test.c **** __HAL_TIM_SET_COMPARE(&htim3, TIM_CHANNEL_1, 1700);
  188. 63:user_src/soft_test.c **** __HAL_TIM_SET_COMPARE(&htim3, TIM_CHANNEL_2, 1700);
  189. 64:user_src/soft_test.c **** a = 0;
  190. 65:user_src/soft_test.c **** }
  191. 66:user_src/soft_test.c **** */
  192. 67:user_src/soft_test.c **** //5HZ ��CAN
  193. 68:user_src/soft_test.c ****
  194. 69:user_src/soft_test.c **** //uart_send_msg();
  195. 70:user_src/soft_test.c ****
  196. 71:user_src/soft_test.c **** //HAL_GPIO_WritePin(GPIOA, LED1_Pin, SET); //�色
  197. 72:user_src/soft_test.c **** //HAL_GPIO_WritePin(GPIOA, LED2_Pin, SET); //红色
  198. 73:user_src/soft_test.c **** //HAL_GPIO_WritePin(GPIOA, LED3_Pin, SET); //绿色
  199. 74:user_src/soft_test.c **** }
  200. 125 .loc 1 74 1
  201. 126 0004 00BF nop
  202. 127 0006 BD46 mov sp, r7
  203. 128 .LCFI7:
  204. 129 .cfi_def_cfa_register 13
  205. 130 @ sp needed
  206. 131 0008 5DF8047B ldr r7, [sp], #4
  207. 132 .LCFI8:
  208. 133 .cfi_restore 7
  209. 134 .cfi_def_cfa_offset 0
  210. 135 000c 7047 bx lr
  211. 136 .cfi_endproc
  212. 137 .LFE134:
  213. 139 .global led_time_green
  214. 140 .section .bss.led_time_green,"aw",%nobits
  215. 141 .align 2
  216. 144 led_time_green:
  217. 145 0000 00000000 .space 4
  218. 146 .global led_time_purple
  219. 147 .section .bss.led_time_purple,"aw",%nobits
  220. 148 .align 2
  221. 151 led_time_purple:
  222. 152 0000 00000000 .space 4
  223. 153 .global led_time_blue
  224. 154 .section .bss.led_time_blue,"aw",%nobits
  225. 155 .align 2
  226. 158 led_time_blue:
  227. 159 0000 00000000 .space 4
  228. 160 .global led_time_yellow
  229. 161 .section .bss.led_time_yellow,"aw",%nobits
  230. 162 .align 2
  231. 165 led_time_yellow:
  232. 166 0000 00000000 .space 4
  233. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 5
  234. 167 .global led_green
  235. 168 .section .bss.led_green,"aw",%nobits
  236. 171 led_green:
  237. 172 0000 00 .space 1
  238. 173 .global led_purple
  239. 174 .section .bss.led_purple,"aw",%nobits
  240. 177 led_purple:
  241. 178 0000 00 .space 1
  242. 179 .global led_blue
  243. 180 .section .bss.led_blue,"aw",%nobits
  244. 183 led_blue:
  245. 184 0000 00 .space 1
  246. 185 .global led_yellow
  247. 186 .section .bss.led_yellow,"aw",%nobits
  248. 189 led_yellow:
  249. 190 0000 00 .space 1
  250. 191 .global only_star_one_green
  251. 192 .section .bss.only_star_one_green,"aw",%nobits
  252. 195 only_star_one_green:
  253. 196 0000 00 .space 1
  254. 197 .global only_star_one_purple
  255. 198 .section .bss.only_star_one_purple,"aw",%nobits
  256. 201 only_star_one_purple:
  257. 202 0000 00 .space 1
  258. 203 .global only_star_one_blue
  259. 204 .section .bss.only_star_one_blue,"aw",%nobits
  260. 207 only_star_one_blue:
  261. 208 0000 00 .space 1
  262. 209 .global only_star_one_yellow
  263. 210 .section .bss.only_star_one_yellow,"aw",%nobits
  264. 213 only_star_one_yellow:
  265. 214 0000 00 .space 1
  266. 215 .global no_led_star
  267. 216 .section .bss.no_led_star,"aw",%nobits
  268. 219 no_led_star:
  269. 220 0000 00 .space 1
  270. 221 .section .text.pmu_inside_led,"ax",%progbits
  271. 222 .align 1
  272. 223 .global pmu_inside_led
  273. 224 .syntax unified
  274. 225 .thumb
  275. 226 .thumb_func
  276. 228 pmu_inside_led:
  277. 229 .LFB135:
  278. 75:user_src/soft_test.c ****
  279. 76:user_src/soft_test.c **** uint32_t led_time_green = 0;
  280. 77:user_src/soft_test.c **** uint32_t led_time_purple = 0;
  281. 78:user_src/soft_test.c **** uint32_t led_time_blue = 0;
  282. 79:user_src/soft_test.c **** uint32_t led_time_yellow = 0;
  283. 80:user_src/soft_test.c ****
  284. 81:user_src/soft_test.c **** bool led_green = false;
  285. 82:user_src/soft_test.c **** bool led_purple = false;
  286. 83:user_src/soft_test.c **** bool led_blue = false;
  287. 84:user_src/soft_test.c **** bool led_yellow = false;
  288. 85:user_src/soft_test.c ****
  289. 86:user_src/soft_test.c **** bool only_star_one_green = false;
  290. 87:user_src/soft_test.c **** bool only_star_one_purple = false;
  291. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 6
  292. 88:user_src/soft_test.c **** bool only_star_one_blue = false;
  293. 89:user_src/soft_test.c **** bool only_star_one_yellow = false;
  294. 90:user_src/soft_test.c ****
  295. 91:user_src/soft_test.c **** bool no_led_star = false;
  296. 92:user_src/soft_test.c ****
  297. 93:user_src/soft_test.c ****
  298. 94:user_src/soft_test.c ****
  299. 95:user_src/soft_test.c **** /**
  300. 96:user_src/soft_test.c **** * @file pmu_inside_led
  301. 97:user_src/soft_test.c **** * @brief �载LED�
  302. 98:user_src/soft_test.c **** * @param None
  303. 99:user_src/soft_test.c **** * @details 绿:正常 --紫色:仿地 --�:�� -- 黄:��
  304. 100:user_src/soft_test.c **** * @author Zhang Sir
  305. 101:user_src/soft_test.c **** **/
  306. 102:user_src/soft_test.c **** void pmu_inside_led()
  307. 103:user_src/soft_test.c **** {
  308. 230 .loc 1 103 1
  309. 231 .cfi_startproc
  310. 232 @ args = 0, pretend = 0, frame = 0
  311. 233 @ frame_needed = 1, uses_anonymous_args = 0
  312. 234 0000 80B5 push {r7, lr}
  313. 235 .LCFI9:
  314. 236 .cfi_def_cfa_offset 8
  315. 237 .cfi_offset 7, -8
  316. 238 .cfi_offset 14, -4
  317. 239 0002 00AF add r7, sp, #0
  318. 240 .LCFI10:
  319. 241 .cfi_def_cfa_register 7
  320. 104:user_src/soft_test.c **** if (led_green == false && led_purple == false && led_blue == false && led_green == false && led_y
  321. 242 .loc 1 104 17
  322. 243 0004 934B ldr r3, .L20
  323. 244 0006 1B78 ldrb r3, [r3] @ zero_extendqisi2
  324. 245 0008 83F00103 eor r3, r3, #1
  325. 246 000c DBB2 uxtb r3, r3
  326. 247 .loc 1 104 6
  327. 248 000e 002B cmp r3, #0
  328. 249 0010 1FD0 beq .L9
  329. 250 .loc 1 104 40 discriminator 1
  330. 251 0012 914B ldr r3, .L20+4
  331. 252 0014 1B78 ldrb r3, [r3] @ zero_extendqisi2
  332. 253 0016 83F00103 eor r3, r3, #1
  333. 254 001a DBB2 uxtb r3, r3
  334. 255 .loc 1 104 26 discriminator 1
  335. 256 001c 002B cmp r3, #0
  336. 257 001e 18D0 beq .L9
  337. 258 .loc 1 104 61 discriminator 2
  338. 259 0020 8E4B ldr r3, .L20+8
  339. 260 0022 1B78 ldrb r3, [r3] @ zero_extendqisi2
  340. 261 0024 83F00103 eor r3, r3, #1
  341. 262 0028 DBB2 uxtb r3, r3
  342. 263 .loc 1 104 49 discriminator 2
  343. 264 002a 002B cmp r3, #0
  344. 265 002c 11D0 beq .L9
  345. 266 .loc 1 104 83 discriminator 3
  346. 267 002e 894B ldr r3, .L20
  347. 268 0030 1B78 ldrb r3, [r3] @ zero_extendqisi2
  348. 269 0032 83F00103 eor r3, r3, #1
  349. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 7
  350. 270 0036 DBB2 uxtb r3, r3
  351. 271 .loc 1 104 70 discriminator 3
  352. 272 0038 002B cmp r3, #0
  353. 273 003a 0AD0 beq .L9
  354. 274 .loc 1 104 106 discriminator 4
  355. 275 003c 884B ldr r3, .L20+12
  356. 276 003e 1B78 ldrb r3, [r3] @ zero_extendqisi2
  357. 277 0040 83F00103 eor r3, r3, #1
  358. 278 0044 DBB2 uxtb r3, r3
  359. 279 .loc 1 104 92 discriminator 4
  360. 280 0046 002B cmp r3, #0
  361. 281 0048 03D0 beq .L9
  362. 105:user_src/soft_test.c **** {
  363. 106:user_src/soft_test.c **** no_led_star = true;
  364. 282 .loc 1 106 17
  365. 283 004a 864B ldr r3, .L20+16
  366. 284 004c 0122 movs r2, #1
  367. 285 004e 1A70 strb r2, [r3]
  368. 286 0050 02E0 b .L10
  369. 287 .L9:
  370. 107:user_src/soft_test.c **** }
  371. 108:user_src/soft_test.c **** else
  372. 109:user_src/soft_test.c **** {
  373. 110:user_src/soft_test.c **** no_led_star = false;
  374. 288 .loc 1 110 17
  375. 289 0052 844B ldr r3, .L20+16
  376. 290 0054 0022 movs r2, #0
  377. 291 0056 1A70 strb r2, [r3]
  378. 292 .L10:
  379. 111:user_src/soft_test.c **** }
  380. 112:user_src/soft_test.c ****
  381. 113:user_src/soft_test.c **** //正常闪绿� 设备连接��次闪其他颜色
  382. 114:user_src/soft_test.c **** if ((HAL_GetTick() - led_time_green > 2500) && (no_led_star == true) &&
  383. 293 .loc 1 114 8
  384. 294 0058 FFF7FEFF bl HAL_GetTick
  385. 295 005c 0246 mov r2, r0
  386. 296 .loc 1 114 22
  387. 297 005e 824B ldr r3, .L20+20
  388. 298 0060 1B68 ldr r3, [r3]
  389. 299 0062 D31A subs r3, r2, r3
  390. 300 .loc 1 114 6
  391. 301 0064 40F6C412 movw r2, #2500
  392. 302 0068 9342 cmp r3, r2
  393. 303 006a 25D9 bls .L11
  394. 304 .loc 1 114 63 discriminator 1
  395. 305 006c 7D4B ldr r3, .L20+16
  396. 306 006e 1B78 ldrb r3, [r3] @ zero_extendqisi2
  397. 307 .loc 1 114 47 discriminator 1
  398. 308 0070 002B cmp r3, #0
  399. 309 0072 21D0 beq .L11
  400. 115:user_src/soft_test.c **** (only_star_one_green == false))
  401. 310 .loc 1 115 28 discriminator 2
  402. 311 0074 7D4B ldr r3, .L20+24
  403. 312 0076 1B78 ldrb r3, [r3] @ zero_extendqisi2
  404. 313 0078 83F00103 eor r3, r3, #1
  405. 314 007c DBB2 uxtb r3, r3
  406. 114:user_src/soft_test.c **** (only_star_one_green == false))
  407. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 8
  408. 315 .loc 1 114 72 discriminator 2
  409. 316 007e 002B cmp r3, #0
  410. 317 0080 1AD0 beq .L11
  411. 116:user_src/soft_test.c **** {
  412. 117:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED3_Pin, GPIO_PIN_RESET);
  413. 318 .loc 1 117 5
  414. 319 0082 0022 movs r2, #0
  415. 320 0084 4021 movs r1, #64
  416. 321 0086 4FF09040 mov r0, #1207959552
  417. 322 008a FFF7FEFF bl HAL_GPIO_WritePin
  418. 118:user_src/soft_test.c **** led_time_green = HAL_GetTick();
  419. 323 .loc 1 118 22
  420. 324 008e FFF7FEFF bl HAL_GetTick
  421. 325 0092 0346 mov r3, r0
  422. 326 .loc 1 118 20
  423. 327 0094 744A ldr r2, .L20+20
  424. 328 0096 1360 str r3, [r2]
  425. 119:user_src/soft_test.c **** led_green = true;
  426. 329 .loc 1 119 15
  427. 330 0098 6E4B ldr r3, .L20
  428. 331 009a 0122 movs r2, #1
  429. 332 009c 1A70 strb r2, [r3]
  430. 120:user_src/soft_test.c ****
  431. 121:user_src/soft_test.c **** only_star_one_green = true;
  432. 333 .loc 1 121 25
  433. 334 009e 734B ldr r3, .L20+24
  434. 335 00a0 0122 movs r2, #1
  435. 336 00a2 1A70 strb r2, [r3]
  436. 122:user_src/soft_test.c **** only_star_one_purple = true;
  437. 337 .loc 1 122 26
  438. 338 00a4 724B ldr r3, .L20+28
  439. 339 00a6 0122 movs r2, #1
  440. 340 00a8 1A70 strb r2, [r3]
  441. 123:user_src/soft_test.c **** only_star_one_blue = true;
  442. 341 .loc 1 123 24
  443. 342 00aa 724B ldr r3, .L20+32
  444. 343 00ac 0122 movs r2, #1
  445. 344 00ae 1A70 strb r2, [r3]
  446. 124:user_src/soft_test.c **** only_star_one_yellow = true;
  447. 345 .loc 1 124 26
  448. 346 00b0 714B ldr r3, .L20+36
  449. 347 00b2 0122 movs r2, #1
  450. 348 00b4 1A70 strb r2, [r3]
  451. 349 00b6 5BE0 b .L12
  452. 350 .L11:
  453. 125:user_src/soft_test.c **** }
  454. 126:user_src/soft_test.c **** else if (terrain_is_link == true && no_led_star == true && only_star_one_purple == true)
  455. 351 .loc 1 126 28
  456. 352 00b8 704B ldr r3, .L20+40
  457. 353 00ba 1B78 ldrb r3, [r3] @ zero_extendqisi2
  458. 354 .loc 1 126 11
  459. 355 00bc 002B cmp r3, #0
  460. 356 00be 1CD0 beq .L13
  461. 357 .loc 1 126 51 discriminator 1
  462. 358 00c0 684B ldr r3, .L20+16
  463. 359 00c2 1B78 ldrb r3, [r3] @ zero_extendqisi2
  464. 360 .loc 1 126 36 discriminator 1
  465. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 9
  466. 361 00c4 002B cmp r3, #0
  467. 362 00c6 18D0 beq .L13
  468. 363 .loc 1 126 83 discriminator 2
  469. 364 00c8 694B ldr r3, .L20+28
  470. 365 00ca 1B78 ldrb r3, [r3] @ zero_extendqisi2
  471. 366 .loc 1 126 59 discriminator 2
  472. 367 00cc 002B cmp r3, #0
  473. 368 00ce 14D0 beq .L13
  474. 127:user_src/soft_test.c **** {
  475. 128:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED2_Pin, GPIO_PIN_RESET);
  476. 369 .loc 1 128 5
  477. 370 00d0 0022 movs r2, #0
  478. 371 00d2 2021 movs r1, #32
  479. 372 00d4 4FF09040 mov r0, #1207959552
  480. 373 00d8 FFF7FEFF bl HAL_GPIO_WritePin
  481. 129:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED1_Pin, GPIO_PIN_RESET);
  482. 374 .loc 1 129 5
  483. 375 00dc 0022 movs r2, #0
  484. 376 00de 1021 movs r1, #16
  485. 377 00e0 4FF09040 mov r0, #1207959552
  486. 378 00e4 FFF7FEFF bl HAL_GPIO_WritePin
  487. 130:user_src/soft_test.c **** led_time_purple = HAL_GetTick();
  488. 379 .loc 1 130 23
  489. 380 00e8 FFF7FEFF bl HAL_GetTick
  490. 381 00ec 0346 mov r3, r0
  491. 382 .loc 1 130 21
  492. 383 00ee 644A ldr r2, .L20+44
  493. 384 00f0 1360 str r3, [r2]
  494. 131:user_src/soft_test.c **** led_purple = true;
  495. 385 .loc 1 131 16
  496. 386 00f2 594B ldr r3, .L20+4
  497. 387 00f4 0122 movs r2, #1
  498. 388 00f6 1A70 strb r2, [r3]
  499. 389 00f8 3AE0 b .L12
  500. 390 .L13:
  501. 132:user_src/soft_test.c **** }
  502. 133:user_src/soft_test.c **** else if (obs_f_is_link == true && no_led_star == true && only_star_one_blue == true)
  503. 391 .loc 1 133 26
  504. 392 00fa 624B ldr r3, .L20+48
  505. 393 00fc 1B78 ldrb r3, [r3] @ zero_extendqisi2
  506. 394 .loc 1 133 11
  507. 395 00fe 002B cmp r3, #0
  508. 396 0100 16D0 beq .L14
  509. 397 .loc 1 133 49 discriminator 1
  510. 398 0102 584B ldr r3, .L20+16
  511. 399 0104 1B78 ldrb r3, [r3] @ zero_extendqisi2
  512. 400 .loc 1 133 34 discriminator 1
  513. 401 0106 002B cmp r3, #0
  514. 402 0108 12D0 beq .L14
  515. 403 .loc 1 133 79 discriminator 2
  516. 404 010a 5A4B ldr r3, .L20+32
  517. 405 010c 1B78 ldrb r3, [r3] @ zero_extendqisi2
  518. 406 .loc 1 133 57 discriminator 2
  519. 407 010e 002B cmp r3, #0
  520. 408 0110 0ED0 beq .L14
  521. 134:user_src/soft_test.c **** {
  522. 135:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED1_Pin, GPIO_PIN_RESET);
  523. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 10
  524. 409 .loc 1 135 5
  525. 410 0112 0022 movs r2, #0
  526. 411 0114 1021 movs r1, #16
  527. 412 0116 4FF09040 mov r0, #1207959552
  528. 413 011a FFF7FEFF bl HAL_GPIO_WritePin
  529. 136:user_src/soft_test.c **** led_time_blue = HAL_GetTick();
  530. 414 .loc 1 136 21
  531. 415 011e FFF7FEFF bl HAL_GetTick
  532. 416 0122 0346 mov r3, r0
  533. 417 .loc 1 136 19
  534. 418 0124 584A ldr r2, .L20+52
  535. 419 0126 1360 str r3, [r2]
  536. 137:user_src/soft_test.c **** led_blue = true;
  537. 420 .loc 1 137 14
  538. 421 0128 4C4B ldr r3, .L20+8
  539. 422 012a 0122 movs r2, #1
  540. 423 012c 1A70 strb r2, [r3]
  541. 424 012e 1FE0 b .L12
  542. 425 .L14:
  543. 138:user_src/soft_test.c **** }
  544. 139:user_src/soft_test.c **** else if (obs_b_is_link == true && no_led_star == true && only_star_one_yellow == true)
  545. 426 .loc 1 139 26
  546. 427 0130 564B ldr r3, .L20+56
  547. 428 0132 1B78 ldrb r3, [r3] @ zero_extendqisi2
  548. 429 .loc 1 139 11
  549. 430 0134 002B cmp r3, #0
  550. 431 0136 1BD0 beq .L12
  551. 432 .loc 1 139 49 discriminator 1
  552. 433 0138 4A4B ldr r3, .L20+16
  553. 434 013a 1B78 ldrb r3, [r3] @ zero_extendqisi2
  554. 435 .loc 1 139 34 discriminator 1
  555. 436 013c 002B cmp r3, #0
  556. 437 013e 17D0 beq .L12
  557. 438 .loc 1 139 81 discriminator 2
  558. 439 0140 4D4B ldr r3, .L20+36
  559. 440 0142 1B78 ldrb r3, [r3] @ zero_extendqisi2
  560. 441 .loc 1 139 57 discriminator 2
  561. 442 0144 002B cmp r3, #0
  562. 443 0146 13D0 beq .L12
  563. 140:user_src/soft_test.c **** {
  564. 141:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED3_Pin, GPIO_PIN_RESET);
  565. 444 .loc 1 141 5
  566. 445 0148 0022 movs r2, #0
  567. 446 014a 4021 movs r1, #64
  568. 447 014c 4FF09040 mov r0, #1207959552
  569. 448 0150 FFF7FEFF bl HAL_GPIO_WritePin
  570. 142:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED2_Pin, GPIO_PIN_RESET);
  571. 449 .loc 1 142 5
  572. 450 0154 0022 movs r2, #0
  573. 451 0156 2021 movs r1, #32
  574. 452 0158 4FF09040 mov r0, #1207959552
  575. 453 015c FFF7FEFF bl HAL_GPIO_WritePin
  576. 143:user_src/soft_test.c **** led_time_yellow = HAL_GetTick();
  577. 454 .loc 1 143 23
  578. 455 0160 FFF7FEFF bl HAL_GetTick
  579. 456 0164 0346 mov r3, r0
  580. 457 .loc 1 143 21
  581. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 11
  582. 458 0166 4A4A ldr r2, .L20+60
  583. 459 0168 1360 str r3, [r2]
  584. 144:user_src/soft_test.c **** led_yellow = true;
  585. 460 .loc 1 144 16
  586. 461 016a 3D4B ldr r3, .L20+12
  587. 462 016c 0122 movs r2, #1
  588. 463 016e 1A70 strb r2, [r3]
  589. 464 .L12:
  590. 145:user_src/soft_test.c **** }
  591. 146:user_src/soft_test.c ****
  592. 147:user_src/soft_test.c **** //��
  593. 148:user_src/soft_test.c **** if ((HAL_GetTick() - led_time_green >= 500) && led_green == true)
  594. 465 .loc 1 148 8
  595. 466 0170 FFF7FEFF bl HAL_GetTick
  596. 467 0174 0246 mov r2, r0
  597. 468 .loc 1 148 22
  598. 469 0176 3C4B ldr r3, .L20+20
  599. 470 0178 1B68 ldr r3, [r3]
  600. 471 017a D31A subs r3, r2, r3
  601. 472 .loc 1 148 6
  602. 473 017c B3F5FA7F cmp r3, #500
  603. 474 0180 0FD3 bcc .L15
  604. 475 .loc 1 148 60 discriminator 1
  605. 476 0182 344B ldr r3, .L20
  606. 477 0184 1B78 ldrb r3, [r3] @ zero_extendqisi2
  607. 478 .loc 1 148 47 discriminator 1
  608. 479 0186 002B cmp r3, #0
  609. 480 0188 0BD0 beq .L15
  610. 149:user_src/soft_test.c **** {
  611. 150:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED3_Pin, GPIO_PIN_SET);
  612. 481 .loc 1 150 5
  613. 482 018a 0122 movs r2, #1
  614. 483 018c 4021 movs r1, #64
  615. 484 018e 4FF09040 mov r0, #1207959552
  616. 485 0192 FFF7FEFF bl HAL_GPIO_WritePin
  617. 151:user_src/soft_test.c **** led_green = false;
  618. 486 .loc 1 151 15
  619. 487 0196 2F4B ldr r3, .L20
  620. 488 0198 0022 movs r2, #0
  621. 489 019a 1A70 strb r2, [r3]
  622. 152:user_src/soft_test.c **** only_star_one_green = false;
  623. 490 .loc 1 152 25
  624. 491 019c 334B ldr r3, .L20+24
  625. 492 019e 0022 movs r2, #0
  626. 493 01a0 1A70 strb r2, [r3]
  627. 494 .L15:
  628. 153:user_src/soft_test.c **** }
  629. 154:user_src/soft_test.c **** if ((HAL_GetTick() - led_time_purple >= 500) && led_purple == true)
  630. 495 .loc 1 154 8
  631. 496 01a2 FFF7FEFF bl HAL_GetTick
  632. 497 01a6 0246 mov r2, r0
  633. 498 .loc 1 154 22
  634. 499 01a8 354B ldr r3, .L20+44
  635. 500 01aa 1B68 ldr r3, [r3]
  636. 501 01ac D31A subs r3, r2, r3
  637. 502 .loc 1 154 6
  638. 503 01ae B3F5FA7F cmp r3, #500
  639. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 12
  640. 504 01b2 15D3 bcc .L16
  641. 505 .loc 1 154 62 discriminator 1
  642. 506 01b4 284B ldr r3, .L20+4
  643. 507 01b6 1B78 ldrb r3, [r3] @ zero_extendqisi2
  644. 508 .loc 1 154 48 discriminator 1
  645. 509 01b8 002B cmp r3, #0
  646. 510 01ba 11D0 beq .L16
  647. 155:user_src/soft_test.c **** {
  648. 156:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED2_Pin, GPIO_PIN_SET);
  649. 511 .loc 1 156 5
  650. 512 01bc 0122 movs r2, #1
  651. 513 01be 2021 movs r1, #32
  652. 514 01c0 4FF09040 mov r0, #1207959552
  653. 515 01c4 FFF7FEFF bl HAL_GPIO_WritePin
  654. 157:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED1_Pin, GPIO_PIN_SET);
  655. 516 .loc 1 157 5
  656. 517 01c8 0122 movs r2, #1
  657. 518 01ca 1021 movs r1, #16
  658. 519 01cc 4FF09040 mov r0, #1207959552
  659. 520 01d0 FFF7FEFF bl HAL_GPIO_WritePin
  660. 158:user_src/soft_test.c **** led_purple = false;
  661. 521 .loc 1 158 16
  662. 522 01d4 204B ldr r3, .L20+4
  663. 523 01d6 0022 movs r2, #0
  664. 524 01d8 1A70 strb r2, [r3]
  665. 159:user_src/soft_test.c **** only_star_one_purple = false;
  666. 525 .loc 1 159 26
  667. 526 01da 254B ldr r3, .L20+28
  668. 527 01dc 0022 movs r2, #0
  669. 528 01de 1A70 strb r2, [r3]
  670. 529 .L16:
  671. 160:user_src/soft_test.c **** }
  672. 161:user_src/soft_test.c **** if ((HAL_GetTick() - led_time_blue >= 500) && led_blue == true)
  673. 530 .loc 1 161 8
  674. 531 01e0 FFF7FEFF bl HAL_GetTick
  675. 532 01e4 0246 mov r2, r0
  676. 533 .loc 1 161 22
  677. 534 01e6 284B ldr r3, .L20+52
  678. 535 01e8 1B68 ldr r3, [r3]
  679. 536 01ea D31A subs r3, r2, r3
  680. 537 .loc 1 161 6
  681. 538 01ec B3F5FA7F cmp r3, #500
  682. 539 01f0 0FD3 bcc .L17
  683. 540 .loc 1 161 58 discriminator 1
  684. 541 01f2 1A4B ldr r3, .L20+8
  685. 542 01f4 1B78 ldrb r3, [r3] @ zero_extendqisi2
  686. 543 .loc 1 161 46 discriminator 1
  687. 544 01f6 002B cmp r3, #0
  688. 545 01f8 0BD0 beq .L17
  689. 162:user_src/soft_test.c **** {
  690. 163:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED1_Pin, GPIO_PIN_SET);
  691. 546 .loc 1 163 5
  692. 547 01fa 0122 movs r2, #1
  693. 548 01fc 1021 movs r1, #16
  694. 549 01fe 4FF09040 mov r0, #1207959552
  695. 550 0202 FFF7FEFF bl HAL_GPIO_WritePin
  696. 164:user_src/soft_test.c **** led_blue = false;
  697. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 13
  698. 551 .loc 1 164 14
  699. 552 0206 154B ldr r3, .L20+8
  700. 553 0208 0022 movs r2, #0
  701. 554 020a 1A70 strb r2, [r3]
  702. 165:user_src/soft_test.c **** only_star_one_blue = false;
  703. 555 .loc 1 165 24
  704. 556 020c 194B ldr r3, .L20+32
  705. 557 020e 0022 movs r2, #0
  706. 558 0210 1A70 strb r2, [r3]
  707. 559 .L17:
  708. 166:user_src/soft_test.c **** }
  709. 167:user_src/soft_test.c **** if ((HAL_GetTick() - led_time_yellow >= 500) && led_yellow == true)
  710. 560 .loc 1 167 8
  711. 561 0212 FFF7FEFF bl HAL_GetTick
  712. 562 0216 0246 mov r2, r0
  713. 563 .loc 1 167 22
  714. 564 0218 1D4B ldr r3, .L20+60
  715. 565 021a 1B68 ldr r3, [r3]
  716. 566 021c D31A subs r3, r2, r3
  717. 567 .loc 1 167 6
  718. 568 021e B3F5FA7F cmp r3, #500
  719. 569 0222 15D3 bcc .L19
  720. 570 .loc 1 167 62 discriminator 1
  721. 571 0224 0E4B ldr r3, .L20+12
  722. 572 0226 1B78 ldrb r3, [r3] @ zero_extendqisi2
  723. 573 .loc 1 167 48 discriminator 1
  724. 574 0228 002B cmp r3, #0
  725. 575 022a 11D0 beq .L19
  726. 168:user_src/soft_test.c **** {
  727. 169:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED2_Pin, GPIO_PIN_SET);
  728. 576 .loc 1 169 5
  729. 577 022c 0122 movs r2, #1
  730. 578 022e 2021 movs r1, #32
  731. 579 0230 4FF09040 mov r0, #1207959552
  732. 580 0234 FFF7FEFF bl HAL_GPIO_WritePin
  733. 170:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED3_Pin, GPIO_PIN_SET);
  734. 581 .loc 1 170 5
  735. 582 0238 0122 movs r2, #1
  736. 583 023a 4021 movs r1, #64
  737. 584 023c 4FF09040 mov r0, #1207959552
  738. 585 0240 FFF7FEFF bl HAL_GPIO_WritePin
  739. 171:user_src/soft_test.c **** led_yellow = false;
  740. 586 .loc 1 171 16
  741. 587 0244 064B ldr r3, .L20+12
  742. 588 0246 0022 movs r2, #0
  743. 589 0248 1A70 strb r2, [r3]
  744. 172:user_src/soft_test.c **** only_star_one_yellow = false;
  745. 590 .loc 1 172 26
  746. 591 024a 0B4B ldr r3, .L20+36
  747. 592 024c 0022 movs r2, #0
  748. 593 024e 1A70 strb r2, [r3]
  749. 594 .L19:
  750. 173:user_src/soft_test.c **** }
  751. 174:user_src/soft_test.c **** //ttest_func();
  752. 175:user_src/soft_test.c ****
  753. 176:user_src/soft_test.c **** }
  754. 595 .loc 1 176 1
  755. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 14
  756. 596 0250 00BF nop
  757. 597 0252 80BD pop {r7, pc}
  758. 598 .L21:
  759. 599 .align 2
  760. 600 .L20:
  761. 601 0254 00000000 .word led_green
  762. 602 0258 00000000 .word led_purple
  763. 603 025c 00000000 .word led_blue
  764. 604 0260 00000000 .word led_yellow
  765. 605 0264 00000000 .word no_led_star
  766. 606 0268 00000000 .word led_time_green
  767. 607 026c 00000000 .word only_star_one_green
  768. 608 0270 00000000 .word only_star_one_purple
  769. 609 0274 00000000 .word only_star_one_blue
  770. 610 0278 00000000 .word only_star_one_yellow
  771. 611 027c 00000000 .word terrain_is_link
  772. 612 0280 00000000 .word led_time_purple
  773. 613 0284 00000000 .word obs_f_is_link
  774. 614 0288 00000000 .word led_time_blue
  775. 615 028c 00000000 .word obs_b_is_link
  776. 616 0290 00000000 .word led_time_yellow
  777. 617 .cfi_endproc
  778. 618 .LFE135:
  779. 620 .global recv_vk_protocol
  780. 621 .section .bss.recv_vk_protocol,"aw",%nobits
  781. 622 .align 2
  782. 625 recv_vk_protocol:
  783. 626 0000 00000000 .space 1024
  784. 626 00000000
  785. 626 00000000
  786. 626 00000000
  787. 626 00000000
  788. 627 .global candebug_protocol
  789. 628 .section .bss.candebug_protocol,"aw",%nobits
  790. 629 .align 2
  791. 632 candebug_protocol:
  792. 633 0000 00000000 .space 512
  793. 633 00000000
  794. 633 00000000
  795. 633 00000000
  796. 633 00000000
  797. 634 .global send_uart_buffer
  798. 635 .section .bss.send_uart_buffer,"aw",%nobits
  799. 636 .align 2
  800. 639 send_uart_buffer:
  801. 640 0000 00000000 .space 2048
  802. 640 00000000
  803. 640 00000000
  804. 640 00000000
  805. 640 00000000
  806. 641 .section .rodata
  807. 642 .align 2
  808. 643 .LC0:
  809. 644 0000 766B00 .ascii "vk\000"
  810. 645 .section .text.user_init,"ax",%progbits
  811. 646 .align 1
  812. 647 .global user_init
  813. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 15
  814. 648 .syntax unified
  815. 649 .thumb
  816. 650 .thumb_func
  817. 652 user_init:
  818. 653 .LFB136:
  819. 177:user_src/soft_test.c ****
  820. 178:user_src/soft_test.c **** /**
  821. 179:user_src/soft_test.c **** * @file user_init
  822. 180:user_src/soft_test.c **** * @brief �始化�数
  823. 181:user_src/soft_test.c **** * @param None
  824. 182:user_src/soft_test.c **** * @details 串� can� pwm rkfifo flash读�
  825. 183:user_src/soft_test.c **** * @author Zhang Sir
  826. 184:user_src/soft_test.c **** **/
  827. 185:user_src/soft_test.c **** uint8_t recv_vk_protocol[MAX_UART_BUF * 4] = {0};
  828. 186:user_src/soft_test.c **** uint8_t candebug_protocol[MAX_UART_BUF * 2] = {0};
  829. 187:user_src/soft_test.c **** uint8_t send_uart_buffer[ MAX_UART_BUF * 8 ] = {0};
  830. 188:user_src/soft_test.c **** void user_init(void)
  831. 189:user_src/soft_test.c **** {
  832. 654 .loc 1 189 1
  833. 655 .cfi_startproc
  834. 656 @ args = 0, pretend = 0, frame = 0
  835. 657 @ frame_needed = 1, uses_anonymous_args = 0
  836. 658 0000 80B5 push {r7, lr}
  837. 659 .LCFI11:
  838. 660 .cfi_def_cfa_offset 8
  839. 661 .cfi_offset 7, -8
  840. 662 .cfi_offset 14, -4
  841. 663 0002 88B0 sub sp, sp, #32
  842. 664 .LCFI12:
  843. 665 .cfi_def_cfa_offset 40
  844. 666 0004 08AF add r7, sp, #32
  845. 667 .LCFI13:
  846. 668 .cfi_def_cfa 7, 8
  847. 190:user_src/soft_test.c **** //can pwm uart �始化
  848. 191:user_src/soft_test.c **** can_start_init();
  849. 669 .loc 1 191 3
  850. 670 0006 FFF7FEFF bl can_start_init
  851. 192:user_src/soft_test.c ****
  852. 193:user_src/soft_test.c **** UART_Init();
  853. 671 .loc 1 193 3
  854. 672 000a FFF7FEFF bl UART_Init
  855. 194:user_src/soft_test.c ****
  856. 195:user_src/soft_test.c **** pwm_init();
  857. 673 .loc 1 195 3
  858. 674 000e FFF7FEFF bl pwm_init
  859. 196:user_src/soft_test.c ****
  860. 197:user_src/soft_test.c **** //PVD_Config();
  861. 198:user_src/soft_test.c ****
  862. 199:user_src/soft_test.c **** //上电读内存�数
  863. 200:user_src/soft_test.c **** flash_read_funcktion();
  864. 675 .loc 1 200 3
  865. 676 0012 FFF7FEFF bl flash_read_funcktion
  866. 201:user_src/soft_test.c ****
  867. 202:user_src/soft_test.c **** //上电亮绿�
  868. 203:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOA, LED3_Pin, GPIO_PIN_RESET);
  869. 677 .loc 1 203 3
  870. 678 0016 0022 movs r2, #0
  871. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 16
  872. 679 0018 4021 movs r1, #64
  873. 680 001a 4FF09040 mov r0, #1207959552
  874. 681 001e FFF7FEFF bl HAL_GPIO_WritePin
  875. 204:user_src/soft_test.c **** HAL_GPIO_WritePin(GPIOB, GPIO_PIN_14, GPIO_PIN_SET); //使能PWM
  876. 682 .loc 1 204 3
  877. 683 0022 0122 movs r2, #1
  878. 684 0024 4FF48041 mov r1, #16384
  879. 685 0028 5748 ldr r0, .L47
  880. 686 002a FFF7FEFF bl HAL_GPIO_WritePin
  881. 205:user_src/soft_test.c ****
  882. 206:user_src/soft_test.c **** //�始化缓存区
  883. 207:user_src/soft_test.c **** rkfifo_init(&recv_rkfifo, recv_vk_protocol, sizeof(recv_vk_protocol), 1);
  884. 687 .loc 1 207 3
  885. 688 002e 0123 movs r3, #1
  886. 689 0030 4FF48062 mov r2, #1024
  887. 690 0034 5549 ldr r1, .L47+4
  888. 691 0036 5648 ldr r0, .L47+8
  889. 692 0038 FFF7FEFF bl rkfifo_init
  890. 208:user_src/soft_test.c **** rkfifo_init(&candebug_rkfifo, candebug_protocol, sizeof(candebug_protocol), 1);
  891. 693 .loc 1 208 3
  892. 694 003c 0123 movs r3, #1
  893. 695 003e 4FF40072 mov r2, #512
  894. 696 0042 5449 ldr r1, .L47+12
  895. 697 0044 5448 ldr r0, .L47+16
  896. 698 0046 FFF7FEFF bl rkfifo_init
  897. 209:user_src/soft_test.c **** rkfifo_init(&send_uart_rkfifo, send_uart_buffer, sizeof(send_uart_buffer), 1);
  898. 699 .loc 1 209 3
  899. 700 004a 0123 movs r3, #1
  900. 701 004c 4FF40062 mov r2, #2048
  901. 702 0050 5249 ldr r1, .L47+20
  902. 703 0052 5348 ldr r0, .L47+24
  903. 704 0054 FFF7FEFF bl rkfifo_init
  904. 210:user_src/soft_test.c ****
  905. 211:user_src/soft_test.c **** //注册PMU
  906. 212:user_src/soft_test.c **** Int2String(current_pmu_par.SN,dev_pmu.sn,9);
  907. 705 .loc 1 212 3
  908. 706 0058 524B ldr r3, .L47+28
  909. 707 005a 9B68 ldr r3, [r3, #8]
  910. 708 005c 0922 movs r2, #9
  911. 709 005e 5249 ldr r1, .L47+32
  912. 710 0060 1846 mov r0, r3
  913. 711 0062 FFF7FEFF bl Int2String
  914. 213:user_src/soft_test.c **** Int2String(APP_VERSION,dev_pmu.soft_serial,6);
  915. 712 .loc 1 213 14
  916. 713 0066 3223 movs r3, #50
  917. 714 0068 A3F13002 sub r2, r3, #48
  918. 715 006c 1346 mov r3, r2
  919. 716 006e 9B00 lsls r3, r3, #2
  920. 717 0070 1344 add r3, r3, r2
  921. 718 0072 5B00 lsls r3, r3, #1
  922. 719 0074 1A46 mov r2, r3
  923. 720 0076 3023 movs r3, #48
  924. 721 0078 303B subs r3, r3, #48
  925. 722 007a 1A44 add r2, r2, r3
  926. 723 007c 1346 mov r3, r2
  927. 724 007e 9B00 lsls r3, r3, #2
  928. 725 0080 1344 add r3, r3, r2
  929. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 17
  930. 726 0082 5B00 lsls r3, r3, #1
  931. 727 0084 1A46 mov r2, r3
  932. 728 0086 3223 movs r3, #50
  933. 729 0088 303B subs r3, r3, #48
  934. 730 008a 1A44 add r2, r2, r3
  935. 731 008c 1346 mov r3, r2
  936. 732 008e 9B00 lsls r3, r3, #2
  937. 733 0090 1344 add r3, r3, r2
  938. 734 0092 5B00 lsls r3, r3, #1
  939. 735 0094 1A46 mov r2, r3
  940. 736 0096 3523 movs r3, #53
  941. 737 0098 303B subs r3, r3, #48
  942. 738 009a 1344 add r3, r3, r2
  943. 739 009c A3F5FA63 sub r3, r3, #2000
  944. 740 00a0 42F21072 movw r2, #10000
  945. 741 00a4 03FB02F2 mul r2, r3, r2
  946. 742 00a8 7623 movs r3, #118
  947. 743 00aa 6E2B cmp r3, #110
  948. 744 00ac 07D1 bne .L23
  949. 745 .loc 1 213 14 is_stmt 0 discriminator 1
  950. 746 00ae 6F23 movs r3, #111
  951. 747 00b0 612B cmp r3, #97
  952. 748 00b2 01D1 bne .L24
  953. 749 .loc 1 213 14 discriminator 3
  954. 750 00b4 6423 movs r3, #100
  955. 751 00b6 39E0 b .L26
  956. 752 .L24:
  957. 753 .loc 1 213 14 discriminator 4
  958. 754 00b8 4FF41673 mov r3, #600
  959. 755 00bc 36E0 b .L26
  960. 756 .L23:
  961. 757 .loc 1 213 14 discriminator 2
  962. 758 00be 7623 movs r3, #118
  963. 759 00c0 622B cmp r3, #98
  964. 760 00c2 32D0 beq .L27
  965. 761 .loc 1 213 14 discriminator 8
  966. 762 00c4 7623 movs r3, #118
  967. 763 00c6 722B cmp r3, #114
  968. 764 00c8 08D1 bne .L28
  969. 765 .loc 1 213 14 discriminator 10
  970. 766 00ca 4E23 movs r3, #78
  971. 767 00cc 4D2B cmp r3, #77
  972. 768 00ce 02D1 bne .L29
  973. 769 .loc 1 213 14 discriminator 12
  974. 770 00d0 4FF49673 mov r3, #300
  975. 771 00d4 2AE0 b .L26
  976. 772 .L29:
  977. 773 .loc 1 213 14 discriminator 13
  978. 774 00d6 4FF4C873 mov r3, #400
  979. 775 00da 27E0 b .L26
  980. 776 .L28:
  981. 777 .loc 1 213 14 discriminator 11
  982. 778 00dc 7623 movs r3, #118
  983. 779 00de 792B cmp r3, #121
  984. 780 00e0 20D0 beq .L32
  985. 781 .loc 1 213 14 discriminator 17
  986. 782 00e2 7623 movs r3, #118
  987. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 18
  988. 783 00e4 6C2B cmp r3, #108
  989. 784 00e6 1AD0 beq .L33
  990. 785 .loc 1 213 14 discriminator 19
  991. 786 00e8 7623 movs r3, #118
  992. 787 00ea 672B cmp r3, #103
  993. 788 00ec 14D0 beq .L34
  994. 789 .loc 1 213 14 discriminator 21
  995. 790 00ee 7623 movs r3, #118
  996. 791 00f0 702B cmp r3, #112
  997. 792 00f2 0ED0 beq .L35
  998. 793 .loc 1 213 14 discriminator 23
  999. 794 00f4 7623 movs r3, #118
  1000. 795 00f6 742B cmp r3, #116
  1001. 796 00f8 08D0 beq .L36
  1002. 797 .loc 1 213 14 discriminator 25
  1003. 798 00fa 7623 movs r3, #118
  1004. 799 00fc 762B cmp r3, #118
  1005. 800 00fe 02D1 bne .L37
  1006. 801 .loc 1 213 14 discriminator 27
  1007. 802 0100 40F24C43 movw r3, #1100
  1008. 803 0104 12E0 b .L26
  1009. 804 .L37:
  1010. 805 .loc 1 213 14 discriminator 28
  1011. 806 0106 4FF49663 mov r3, #1200
  1012. 807 010a 0FE0 b .L26
  1013. 808 .L36:
  1014. 809 .loc 1 213 14 discriminator 26
  1015. 810 010c 4FF47A73 mov r3, #1000
  1016. 811 0110 0CE0 b .L26
  1017. 812 .L35:
  1018. 813 .loc 1 213 14 discriminator 24
  1019. 814 0112 4FF46173 mov r3, #900
  1020. 815 0116 09E0 b .L26
  1021. 816 .L34:
  1022. 817 .loc 1 213 14 discriminator 22
  1023. 818 0118 4FF44873 mov r3, #800
  1024. 819 011c 06E0 b .L26
  1025. 820 .L33:
  1026. 821 .loc 1 213 14 discriminator 20
  1027. 822 011e 4FF42F73 mov r3, #700
  1028. 823 0122 03E0 b .L26
  1029. 824 .L32:
  1030. 825 .loc 1 213 14 discriminator 18
  1031. 826 0124 4FF4FA73 mov r3, #500
  1032. 827 0128 00E0 b .L26
  1033. 828 .L27:
  1034. 829 .loc 1 213 14 discriminator 9
  1035. 830 012a C823 movs r3, #200
  1036. 831 .L26:
  1037. 832 .loc 1 213 14 discriminator 44
  1038. 833 012c 9918 adds r1, r3, r2
  1039. 834 012e 3123 movs r3, #49
  1040. 835 0130 202B cmp r3, #32
  1041. 836 0132 08D0 beq .L45
  1042. 837 .loc 1 213 14 discriminator 45
  1043. 838 0134 3123 movs r3, #49
  1044. 839 0136 A3F13002 sub r2, r3, #48
  1045. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 19
  1046. 840 013a 1346 mov r3, r2
  1047. 841 013c 9B00 lsls r3, r3, #2
  1048. 842 013e 1344 add r3, r3, r2
  1049. 843 0140 5B00 lsls r3, r3, #1
  1050. 844 0142 1A46 mov r2, r3
  1051. 845 0144 00E0 b .L46
  1052. 846 .L45:
  1053. 847 .loc 1 213 14 discriminator 46
  1054. 848 0146 0022 movs r2, #0
  1055. 849 .L46:
  1056. 850 .loc 1 213 14 discriminator 48
  1057. 851 0148 3223 movs r3, #50
  1058. 852 014a 303B subs r3, r3, #48
  1059. 853 014c 1344 add r3, r3, r2
  1060. 854 .loc 1 213 3 is_stmt 1 discriminator 48
  1061. 855 014e 0B44 add r3, r3, r1
  1062. 856 0150 0622 movs r2, #6
  1063. 857 0152 1649 ldr r1, .L47+36
  1064. 858 0154 1846 mov r0, r3
  1065. 859 0156 FFF7FEFF bl Int2String
  1066. 214:user_src/soft_test.c **** regist_dev_info(&dev_pmu,DEVICE_PMU,false,dev_pmu.sn,9,dev_pmu.soft_serial,6,NULL,0,"vk",3);
  1067. 860 .loc 1 214 3 discriminator 48
  1068. 861 015a 0323 movs r3, #3
  1069. 862 015c 0693 str r3, [sp, #24]
  1070. 863 015e 144B ldr r3, .L47+40
  1071. 864 0160 0593 str r3, [sp, #20]
  1072. 865 0162 0023 movs r3, #0
  1073. 866 0164 0493 str r3, [sp, #16]
  1074. 867 0166 0023 movs r3, #0
  1075. 868 0168 0393 str r3, [sp, #12]
  1076. 869 016a 0623 movs r3, #6
  1077. 870 016c 0293 str r3, [sp, #8]
  1078. 871 016e 0F4B ldr r3, .L47+36
  1079. 872 0170 0193 str r3, [sp, #4]
  1080. 873 0172 0923 movs r3, #9
  1081. 874 0174 0093 str r3, [sp]
  1082. 875 0176 0C4B ldr r3, .L47+32
  1083. 876 0178 0022 movs r2, #0
  1084. 877 017a 0321 movs r1, #3
  1085. 878 017c 0D48 ldr r0, .L47+44
  1086. 879 017e FFF7FEFF bl regist_dev_info
  1087. 215:user_src/soft_test.c **** }
  1088. 880 .loc 1 215 1 discriminator 48
  1089. 881 0182 00BF nop
  1090. 882 0184 BD46 mov sp, r7
  1091. 883 .LCFI14:
  1092. 884 .cfi_def_cfa_register 13
  1093. 885 @ sp needed
  1094. 886 0186 80BD pop {r7, pc}
  1095. 887 .L48:
  1096. 888 .align 2
  1097. 889 .L47:
  1098. 890 0188 00040048 .word 1207960576
  1099. 891 018c 00000000 .word recv_vk_protocol
  1100. 892 0190 00000000 .word recv_rkfifo
  1101. 893 0194 00000000 .word candebug_protocol
  1102. 894 0198 00000000 .word candebug_rkfifo
  1103. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 20
  1104. 895 019c 00000000 .word send_uart_buffer
  1105. 896 01a0 00000000 .word send_uart_rkfifo
  1106. 897 01a4 00000000 .word current_pmu_par
  1107. 898 01a8 03000000 .word dev_pmu+3
  1108. 899 01ac 23000000 .word dev_pmu+35
  1109. 900 01b0 00000000 .word .LC0
  1110. 901 01b4 00000000 .word dev_pmu
  1111. 902 .cfi_endproc
  1112. 903 .LFE136:
  1113. 905 .section .text.isLeapYear,"ax",%progbits
  1114. 906 .align 1
  1115. 907 .global isLeapYear
  1116. 908 .syntax unified
  1117. 909 .thumb
  1118. 910 .thumb_func
  1119. 912 isLeapYear:
  1120. 913 .LFB137:
  1121. 216:user_src/soft_test.c ****
  1122. 217:user_src/soft_test.c **** uint8_t isLeapYear(uint16_t year)
  1123. 218:user_src/soft_test.c **** {
  1124. 914 .loc 1 218 1
  1125. 915 .cfi_startproc
  1126. 916 @ args = 0, pretend = 0, frame = 16
  1127. 917 @ frame_needed = 1, uses_anonymous_args = 0
  1128. 918 @ link register save eliminated.
  1129. 919 0000 80B4 push {r7}
  1130. 920 .LCFI15:
  1131. 921 .cfi_def_cfa_offset 4
  1132. 922 .cfi_offset 7, -4
  1133. 923 0002 85B0 sub sp, sp, #20
  1134. 924 .LCFI16:
  1135. 925 .cfi_def_cfa_offset 24
  1136. 926 0004 00AF add r7, sp, #0
  1137. 927 .LCFI17:
  1138. 928 .cfi_def_cfa_register 7
  1139. 929 0006 0346 mov r3, r0
  1140. 930 0008 FB80 strh r3, [r7, #6] @ movhi
  1141. 219:user_src/soft_test.c **** uint8_t res=0;
  1142. 931 .loc 1 219 13
  1143. 932 000a 0023 movs r3, #0
  1144. 933 000c FB73 strb r3, [r7, #15]
  1145. 220:user_src/soft_test.c ****
  1146. 221:user_src/soft_test.c **** if(year%4 == 0) // 能够被4整除
  1147. 934 .loc 1 221 15
  1148. 935 000e FB88 ldrh r3, [r7, #6] @ movhi
  1149. 936 0010 03F00303 and r3, r3, #3
  1150. 937 0014 9BB2 uxth r3, r3
  1151. 938 .loc 1 221 7
  1152. 939 0016 002B cmp r3, #0
  1153. 940 0018 1DD1 bne .L50
  1154. 222:user_src/soft_test.c **** {
  1155. 223:user_src/soft_test.c **** if(year%100 != 0 || year%400 == 0) //能被4整除ä¸�能被100整除或者能够被400æ•´é
  1156. 941 .loc 1 223 21
  1157. 942 001a FB88 ldrh r3, [r7, #6]
  1158. 943 001c 114A ldr r2, .L54
  1159. 944 001e A2FB0312 umull r1, r2, r2, r3
  1160. 945 0022 5209 lsrs r2, r2, #5
  1161. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 21
  1162. 946 0024 6421 movs r1, #100
  1163. 947 0026 01FB02F2 mul r2, r1, r2
  1164. 948 002a 9B1A subs r3, r3, r2
  1165. 949 002c 9BB2 uxth r3, r3
  1166. 950 .loc 1 223 11
  1167. 951 002e 002B cmp r3, #0
  1168. 952 0030 0CD1 bne .L51
  1169. 953 .loc 1 223 38 discriminator 1
  1170. 954 0032 FB88 ldrh r3, [r7, #6]
  1171. 955 0034 0B4A ldr r2, .L54
  1172. 956 0036 A2FB0312 umull r1, r2, r2, r3
  1173. 957 003a D209 lsrs r2, r2, #7
  1174. 958 003c 4FF4C871 mov r1, #400
  1175. 959 0040 01FB02F2 mul r2, r1, r2
  1176. 960 0044 9B1A subs r3, r3, r2
  1177. 961 0046 9BB2 uxth r3, r3
  1178. 962 .loc 1 223 26 discriminator 1
  1179. 963 0048 002B cmp r3, #0
  1180. 964 004a 02D1 bne .L52
  1181. 965 .L51:
  1182. 224:user_src/soft_test.c **** {
  1183. 225:user_src/soft_test.c **** res = 1;
  1184. 966 .loc 1 225 17
  1185. 967 004c 0123 movs r3, #1
  1186. 968 004e FB73 strb r3, [r7, #15]
  1187. 969 0050 01E0 b .L50
  1188. 970 .L52:
  1189. 226:user_src/soft_test.c **** }
  1190. 227:user_src/soft_test.c **** else
  1191. 228:user_src/soft_test.c **** {
  1192. 229:user_src/soft_test.c **** res =0;
  1193. 971 .loc 1 229 17
  1194. 972 0052 0023 movs r3, #0
  1195. 973 0054 FB73 strb r3, [r7, #15]
  1196. 974 .L50:
  1197. 230:user_src/soft_test.c **** }
  1198. 231:user_src/soft_test.c **** }
  1199. 232:user_src/soft_test.c **** return res;
  1200. 975 .loc 1 232 12
  1201. 976 0056 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2
  1202. 233:user_src/soft_test.c **** }
  1203. 977 .loc 1 233 1
  1204. 978 0058 1846 mov r0, r3
  1205. 979 005a 1437 adds r7, r7, #20
  1206. 980 .LCFI18:
  1207. 981 .cfi_def_cfa_offset 4
  1208. 982 005c BD46 mov sp, r7
  1209. 983 .LCFI19:
  1210. 984 .cfi_def_cfa_register 13
  1211. 985 @ sp needed
  1212. 986 005e 5DF8047B ldr r7, [sp], #4
  1213. 987 .LCFI20:
  1214. 988 .cfi_restore 7
  1215. 989 .cfi_def_cfa_offset 0
  1216. 990 0062 7047 bx lr
  1217. 991 .L55:
  1218. 992 .align 2
  1219. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 22
  1220. 993 .L54:
  1221. 994 0064 1F85EB51 .word 1374389535
  1222. 995 .cfi_endproc
  1223. 996 .LFE137:
  1224. 998 .global beijing_time
  1225. 999 .section .bss.beijing_time,"aw",%nobits
  1226. 1000 .align 2
  1227. 1003 beijing_time:
  1228. 1004 0000 00000000 .space 8
  1229. 1004 00000000
  1230. 1005 .section .text.covUnixTimeStp2Beijing,"ax",%progbits
  1231. 1006 .align 1
  1232. 1007 .global covUnixTimeStp2Beijing
  1233. 1008 .syntax unified
  1234. 1009 .thumb
  1235. 1010 .thumb_func
  1236. 1012 covUnixTimeStp2Beijing:
  1237. 1013 .LFB138:
  1238. 234:user_src/soft_test.c **** // 将Unix时间戳转�为北京时间
  1239. 235:user_src/soft_test.c **** // unixTime: 需�判断的Unix时间戳
  1240. 236:user_src/soft_test.c **** // *tempBeijing:返回的北京时间
  1241. 237:user_src/soft_test.c **** // return:none
  1242. 238:user_src/soft_test.c **** // note:没对输入�数正确性�判断
  1243. 239:user_src/soft_test.c **** rtc_time_t beijing_time;
  1244. 240:user_src/soft_test.c **** void covUnixTimeStp2Beijing( uint32_t unixTime, rtc_time_t *tempBeijing )
  1245. 241:user_src/soft_test.c **** {
  1246. 1014 .loc 1 241 1
  1247. 1015 .cfi_startproc
  1248. 1016 @ args = 0, pretend = 0, frame = 24
  1249. 1017 @ frame_needed = 1, uses_anonymous_args = 0
  1250. 1018 0000 80B5 push {r7, lr}
  1251. 1019 .LCFI21:
  1252. 1020 .cfi_def_cfa_offset 8
  1253. 1021 .cfi_offset 7, -8
  1254. 1022 .cfi_offset 14, -4
  1255. 1023 0002 86B0 sub sp, sp, #24
  1256. 1024 .LCFI22:
  1257. 1025 .cfi_def_cfa_offset 32
  1258. 1026 0004 00AF add r7, sp, #0
  1259. 1027 .LCFI23:
  1260. 1028 .cfi_def_cfa_register 7
  1261. 1029 0006 7860 str r0, [r7, #4]
  1262. 1030 0008 3960 str r1, [r7]
  1263. 242:user_src/soft_test.c **** uint32_t totleDayNum = 0, totleSecNum = 0;
  1264. 1031 .loc 1 242 14
  1265. 1032 000a 0023 movs r3, #0
  1266. 1033 000c 3B61 str r3, [r7, #16]
  1267. 1034 .loc 1 242 31
  1268. 1035 000e 0023 movs r3, #0
  1269. 1036 0010 FB60 str r3, [r7, #12]
  1270. 243:user_src/soft_test.c **** uint16_t remainDayofYear = 0, tempYear = 0;
  1271. 1037 .loc 1 243 14
  1272. 1038 0012 0023 movs r3, #0
  1273. 1039 0014 FB82 strh r3, [r7, #22] @ movhi
  1274. 1040 .loc 1 243 35
  1275. 1041 0016 0023 movs r3, #0
  1276. 1042 0018 BB82 strh r3, [r7, #20] @ movhi
  1277. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 23
  1278. 244:user_src/soft_test.c **** uint8_t *pr = NULL;
  1279. 1043 .loc 1 244 14
  1280. 1044 001a 0023 movs r3, #0
  1281. 1045 001c BB60 str r3, [r7, #8]
  1282. 245:user_src/soft_test.c **** static uint8_t month_day[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; //平年
  1283. 246:user_src/soft_test.c **** static uint8_t Leap_month_day[12] = {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; //é—°å¹´
  1284. 247:user_src/soft_test.c ****
  1285. 248:user_src/soft_test.c ****
  1286. 249:user_src/soft_test.c **** totleDayNum = unixTime / ( 24 * 60 * 60 ); //总天数(注�加括�)
  1287. 1046 .loc 1 249 17
  1288. 1047 001e 7B68 ldr r3, [r7, #4]
  1289. 1048 0020 694A ldr r2, .L68
  1290. 1049 0022 A2FB0323 umull r2, r3, r2, r3
  1291. 1050 0026 1B0C lsrs r3, r3, #16
  1292. 1051 0028 3B61 str r3, [r7, #16]
  1293. 250:user_src/soft_test.c **** totleSecNum = unixTime % ( 24 * 60 * 60 ); //当天剩余的秒速
  1294. 1052 .loc 1 250 17
  1295. 1053 002a 7B68 ldr r3, [r7, #4]
  1296. 1054 002c 664A ldr r2, .L68
  1297. 1055 002e A2FB0312 umull r1, r2, r2, r3
  1298. 1056 0032 120C lsrs r2, r2, #16
  1299. 1057 0034 6549 ldr r1, .L68+4
  1300. 1058 0036 01FB02F2 mul r2, r1, r2
  1301. 1059 003a 9B1A subs r3, r3, r2
  1302. 1060 003c FB60 str r3, [r7, #12]
  1303. 251:user_src/soft_test.c ****
  1304. 252:user_src/soft_test.c **** memset( tempBeijing, 0x00, sizeof( rtc_time_t ) );
  1305. 1061 .loc 1 252 5
  1306. 1062 003e 0822 movs r2, #8
  1307. 1063 0040 0021 movs r1, #0
  1308. 1064 0042 3868 ldr r0, [r7]
  1309. 1065 0044 FFF7FEFF bl memset
  1310. 253:user_src/soft_test.c ****
  1311. 254:user_src/soft_test.c **** // 1.先计算时间 HH:MM:SS
  1312. 255:user_src/soft_test.c **** tempBeijing->ui8Hour = totleSecNum / 3600;
  1313. 1066 .loc 1 255 40
  1314. 1067 0048 FB68 ldr r3, [r7, #12]
  1315. 1068 004a 614A ldr r2, .L68+8
  1316. 1069 004c A2FB0323 umull r2, r3, r2, r3
  1317. 1070 0050 DB0A lsrs r3, r3, #11
  1318. 1071 .loc 1 255 26
  1319. 1072 0052 DAB2 uxtb r2, r3
  1320. 1073 0054 3B68 ldr r3, [r7]
  1321. 1074 0056 5A71 strb r2, [r3, #5]
  1322. 256:user_src/soft_test.c **** tempBeijing->ui8Minute = ( totleSecNum % 3600 ) / 60; //error:���错
  1323. 1075 .loc 1 256 44
  1324. 1076 0058 FA68 ldr r2, [r7, #12]
  1325. 1077 005a 5D4B ldr r3, .L68+8
  1326. 1078 005c A3FB0213 umull r1, r3, r3, r2
  1327. 1079 0060 DB0A lsrs r3, r3, #11
  1328. 1080 0062 4FF46161 mov r1, #3600
  1329. 1081 0066 01FB03F3 mul r3, r1, r3
  1330. 1082 006a D31A subs r3, r2, r3
  1331. 1083 .loc 1 256 53
  1332. 1084 006c 594A ldr r2, .L68+12
  1333. 1085 006e A2FB0323 umull r2, r3, r2, r3
  1334. 1086 0072 5B09 lsrs r3, r3, #5
  1335. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 24
  1336. 1087 .loc 1 256 28
  1337. 1088 0074 DAB2 uxtb r2, r3
  1338. 1089 0076 3B68 ldr r3, [r7]
  1339. 1090 0078 9A71 strb r2, [r3, #6]
  1340. 257:user_src/soft_test.c **** tempBeijing->ui8Second = ( totleSecNum % 3600 ) % 60;
  1341. 1091 .loc 1 257 44
  1342. 1092 007a FB68 ldr r3, [r7, #12]
  1343. 1093 007c 544A ldr r2, .L68+8
  1344. 1094 007e A2FB0312 umull r1, r2, r2, r3
  1345. 1095 0082 D20A lsrs r2, r2, #11
  1346. 1096 0084 4FF46161 mov r1, #3600
  1347. 1097 0088 01FB02F2 mul r2, r1, r2
  1348. 1098 008c 9A1A subs r2, r3, r2
  1349. 1099 .loc 1 257 53
  1350. 1100 008e 514B ldr r3, .L68+12
  1351. 1101 0090 A3FB0213 umull r1, r3, r3, r2
  1352. 1102 0094 5909 lsrs r1, r3, #5
  1353. 1103 0096 0B46 mov r3, r1
  1354. 1104 0098 1B01 lsls r3, r3, #4
  1355. 1105 009a 5B1A subs r3, r3, r1
  1356. 1106 009c 9B00 lsls r3, r3, #2
  1357. 1107 009e D11A subs r1, r2, r3
  1358. 1108 .loc 1 257 28
  1359. 1109 00a0 CAB2 uxtb r2, r1
  1360. 1110 00a2 3B68 ldr r3, [r7]
  1361. 1111 00a4 DA71 strb r2, [r3, #7]
  1362. 258:user_src/soft_test.c ****
  1363. 259:user_src/soft_test.c **** // 2.对时间进行时区调整(注�:这里�能造�日期 +1)
  1364. 260:user_src/soft_test.c **** tempBeijing->ui8Hour += TIMEZONE;
  1365. 1112 .loc 1 260 26
  1366. 1113 00a6 3B68 ldr r3, [r7]
  1367. 1114 00a8 5B79 ldrb r3, [r3, #5] @ zero_extendqisi2
  1368. 1115 00aa 0833 adds r3, r3, #8
  1369. 1116 00ac DAB2 uxtb r2, r3
  1370. 1117 00ae 3B68 ldr r3, [r7]
  1371. 1118 00b0 5A71 strb r2, [r3, #5]
  1372. 261:user_src/soft_test.c **** if ( tempBeijing->ui8Hour > 23 )
  1373. 1119 .loc 1 261 21
  1374. 1120 00b2 3B68 ldr r3, [r7]
  1375. 1121 00b4 5B79 ldrb r3, [r3, #5] @ zero_extendqisi2
  1376. 1122 .loc 1 261 8
  1377. 1123 00b6 172B cmp r3, #23
  1378. 1124 00b8 08D9 bls .L57
  1379. 262:user_src/soft_test.c **** {
  1380. 263:user_src/soft_test.c **** //printf("modify day..\n");
  1381. 264:user_src/soft_test.c **** tempBeijing->ui8Hour -= 24;
  1382. 1125 .loc 1 264 30
  1383. 1126 00ba 3B68 ldr r3, [r7]
  1384. 1127 00bc 5B79 ldrb r3, [r3, #5] @ zero_extendqisi2
  1385. 1128 00be 183B subs r3, r3, #24
  1386. 1129 00c0 DAB2 uxtb r2, r3
  1387. 1130 00c2 3B68 ldr r3, [r7]
  1388. 1131 00c4 5A71 strb r2, [r3, #5]
  1389. 265:user_src/soft_test.c **** remainDayofYear++; // 日期+1
  1390. 1132 .loc 1 265 24
  1391. 1133 00c6 FB8A ldrh r3, [r7, #22]
  1392. 1134 00c8 0133 adds r3, r3, #1
  1393. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 25
  1394. 1135 00ca FB82 strh r3, [r7, #22] @ movhi
  1395. 1136 .L57:
  1396. 266:user_src/soft_test.c **** }
  1397. 267:user_src/soft_test.c ****
  1398. 268:user_src/soft_test.c **** // 3.计算哪一年
  1399. 269:user_src/soft_test.c **** tempBeijing->ui8Year = 1970 + ( totleDayNum / FOURYEARDAY ) * 4; // 4年为一个周期
  1400. 1137 .loc 1 269 49
  1401. 1138 00cc 3B69 ldr r3, [r7, #16]
  1402. 1139 00ce 424A ldr r2, .L68+16
  1403. 1140 00d0 A2FB0323 umull r2, r3, r2, r3
  1404. 1141 00d4 DB09 lsrs r3, r3, #7
  1405. 1142 .loc 1 269 33
  1406. 1143 00d6 9BB2 uxth r3, r3
  1407. 1144 00d8 9B00 lsls r3, r3, #2
  1408. 1145 00da 9BB2 uxth r3, r3
  1409. 1146 00dc 03F2B273 addw r3, r3, #1970
  1410. 1147 00e0 9AB2 uxth r2, r3
  1411. 1148 .loc 1 269 26
  1412. 1149 00e2 3B68 ldr r3, [r7]
  1413. 1150 00e4 1A80 strh r2, [r3] @ movhi
  1414. 270:user_src/soft_test.c **** remainDayofYear += totleDayNum % FOURYEARDAY;
  1415. 1151 .loc 1 270 36
  1416. 1152 00e6 3A69 ldr r2, [r7, #16]
  1417. 1153 00e8 3B4B ldr r3, .L68+16
  1418. 1154 00ea A3FB0213 umull r1, r3, r3, r2
  1419. 1155 00ee DB09 lsrs r3, r3, #7
  1420. 1156 00f0 40F2B551 movw r1, #1461
  1421. 1157 00f4 01FB03F3 mul r3, r1, r3
  1422. 1158 00f8 D31A subs r3, r2, r3
  1423. 1159 .loc 1 270 21
  1424. 1160 00fa 9AB2 uxth r2, r3
  1425. 1161 00fc FB8A ldrh r3, [r7, #22] @ movhi
  1426. 1162 00fe 1344 add r3, r3, r2
  1427. 1163 0100 FB82 strh r3, [r7, #22] @ movhi
  1428. 271:user_src/soft_test.c ****
  1429. 272:user_src/soft_test.c **** //printf("year:%d, day:%d.\n", tempBeijing->ui8Year, remainDayofYear);
  1430. 273:user_src/soft_test.c **** tempYear = isLeapYear( tempBeijing->ui8Year ) ? 366 : 365;
  1431. 1164 .loc 1 273 16
  1432. 1165 0102 3B68 ldr r3, [r7]
  1433. 1166 0104 1B88 ldrh r3, [r3]
  1434. 1167 0106 1846 mov r0, r3
  1435. 1168 0108 FFF7FEFF bl isLeapYear
  1436. 1169 010c 0346 mov r3, r0
  1437. 1170 .loc 1 273 14
  1438. 1171 010e 002B cmp r3, #0
  1439. 1172 0110 02D0 beq .L58
  1440. 1173 .loc 1 273 14 is_stmt 0 discriminator 1
  1441. 1174 0112 4FF4B773 mov r3, #366
  1442. 1175 0116 01E0 b .L59
  1443. 1176 .L58:
  1444. 1177 .loc 1 273 14 discriminator 2
  1445. 1178 0118 40F26D13 movw r3, #365
  1446. 1179 .L59:
  1447. 1180 .loc 1 273 14 discriminator 4
  1448. 1181 011c BB82 strh r3, [r7, #20] @ movhi
  1449. 274:user_src/soft_test.c **** while ( remainDayofYear >= tempYear ) // 计算4年整数�外的年。
  1450. 1182 .loc 1 274 11 is_stmt 1 discriminator 4
  1451. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 26
  1452. 1183 011e 17E0 b .L60
  1453. 1184 .L63:
  1454. 275:user_src/soft_test.c **** {
  1455. 276:user_src/soft_test.c **** tempBeijing->ui8Year++;
  1456. 1185 .loc 1 276 20
  1457. 1186 0120 3B68 ldr r3, [r7]
  1458. 1187 0122 1B88 ldrh r3, [r3]
  1459. 1188 .loc 1 276 29
  1460. 1189 0124 0133 adds r3, r3, #1
  1461. 1190 0126 9AB2 uxth r2, r3
  1462. 1191 0128 3B68 ldr r3, [r7]
  1463. 1192 012a 1A80 strh r2, [r3] @ movhi
  1464. 277:user_src/soft_test.c **** remainDayofYear -= tempYear;
  1465. 1193 .loc 1 277 25
  1466. 1194 012c FA8A ldrh r2, [r7, #22] @ movhi
  1467. 1195 012e BB8A ldrh r3, [r7, #20] @ movhi
  1468. 1196 0130 D31A subs r3, r2, r3
  1469. 1197 0132 FB82 strh r3, [r7, #22] @ movhi
  1470. 278:user_src/soft_test.c **** tempYear = isLeapYear( tempBeijing->ui8Year ) ? 366 : 365;
  1471. 1198 .loc 1 278 20
  1472. 1199 0134 3B68 ldr r3, [r7]
  1473. 1200 0136 1B88 ldrh r3, [r3]
  1474. 1201 0138 1846 mov r0, r3
  1475. 1202 013a FFF7FEFF bl isLeapYear
  1476. 1203 013e 0346 mov r3, r0
  1477. 1204 .loc 1 278 18
  1478. 1205 0140 002B cmp r3, #0
  1479. 1206 0142 02D0 beq .L61
  1480. 1207 .loc 1 278 18 is_stmt 0 discriminator 1
  1481. 1208 0144 4FF4B773 mov r3, #366
  1482. 1209 0148 01E0 b .L62
  1483. 1210 .L61:
  1484. 1211 .loc 1 278 18 discriminator 2
  1485. 1212 014a 40F26D13 movw r3, #365
  1486. 1213 .L62:
  1487. 1214 .loc 1 278 18 discriminator 4
  1488. 1215 014e BB82 strh r3, [r7, #20] @ movhi
  1489. 1216 .L60:
  1490. 274:user_src/soft_test.c **** {
  1491. 1217 .loc 1 274 11 is_stmt 1
  1492. 1218 0150 FA8A ldrh r2, [r7, #22]
  1493. 1219 0152 BB8A ldrh r3, [r7, #20]
  1494. 1220 0154 9A42 cmp r2, r3
  1495. 1221 0156 E3D2 bcs .L63
  1496. 279:user_src/soft_test.c **** }
  1497. 280:user_src/soft_test.c ****
  1498. 281:user_src/soft_test.c **** // 4.计算哪一月的哪一天
  1499. 282:user_src/soft_test.c **** pr = isLeapYear( tempBeijing->ui8Year ) ? Leap_month_day : month_day;
  1500. 1222 .loc 1 282 10
  1501. 1223 0158 3B68 ldr r3, [r7]
  1502. 1224 015a 1B88 ldrh r3, [r3]
  1503. 1225 015c 1846 mov r0, r3
  1504. 1226 015e FFF7FEFF bl isLeapYear
  1505. 1227 0162 0346 mov r3, r0
  1506. 1228 .loc 1 282 62
  1507. 1229 0164 002B cmp r3, #0
  1508. 1230 0166 01D0 beq .L64
  1509. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 27
  1510. 1231 .loc 1 282 62 is_stmt 0 discriminator 1
  1511. 1232 0168 1C4B ldr r3, .L68+20
  1512. 1233 016a 00E0 b .L65
  1513. 1234 .L64:
  1514. 1235 .loc 1 282 62 discriminator 2
  1515. 1236 016c 1C4B ldr r3, .L68+24
  1516. 1237 .L65:
  1517. 1238 .loc 1 282 8 is_stmt 1 discriminator 4
  1518. 1239 016e BB60 str r3, [r7, #8]
  1519. 283:user_src/soft_test.c **** remainDayofYear++; // 这里开始计算具体日期。remainDayofYear为 0 时其实æ
  1520. 1240 .loc 1 283 20 discriminator 4
  1521. 1241 0170 FB8A ldrh r3, [r7, #22]
  1522. 1242 0172 0133 adds r3, r3, #1
  1523. 1243 0174 FB82 strh r3, [r7, #22] @ movhi
  1524. 284:user_src/soft_test.c **** while ( remainDayofYear > *( pr + tempBeijing->ui8Month ) )
  1525. 1244 .loc 1 284 11 discriminator 4
  1526. 1245 0176 0FE0 b .L66
  1527. 1246 .L67:
  1528. 285:user_src/soft_test.c **** {
  1529. 286:user_src/soft_test.c **** remainDayofYear -= *( pr + tempBeijing->ui8Month );
  1530. 1247 .loc 1 286 47
  1531. 1248 0178 3B68 ldr r3, [r7]
  1532. 1249 017a 9B78 ldrb r3, [r3, #2] @ zero_extendqisi2
  1533. 1250 017c 1A46 mov r2, r3
  1534. 1251 .loc 1 286 34
  1535. 1252 017e BB68 ldr r3, [r7, #8]
  1536. 1253 0180 1344 add r3, r3, r2
  1537. 1254 .loc 1 286 28
  1538. 1255 0182 1B78 ldrb r3, [r3] @ zero_extendqisi2
  1539. 1256 0184 9BB2 uxth r3, r3
  1540. 1257 .loc 1 286 25
  1541. 1258 0186 FA8A ldrh r2, [r7, #22] @ movhi
  1542. 1259 0188 D31A subs r3, r2, r3
  1543. 1260 018a FB82 strh r3, [r7, #22] @ movhi
  1544. 287:user_src/soft_test.c **** tempBeijing->ui8Month++;
  1545. 1261 .loc 1 287 20
  1546. 1262 018c 3B68 ldr r3, [r7]
  1547. 1263 018e 9B78 ldrb r3, [r3, #2] @ zero_extendqisi2
  1548. 1264 .loc 1 287 30
  1549. 1265 0190 0133 adds r3, r3, #1
  1550. 1266 0192 DAB2 uxtb r2, r3
  1551. 1267 0194 3B68 ldr r3, [r7]
  1552. 1268 0196 9A70 strb r2, [r3, #2]
  1553. 1269 .L66:
  1554. 284:user_src/soft_test.c **** while ( remainDayofYear > *( pr + tempBeijing->ui8Month ) )
  1555. 1270 .loc 1 284 50
  1556. 1271 0198 3B68 ldr r3, [r7]
  1557. 1272 019a 9B78 ldrb r3, [r3, #2] @ zero_extendqisi2
  1558. 1273 019c 1A46 mov r2, r3
  1559. 284:user_src/soft_test.c **** while ( remainDayofYear > *( pr + tempBeijing->ui8Month ) )
  1560. 1274 .loc 1 284 37
  1561. 1275 019e BB68 ldr r3, [r7, #8]
  1562. 1276 01a0 1344 add r3, r3, r2
  1563. 284:user_src/soft_test.c **** while ( remainDayofYear > *( pr + tempBeijing->ui8Month ) )
  1564. 1277 .loc 1 284 31
  1565. 1278 01a2 1B78 ldrb r3, [r3] @ zero_extendqisi2
  1566. 1279 01a4 9BB2 uxth r3, r3
  1567. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 28
  1568. 284:user_src/soft_test.c **** while ( remainDayofYear > *( pr + tempBeijing->ui8Month ) )
  1569. 1280 .loc 1 284 11
  1570. 1281 01a6 FA8A ldrh r2, [r7, #22]
  1571. 1282 01a8 9A42 cmp r2, r3
  1572. 1283 01aa E5D8 bhi .L67
  1573. 288:user_src/soft_test.c **** }
  1574. 289:user_src/soft_test.c **** //printf("year:%d, day:%d.\n", tempBeijing->ui8Year, remainDayofYear);
  1575. 290:user_src/soft_test.c **** tempBeijing->ui8Month++; //month
  1576. 1284 .loc 1 290 16
  1577. 1285 01ac 3B68 ldr r3, [r7]
  1578. 1286 01ae 9B78 ldrb r3, [r3, #2] @ zero_extendqisi2
  1579. 1287 .loc 1 290 26
  1580. 1288 01b0 0133 adds r3, r3, #1
  1581. 1289 01b2 DAB2 uxtb r2, r3
  1582. 1290 01b4 3B68 ldr r3, [r7]
  1583. 1291 01b6 9A70 strb r2, [r3, #2]
  1584. 291:user_src/soft_test.c **** tempBeijing->ui8DayOfMonth = remainDayofYear; //day
  1585. 1292 .loc 1 291 32
  1586. 1293 01b8 FB8A ldrh r3, [r7, #22] @ movhi
  1587. 1294 01ba DAB2 uxtb r2, r3
  1588. 1295 01bc 3B68 ldr r3, [r7]
  1589. 1296 01be DA70 strb r2, [r3, #3]
  1590. 292:user_src/soft_test.c **** //printf("year:%d, day:%d.\n", tempBeijing->ui8Year, tempBeijing->ui8DayOfMonth);
  1591. 293:user_src/soft_test.c **** }
  1592. 1297 .loc 1 293 1
  1593. 1298 01c0 00BF nop
  1594. 1299 01c2 1837 adds r7, r7, #24
  1595. 1300 .LCFI24:
  1596. 1301 .cfi_def_cfa_offset 8
  1597. 1302 01c4 BD46 mov sp, r7
  1598. 1303 .LCFI25:
  1599. 1304 .cfi_def_cfa_register 13
  1600. 1305 @ sp needed
  1601. 1306 01c6 80BD pop {r7, pc}
  1602. 1307 .L69:
  1603. 1308 .align 2
  1604. 1309 .L68:
  1605. 1310 01c8 07452EC2 .word -1037155065
  1606. 1311 01cc 80510100 .word 86400
  1607. 1312 01d0 C5B3A291 .word -1851608123
  1608. 1313 01d4 89888888 .word -2004318071
  1609. 1314 01d8 73B06D16 .word 376287347
  1610. 1315 01dc 00000000 .word Leap_month_day.1
  1611. 1316 01e0 00000000 .word month_day.0
  1612. 1317 .cfi_endproc
  1613. 1318 .LFE138:
  1614. 1320 .section .text.PVD_IRQHandler,"ax",%progbits
  1615. 1321 .align 1
  1616. 1322 .global PVD_IRQHandler
  1617. 1323 .syntax unified
  1618. 1324 .thumb
  1619. 1325 .thumb_func
  1620. 1327 PVD_IRQHandler:
  1621. 1328 .LFB139:
  1622. 294:user_src/soft_test.c ****
  1623. 295:user_src/soft_test.c ****
  1624. 296:user_src/soft_test.c **** void PVD_IRQHandler(void)
  1625. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 29
  1626. 297:user_src/soft_test.c **** {
  1627. 1329 .loc 1 297 1
  1628. 1330 .cfi_startproc
  1629. 1331 @ args = 0, pretend = 0, frame = 0
  1630. 1332 @ frame_needed = 1, uses_anonymous_args = 0
  1631. 1333 0000 80B5 push {r7, lr}
  1632. 1334 .LCFI26:
  1633. 1335 .cfi_def_cfa_offset 8
  1634. 1336 .cfi_offset 7, -8
  1635. 1337 .cfi_offset 14, -4
  1636. 1338 0002 00AF add r7, sp, #0
  1637. 1339 .LCFI27:
  1638. 1340 .cfi_def_cfa_register 7
  1639. 298:user_src/soft_test.c **** HAL_PWR_PVD_IRQHandler();
  1640. 1341 .loc 1 298 5
  1641. 1342 0004 FFF7FEFF bl HAL_PWR_PVD_IRQHandler
  1642. 299:user_src/soft_test.c **** }
  1643. 1343 .loc 1 299 1
  1644. 1344 0008 00BF nop
  1645. 1345 000a 80BD pop {r7, pc}
  1646. 1346 .cfi_endproc
  1647. 1347 .LFE139:
  1648. 1349 .section .text.PVD_Config,"ax",%progbits
  1649. 1350 .align 1
  1650. 1351 .global PVD_Config
  1651. 1352 .syntax unified
  1652. 1353 .thumb
  1653. 1354 .thumb_func
  1654. 1356 PVD_Config:
  1655. 1357 .LFB140:
  1656. 300:user_src/soft_test.c ****
  1657. 301:user_src/soft_test.c **** void PVD_Config(void)
  1658. 302:user_src/soft_test.c **** {
  1659. 1358 .loc 1 302 1
  1660. 1359 .cfi_startproc
  1661. 1360 @ args = 0, pretend = 0, frame = 16
  1662. 1361 @ frame_needed = 1, uses_anonymous_args = 0
  1663. 1362 0000 80B5 push {r7, lr}
  1664. 1363 .LCFI28:
  1665. 1364 .cfi_def_cfa_offset 8
  1666. 1365 .cfi_offset 7, -8
  1667. 1366 .cfi_offset 14, -4
  1668. 1367 0002 84B0 sub sp, sp, #16
  1669. 1368 .LCFI29:
  1670. 1369 .cfi_def_cfa_offset 24
  1671. 1370 0004 00AF add r7, sp, #0
  1672. 1371 .LCFI30:
  1673. 1372 .cfi_def_cfa_register 7
  1674. 1373 .LBB2:
  1675. 303:user_src/soft_test.c **** /*##-1- Enable Power Clock #################################################*/
  1676. 304:user_src/soft_test.c **** __HAL_RCC_PWR_CLK_ENABLE();
  1677. 1374 .loc 1 304 5
  1678. 1375 0006 124B ldr r3, .L72
  1679. 1376 0008 DB69 ldr r3, [r3, #28]
  1680. 1377 000a 114A ldr r2, .L72
  1681. 1378 000c 43F08053 orr r3, r3, #268435456
  1682. 1379 0010 D361 str r3, [r2, #28]
  1683. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 30
  1684. 1380 0012 0F4B ldr r3, .L72
  1685. 1381 0014 DB69 ldr r3, [r3, #28]
  1686. 1382 0016 03F08053 and r3, r3, #268435456
  1687. 1383 001a 7B60 str r3, [r7, #4]
  1688. 1384 001c 7B68 ldr r3, [r7, #4]
  1689. 1385 .LBE2:
  1690. 305:user_src/soft_test.c ****
  1691. 306:user_src/soft_test.c **** /*##-2- Configure the NVIC for PVD #########################################*/
  1692. 307:user_src/soft_test.c **** HAL_NVIC_SetPriority(PVD_IRQn, 0, 0);
  1693. 1386 .loc 1 307 5
  1694. 1387 001e 0022 movs r2, #0
  1695. 1388 0020 0021 movs r1, #0
  1696. 1389 0022 0120 movs r0, #1
  1697. 1390 0024 FFF7FEFF bl HAL_NVIC_SetPriority
  1698. 308:user_src/soft_test.c **** HAL_NVIC_EnableIRQ(PVD_IRQn);
  1699. 1391 .loc 1 308 5
  1700. 1392 0028 0120 movs r0, #1
  1701. 1393 002a FFF7FEFF bl HAL_NVIC_EnableIRQ
  1702. 309:user_src/soft_test.c ****
  1703. 310:user_src/soft_test.c **** PWR_PVDTypeDef sConfigPVD;
  1704. 311:user_src/soft_test.c **** sConfigPVD.PVDLevel = PWR_PVDLEVEL_3;
  1705. 1394 .loc 1 311 25
  1706. 1395 002e 6023 movs r3, #96
  1707. 1396 0030 BB60 str r3, [r7, #8]
  1708. 312:user_src/soft_test.c **** sConfigPVD.Mode = PWR_PVD_MODE_IT_RISING;
  1709. 1397 .loc 1 312 21
  1710. 1398 0032 4FF00113 mov r3, #65537
  1711. 1399 0036 FB60 str r3, [r7, #12]
  1712. 313:user_src/soft_test.c **** HAL_PWR_ConfigPVD(&sConfigPVD);
  1713. 1400 .loc 1 313 5
  1714. 1401 0038 07F10803 add r3, r7, #8
  1715. 1402 003c 1846 mov r0, r3
  1716. 1403 003e FFF7FEFF bl HAL_PWR_ConfigPVD
  1717. 314:user_src/soft_test.c ****
  1718. 315:user_src/soft_test.c **** /* Enable the PVD Output */
  1719. 316:user_src/soft_test.c **** HAL_PWR_EnablePVD();
  1720. 1404 .loc 1 316 5
  1721. 1405 0042 FFF7FEFF bl HAL_PWR_EnablePVD
  1722. 317:user_src/soft_test.c ****
  1723. 318:user_src/soft_test.c **** }
  1724. 1406 .loc 1 318 1
  1725. 1407 0046 00BF nop
  1726. 1408 0048 1037 adds r7, r7, #16
  1727. 1409 .LCFI31:
  1728. 1410 .cfi_def_cfa_offset 8
  1729. 1411 004a BD46 mov sp, r7
  1730. 1412 .LCFI32:
  1731. 1413 .cfi_def_cfa_register 13
  1732. 1414 @ sp needed
  1733. 1415 004c 80BD pop {r7, pc}
  1734. 1416 .L73:
  1735. 1417 004e 00BF .align 2
  1736. 1418 .L72:
  1737. 1419 0050 00100240 .word 1073876992
  1738. 1420 .cfi_endproc
  1739. 1421 .LFE140:
  1740. 1423 .section .bss.uart_time.2,"aw",%nobits
  1741. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 31
  1742. 1424 .align 2
  1743. 1427 uart_time.2:
  1744. 1428 0000 00000000 .space 4
  1745. 1429 .section .data.Leap_month_day.1,"aw"
  1746. 1430 .align 2
  1747. 1433 Leap_month_day.1:
  1748. 1434 0000 1F1D1F1E .ascii "\037\035\037\036\037\036\037\037\036\037\036\037"
  1749. 1434 1F1E1F1F
  1750. 1434 1E1F1E1F
  1751. 1435 .section .data.month_day.0,"aw"
  1752. 1436 .align 2
  1753. 1439 month_day.0:
  1754. 1440 0000 1F1C1F1E .ascii "\037\034\037\036\037\036\037\037\036\037\036\037"
  1755. 1440 1F1E1F1F
  1756. 1440 1E1F1E1F
  1757. 1441 .text
  1758. 1442 .Letext0:
  1759. 1443 .file 2 "d:\\arm-gcc\\arm-none-eabi\\include\\machine\\_default_types.h"
  1760. 1444 .file 3 "d:\\arm-gcc\\arm-none-eabi\\include\\sys\\_stdint.h"
  1761. 1445 .file 4 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302xc.h"
  1762. 1446 .file 5 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_def.h"
  1763. 1447 .file 6 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_gpio.h"
  1764. 1448 .file 7 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_dma.h"
  1765. 1449 .file 8 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_pwr_ex.h"
  1766. 1450 .file 9 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_uart.h"
  1767. 1451 .file 10 "user_inc/soft_test.h"
  1768. 1452 .file 11 "user_inc/rkfifo.h"
  1769. 1453 .file 12 "user_inc/soft_uart.h"
  1770. 1454 .file 13 "Core/Inc/usart.h"
  1771. 1455 .file 14 "user_inc/soft_terrain.h"
  1772. 1456 .file 15 "user_inc/soft_obstacle.h"
  1773. 1457 .file 16 "user_inc/soft_flash.h"
  1774. 1458 .file 17 "user_inc/can_debug.h"
  1775. 1459 .file 18 "user_inc/soft_version.h"
  1776. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 32
  1777. DEFINED SYMBOLS
  1778. *ABS*:00000000 soft_test.c
  1779. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:24 .data.UART3_send_buf:00000000 UART3_send_buf
  1780. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:21 .data.UART3_send_buf:00000000 $d
  1781. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:27 .text.uart_send_msg:00000000 $t
  1782. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:33 .text.uart_send_msg:00000000 uart_send_msg
  1783. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:98 .text.uart_send_msg:00000044 $d
  1784. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1427 .bss.uart_time.2:00000000 uart_time.2
  1785. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:105 .text.ttest_func:00000000 $t
  1786. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:111 .text.ttest_func:00000000 ttest_func
  1787. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:144 .bss.led_time_green:00000000 led_time_green
  1788. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:141 .bss.led_time_green:00000000 $d
  1789. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:151 .bss.led_time_purple:00000000 led_time_purple
  1790. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:148 .bss.led_time_purple:00000000 $d
  1791. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:158 .bss.led_time_blue:00000000 led_time_blue
  1792. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:155 .bss.led_time_blue:00000000 $d
  1793. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:165 .bss.led_time_yellow:00000000 led_time_yellow
  1794. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:162 .bss.led_time_yellow:00000000 $d
  1795. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:171 .bss.led_green:00000000 led_green
  1796. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:172 .bss.led_green:00000000 $d
  1797. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:177 .bss.led_purple:00000000 led_purple
  1798. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:178 .bss.led_purple:00000000 $d
  1799. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:183 .bss.led_blue:00000000 led_blue
  1800. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:184 .bss.led_blue:00000000 $d
  1801. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:189 .bss.led_yellow:00000000 led_yellow
  1802. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:190 .bss.led_yellow:00000000 $d
  1803. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:195 .bss.only_star_one_green:00000000 only_star_one_green
  1804. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:196 .bss.only_star_one_green:00000000 $d
  1805. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:201 .bss.only_star_one_purple:00000000 only_star_one_purple
  1806. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:202 .bss.only_star_one_purple:00000000 $d
  1807. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:207 .bss.only_star_one_blue:00000000 only_star_one_blue
  1808. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:208 .bss.only_star_one_blue:00000000 $d
  1809. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:213 .bss.only_star_one_yellow:00000000 only_star_one_yellow
  1810. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:214 .bss.only_star_one_yellow:00000000 $d
  1811. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:219 .bss.no_led_star:00000000 no_led_star
  1812. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:220 .bss.no_led_star:00000000 $d
  1813. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:222 .text.pmu_inside_led:00000000 $t
  1814. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:228 .text.pmu_inside_led:00000000 pmu_inside_led
  1815. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:601 .text.pmu_inside_led:00000254 $d
  1816. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:625 .bss.recv_vk_protocol:00000000 recv_vk_protocol
  1817. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:622 .bss.recv_vk_protocol:00000000 $d
  1818. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:632 .bss.candebug_protocol:00000000 candebug_protocol
  1819. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:629 .bss.candebug_protocol:00000000 $d
  1820. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:639 .bss.send_uart_buffer:00000000 send_uart_buffer
  1821. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:636 .bss.send_uart_buffer:00000000 $d
  1822. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:642 .rodata:00000000 $d
  1823. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:646 .text.user_init:00000000 $t
  1824. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:652 .text.user_init:00000000 user_init
  1825. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:890 .text.user_init:00000188 $d
  1826. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:906 .text.isLeapYear:00000000 $t
  1827. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:912 .text.isLeapYear:00000000 isLeapYear
  1828. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:994 .text.isLeapYear:00000064 $d
  1829. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1003 .bss.beijing_time:00000000 beijing_time
  1830. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1000 .bss.beijing_time:00000000 $d
  1831. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1006 .text.covUnixTimeStp2Beijing:00000000 $t
  1832. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1012 .text.covUnixTimeStp2Beijing:00000000 covUnixTimeStp2Beijing
  1833. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1310 .text.covUnixTimeStp2Beijing:000001c8 $d
  1834. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s page 33
  1835. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1433 .data.Leap_month_day.1:00000000 Leap_month_day.1
  1836. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1439 .data.month_day.0:00000000 month_day.0
  1837. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1321 .text.PVD_IRQHandler:00000000 $t
  1838. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1327 .text.PVD_IRQHandler:00000000 PVD_IRQHandler
  1839. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1350 .text.PVD_Config:00000000 $t
  1840. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1356 .text.PVD_Config:00000000 PVD_Config
  1841. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1419 .text.PVD_Config:00000050 $d
  1842. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1424 .bss.uart_time.2:00000000 $d
  1843. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1430 .data.Leap_month_day.1:00000000 $d
  1844. C:\Users\zl835\AppData\Local\Temp\ccd9XdAw.s:1436 .data.month_day.0:00000000 $d
  1845. UNDEFINED SYMBOLS
  1846. HAL_GetTick
  1847. HAL_UART_Transmit_DMA
  1848. huart3
  1849. HAL_GPIO_WritePin
  1850. terrain_is_link
  1851. obs_f_is_link
  1852. obs_b_is_link
  1853. can_start_init
  1854. UART_Init
  1855. pwm_init
  1856. flash_read_funcktion
  1857. rkfifo_init
  1858. Int2String
  1859. regist_dev_info
  1860. recv_rkfifo
  1861. candebug_rkfifo
  1862. send_uart_rkfifo
  1863. current_pmu_par
  1864. dev_pmu
  1865. memset
  1866. HAL_PWR_PVD_IRQHandler
  1867. HAL_NVIC_SetPriority
  1868. HAL_NVIC_EnableIRQ
  1869. HAL_PWR_ConfigPVD
  1870. HAL_PWR_EnablePVD