⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 can_sja1000.lst

📁 开发环境为GCC,AVR单片机与SJA1000实现CAN通讯。
💻 LST
📖 第 1 页 / 共 3 页
字号:
   1               		.file	"CAN_SJA1000.c"
   2               	__SREG__ = 0x3f
   3               	__SP_H__ = 0x3e
   4               	__SP_L__ = 0x3d
   5               	__CCP__  = 0x34
   6               	__tmp_reg__ = 0
   7               	__zero_reg__ = 1
   8               		.global __do_copy_data
   9               		.global __do_clear_bss
  17               	.Ltext0:
  18               	.global	Rec_Flag
  19               	.global	Rec_Flag
  20               		.section .bss
  23               	Rec_Flag:
  24 0000 00        		.skip 1,0
  25               	.global	Send_Flag
  26               	.global	Send_Flag
  29               	Send_Flag:
  30 0001 00        		.skip 1,0
  31               		.text
  32               	.global	delayMs
  34               	delayMs:
  35               	.LFB5:
  36               	.LM1:
  37 0000 DF93      		push r29
  38 0002 CF93      		push r28
  39 0004 00D0      		rcall .
  40 0006 00D0      		rcall .
  41 0008 00D0      		rcall .
  42 000a CDB7      		in r28,__SP_L__
  43 000c DEB7      		in r29,__SP_H__
  44               	/* prologue: function */
  45               	/* frame size = 6 */
  46 000e 9E83      		std Y+6,r25
  47 0010 8D83      		std Y+5,r24
  48               	.LM2:
  49 0012 1C82      		std Y+4,__zero_reg__
  50 0014 1B82      		std Y+3,__zero_reg__
  51 0016 00C0      		rjmp .L2
  52               	.L3:
  53 0018 80ED      		ldi r24,lo8(2000)
  54 001a 97E0      		ldi r25,hi8(2000)
  55 001c 9A83      		std Y+2,r25
  56 001e 8983      		std Y+1,r24
  57               	.LBB4:
  58               	.LBB5:
  59               	.LM3:
  60 0020 8981      		ldd r24,Y+1
  61 0022 9A81      		ldd r25,Y+2
  62               	/* #APP */
  63               	 ;  105 "c:/winavr-20080512/lib/gcc/../../avr/include/util/delay_basic.h" 1
  64 0024 0197      		1: sbiw r24,1
  65 0026 01F4      		brne 1b
  66               	 ;  0 "" 2
  67               	/* #NOAPP */
  68 0028 9A83      		std Y+2,r25
  69 002a 8983      		std Y+1,r24
  70               	.LBE5:
  71               	.LBE4:
  72               	.LM4:
  73 002c 8B81      		ldd r24,Y+3
  74 002e 9C81      		ldd r25,Y+4
  75 0030 0196      		adiw r24,1
  76 0032 9C83      		std Y+4,r25
  77 0034 8B83      		std Y+3,r24
  78               	.L2:
  79 0036 2B81      		ldd r18,Y+3
  80 0038 3C81      		ldd r19,Y+4
  81 003a 8D81      		ldd r24,Y+5
  82 003c 9E81      		ldd r25,Y+6
  83 003e 2817      		cp r18,r24
  84 0040 3907      		cpc r19,r25
  85 0042 00F0      		brlo .L3
  86               	/* epilogue start */
  87               	.LM5:
  88 0044 2696      		adiw r28,6
  89 0046 0FB6      		in __tmp_reg__,__SREG__
  90 0048 F894      		cli
  91 004a DEBF      		out __SP_H__,r29
  92 004c 0FBE      		out __SREG__,__tmp_reg__
  93 004e CDBF      		out __SP_L__,r28
  94 0050 CF91      		pop r28
  95 0052 DF91      		pop r29
  96 0054 0895      		ret
  97               	.LFE5:
  99               	.global	CANREG_WRITE
 101               	CANREG_WRITE:
 102               	.LFB6:
 103               	.LM6:
 104 0056 DF93      		push r29
 105 0058 CF93      		push r28
 106 005a 00D0      		rcall .
 107 005c 00D0      		rcall .
 108 005e 0F92      		push __tmp_reg__
 109 0060 CDB7      		in r28,__SP_L__
 110 0062 DEB7      		in r29,__SP_H__
 111               	/* prologue: function */
 112               	/* frame size = 5 */
 113 0064 9C83      		std Y+4,r25
 114 0066 8B83      		std Y+3,r24
 115 0068 6D83      		std Y+5,r22
 116               	.LM7:
 117 006a 8B81      		ldd r24,Y+3
 118 006c 9C81      		ldd r25,Y+4
 119 006e 9A83      		std Y+2,r25
 120 0070 8983      		std Y+1,r24
 121               	.LM8:
 122 0072 E981      		ldd r30,Y+1
 123 0074 FA81      		ldd r31,Y+2
 124 0076 8D81      		ldd r24,Y+5
 125 0078 8083      		st Z,r24
 126               	/* epilogue start */
 127               	.LM9:
 128 007a 0F90      		pop __tmp_reg__
 129 007c 0F90      		pop __tmp_reg__
 130 007e 0F90      		pop __tmp_reg__
 131 0080 0F90      		pop __tmp_reg__
 132 0082 0F90      		pop __tmp_reg__
 133 0084 CF91      		pop r28
 134 0086 DF91      		pop r29
 135 0088 0895      		ret
 136               	.LFE6:
 138               	.global	CANREG_READ
 140               	CANREG_READ:
 141               	.LFB7:
 142               	.LM10:
 143 008a DF93      		push r29
 144 008c CF93      		push r28
 145 008e 00D0      		rcall .
 146 0090 00D0      		rcall .
 147 0092 0F92      		push __tmp_reg__
 148 0094 CDB7      		in r28,__SP_L__
 149 0096 DEB7      		in r29,__SP_H__
 150               	/* prologue: function */
 151               	/* frame size = 5 */
 152 0098 9D83      		std Y+5,r25
 153 009a 8C83      		std Y+4,r24
 154               	.LM11:
 155 009c 8C81      		ldd r24,Y+4
 156 009e 9D81      		ldd r25,Y+5
 157 00a0 9B83      		std Y+3,r25
 158 00a2 8A83      		std Y+2,r24
 159               	.LM12:
 160 00a4 EA81      		ldd r30,Y+2
 161 00a6 FB81      		ldd r31,Y+3
 162 00a8 8081      		ld r24,Z
 163 00aa 8983      		std Y+1,r24
 164               	.LM13:
 165 00ac 8981      		ldd r24,Y+1
 166               	/* epilogue start */
 167               	.LM14:
 168 00ae 0F90      		pop __tmp_reg__
 169 00b0 0F90      		pop __tmp_reg__
 170 00b2 0F90      		pop __tmp_reg__
 171 00b4 0F90      		pop __tmp_reg__
 172 00b6 0F90      		pop __tmp_reg__
 173 00b8 CF91      		pop r28
 174 00ba DF91      		pop r29
 175 00bc 0895      		ret
 176               	.LFE7:
 178               	.global	BCAN_ENTER_RETMODEL
 180               	BCAN_ENTER_RETMODEL:
 181               	.LFB8:
 182               	.LM15:
 183 00be DF93      		push r29
 184 00c0 CF93      		push r28
 185 00c2 00D0      		rcall .
 186 00c4 CDB7      		in r28,__SP_L__
 187 00c6 DEB7      		in r29,__SP_H__
 188               	/* prologue: function */
 189               	/* frame size = 2 */
 190               	.LM16:
 191 00c8 80E0      		ldi r24,lo8(32512)
 192 00ca 9FE7      		ldi r25,hi8(32512)
 193 00cc 0E94 0000 		call CANREG_READ
 194 00d0 8983      		std Y+1,r24
 195               	.LM17:
 196 00d2 8981      		ldd r24,Y+1
 197 00d4 8160      		ori r24,lo8(1)
 198 00d6 8983      		std Y+1,r24
 199               	.LM18:
 200 00d8 6981      		ldd r22,Y+1
 201 00da 80E0      		ldi r24,lo8(32512)
 202 00dc 9FE7      		ldi r25,hi8(32512)
 203 00de 0E94 0000 		call CANREG_WRITE
 204               	.LM19:
 205 00e2 80E0      		ldi r24,lo8(32512)
 206 00e4 9FE7      		ldi r25,hi8(32512)
 207 00e6 0E94 0000 		call CANREG_READ
 208 00ea 882F      		mov r24,r24
 209 00ec 90E0      		ldi r25,lo8(0)
 210 00ee 8170      		andi r24,lo8(1)
 211 00f0 9070      		andi r25,hi8(1)
 212 00f2 8823      		tst r24
 213 00f4 01F0      		breq .L10
 214               	.LM20:
 215 00f6 1A82      		std Y+2,__zero_reg__
 216 00f8 00C0      		rjmp .L11
 217               	.L10:
 218               	.LM21:
 219 00fa 81E0      		ldi r24,lo8(1)
 220 00fc 8A83      		std Y+2,r24
 221               	.L11:
 222 00fe 8A81      		ldd r24,Y+2
 223               	/* epilogue start */
 224               	.LM22:
 225 0100 0F90      		pop __tmp_reg__
 226 0102 0F90      		pop __tmp_reg__
 227 0104 CF91      		pop r28
 228 0106 DF91      		pop r29
 229 0108 0895      		ret
 230               	.LFE8:
 232               	.global	BCAN_QUIT_RETMODE
 234               	BCAN_QUIT_RETMODE:
 235               	.LFB9:
 236               	.LM23:
 237 010a DF93      		push r29
 238 010c CF93      		push r28
 239 010e 00D0      		rcall .
 240 0110 CDB7      		in r28,__SP_L__
 241 0112 DEB7      		in r29,__SP_H__
 242               	/* prologue: function */
 243               	/* frame size = 2 */
 244               	.LM24:
 245 0114 80E0      		ldi r24,lo8(32512)
 246 0116 9FE7      		ldi r25,hi8(32512)
 247 0118 0E94 0000 		call CANREG_READ
 248 011c 8983      		std Y+1,r24
 249               	.LM25:
 250 011e 8981      		ldd r24,Y+1
 251 0120 8E7F      		andi r24,lo8(-2)
 252 0122 8983      		std Y+1,r24
 253               	.LM26:
 254 0124 6981      		ldd r22,Y+1
 255 0126 80E0      		ldi r24,lo8(32512)
 256 0128 9FE7      		ldi r25,hi8(32512)
 257 012a 0E94 0000 		call CANREG_WRITE
 258               	.LM27:
 259 012e 80E0      		ldi r24,lo8(32512)
 260 0130 9FE7      		ldi r25,hi8(32512)
 261 0132 0E94 0000 		call CANREG_READ
 262 0136 882F      		mov r24,r24
 263 0138 90E0      		ldi r25,lo8(0)
 264 013a 8170      		andi r24,lo8(1)
 265 013c 9070      		andi r25,hi8(1)
 266 013e 0097      		sbiw r24,0
 267 0140 01F4      		brne .L14
 268               	.LM28:
 269 0142 1A82      		std Y+2,__zero_reg__
 270 0144 00C0      		rjmp .L15
 271               	.L14:
 272               	.LM29:
 273 0146 81E0      		ldi r24,lo8(1)
 274 0148 8A83      		std Y+2,r24
 275               	.L15:
 276 014a 8A81      		ldd r24,Y+2
 277               	/* epilogue start */
 278               	.LM30:
 279 014c 0F90      		pop __tmp_reg__
 280 014e 0F90      		pop __tmp_reg__
 281 0150 CF91      		pop r28
 282 0152 DF91      		pop r29
 283 0154 0895      		ret
 284               	.LFE9:
 286               	.global	BCAN_SET_OBJECT
 288               	BCAN_SET_OBJECT:
 289               	.LFB10:
 290               	.LM31:
 291 0156 DF93      		push r29
 292 0158 CF93      		push r28
 293 015a 00D0      		rcall .
 294 015c 0F92      		push __tmp_reg__
 295 015e CDB7      		in r28,__SP_L__
 296 0160 DEB7      		in r29,__SP_H__
 297               	/* prologue: function */
 298               	/* frame size = 3 */
 299 0162 8983      		std Y+1,r24
 300 0164 6A83      		std Y+2,r22
 301               	.LM32:
 302 0166 6981      		ldd r22,Y+1
 303 0168 84E0      		ldi r24,lo8(32516)
 304 016a 9FE7      		ldi r25,hi8(32516)
 305 016c 0E94 0000 		call CANREG_WRITE
 306               	.LM33:
 307 0170 84E0      		ldi r24,lo8(32516)
 308 0172 9FE7      		ldi r25,hi8(32516)
 309 0174 0E94 0000 		call CANREG_READ
 310 0178 982F      		mov r25,r24
 311 017a 8981      		ldd r24,Y+1
 312 017c 9817      		cp r25,r24
 313 017e 01F0      		breq .L18
 314               	.LM34:
 315 0180 81E0      		ldi r24,lo8(1)
 316 0182 8B83      		std Y+3,r24
 317 0184 00C0      		rjmp .L19
 318               	.L18:
 319               	.LM35:
 320 0186 6A81      		ldd r22,Y+2
 321 0188 85E0      		ldi r24,lo8(32517)
 322 018a 9FE7      		ldi r25,hi8(32517)
 323 018c 0E94 0000 		call CANREG_WRITE
 324               	.LM36:
 325 0190 85E0      		ldi r24,lo8(32517)
 326 0192 9FE7      		ldi r25,hi8(32517)
 327 0194 0E94 0000 		call CANREG_READ
 328 0198 982F      		mov r25,r24
 329 019a 8A81      		ldd r24,Y+2
 330 019c 9817      		cp r25,r24
 331 019e 01F0      		breq .L20
 332               	.LM37:
 333 01a0 81E0      		ldi r24,lo8(1)
 334 01a2 8B83      		std Y+3,r24
 335 01a4 00C0      		rjmp .L19
 336               	.L20:
 337               	.LM38:
 338 01a6 1B82      		std Y+3,__zero_reg__
 339               	.L19:
 340 01a8 8B81      		ldd r24,Y+3
 341               	/* epilogue start */
 342               	.LM39:
 343 01aa 0F90      		pop __tmp_reg__
 344 01ac 0F90      		pop __tmp_reg__
 345 01ae 0F90      		pop __tmp_reg__
 346 01b0 CF91      		pop r28
 347 01b2 DF91      		pop r29
 348 01b4 0895      		ret
 349               	.LFE10:
 351               	.global	BCAN_SET_BANDRATE
 353               	BCAN_SET_BANDRATE:
 354               	.LFB11:
 355               	.LM40:
 356 01b6 DF93      		push r29
 357 01b8 CF93      		push r28
 358 01ba 00D0      		rcall .
 359 01bc 0F92      		push __tmp_reg__
 360 01be CDB7      		in r28,__SP_L__
 361 01c0 DEB7      		in r29,__SP_H__
 362               	/* prologue: function */
 363               	/* frame size = 3 */
 364 01c2 8983      		std Y+1,r24
 365 01c4 6A83      		std Y+2,r22
 366               	.LM41:
 367 01c6 6981      		ldd r22,Y+1
 368 01c8 86E0      		ldi r24,lo8(32518)
 369 01ca 9FE7      		ldi r25,hi8(32518)
 370 01cc 0E94 0000 		call CANREG_WRITE
 371               	.LM42:
 372 01d0 86E0      		ldi r24,lo8(32518)
 373 01d2 9FE7      		ldi r25,hi8(32518)
 374 01d4 0E94 0000 		call CANREG_READ
 375 01d8 982F      		mov r25,r24
 376 01da 8981      		ldd r24,Y+1
 377 01dc 9817      		cp r25,r24
 378 01de 01F0      		breq .L23
 379               	.LM43:
 380 01e0 81E0      		ldi r24,lo8(1)
 381 01e2 8B83      		std Y+3,r24
 382 01e4 00C0      		rjmp .L24
 383               	.L23:
 384               	.LM44:
 385 01e6 6A81      		ldd r22,Y+2
 386 01e8 87E0      		ldi r24,lo8(32519)
 387 01ea 9FE7      		ldi r25,hi8(32519)
 388 01ec 0E94 0000 		call CANREG_WRITE
 389               	.LM45:
 390 01f0 87E0      		ldi r24,lo8(32519)
 391 01f2 9FE7      		ldi r25,hi8(32519)
 392 01f4 0E94 0000 		call CANREG_READ
 393 01f8 982F      		mov r25,r24
 394 01fa 8A81      		ldd r24,Y+2
 395 01fc 9817      		cp r25,r24
 396 01fe 01F0      		breq .L25
 397               	.LM46:
 398 0200 81E0      		ldi r24,lo8(1)
 399 0202 8B83      		std Y+3,r24
 400 0204 00C0      		rjmp .L24

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -