can_debug.lst 60 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553
  1. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.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 "can_debug.c"
  17. 16 .text
  18. 17 .Ltext0:
  19. 18 .cfi_sections .debug_frame
  20. 19 .global candebug_rkfifo
  21. 20 .section .bss.candebug_rkfifo,"aw",%nobits
  22. 21 .align 2
  23. 24 candebug_rkfifo:
  24. 25 0000 00000000 .space 24
  25. 25 00000000
  26. 25 00000000
  27. 25 00000000
  28. 25 00000000
  29. 26 .global debug_can
  30. 27 .section .bss.debug_can,"aw",%nobits
  31. 28 .align 2
  32. 31 debug_can:
  33. 32 0000 00000000 .space 808
  34. 32 00000000
  35. 32 00000000
  36. 32 00000000
  37. 32 00000000
  38. 33 .section .text.check_can_dev_connect,"ax",%progbits
  39. 34 .align 1
  40. 35 .global check_can_dev_connect
  41. 36 .syntax unified
  42. 37 .thumb
  43. 38 .thumb_func
  44. 40 check_can_dev_connect:
  45. 41 .LFB133:
  46. 42 .file 1 "user_src/can_debug.c"
  47. 1:user_src/can_debug.c **** #include "can_debug.h"
  48. 2:user_src/can_debug.c **** #include "stm32f3xx_hal.h"
  49. 3:user_src/can_debug.c **** #include "string.h"
  50. 4:user_src/can_debug.c **** #include "stdbool.h"
  51. 5:user_src/can_debug.c **** #include "soft_p_2_c.h"
  52. 6:user_src/can_debug.c **** #include "crc.h"
  53. 7:user_src/can_debug.c **** #include "soft_uart.h"
  54. 8:user_src/can_debug.c ****
  55. 9:user_src/can_debug.c **** rkfifo_t candebug_rkfifo;
  56. 10:user_src/can_debug.c **** Debug_buf debug_can;
  57. 11:user_src/can_debug.c ****
  58. 12:user_src/can_debug.c **** void check_can_dev_connect(void)
  59. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 2
  60. 13:user_src/can_debug.c **** {
  61. 43 .loc 1 13 1
  62. 44 .cfi_startproc
  63. 45 @ args = 0, pretend = 0, frame = 8
  64. 46 @ frame_needed = 1, uses_anonymous_args = 0
  65. 47 0000 80B5 push {r7, lr}
  66. 48 .LCFI0:
  67. 49 .cfi_def_cfa_offset 8
  68. 50 .cfi_offset 7, -8
  69. 51 .cfi_offset 14, -4
  70. 52 0002 82B0 sub sp, sp, #8
  71. 53 .LCFI1:
  72. 54 .cfi_def_cfa_offset 16
  73. 55 0004 00AF add r7, sp, #0
  74. 56 .LCFI2:
  75. 57 .cfi_def_cfa_register 7
  76. 14:user_src/can_debug.c **** if(debug_can.Total_Dev_num != 0)
  77. 58 .loc 1 14 17
  78. 59 0006 1E4B ldr r3, .L8
  79. 60 0008 B3F82033 ldrh r3, [r3, #800]
  80. 61 .loc 1 14 7
  81. 62 000c 002B cmp r3, #0
  82. 63 000e 32D0 beq .L7
  83. 64 .LBB2:
  84. 15:user_src/can_debug.c **** {
  85. 16:user_src/can_debug.c **** for(uint8_t i=0;i<debug_can.Total_Dev_num;i++)
  86. 65 .loc 1 16 21
  87. 66 0010 0023 movs r3, #0
  88. 67 0012 FB71 strb r3, [r7, #7]
  89. 68 .loc 1 16 9
  90. 69 0014 28E0 b .L3
  91. 70 .L6:
  92. 17:user_src/can_debug.c **** {
  93. 18:user_src/can_debug.c **** if(HAL_GetTick() - debug_can.ID_buf[i].ID_time > 5000)
  94. 71 .loc 1 18 16
  95. 72 0016 FFF7FEFF bl HAL_GetTick
  96. 73 001a 0146 mov r1, r0
  97. 74 .loc 1 18 52
  98. 75 001c FA79 ldrb r2, [r7, #7] @ zero_extendqisi2
  99. 76 001e 1848 ldr r0, .L8
  100. 77 0020 1346 mov r3, r2
  101. 78 0022 9B00 lsls r3, r3, #2
  102. 79 0024 1344 add r3, r3, r2
  103. 80 0026 9B00 lsls r3, r3, #2
  104. 81 0028 0344 add r3, r3, r0
  105. 82 002a 1033 adds r3, r3, #16
  106. 83 002c 1B68 ldr r3, [r3]
  107. 84 .loc 1 18 30
  108. 85 002e CB1A subs r3, r1, r3
  109. 86 .loc 1 18 15
  110. 87 0030 41F28832 movw r2, #5000
  111. 88 0034 9342 cmp r3, r2
  112. 89 0036 0AD9 bls .L4
  113. 19:user_src/can_debug.c **** {
  114. 20:user_src/can_debug.c **** debug_can.ID_buf[i].connect_status = 2;
  115. 90 .loc 1 20 36
  116. 91 0038 FA79 ldrb r2, [r7, #7] @ zero_extendqisi2
  117. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 3
  118. 92 .loc 1 20 52
  119. 93 003a 1149 ldr r1, .L8
  120. 94 003c 1346 mov r3, r2
  121. 95 003e 9B00 lsls r3, r3, #2
  122. 96 0040 1344 add r3, r3, r2
  123. 97 0042 9B00 lsls r3, r3, #2
  124. 98 0044 0B44 add r3, r3, r1
  125. 99 0046 0533 adds r3, r3, #5
  126. 100 0048 0222 movs r2, #2
  127. 101 004a 1A70 strb r2, [r3]
  128. 102 004c 09E0 b .L5
  129. 103 .L4:
  130. 21:user_src/can_debug.c **** }
  131. 22:user_src/can_debug.c **** else
  132. 23:user_src/can_debug.c **** {
  133. 24:user_src/can_debug.c **** debug_can.ID_buf[i].connect_status = 1;
  134. 104 .loc 1 24 36
  135. 105 004e FA79 ldrb r2, [r7, #7] @ zero_extendqisi2
  136. 106 .loc 1 24 52
  137. 107 0050 0B49 ldr r1, .L8
  138. 108 0052 1346 mov r3, r2
  139. 109 0054 9B00 lsls r3, r3, #2
  140. 110 0056 1344 add r3, r3, r2
  141. 111 0058 9B00 lsls r3, r3, #2
  142. 112 005a 0B44 add r3, r3, r1
  143. 113 005c 0533 adds r3, r3, #5
  144. 114 005e 0122 movs r2, #1
  145. 115 0060 1A70 strb r2, [r3]
  146. 116 .L5:
  147. 16:user_src/can_debug.c **** {
  148. 117 .loc 1 16 52 discriminator 2
  149. 118 0062 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  150. 119 0064 0133 adds r3, r3, #1
  151. 120 0066 FB71 strb r3, [r7, #7]
  152. 121 .L3:
  153. 16:user_src/can_debug.c **** {
  154. 122 .loc 1 16 26 discriminator 1
  155. 123 0068 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  156. 124 006a 9AB2 uxth r2, r3
  157. 16:user_src/can_debug.c **** {
  158. 125 .loc 1 16 36 discriminator 1
  159. 126 006c 044B ldr r3, .L8
  160. 127 006e B3F82033 ldrh r3, [r3, #800]
  161. 16:user_src/can_debug.c **** {
  162. 128 .loc 1 16 9 discriminator 1
  163. 129 0072 9A42 cmp r2, r3
  164. 130 0074 CFD3 bcc .L6
  165. 131 .L7:
  166. 132 .LBE2:
  167. 25:user_src/can_debug.c **** }
  168. 26:user_src/can_debug.c ****
  169. 27:user_src/can_debug.c **** }
  170. 28:user_src/can_debug.c **** }
  171. 29:user_src/can_debug.c **** }
  172. 133 .loc 1 29 1
  173. 134 0076 00BF nop
  174. 135 0078 0837 adds r7, r7, #8
  175. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 4
  176. 136 .LCFI3:
  177. 137 .cfi_def_cfa_offset 8
  178. 138 007a BD46 mov sp, r7
  179. 139 .LCFI4:
  180. 140 .cfi_def_cfa_register 13
  181. 141 @ sp needed
  182. 142 007c 80BD pop {r7, pc}
  183. 143 .L9:
  184. 144 007e 00BF .align 2
  185. 145 .L8:
  186. 146 0080 00000000 .word debug_can
  187. 147 .cfi_endproc
  188. 148 .LFE133:
  189. 150 .section .text.get_data_total_len,"ax",%progbits
  190. 151 .align 1
  191. 152 .global get_data_total_len
  192. 153 .syntax unified
  193. 154 .thumb
  194. 155 .thumb_func
  195. 157 get_data_total_len:
  196. 158 .LFB134:
  197. 30:user_src/can_debug.c ****
  198. 31:user_src/can_debug.c ****
  199. 32:user_src/can_debug.c **** int get_data_total_len(uint8_t i)
  200. 33:user_src/can_debug.c **** {
  201. 159 .loc 1 33 1
  202. 160 .cfi_startproc
  203. 161 @ args = 0, pretend = 0, frame = 16
  204. 162 @ frame_needed = 1, uses_anonymous_args = 0
  205. 163 @ link register save eliminated.
  206. 164 0000 80B4 push {r7}
  207. 165 .LCFI5:
  208. 166 .cfi_def_cfa_offset 4
  209. 167 .cfi_offset 7, -4
  210. 168 0002 85B0 sub sp, sp, #20
  211. 169 .LCFI6:
  212. 170 .cfi_def_cfa_offset 24
  213. 171 0004 00AF add r7, sp, #0
  214. 172 .LCFI7:
  215. 173 .cfi_def_cfa_register 7
  216. 174 0006 0346 mov r3, r0
  217. 175 0008 FB71 strb r3, [r7, #7]
  218. 34:user_src/can_debug.c **** uint8_t len = 0;
  219. 176 .loc 1 34 13
  220. 177 000a 0023 movs r3, #0
  221. 178 000c FB73 strb r3, [r7, #15]
  222. 35:user_src/can_debug.c **** len += 4; //ID
  223. 179 .loc 1 35 9
  224. 180 000e FB7B ldrb r3, [r7, #15]
  225. 181 0010 0433 adds r3, r3, #4
  226. 182 0012 FB73 strb r3, [r7, #15]
  227. 36:user_src/can_debug.c **** len++; //len
  228. 183 .loc 1 36 8
  229. 184 0014 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2
  230. 185 0016 0133 adds r3, r3, #1
  231. 186 0018 FB73 strb r3, [r7, #15]
  232. 37:user_src/can_debug.c **** len++; //status
  233. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 5
  234. 187 .loc 1 37 8
  235. 188 001a FB7B ldrb r3, [r7, #15] @ zero_extendqisi2
  236. 189 001c 0133 adds r3, r3, #1
  237. 190 001e FB73 strb r3, [r7, #15]
  238. 38:user_src/can_debug.c **** len++; //send_fre
  239. 191 .loc 1 38 8
  240. 192 0020 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2
  241. 193 0022 0133 adds r3, r3, #1
  242. 194 0024 FB73 strb r3, [r7, #15]
  243. 39:user_src/can_debug.c **** len += i;
  244. 195 .loc 1 39 9
  245. 196 0026 FA7B ldrb r2, [r7, #15]
  246. 197 0028 FB79 ldrb r3, [r7, #7]
  247. 198 002a 1344 add r3, r3, r2
  248. 199 002c FB73 strb r3, [r7, #15]
  249. 40:user_src/can_debug.c **** return len;
  250. 200 .loc 1 40 12
  251. 201 002e FB7B ldrb r3, [r7, #15] @ zero_extendqisi2
  252. 41:user_src/can_debug.c **** }
  253. 202 .loc 1 41 1
  254. 203 0030 1846 mov r0, r3
  255. 204 0032 1437 adds r7, r7, #20
  256. 205 .LCFI8:
  257. 206 .cfi_def_cfa_offset 4
  258. 207 0034 BD46 mov sp, r7
  259. 208 .LCFI9:
  260. 209 .cfi_def_cfa_register 13
  261. 210 @ sp needed
  262. 211 0036 5DF8047B ldr r7, [sp], #4
  263. 212 .LCFI10:
  264. 213 .cfi_restore 7
  265. 214 .cfi_def_cfa_offset 0
  266. 215 003a 7047 bx lr
  267. 216 .cfi_endproc
  268. 217 .LFE134:
  269. 219 .section .text.Can_send_debug_to_app,"ax",%progbits
  270. 220 .align 1
  271. 221 .global Can_send_debug_to_app
  272. 222 .syntax unified
  273. 223 .thumb
  274. 224 .thumb_func
  275. 226 Can_send_debug_to_app:
  276. 227 .LFB135:
  277. 42:user_src/can_debug.c ****
  278. 43:user_src/can_debug.c **** void Can_send_debug_to_app(void)
  279. 44:user_src/can_debug.c **** {
  280. 228 .loc 1 44 1
  281. 229 .cfi_startproc
  282. 230 @ args = 0, pretend = 0, frame = 16
  283. 231 @ frame_needed = 1, uses_anonymous_args = 0
  284. 232 0000 B0B5 push {r4, r5, r7, lr}
  285. 233 .LCFI11:
  286. 234 .cfi_def_cfa_offset 16
  287. 235 .cfi_offset 4, -16
  288. 236 .cfi_offset 5, -12
  289. 237 .cfi_offset 7, -8
  290. 238 .cfi_offset 14, -4
  291. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 6
  292. 239 0002 84B0 sub sp, sp, #16
  293. 240 .LCFI12:
  294. 241 .cfi_def_cfa_offset 32
  295. 242 0004 00AF add r7, sp, #0
  296. 243 .LCFI13:
  297. 244 .cfi_def_cfa_register 7
  298. 45:user_src/can_debug.c **** int index = 0;
  299. 245 .loc 1 45 9
  300. 246 0006 0023 movs r3, #0
  301. 247 0008 FB60 str r3, [r7, #12]
  302. 46:user_src/can_debug.c **** uint16_t crc = 0;
  303. 248 .loc 1 46 14
  304. 249 000a 0023 movs r3, #0
  305. 250 000c FB80 strh r3, [r7, #6] @ movhi
  306. 47:user_src/can_debug.c **** uint8_t send_time = debug_can.Total_Dev_num / 16 + 1;
  307. 251 .loc 1 47 34
  308. 252 000e 6B4B ldr r3, .L21
  309. 253 0010 B3F82033 ldrh r3, [r3, #800]
  310. 254 .loc 1 47 54
  311. 255 0014 1B09 lsrs r3, r3, #4
  312. 256 0016 9BB2 uxth r3, r3
  313. 257 0018 DBB2 uxtb r3, r3
  314. 258 .loc 1 47 13
  315. 259 001a 0133 adds r3, r3, #1
  316. 260 001c 7B71 strb r3, [r7, #5]
  317. 48:user_src/can_debug.c **** uint8_t element_num = 0,total_pack_num = 0;
  318. 261 .loc 1 48 13
  319. 262 001e 0023 movs r3, #0
  320. 263 0020 FB72 strb r3, [r7, #11]
  321. 264 .loc 1 48 29
  322. 265 0022 0023 movs r3, #0
  323. 266 0024 BB72 strb r3, [r7, #10]
  324. 49:user_src/can_debug.c ****
  325. 50:user_src/can_debug.c **** check_can_dev_connect();
  326. 267 .loc 1 50 5
  327. 268 0026 FFF7FEFF bl check_can_dev_connect
  328. 269 .LBB3:
  329. 51:user_src/can_debug.c ****
  330. 52:user_src/can_debug.c **** for(uint8_t i = 0;i < send_time; i++)
  331. 270 .loc 1 52 17
  332. 271 002a 0023 movs r3, #0
  333. 272 002c 7B72 strb r3, [r7, #9]
  334. 273 .loc 1 52 5
  335. 274 002e BAE0 b .L13
  336. 275 .L20:
  337. 53:user_src/can_debug.c **** {
  338. 54:user_src/can_debug.c **** index = 0;
  339. 276 .loc 1 54 15
  340. 277 0030 0023 movs r3, #0
  341. 278 0032 FB60 str r3, [r7, #12]
  342. 55:user_src/can_debug.c **** crc = 0;
  343. 279 .loc 1 55 13
  344. 280 0034 0023 movs r3, #0
  345. 281 0036 FB80 strh r3, [r7, #6] @ movhi
  346. 56:user_src/can_debug.c ****
  347. 57:user_src/can_debug.c **** msg_buf[index++] = 0xFE;
  348. 282 .loc 1 57 22
  349. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 7
  350. 283 0038 FB68 ldr r3, [r7, #12]
  351. 284 003a 5A1C adds r2, r3, #1
  352. 285 003c FA60 str r2, [r7, #12]
  353. 286 .loc 1 57 26
  354. 287 003e 604A ldr r2, .L21+4
  355. 288 0040 FE21 movs r1, #254
  356. 289 0042 D154 strb r1, [r2, r3]
  357. 58:user_src/can_debug.c **** msg_buf[index++] = 0;
  358. 290 .loc 1 58 22
  359. 291 0044 FB68 ldr r3, [r7, #12]
  360. 292 0046 5A1C adds r2, r3, #1
  361. 293 0048 FA60 str r2, [r7, #12]
  362. 294 .loc 1 58 26
  363. 295 004a 5D4A ldr r2, .L21+4
  364. 296 004c 0021 movs r1, #0
  365. 297 004e D154 strb r1, [r2, r3]
  366. 59:user_src/can_debug.c **** msg_buf[index++] = 0; //组件计数
  367. 298 .loc 1 59 22
  368. 299 0050 FB68 ldr r3, [r7, #12]
  369. 300 0052 5A1C adds r2, r3, #1
  370. 301 0054 FA60 str r2, [r7, #12]
  371. 302 .loc 1 59 26
  372. 303 0056 5A4A ldr r2, .L21+4
  373. 304 0058 0021 movs r1, #0
  374. 305 005a D154 strb r1, [r2, r3]
  375. 60:user_src/can_debug.c **** msg_buf[index++] = 0x00;
  376. 306 .loc 1 60 22
  377. 307 005c FB68 ldr r3, [r7, #12]
  378. 308 005e 5A1C adds r2, r3, #1
  379. 309 0060 FA60 str r2, [r7, #12]
  380. 310 .loc 1 60 26
  381. 311 0062 574A ldr r2, .L21+4
  382. 312 0064 0021 movs r1, #0
  383. 313 0066 D154 strb r1, [r2, r3]
  384. 61:user_src/can_debug.c **** msg_buf[index++] = 0x00;
  385. 314 .loc 1 61 22
  386. 315 0068 FB68 ldr r3, [r7, #12]
  387. 316 006a 5A1C adds r2, r3, #1
  388. 317 006c FA60 str r2, [r7, #12]
  389. 318 .loc 1 61 26
  390. 319 006e 544A ldr r2, .L21+4
  391. 320 0070 0021 movs r1, #0
  392. 321 0072 D154 strb r1, [r2, r3]
  393. 62:user_src/can_debug.c **** msg_buf[index++] = _MSGID_CANDEBUG;
  394. 322 .loc 1 62 22
  395. 323 0074 FB68 ldr r3, [r7, #12]
  396. 324 0076 5A1C adds r2, r3, #1
  397. 325 0078 FA60 str r2, [r7, #12]
  398. 326 .loc 1 62 26
  399. 327 007a 514A ldr r2, .L21+4
  400. 328 007c D521 movs r1, #213
  401. 329 007e D154 strb r1, [r2, r3]
  402. 63:user_src/can_debug.c ****
  403. 64:user_src/can_debug.c **** debug_can.Len = get_data_total_len;
  404. 330 .loc 1 64 23
  405. 331 0080 4E4B ldr r3, .L21
  406. 332 0082 504A ldr r2, .L21+8
  407. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 8
  408. 333 0084 C3F82423 str r2, [r3, #804]
  409. 65:user_src/can_debug.c ****
  410. 66:user_src/can_debug.c **** if(send_time > 1)
  411. 334 .loc 1 66 11
  412. 335 0088 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2
  413. 336 008a 012B cmp r3, #1
  414. 337 008c 18D9 bls .L14
  415. 67:user_src/can_debug.c **** {
  416. 68:user_src/can_debug.c **** element_num = i * 15;
  417. 338 .loc 1 68 25
  418. 339 008e 7B7A ldrb r3, [r7, #9]
  419. 340 0090 1A46 mov r2, r3
  420. 341 0092 1201 lsls r2, r2, #4
  421. 342 0094 D31A subs r3, r2, r3
  422. 343 0096 FB72 strb r3, [r7, #11]
  423. 69:user_src/can_debug.c **** total_pack_num = (send_time - 1 - i) == 0? debug_can.Total_Dev_num - (i *15) : 15;
  424. 344 .loc 1 69 41
  425. 345 0098 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2
  426. 346 009a 5A1E subs r2, r3, #1
  427. 347 .loc 1 69 50
  428. 348 009c 7B7A ldrb r3, [r7, #9] @ zero_extendqisi2
  429. 349 .loc 1 69 28
  430. 350 009e 9A42 cmp r2, r3
  431. 351 00a0 0BD1 bne .L15
  432. 352 .loc 1 69 65 discriminator 1
  433. 353 00a2 464B ldr r3, .L21
  434. 354 00a4 B3F82033 ldrh r3, [r3, #800]
  435. 355 .loc 1 69 80 discriminator 1
  436. 356 00a8 DAB2 uxtb r2, r3
  437. 357 00aa 7B7A ldrb r3, [r7, #9]
  438. 358 00ac 1946 mov r1, r3
  439. 359 00ae 1B01 lsls r3, r3, #4
  440. 360 00b0 CB1A subs r3, r1, r3
  441. 361 00b2 DBB2 uxtb r3, r3
  442. 362 .loc 1 69 28 discriminator 1
  443. 363 00b4 1344 add r3, r3, r2
  444. 364 00b6 DBB2 uxtb r3, r3
  445. 365 00b8 00E0 b .L16
  446. 366 .L15:
  447. 367 .loc 1 69 28 is_stmt 0 discriminator 2
  448. 368 00ba 0F23 movs r3, #15
  449. 369 .L16:
  450. 370 .loc 1 69 28 discriminator 4
  451. 371 00bc BB72 strb r3, [r7, #10]
  452. 372 00be 05E0 b .L17
  453. 373 .L14:
  454. 70:user_src/can_debug.c **** }
  455. 71:user_src/can_debug.c **** else
  456. 72:user_src/can_debug.c **** {
  457. 73:user_src/can_debug.c **** element_num = 0;
  458. 374 .loc 1 73 25 is_stmt 1
  459. 375 00c0 0023 movs r3, #0
  460. 376 00c2 FB72 strb r3, [r7, #11]
  461. 74:user_src/can_debug.c **** total_pack_num = debug_can.Total_Dev_num;
  462. 377 .loc 1 74 39
  463. 378 00c4 3D4B ldr r3, .L21
  464. 379 00c6 B3F82033 ldrh r3, [r3, #800]
  465. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 9
  466. 380 .loc 1 74 28
  467. 381 00ca BB72 strb r3, [r7, #10]
  468. 382 .L17:
  469. 75:user_src/can_debug.c **** }
  470. 76:user_src/can_debug.c **** msg_buf[index++] = total_pack_num;
  471. 383 .loc 1 76 22
  472. 384 00cc FB68 ldr r3, [r7, #12]
  473. 385 00ce 5A1C adds r2, r3, #1
  474. 386 00d0 FA60 str r2, [r7, #12]
  475. 387 .loc 1 76 26
  476. 388 00d2 3B49 ldr r1, .L21+4
  477. 389 00d4 BA7A ldrb r2, [r7, #10]
  478. 390 00d6 CA54 strb r2, [r1, r3]
  479. 391 .LBB4:
  480. 77:user_src/can_debug.c ****
  481. 78:user_src/can_debug.c **** for(uint8_t i=0;i<total_pack_num;i++)
  482. 392 .loc 1 78 21
  483. 393 00d8 0023 movs r3, #0
  484. 394 00da 3B72 strb r3, [r7, #8]
  485. 395 .loc 1 78 9
  486. 396 00dc 38E0 b .L18
  487. 397 .L19:
  488. 79:user_src/can_debug.c **** {
  489. 80:user_src/can_debug.c **** memcpy(&msg_buf[index], &debug_can.ID_buf[i + element_num].ID, debug_can.Len(debug_can.
  490. 398 .loc 1 80 20 discriminator 3
  491. 399 00de FB68 ldr r3, [r7, #12]
  492. 400 00e0 374A ldr r2, .L21+4
  493. 401 00e2 9C18 adds r4, r3, r2
  494. 402 .loc 1 80 57 discriminator 3
  495. 403 00e4 3A7A ldrb r2, [r7, #8] @ zero_extendqisi2
  496. 404 00e6 FB7A ldrb r3, [r7, #11] @ zero_extendqisi2
  497. 405 00e8 1A44 add r2, r2, r3
  498. 406 .loc 1 80 37 discriminator 3
  499. 407 00ea 1346 mov r3, r2
  500. 408 00ec 9B00 lsls r3, r3, #2
  501. 409 00ee 1344 add r3, r3, r2
  502. 410 00f0 9B00 lsls r3, r3, #2
  503. 411 00f2 324A ldr r2, .L21
  504. 412 00f4 9D18 adds r5, r3, r2
  505. 413 .loc 1 80 85 discriminator 3
  506. 414 00f6 314B ldr r3, .L21
  507. 415 00f8 D3F82413 ldr r1, [r3, #804]
  508. 416 .loc 1 80 109 discriminator 3
  509. 417 00fc 3A7A ldrb r2, [r7, #8] @ zero_extendqisi2
  510. 418 00fe FB7A ldrb r3, [r7, #11] @ zero_extendqisi2
  511. 419 0100 1A44 add r2, r2, r3
  512. 420 .loc 1 80 76 discriminator 3
  513. 421 0102 2E48 ldr r0, .L21
  514. 422 0104 1346 mov r3, r2
  515. 423 0106 9B00 lsls r3, r3, #2
  516. 424 0108 1344 add r3, r3, r2
  517. 425 010a 9B00 lsls r3, r3, #2
  518. 426 010c 0344 add r3, r3, r0
  519. 427 010e 0433 adds r3, r3, #4
  520. 428 0110 1B78 ldrb r3, [r3] @ zero_extendqisi2
  521. 429 0112 1846 mov r0, r3
  522. 430 0114 8847 blx r1
  523. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 10
  524. 431 .LVL0:
  525. 432 0116 0346 mov r3, r0
  526. 433 .loc 1 80 13 discriminator 3
  527. 434 0118 1A46 mov r2, r3
  528. 435 011a 2946 mov r1, r5
  529. 436 011c 2046 mov r0, r4
  530. 437 011e FFF7FEFF bl memcpy
  531. 81:user_src/can_debug.c **** index += debug_can.Len(debug_can.ID_buf[i + element_num].len);
  532. 438 .loc 1 81 31 discriminator 3
  533. 439 0122 264B ldr r3, .L21
  534. 440 0124 D3F82413 ldr r1, [r3, #804]
  535. 441 .loc 1 81 55 discriminator 3
  536. 442 0128 3A7A ldrb r2, [r7, #8] @ zero_extendqisi2
  537. 443 012a FB7A ldrb r3, [r7, #11] @ zero_extendqisi2
  538. 444 012c 1A44 add r2, r2, r3
  539. 445 .loc 1 81 22 discriminator 3
  540. 446 012e 2348 ldr r0, .L21
  541. 447 0130 1346 mov r3, r2
  542. 448 0132 9B00 lsls r3, r3, #2
  543. 449 0134 1344 add r3, r3, r2
  544. 450 0136 9B00 lsls r3, r3, #2
  545. 451 0138 0344 add r3, r3, r0
  546. 452 013a 0433 adds r3, r3, #4
  547. 453 013c 1B78 ldrb r3, [r3] @ zero_extendqisi2
  548. 454 013e 1846 mov r0, r3
  549. 455 0140 8847 blx r1
  550. 456 .LVL1:
  551. 457 0142 0246 mov r2, r0
  552. 458 .loc 1 81 19 discriminator 3
  553. 459 0144 FB68 ldr r3, [r7, #12]
  554. 460 0146 1344 add r3, r3, r2
  555. 461 0148 FB60 str r3, [r7, #12]
  556. 78:user_src/can_debug.c **** {
  557. 462 .loc 1 78 43 discriminator 3
  558. 463 014a 3B7A ldrb r3, [r7, #8] @ zero_extendqisi2
  559. 464 014c 0133 adds r3, r3, #1
  560. 465 014e 3B72 strb r3, [r7, #8]
  561. 466 .L18:
  562. 78:user_src/can_debug.c **** {
  563. 467 .loc 1 78 9 discriminator 1
  564. 468 0150 3A7A ldrb r2, [r7, #8] @ zero_extendqisi2
  565. 469 0152 BB7A ldrb r3, [r7, #10] @ zero_extendqisi2
  566. 470 0154 9A42 cmp r2, r3
  567. 471 0156 C2D3 bcc .L19
  568. 472 .LBE4:
  569. 82:user_src/can_debug.c **** }
  570. 83:user_src/can_debug.c ****
  571. 84:user_src/can_debug.c **** msg_buf[1] = index - 6;
  572. 473 .loc 1 84 28 discriminator 2
  573. 474 0158 FB68 ldr r3, [r7, #12]
  574. 475 015a DBB2 uxtb r3, r3
  575. 476 015c 063B subs r3, r3, #6
  576. 477 015e DAB2 uxtb r2, r3
  577. 478 .loc 1 84 20 discriminator 2
  578. 479 0160 174B ldr r3, .L21+4
  579. 480 0162 5A70 strb r2, [r3, #1]
  580. 85:user_src/can_debug.c ****
  581. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 11
  582. 86:user_src/can_debug.c **** crc = Get_Crc16(msg_buf, index);
  583. 481 .loc 1 86 15 discriminator 2
  584. 482 0164 FB68 ldr r3, [r7, #12]
  585. 483 0166 9BB2 uxth r3, r3
  586. 484 0168 1946 mov r1, r3
  587. 485 016a 1548 ldr r0, .L21+4
  588. 486 016c FFF7FEFF bl Get_Crc16
  589. 487 0170 0346 mov r3, r0
  590. 488 0172 FB80 strh r3, [r7, #6] @ movhi
  591. 87:user_src/can_debug.c **** msg_buf[index++] = crc;
  592. 489 .loc 1 87 22 discriminator 2
  593. 490 0174 FB68 ldr r3, [r7, #12]
  594. 491 0176 5A1C adds r2, r3, #1
  595. 492 0178 FA60 str r2, [r7, #12]
  596. 493 .loc 1 87 26 discriminator 2
  597. 494 017a FA88 ldrh r2, [r7, #6] @ movhi
  598. 495 017c D1B2 uxtb r1, r2
  599. 496 017e 104A ldr r2, .L21+4
  600. 497 0180 D154 strb r1, [r2, r3]
  601. 88:user_src/can_debug.c **** msg_buf[index++] = (crc >> 8) & 0xff;
  602. 498 .loc 1 88 26 discriminator 2
  603. 499 0182 FB88 ldrh r3, [r7, #6]
  604. 500 0184 1B0A lsrs r3, r3, #8
  605. 501 0186 99B2 uxth r1, r3
  606. 502 .loc 1 88 22 discriminator 2
  607. 503 0188 FB68 ldr r3, [r7, #12]
  608. 504 018a 5A1C adds r2, r3, #1
  609. 505 018c FA60 str r2, [r7, #12]
  610. 506 .loc 1 88 26 discriminator 2
  611. 507 018e C9B2 uxtb r1, r1
  612. 508 0190 0B4A ldr r2, .L21+4
  613. 509 0192 D154 strb r1, [r2, r3]
  614. 89:user_src/can_debug.c ****
  615. 90:user_src/can_debug.c **** uart2_send_msg(msg_buf, index);
  616. 510 .loc 1 90 9 discriminator 2
  617. 511 0194 FB68 ldr r3, [r7, #12]
  618. 512 0196 DBB2 uxtb r3, r3
  619. 513 0198 1946 mov r1, r3
  620. 514 019a 0948 ldr r0, .L21+4
  621. 515 019c FFF7FEFF bl uart2_send_msg
  622. 52:user_src/can_debug.c **** {
  623. 516 .loc 1 52 39 discriminator 2
  624. 517 01a0 7B7A ldrb r3, [r7, #9] @ zero_extendqisi2
  625. 518 01a2 0133 adds r3, r3, #1
  626. 519 01a4 7B72 strb r3, [r7, #9]
  627. 520 .L13:
  628. 52:user_src/can_debug.c **** {
  629. 521 .loc 1 52 5 discriminator 1
  630. 522 01a6 7A7A ldrb r2, [r7, #9] @ zero_extendqisi2
  631. 523 01a8 7B79 ldrb r3, [r7, #5] @ zero_extendqisi2
  632. 524 01aa 9A42 cmp r2, r3
  633. 525 01ac FFF440AF bcc .L20
  634. 526 .LBE3:
  635. 91:user_src/can_debug.c **** //uart3_send_msg(msg_buf, index);
  636. 92:user_src/can_debug.c **** }
  637. 93:user_src/can_debug.c ****
  638. 94:user_src/can_debug.c **** }
  639. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 12
  640. 527 .loc 1 94 1
  641. 528 01b0 00BF nop
  642. 529 01b2 00BF nop
  643. 530 01b4 1037 adds r7, r7, #16
  644. 531 .LCFI14:
  645. 532 .cfi_def_cfa_offset 16
  646. 533 01b6 BD46 mov sp, r7
  647. 534 .LCFI15:
  648. 535 .cfi_def_cfa_register 13
  649. 536 @ sp needed
  650. 537 01b8 B0BD pop {r4, r5, r7, pc}
  651. 538 .L22:
  652. 539 01ba 00BF .align 2
  653. 540 .L21:
  654. 541 01bc 00000000 .word debug_can
  655. 542 01c0 00000000 .word msg_buf
  656. 543 01c4 00000000 .word get_data_total_len
  657. 544 .cfi_endproc
  658. 545 .LFE135:
  659. 547 .section .text.register_can_dev_func,"ax",%progbits
  660. 548 .align 1
  661. 549 .global register_can_dev_func
  662. 550 .syntax unified
  663. 551 .thumb
  664. 552 .thumb_func
  665. 554 register_can_dev_func:
  666. 555 .LFB136:
  667. 95:user_src/can_debug.c ****
  668. 96:user_src/can_debug.c **** void register_can_dev_func(uint8_t *buf)
  669. 97:user_src/can_debug.c **** {
  670. 556 .loc 1 97 1
  671. 557 .cfi_startproc
  672. 558 @ args = 0, pretend = 0, frame = 32
  673. 559 @ frame_needed = 1, uses_anonymous_args = 0
  674. 560 0000 90B5 push {r4, r7, lr}
  675. 561 .LCFI16:
  676. 562 .cfi_def_cfa_offset 12
  677. 563 .cfi_offset 4, -12
  678. 564 .cfi_offset 7, -8
  679. 565 .cfi_offset 14, -4
  680. 566 0002 89B0 sub sp, sp, #36
  681. 567 .LCFI17:
  682. 568 .cfi_def_cfa_offset 48
  683. 569 0004 00AF add r7, sp, #0
  684. 570 .LCFI18:
  685. 571 .cfi_def_cfa_register 7
  686. 572 0006 7860 str r0, [r7, #4]
  687. 98:user_src/can_debug.c **** #pragma pack(1)
  688. 99:user_src/can_debug.c **** struct can_dev_temp
  689. 100:user_src/can_debug.c **** {
  690. 101:user_src/can_debug.c **** uint32_t ID;
  691. 102:user_src/can_debug.c **** uint8_t len;
  692. 103:user_src/can_debug.c **** uint8_t data[8];
  693. 104:user_src/can_debug.c **** uint32_t time;
  694. 105:user_src/can_debug.c **** };
  695. 106:user_src/can_debug.c **** #pragma pack(0)
  696. 107:user_src/can_debug.c ****
  697. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 13
  698. 108:user_src/can_debug.c **** struct can_dev_temp temp_a;
  699. 109:user_src/can_debug.c **** uint8_t i = 0;
  700. 573 .loc 1 109 13
  701. 574 0008 0023 movs r3, #0
  702. 575 000a FB77 strb r3, [r7, #31]
  703. 110:user_src/can_debug.c ****
  704. 111:user_src/can_debug.c **** memcpy(&temp_a.ID,buf,sizeof(struct can_dev_temp));
  705. 576 .loc 1 111 5
  706. 577 000c 07F10C03 add r3, r7, #12
  707. 578 0010 1122 movs r2, #17
  708. 579 0012 7968 ldr r1, [r7, #4]
  709. 580 0014 1846 mov r0, r3
  710. 581 0016 FFF7FEFF bl memcpy
  711. 112:user_src/can_debug.c ****
  712. 113:user_src/can_debug.c **** if(debug_can.Total_Dev_num != 0)
  713. 582 .loc 1 113 17
  714. 583 001a 484B ldr r3, .L32
  715. 584 001c B3F82033 ldrh r3, [r3, #800]
  716. 585 .loc 1 113 7
  717. 586 0020 002B cmp r3, #0
  718. 587 0022 30D0 beq .L24
  719. 114:user_src/can_debug.c **** {
  720. 115:user_src/can_debug.c **** for(i=0;i<debug_can.Total_Dev_num;i++)
  721. 588 .loc 1 115 14
  722. 589 0024 0023 movs r3, #0
  723. 590 0026 FB77 strb r3, [r7, #31]
  724. 591 .loc 1 115 9
  725. 592 0028 25E0 b .L25
  726. 593 .L29:
  727. 116:user_src/can_debug.c **** {
  728. 117:user_src/can_debug.c **** if(debug_can.ID_buf[i].ID == temp_a.ID)
  729. 594 .loc 1 117 35
  730. 595 002a FA7F ldrb r2, [r7, #31] @ zero_extendqisi2
  731. 596 002c 4349 ldr r1, .L32
  732. 597 002e 1346 mov r3, r2
  733. 598 0030 9B00 lsls r3, r3, #2
  734. 599 0032 1344 add r3, r3, r2
  735. 600 0034 9B00 lsls r3, r3, #2
  736. 601 0036 0B44 add r3, r3, r1
  737. 602 0038 1A68 ldr r2, [r3]
  738. 603 .loc 1 117 48
  739. 604 003a FB68 ldr r3, [r7, #12]
  740. 605 .loc 1 117 15
  741. 606 003c 9A42 cmp r2, r3
  742. 607 003e 2BD0 beq .L31
  743. 118:user_src/can_debug.c **** {
  744. 119:user_src/can_debug.c **** break;
  745. 120:user_src/can_debug.c **** }
  746. 121:user_src/can_debug.c **** if((i + 1 == debug_can.Total_Dev_num) && (debug_can.Total_Dev_num < MAX_ID_NUM - 1)) //
  747. 608 .loc 1 121 19
  748. 609 0040 FB7F ldrb r3, [r7, #31] @ zero_extendqisi2
  749. 610 0042 0133 adds r3, r3, #1
  750. 611 .loc 1 121 35
  751. 612 0044 3D4A ldr r2, .L32
  752. 613 0046 B2F82023 ldrh r2, [r2, #800]
  753. 614 .loc 1 121 15
  754. 615 004a 9342 cmp r3, r2
  755. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 14
  756. 616 004c 10D1 bne .L28
  757. 617 .loc 1 121 64 discriminator 1
  758. 618 004e 3B4B ldr r3, .L32
  759. 619 0050 B3F82033 ldrh r3, [r3, #800]
  760. 620 .loc 1 121 51 discriminator 1
  761. 621 0054 262B cmp r3, #38
  762. 622 0056 0BD8 bhi .L28
  763. 122:user_src/can_debug.c **** {
  764. 123:user_src/can_debug.c **** debug_can.Total_Dev_num++;
  765. 623 .loc 1 123 26
  766. 624 0058 384B ldr r3, .L32
  767. 625 005a B3F82033 ldrh r3, [r3, #800]
  768. 626 .loc 1 123 40
  769. 627 005e 0133 adds r3, r3, #1
  770. 628 0060 9AB2 uxth r2, r3
  771. 629 0062 364B ldr r3, .L32
  772. 630 0064 A3F82023 strh r2, [r3, #800] @ movhi
  773. 124:user_src/can_debug.c **** i++;
  774. 631 .loc 1 124 18
  775. 632 0068 FB7F ldrb r3, [r7, #31] @ zero_extendqisi2
  776. 633 006a 0133 adds r3, r3, #1
  777. 634 006c FB77 strb r3, [r7, #31]
  778. 125:user_src/can_debug.c **** break;
  779. 635 .loc 1 125 17
  780. 636 006e 14E0 b .L30
  781. 637 .L28:
  782. 115:user_src/can_debug.c **** {
  783. 638 .loc 1 115 44 discriminator 2
  784. 639 0070 FB7F ldrb r3, [r7, #31] @ zero_extendqisi2
  785. 640 0072 0133 adds r3, r3, #1
  786. 641 0074 FB77 strb r3, [r7, #31]
  787. 642 .L25:
  788. 115:user_src/can_debug.c **** {
  789. 643 .loc 1 115 18 discriminator 1
  790. 644 0076 FB7F ldrb r3, [r7, #31] @ zero_extendqisi2
  791. 645 0078 9AB2 uxth r2, r3
  792. 115:user_src/can_debug.c **** {
  793. 646 .loc 1 115 28 discriminator 1
  794. 647 007a 304B ldr r3, .L32
  795. 648 007c B3F82033 ldrh r3, [r3, #800]
  796. 115:user_src/can_debug.c **** {
  797. 649 .loc 1 115 9 discriminator 1
  798. 650 0080 9A42 cmp r2, r3
  799. 651 0082 D2D3 bcc .L29
  800. 652 0084 09E0 b .L30
  801. 653 .L24:
  802. 126:user_src/can_debug.c **** }
  803. 127:user_src/can_debug.c **** }
  804. 128:user_src/can_debug.c **** }
  805. 129:user_src/can_debug.c **** else
  806. 130:user_src/can_debug.c **** {
  807. 131:user_src/can_debug.c **** debug_can.Total_Dev_num++;
  808. 654 .loc 1 131 18
  809. 655 0086 2D4B ldr r3, .L32
  810. 656 0088 B3F82033 ldrh r3, [r3, #800]
  811. 657 .loc 1 131 32
  812. 658 008c 0133 adds r3, r3, #1
  813. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 15
  814. 659 008e 9AB2 uxth r2, r3
  815. 660 0090 2A4B ldr r3, .L32
  816. 661 0092 A3F82023 strh r2, [r3, #800] @ movhi
  817. 662 0096 00E0 b .L30
  818. 663 .L31:
  819. 119:user_src/can_debug.c **** }
  820. 664 .loc 1 119 17
  821. 665 0098 00BF nop
  822. 666 .L30:
  823. 132:user_src/can_debug.c **** }
  824. 133:user_src/can_debug.c ****
  825. 134:user_src/can_debug.c **** debug_can.ID_buf[i].ID = temp_a.ID;
  826. 667 .loc 1 134 24
  827. 668 009a FA7F ldrb r2, [r7, #31] @ zero_extendqisi2
  828. 669 .loc 1 134 36
  829. 670 009c F968 ldr r1, [r7, #12]
  830. 671 .loc 1 134 28
  831. 672 009e 2748 ldr r0, .L32
  832. 673 00a0 1346 mov r3, r2
  833. 674 00a2 9B00 lsls r3, r3, #2
  834. 675 00a4 1344 add r3, r3, r2
  835. 676 00a6 9B00 lsls r3, r3, #2
  836. 677 00a8 0344 add r3, r3, r0
  837. 678 00aa 1960 str r1, [r3]
  838. 135:user_src/can_debug.c **** debug_can.ID_buf[i].len = temp_a.len;
  839. 679 .loc 1 135 24
  840. 680 00ac FA7F ldrb r2, [r7, #31] @ zero_extendqisi2
  841. 681 .loc 1 135 37
  842. 682 00ae 387C ldrb r0, [r7, #16] @ zero_extendqisi2
  843. 683 .loc 1 135 29
  844. 684 00b0 2249 ldr r1, .L32
  845. 685 00b2 1346 mov r3, r2
  846. 686 00b4 9B00 lsls r3, r3, #2
  847. 687 00b6 1344 add r3, r3, r2
  848. 688 00b8 9B00 lsls r3, r3, #2
  849. 689 00ba 0B44 add r3, r3, r1
  850. 690 00bc 0433 adds r3, r3, #4
  851. 691 00be 0246 mov r2, r0
  852. 692 00c0 1A70 strb r2, [r3]
  853. 136:user_src/can_debug.c **** debug_can.ID_buf[i].send_fre = 1000 / (HAL_GetTick() - debug_can.ID_buf[i].ID_time);
  854. 693 .loc 1 136 44
  855. 694 00c2 FFF7FEFF bl HAL_GetTick
  856. 695 00c6 0146 mov r1, r0
  857. 696 .loc 1 136 79
  858. 697 00c8 FA7F ldrb r2, [r7, #31] @ zero_extendqisi2
  859. 698 00ca 1C48 ldr r0, .L32
  860. 699 00cc 1346 mov r3, r2
  861. 700 00ce 9B00 lsls r3, r3, #2
  862. 701 00d0 1344 add r3, r3, r2
  863. 702 00d2 9B00 lsls r3, r3, #2
  864. 703 00d4 0344 add r3, r3, r0
  865. 704 00d6 1033 adds r3, r3, #16
  866. 705 00d8 1B68 ldr r3, [r3]
  867. 706 .loc 1 136 58
  868. 707 00da CB1A subs r3, r1, r3
  869. 708 .loc 1 136 41
  870. 709 00dc 4FF47A72 mov r2, #1000
  871. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 16
  872. 710 00e0 B2FBF3F3 udiv r3, r2, r3
  873. 711 .loc 1 136 24
  874. 712 00e4 FA7F ldrb r2, [r7, #31] @ zero_extendqisi2
  875. 713 .loc 1 136 34
  876. 714 00e6 D8B2 uxtb r0, r3
  877. 715 00e8 1449 ldr r1, .L32
  878. 716 00ea 1346 mov r3, r2
  879. 717 00ec 9B00 lsls r3, r3, #2
  880. 718 00ee 1344 add r3, r3, r2
  881. 719 00f0 9B00 lsls r3, r3, #2
  882. 720 00f2 0B44 add r3, r3, r1
  883. 721 00f4 0633 adds r3, r3, #6
  884. 722 00f6 0246 mov r2, r0
  885. 723 00f8 1A70 strb r2, [r3]
  886. 137:user_src/can_debug.c **** debug_can.ID_buf[i].ID_time = HAL_GetTick();
  887. 724 .loc 1 137 24
  888. 725 00fa FC7F ldrb r4, [r7, #31] @ zero_extendqisi2
  889. 726 .loc 1 137 35
  890. 727 00fc FFF7FEFF bl HAL_GetTick
  891. 728 0100 0246 mov r2, r0
  892. 729 .loc 1 137 33
  893. 730 0102 0E49 ldr r1, .L32
  894. 731 0104 2346 mov r3, r4
  895. 732 0106 9B00 lsls r3, r3, #2
  896. 733 0108 2344 add r3, r3, r4
  897. 734 010a 9B00 lsls r3, r3, #2
  898. 735 010c 0B44 add r3, r3, r1
  899. 736 010e 1033 adds r3, r3, #16
  900. 737 0110 1A60 str r2, [r3]
  901. 138:user_src/can_debug.c **** memcpy(&debug_can.ID_buf[i].data[0],&temp_a.data[0],temp_a.len);
  902. 738 .loc 1 138 37
  903. 739 0112 FA7F ldrb r2, [r7, #31] @ zero_extendqisi2
  904. 740 .loc 1 138 12
  905. 741 0114 1346 mov r3, r2
  906. 742 0116 9B00 lsls r3, r3, #2
  907. 743 0118 1344 add r3, r3, r2
  908. 744 011a 9B00 lsls r3, r3, #2
  909. 745 011c 074A ldr r2, .L32
  910. 746 011e 1344 add r3, r3, r2
  911. 747 0120 D81D adds r0, r3, #7
  912. 748 .loc 1 138 63
  913. 749 0122 3B7C ldrb r3, [r7, #16] @ zero_extendqisi2
  914. 750 .loc 1 138 5
  915. 751 0124 1A46 mov r2, r3
  916. 752 0126 07F10C03 add r3, r7, #12
  917. 753 012a 0533 adds r3, r3, #5
  918. 754 012c 1946 mov r1, r3
  919. 755 012e FFF7FEFF bl memcpy
  920. 139:user_src/can_debug.c **** }
  921. 756 .loc 1 139 1
  922. 757 0132 00BF nop
  923. 758 0134 2437 adds r7, r7, #36
  924. 759 .LCFI19:
  925. 760 .cfi_def_cfa_offset 12
  926. 761 0136 BD46 mov sp, r7
  927. 762 .LCFI20:
  928. 763 .cfi_def_cfa_register 13
  929. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 17
  930. 764 @ sp needed
  931. 765 0138 90BD pop {r4, r7, pc}
  932. 766 .L33:
  933. 767 013a 00BF .align 2
  934. 768 .L32:
  935. 769 013c 00000000 .word debug_can
  936. 770 .cfi_endproc
  937. 771 .LFE136:
  938. 773 .section .text.seek_can_debug_buf_adr,"ax",%progbits
  939. 774 .align 1
  940. 775 .global seek_can_debug_buf_adr
  941. 776 .syntax unified
  942. 777 .thumb
  943. 778 .thumb_func
  944. 780 seek_can_debug_buf_adr:
  945. 781 .LFB137:
  946. 140:user_src/can_debug.c ****
  947. 141:user_src/can_debug.c ****
  948. 142:user_src/can_debug.c **** void seek_can_debug_buf_adr(void)
  949. 143:user_src/can_debug.c **** {
  950. 782 .loc 1 143 1
  951. 783 .cfi_startproc
  952. 784 @ args = 0, pretend = 0, frame = 136
  953. 785 @ frame_needed = 1, uses_anonymous_args = 0
  954. 786 0000 80B5 push {r7, lr}
  955. 787 .LCFI21:
  956. 788 .cfi_def_cfa_offset 8
  957. 789 .cfi_offset 7, -8
  958. 790 .cfi_offset 14, -4
  959. 791 0002 A2B0 sub sp, sp, #136
  960. 792 .LCFI22:
  961. 793 .cfi_def_cfa_offset 144
  962. 794 0004 00AF add r7, sp, #0
  963. 795 .LCFI23:
  964. 796 .cfi_def_cfa_register 7
  965. 144:user_src/can_debug.c **** uint8_t temp_buf[128] = {0}, c = 0, seek_i = 0;
  966. 797 .loc 1 144 13
  967. 798 0006 0023 movs r3, #0
  968. 799 0008 7B60 str r3, [r7, #4]
  969. 800 000a 07F10803 add r3, r7, #8
  970. 801 000e 7C22 movs r2, #124
  971. 802 0010 0021 movs r1, #0
  972. 803 0012 1846 mov r0, r3
  973. 804 0014 FFF7FEFF bl memset
  974. 805 .loc 1 144 34
  975. 806 0018 0023 movs r3, #0
  976. 807 001a FB70 strb r3, [r7, #3]
  977. 808 .loc 1 144 41
  978. 809 001c 0023 movs r3, #0
  979. 810 001e 87F88730 strb r3, [r7, #135]
  980. 145:user_src/can_debug.c ****
  981. 146:user_src/can_debug.c **** while (rkfifo_out(&candebug_rkfifo, &c, 1) != 0)
  982. 811 .loc 1 146 11
  983. 812 0022 2BE0 b .L35
  984. 813 .L38:
  985. 147:user_src/can_debug.c **** {
  986. 148:user_src/can_debug.c **** temp_buf[seek_i] = c;
  987. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 18
  988. 814 .loc 1 148 17
  989. 815 0024 97F88730 ldrb r3, [r7, #135] @ zero_extendqisi2
  990. 816 .loc 1 148 26
  991. 817 0028 FA78 ldrb r2, [r7, #3] @ zero_extendqisi2
  992. 818 002a 8833 adds r3, r3, #136
  993. 819 002c 3B44 add r3, r3, r7
  994. 820 002e 03F8842C strb r2, [r3, #-132]
  995. 149:user_src/can_debug.c ****
  996. 150:user_src/can_debug.c **** if(temp_buf[seek_i] == 'K' && temp_buf[seek_i - 1] == 'V')
  997. 821 .loc 1 150 20
  998. 822 0032 97F88730 ldrb r3, [r7, #135] @ zero_extendqisi2
  999. 823 0036 8833 adds r3, r3, #136
  1000. 824 0038 3B44 add r3, r3, r7
  1001. 825 003a 13F8843C ldrb r3, [r3, #-132] @ zero_extendqisi2
  1002. 826 .loc 1 150 11
  1003. 827 003e 4B2B cmp r3, #75
  1004. 828 0040 17D1 bne .L36
  1005. 829 .loc 1 150 55 discriminator 1
  1006. 830 0042 97F88730 ldrb r3, [r7, #135] @ zero_extendqisi2
  1007. 831 0046 013B subs r3, r3, #1
  1008. 832 .loc 1 150 47 discriminator 1
  1009. 833 0048 8833 adds r3, r3, #136
  1010. 834 004a 3B44 add r3, r3, r7
  1011. 835 004c 13F8843C ldrb r3, [r3, #-132] @ zero_extendqisi2
  1012. 836 .loc 1 150 36 discriminator 1
  1013. 837 0050 562B cmp r3, #86
  1014. 838 0052 0ED1 bne .L36
  1015. 151:user_src/can_debug.c **** {
  1016. 152:user_src/can_debug.c **** temp_buf[seek_i] = c;
  1017. 839 .loc 1 152 21
  1018. 840 0054 97F88730 ldrb r3, [r7, #135] @ zero_extendqisi2
  1019. 841 .loc 1 152 30
  1020. 842 0058 FA78 ldrb r2, [r7, #3] @ zero_extendqisi2
  1021. 843 005a 8833 adds r3, r3, #136
  1022. 844 005c 3B44 add r3, r3, r7
  1023. 845 005e 03F8842C strb r2, [r3, #-132]
  1024. 153:user_src/can_debug.c **** register_can_dev_func(temp_buf);
  1025. 846 .loc 1 153 13
  1026. 847 0062 3B1D adds r3, r7, #4
  1027. 848 0064 1846 mov r0, r3
  1028. 849 0066 FFF7FEFF bl register_can_dev_func
  1029. 154:user_src/can_debug.c **** seek_i = 0;
  1030. 850 .loc 1 154 20
  1031. 851 006a 0023 movs r3, #0
  1032. 852 006c 87F88730 strb r3, [r7, #135]
  1033. 155:user_src/can_debug.c **** break;
  1034. 853 .loc 1 155 13
  1035. 854 0070 0EE0 b .L37
  1036. 855 .L36:
  1037. 156:user_src/can_debug.c **** }
  1038. 157:user_src/can_debug.c **** else
  1039. 158:user_src/can_debug.c **** {
  1040. 159:user_src/can_debug.c **** seek_i++;
  1041. 856 .loc 1 159 19
  1042. 857 0072 97F88730 ldrb r3, [r7, #135] @ zero_extendqisi2
  1043. 858 0076 0133 adds r3, r3, #1
  1044. 859 0078 87F88730 strb r3, [r7, #135]
  1045. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 19
  1046. 860 .L35:
  1047. 146:user_src/can_debug.c **** {
  1048. 861 .loc 1 146 12
  1049. 862 007c FB1C adds r3, r7, #3
  1050. 863 007e 0122 movs r2, #1
  1051. 864 0080 1946 mov r1, r3
  1052. 865 0082 0548 ldr r0, .L39
  1053. 866 0084 FFF7FEFF bl rkfifo_out
  1054. 867 0088 0346 mov r3, r0
  1055. 146:user_src/can_debug.c **** {
  1056. 868 .loc 1 146 11
  1057. 869 008a 002B cmp r3, #0
  1058. 870 008c CAD1 bne .L38
  1059. 160:user_src/can_debug.c **** }
  1060. 161:user_src/can_debug.c **** }
  1061. 162:user_src/can_debug.c ****
  1062. 163:user_src/can_debug.c **** }
  1063. 871 .loc 1 163 1
  1064. 872 008e 00BF nop
  1065. 873 .L37:
  1066. 874 0090 00BF nop
  1067. 875 0092 8837 adds r7, r7, #136
  1068. 876 .LCFI24:
  1069. 877 .cfi_def_cfa_offset 8
  1070. 878 0094 BD46 mov sp, r7
  1071. 879 .LCFI25:
  1072. 880 .cfi_def_cfa_register 13
  1073. 881 @ sp needed
  1074. 882 0096 80BD pop {r7, pc}
  1075. 883 .L40:
  1076. 884 .align 2
  1077. 885 .L39:
  1078. 886 0098 00000000 .word candebug_rkfifo
  1079. 887 .cfi_endproc
  1080. 888 .LFE137:
  1081. 890 .section .text.put_candata_to_rkfifo_rx,"ax",%progbits
  1082. 891 .align 1
  1083. 892 .global put_candata_to_rkfifo_rx
  1084. 893 .syntax unified
  1085. 894 .thumb
  1086. 895 .thumb_func
  1087. 897 put_candata_to_rkfifo_rx:
  1088. 898 .LFB138:
  1089. 164:user_src/can_debug.c ****
  1090. 165:user_src/can_debug.c **** void put_candata_to_rkfifo_rx(CAN_RxHeaderTypeDef rxhead,uint8_t *data)
  1091. 166:user_src/can_debug.c **** {
  1092. 899 .loc 1 166 1
  1093. 900 .cfi_startproc
  1094. 901 @ args = 32, pretend = 16, frame = 40
  1095. 902 @ frame_needed = 1, uses_anonymous_args = 0
  1096. 903 0000 84B0 sub sp, sp, #16
  1097. 904 .LCFI26:
  1098. 905 .cfi_def_cfa_offset 16
  1099. 906 0002 80B5 push {r7, lr}
  1100. 907 .LCFI27:
  1101. 908 .cfi_def_cfa_offset 24
  1102. 909 .cfi_offset 7, -24
  1103. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 20
  1104. 910 .cfi_offset 14, -20
  1105. 911 0004 8AB0 sub sp, sp, #40
  1106. 912 .LCFI28:
  1107. 913 .cfi_def_cfa_offset 64
  1108. 914 0006 00AF add r7, sp, #0
  1109. 915 .LCFI29:
  1110. 916 .cfi_def_cfa_register 7
  1111. 917 0008 07F1300C add ip, r7, #48
  1112. 918 000c 8CE80F00 stm ip, {r0, r1, r2, r3}
  1113. 167:user_src/can_debug.c **** uint32_t cur_time = HAL_GetTick();
  1114. 919 .loc 1 167 25
  1115. 920 0010 FFF7FEFF bl HAL_GetTick
  1116. 921 0014 0346 mov r3, r0
  1117. 922 .loc 1 167 14
  1118. 923 0016 3B62 str r3, [r7, #32]
  1119. 168:user_src/can_debug.c **** uint8_t tem_buf[30] = {0},i = 0;
  1120. 924 .loc 1 168 13
  1121. 925 0018 0023 movs r3, #0
  1122. 926 001a 3B60 str r3, [r7]
  1123. 927 001c 3B1D adds r3, r7, #4
  1124. 928 001e 0022 movs r2, #0
  1125. 929 0020 1A60 str r2, [r3]
  1126. 930 0022 5A60 str r2, [r3, #4]
  1127. 931 0024 9A60 str r2, [r3, #8]
  1128. 932 0026 DA60 str r2, [r3, #12]
  1129. 933 0028 1A61 str r2, [r3, #16]
  1130. 934 002a 5A61 str r2, [r3, #20]
  1131. 935 002c 1A83 strh r2, [r3, #24] @ movhi
  1132. 936 .loc 1 168 31
  1133. 937 002e 0023 movs r3, #0
  1134. 938 0030 87F82730 strb r3, [r7, #39]
  1135. 169:user_src/can_debug.c ****
  1136. 170:user_src/can_debug.c **** if(rxhead.IDE == CAN_ID_STD)
  1137. 939 .loc 1 170 14
  1138. 940 0034 BB6B ldr r3, [r7, #56]
  1139. 941 .loc 1 170 7
  1140. 942 0036 002B cmp r3, #0
  1141. 943 0038 06D1 bne .L42
  1142. 171:user_src/can_debug.c **** memcpy(&tem_buf[i],&rxhead.StdId,4);
  1143. 944 .loc 1 171 24
  1144. 945 003a 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1145. 946 .loc 1 171 16
  1146. 947 003e 3A46 mov r2, r7
  1147. 948 0040 1344 add r3, r3, r2
  1148. 949 0042 3A6B ldr r2, [r7, #48]
  1149. 950 .loc 1 171 9
  1150. 951 0044 1A60 str r2, [r3] @ unaligned
  1151. 952 0046 05E0 b .L43
  1152. 953 .L42:
  1153. 172:user_src/can_debug.c **** else
  1154. 173:user_src/can_debug.c **** memcpy(&tem_buf[i],&rxhead.ExtId,4);
  1155. 954 .loc 1 173 24
  1156. 955 0048 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1157. 956 .loc 1 173 16
  1158. 957 004c 3A46 mov r2, r7
  1159. 958 004e 1344 add r3, r3, r2
  1160. 959 0050 7A6B ldr r2, [r7, #52]
  1161. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 21
  1162. 960 .loc 1 173 9
  1163. 961 0052 1A60 str r2, [r3] @ unaligned
  1164. 962 .L43:
  1165. 174:user_src/can_debug.c ****
  1166. 175:user_src/can_debug.c **** i += 4;
  1167. 963 .loc 1 175 7
  1168. 964 0054 97F82730 ldrb r3, [r7, #39]
  1169. 965 0058 0433 adds r3, r3, #4
  1170. 966 005a 87F82730 strb r3, [r7, #39]
  1171. 176:user_src/can_debug.c **** tem_buf[i++] = rxhead.DLC;
  1172. 967 .loc 1 176 26
  1173. 968 005e 3A6C ldr r2, [r7, #64]
  1174. 969 .loc 1 176 14
  1175. 970 0060 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1176. 971 0064 591C adds r1, r3, #1
  1177. 972 0066 87F82710 strb r1, [r7, #39]
  1178. 973 .loc 1 176 18
  1179. 974 006a D2B2 uxtb r2, r2
  1180. 975 006c 2833 adds r3, r3, #40
  1181. 976 006e 3B44 add r3, r3, r7
  1182. 977 0070 03F8282C strb r2, [r3, #-40]
  1183. 177:user_src/can_debug.c **** memcpy(&tem_buf[i],&data[0],8);
  1184. 978 .loc 1 177 20
  1185. 979 0074 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1186. 980 .loc 1 177 12
  1187. 981 0078 3A46 mov r2, r7
  1188. 982 007a 1344 add r3, r3, r2
  1189. 983 .loc 1 177 5
  1190. 984 007c 0822 movs r2, #8
  1191. 985 007e F96C ldr r1, [r7, #76]
  1192. 986 0080 1846 mov r0, r3
  1193. 987 0082 FFF7FEFF bl memcpy
  1194. 178:user_src/can_debug.c **** i += 8;
  1195. 988 .loc 1 178 7
  1196. 989 0086 97F82730 ldrb r3, [r7, #39]
  1197. 990 008a 0833 adds r3, r3, #8
  1198. 991 008c 87F82730 strb r3, [r7, #39]
  1199. 179:user_src/can_debug.c **** memcpy(&tem_buf[i],&cur_time,4);
  1200. 992 .loc 1 179 20
  1201. 993 0090 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1202. 994 .loc 1 179 12
  1203. 995 0094 3A46 mov r2, r7
  1204. 996 0096 1344 add r3, r3, r2
  1205. 997 0098 3A6A ldr r2, [r7, #32]
  1206. 998 .loc 1 179 5
  1207. 999 009a 1A60 str r2, [r3] @ unaligned
  1208. 180:user_src/can_debug.c **** i += 4;
  1209. 1000 .loc 1 180 7
  1210. 1001 009c 97F82730 ldrb r3, [r7, #39]
  1211. 1002 00a0 0433 adds r3, r3, #4
  1212. 1003 00a2 87F82730 strb r3, [r7, #39]
  1213. 181:user_src/can_debug.c **** tem_buf[i++] = 'V';
  1214. 1004 .loc 1 181 14
  1215. 1005 00a6 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1216. 1006 00aa 5A1C adds r2, r3, #1
  1217. 1007 00ac 87F82720 strb r2, [r7, #39]
  1218. 1008 .loc 1 181 18
  1219. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 22
  1220. 1009 00b0 2833 adds r3, r3, #40
  1221. 1010 00b2 3B44 add r3, r3, r7
  1222. 1011 00b4 5622 movs r2, #86
  1223. 1012 00b6 03F8282C strb r2, [r3, #-40]
  1224. 182:user_src/can_debug.c **** tem_buf[i++] = 'K';
  1225. 1013 .loc 1 182 14
  1226. 1014 00ba 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1227. 1015 00be 5A1C adds r2, r3, #1
  1228. 1016 00c0 87F82720 strb r2, [r7, #39]
  1229. 1017 .loc 1 182 18
  1230. 1018 00c4 2833 adds r3, r3, #40
  1231. 1019 00c6 3B44 add r3, r3, r7
  1232. 1020 00c8 4B22 movs r2, #75
  1233. 1021 00ca 03F8282C strb r2, [r3, #-40]
  1234. 183:user_src/can_debug.c ****
  1235. 184:user_src/can_debug.c **** rkfifo_in(&candebug_rkfifo,tem_buf,i);
  1236. 1022 .loc 1 184 5
  1237. 1023 00ce 97F82720 ldrb r2, [r7, #39] @ zero_extendqisi2
  1238. 1024 00d2 3B46 mov r3, r7
  1239. 1025 00d4 1946 mov r1, r3
  1240. 1026 00d6 0548 ldr r0, .L44
  1241. 1027 00d8 FFF7FEFF bl rkfifo_in
  1242. 185:user_src/can_debug.c **** }
  1243. 1028 .loc 1 185 1
  1244. 1029 00dc 00BF nop
  1245. 1030 00de 2837 adds r7, r7, #40
  1246. 1031 .LCFI30:
  1247. 1032 .cfi_def_cfa_offset 24
  1248. 1033 00e0 BD46 mov sp, r7
  1249. 1034 .LCFI31:
  1250. 1035 .cfi_def_cfa_register 13
  1251. 1036 @ sp needed
  1252. 1037 00e2 BDE88040 pop {r7, lr}
  1253. 1038 .LCFI32:
  1254. 1039 .cfi_restore 14
  1255. 1040 .cfi_restore 7
  1256. 1041 .cfi_def_cfa_offset 16
  1257. 1042 00e6 04B0 add sp, sp, #16
  1258. 1043 .LCFI33:
  1259. 1044 .cfi_def_cfa_offset 0
  1260. 1045 00e8 7047 bx lr
  1261. 1046 .L45:
  1262. 1047 00ea 00BF .align 2
  1263. 1048 .L44:
  1264. 1049 00ec 00000000 .word candebug_rkfifo
  1265. 1050 .cfi_endproc
  1266. 1051 .LFE138:
  1267. 1053 .section .text.put_candata_to_rkfifo_tx,"ax",%progbits
  1268. 1054 .align 1
  1269. 1055 .global put_candata_to_rkfifo_tx
  1270. 1056 .syntax unified
  1271. 1057 .thumb
  1272. 1058 .thumb_func
  1273. 1060 put_candata_to_rkfifo_tx:
  1274. 1061 .LFB139:
  1275. 186:user_src/can_debug.c ****
  1276. 187:user_src/can_debug.c **** void put_candata_to_rkfifo_tx(CAN_TxHeaderTypeDef txhead,uint8_t *data)
  1277. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 23
  1278. 188:user_src/can_debug.c **** {
  1279. 1062 .loc 1 188 1
  1280. 1063 .cfi_startproc
  1281. 1064 @ args = 28, pretend = 16, frame = 40
  1282. 1065 @ frame_needed = 1, uses_anonymous_args = 0
  1283. 1066 0000 84B0 sub sp, sp, #16
  1284. 1067 .LCFI34:
  1285. 1068 .cfi_def_cfa_offset 16
  1286. 1069 0002 80B5 push {r7, lr}
  1287. 1070 .LCFI35:
  1288. 1071 .cfi_def_cfa_offset 24
  1289. 1072 .cfi_offset 7, -24
  1290. 1073 .cfi_offset 14, -20
  1291. 1074 0004 8AB0 sub sp, sp, #40
  1292. 1075 .LCFI36:
  1293. 1076 .cfi_def_cfa_offset 64
  1294. 1077 0006 00AF add r7, sp, #0
  1295. 1078 .LCFI37:
  1296. 1079 .cfi_def_cfa_register 7
  1297. 1080 0008 07F1300C add ip, r7, #48
  1298. 1081 000c 8CE80F00 stm ip, {r0, r1, r2, r3}
  1299. 189:user_src/can_debug.c **** uint32_t cur_time = HAL_GetTick();
  1300. 1082 .loc 1 189 25
  1301. 1083 0010 FFF7FEFF bl HAL_GetTick
  1302. 1084 0014 0346 mov r3, r0
  1303. 1085 .loc 1 189 14
  1304. 1086 0016 3B62 str r3, [r7, #32]
  1305. 190:user_src/can_debug.c **** uint8_t tem_buf[30] = {0},i = 0;
  1306. 1087 .loc 1 190 13
  1307. 1088 0018 0023 movs r3, #0
  1308. 1089 001a 3B60 str r3, [r7]
  1309. 1090 001c 3B1D adds r3, r7, #4
  1310. 1091 001e 0022 movs r2, #0
  1311. 1092 0020 1A60 str r2, [r3]
  1312. 1093 0022 5A60 str r2, [r3, #4]
  1313. 1094 0024 9A60 str r2, [r3, #8]
  1314. 1095 0026 DA60 str r2, [r3, #12]
  1315. 1096 0028 1A61 str r2, [r3, #16]
  1316. 1097 002a 5A61 str r2, [r3, #20]
  1317. 1098 002c 1A83 strh r2, [r3, #24] @ movhi
  1318. 1099 .loc 1 190 31
  1319. 1100 002e 0023 movs r3, #0
  1320. 1101 0030 87F82730 strb r3, [r7, #39]
  1321. 191:user_src/can_debug.c ****
  1322. 192:user_src/can_debug.c **** if(txhead.IDE == CAN_ID_STD)
  1323. 1102 .loc 1 192 14
  1324. 1103 0034 BB6B ldr r3, [r7, #56]
  1325. 1104 .loc 1 192 7
  1326. 1105 0036 002B cmp r3, #0
  1327. 1106 0038 06D1 bne .L47
  1328. 193:user_src/can_debug.c **** memcpy(&tem_buf[i],&txhead.StdId,4);
  1329. 1107 .loc 1 193 24
  1330. 1108 003a 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1331. 1109 .loc 1 193 16
  1332. 1110 003e 3A46 mov r2, r7
  1333. 1111 0040 1344 add r3, r3, r2
  1334. 1112 0042 3A6B ldr r2, [r7, #48]
  1335. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 24
  1336. 1113 .loc 1 193 9
  1337. 1114 0044 1A60 str r2, [r3] @ unaligned
  1338. 1115 0046 05E0 b .L48
  1339. 1116 .L47:
  1340. 194:user_src/can_debug.c **** else
  1341. 195:user_src/can_debug.c **** memcpy(&tem_buf[i],&txhead.ExtId,4);
  1342. 1117 .loc 1 195 24
  1343. 1118 0048 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1344. 1119 .loc 1 195 16
  1345. 1120 004c 3A46 mov r2, r7
  1346. 1121 004e 1344 add r3, r3, r2
  1347. 1122 0050 7A6B ldr r2, [r7, #52]
  1348. 1123 .loc 1 195 9
  1349. 1124 0052 1A60 str r2, [r3] @ unaligned
  1350. 1125 .L48:
  1351. 196:user_src/can_debug.c ****
  1352. 197:user_src/can_debug.c **** i += 4;
  1353. 1126 .loc 1 197 7
  1354. 1127 0054 97F82730 ldrb r3, [r7, #39]
  1355. 1128 0058 0433 adds r3, r3, #4
  1356. 1129 005a 87F82730 strb r3, [r7, #39]
  1357. 198:user_src/can_debug.c **** tem_buf[i++] = txhead.DLC;
  1358. 1130 .loc 1 198 26
  1359. 1131 005e 3A6C ldr r2, [r7, #64]
  1360. 1132 .loc 1 198 14
  1361. 1133 0060 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1362. 1134 0064 591C adds r1, r3, #1
  1363. 1135 0066 87F82710 strb r1, [r7, #39]
  1364. 1136 .loc 1 198 18
  1365. 1137 006a D2B2 uxtb r2, r2
  1366. 1138 006c 2833 adds r3, r3, #40
  1367. 1139 006e 3B44 add r3, r3, r7
  1368. 1140 0070 03F8282C strb r2, [r3, #-40]
  1369. 199:user_src/can_debug.c **** memcpy(&tem_buf[i],&data[0],8);
  1370. 1141 .loc 1 199 20
  1371. 1142 0074 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1372. 1143 .loc 1 199 12
  1373. 1144 0078 3A46 mov r2, r7
  1374. 1145 007a 1344 add r3, r3, r2
  1375. 1146 .loc 1 199 5
  1376. 1147 007c 0822 movs r2, #8
  1377. 1148 007e B96C ldr r1, [r7, #72]
  1378. 1149 0080 1846 mov r0, r3
  1379. 1150 0082 FFF7FEFF bl memcpy
  1380. 200:user_src/can_debug.c **** i += 8;
  1381. 1151 .loc 1 200 7
  1382. 1152 0086 97F82730 ldrb r3, [r7, #39]
  1383. 1153 008a 0833 adds r3, r3, #8
  1384. 1154 008c 87F82730 strb r3, [r7, #39]
  1385. 201:user_src/can_debug.c **** memcpy(&tem_buf[i],&cur_time,4);
  1386. 1155 .loc 1 201 20
  1387. 1156 0090 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1388. 1157 .loc 1 201 12
  1389. 1158 0094 3A46 mov r2, r7
  1390. 1159 0096 1344 add r3, r3, r2
  1391. 1160 0098 3A6A ldr r2, [r7, #32]
  1392. 1161 .loc 1 201 5
  1393. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 25
  1394. 1162 009a 1A60 str r2, [r3] @ unaligned
  1395. 202:user_src/can_debug.c **** i += 4;
  1396. 1163 .loc 1 202 7
  1397. 1164 009c 97F82730 ldrb r3, [r7, #39]
  1398. 1165 00a0 0433 adds r3, r3, #4
  1399. 1166 00a2 87F82730 strb r3, [r7, #39]
  1400. 203:user_src/can_debug.c **** tem_buf[i++] = 'V';
  1401. 1167 .loc 1 203 14
  1402. 1168 00a6 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1403. 1169 00aa 5A1C adds r2, r3, #1
  1404. 1170 00ac 87F82720 strb r2, [r7, #39]
  1405. 1171 .loc 1 203 18
  1406. 1172 00b0 2833 adds r3, r3, #40
  1407. 1173 00b2 3B44 add r3, r3, r7
  1408. 1174 00b4 5622 movs r2, #86
  1409. 1175 00b6 03F8282C strb r2, [r3, #-40]
  1410. 204:user_src/can_debug.c **** tem_buf[i++] = 'K';
  1411. 1176 .loc 1 204 14
  1412. 1177 00ba 97F82730 ldrb r3, [r7, #39] @ zero_extendqisi2
  1413. 1178 00be 5A1C adds r2, r3, #1
  1414. 1179 00c0 87F82720 strb r2, [r7, #39]
  1415. 1180 .loc 1 204 18
  1416. 1181 00c4 2833 adds r3, r3, #40
  1417. 1182 00c6 3B44 add r3, r3, r7
  1418. 1183 00c8 4B22 movs r2, #75
  1419. 1184 00ca 03F8282C strb r2, [r3, #-40]
  1420. 205:user_src/can_debug.c ****
  1421. 206:user_src/can_debug.c **** rkfifo_in(&candebug_rkfifo,tem_buf,i);
  1422. 1185 .loc 1 206 5
  1423. 1186 00ce 97F82720 ldrb r2, [r7, #39] @ zero_extendqisi2
  1424. 1187 00d2 3B46 mov r3, r7
  1425. 1188 00d4 1946 mov r1, r3
  1426. 1189 00d6 0548 ldr r0, .L49
  1427. 1190 00d8 FFF7FEFF bl rkfifo_in
  1428. 207:user_src/can_debug.c **** }
  1429. 1191 .loc 1 207 1
  1430. 1192 00dc 00BF nop
  1431. 1193 00de 2837 adds r7, r7, #40
  1432. 1194 .LCFI38:
  1433. 1195 .cfi_def_cfa_offset 24
  1434. 1196 00e0 BD46 mov sp, r7
  1435. 1197 .LCFI39:
  1436. 1198 .cfi_def_cfa_register 13
  1437. 1199 @ sp needed
  1438. 1200 00e2 BDE88040 pop {r7, lr}
  1439. 1201 .LCFI40:
  1440. 1202 .cfi_restore 14
  1441. 1203 .cfi_restore 7
  1442. 1204 .cfi_def_cfa_offset 16
  1443. 1205 00e6 04B0 add sp, sp, #16
  1444. 1206 .LCFI41:
  1445. 1207 .cfi_def_cfa_offset 0
  1446. 1208 00e8 7047 bx lr
  1447. 1209 .L50:
  1448. 1210 00ea 00BF .align 2
  1449. 1211 .L49:
  1450. 1212 00ec 00000000 .word candebug_rkfifo
  1451. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 26
  1452. 1213 .cfi_endproc
  1453. 1214 .LFE139:
  1454. 1216 .text
  1455. 1217 .Letext0:
  1456. 1218 .file 2 "d:\\arm-gcc\\arm-none-eabi\\include\\machine\\_default_types.h"
  1457. 1219 .file 3 "d:\\arm-gcc\\arm-none-eabi\\include\\sys\\_stdint.h"
  1458. 1220 .file 4 "user_inc/rkfifo.h"
  1459. 1221 .file 5 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f3xx.h"
  1460. 1222 .file 6 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_can.h"
  1461. 1223 .file 7 "user_inc/can_debug.h"
  1462. 1224 .file 8 "user_inc/soft_p_2_c.h"
  1463. ARM GAS C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s page 27
  1464. DEFINED SYMBOLS
  1465. *ABS*:00000000 can_debug.c
  1466. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:24 .bss.candebug_rkfifo:00000000 candebug_rkfifo
  1467. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:21 .bss.candebug_rkfifo:00000000 $d
  1468. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:31 .bss.debug_can:00000000 debug_can
  1469. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:28 .bss.debug_can:00000000 $d
  1470. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:34 .text.check_can_dev_connect:00000000 $t
  1471. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:40 .text.check_can_dev_connect:00000000 check_can_dev_connect
  1472. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:146 .text.check_can_dev_connect:00000080 $d
  1473. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:151 .text.get_data_total_len:00000000 $t
  1474. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:157 .text.get_data_total_len:00000000 get_data_total_len
  1475. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:220 .text.Can_send_debug_to_app:00000000 $t
  1476. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:226 .text.Can_send_debug_to_app:00000000 Can_send_debug_to_app
  1477. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:541 .text.Can_send_debug_to_app:000001bc $d
  1478. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:548 .text.register_can_dev_func:00000000 $t
  1479. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:554 .text.register_can_dev_func:00000000 register_can_dev_func
  1480. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:769 .text.register_can_dev_func:0000013c $d
  1481. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:774 .text.seek_can_debug_buf_adr:00000000 $t
  1482. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:780 .text.seek_can_debug_buf_adr:00000000 seek_can_debug_buf_adr
  1483. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:886 .text.seek_can_debug_buf_adr:00000098 $d
  1484. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:891 .text.put_candata_to_rkfifo_rx:00000000 $t
  1485. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:897 .text.put_candata_to_rkfifo_rx:00000000 put_candata_to_rkfifo_rx
  1486. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:1049 .text.put_candata_to_rkfifo_rx:000000ec $d
  1487. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:1054 .text.put_candata_to_rkfifo_tx:00000000 $t
  1488. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:1060 .text.put_candata_to_rkfifo_tx:00000000 put_candata_to_rkfifo_tx
  1489. C:\Users\zl835\AppData\Local\Temp\cc3nOrNt.s:1212 .text.put_candata_to_rkfifo_tx:000000ec $d
  1490. UNDEFINED SYMBOLS
  1491. HAL_GetTick
  1492. memcpy
  1493. Get_Crc16
  1494. uart2_send_msg
  1495. msg_buf
  1496. memset
  1497. rkfifo_out
  1498. rkfifo_in