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

📄 sd2300.lst

📁 AVRMEG32编写的一个项目代码,里面包含一般应用的模块.
💻 LST
📖 第 1 页 / 共 2 页
字号:
 381 0158 DF93      		push r29
 382               	/* prologue end (size=6) */
 383 015a 082F      		mov r16,r24
 384 015c 162F      		mov r17,r22
 385 015e E42E      		mov r14,r20
 386 0160 E901      		movw r28,r18
 387               	.LM56:
 388 0162 0E94 0000 		call twiStart
 389               	.LM57:
 390 0166 81B1      		in r24,33-0x20
 391 0168 8830      		cpi r24,lo8(8)
 392 016a 19F0      		breq .L36
 393               	.LM58:
 394 016c 88E0      		ldi r24,lo8(8)
 395 016e 90E0      		ldi r25,hi8(8)
 396 0170 38C0      		rjmp .L35
 397               	.L36:
 398               	.LM59:
 399 0172 802F      		mov r24,r16
 400 0174 0E94 0000 		call twiWriteByte
 401               	.LM60:
 402 0178 81B1      		in r24,33-0x20
 403 017a 8831      		cpi r24,lo8(24)
 404 017c 19F0      		breq .L37
 405               	.LM61:
 406 017e 88E1      		ldi r24,lo8(24)
 407 0180 90E0      		ldi r25,hi8(24)
 408 0182 2FC0      		rjmp .L35
 409               	.L37:
 410               	.LM62:
 411 0184 812F      		mov r24,r17
 412 0186 0E94 0000 		call twiWriteByte
 413               	.LM63:
 414 018a 81B1      		in r24,33-0x20
 415 018c 8832      		cpi r24,lo8(40)
 416 018e 19F0      		breq .L38
 417               	.LM64:
 418 0190 88E2      		ldi r24,lo8(40)
 419 0192 90E0      		ldi r25,hi8(40)
 420 0194 26C0      		rjmp .L35
 421               	.L38:
 422               	.LM65:
 423 0196 0E94 0000 		call twiStart
 424               	.LM66:
 425 019a 802F      		mov r24,r16
 426 019c 8160      		ori r24,lo8(1)
 427 019e 0E94 0000 		call twiWriteByte
 428               	.LM67:
 429 01a2 FF24      		clr r15
 430 01a4 0E2D      		mov r16,r14
 431 01a6 1127      		clr r17
 432 01a8 C801      		movw r24,r16
 433 01aa 0197      		sbiw r24,1
 434 01ac 1816      		cp __zero_reg__,r24
 435 01ae 1906      		cpc __zero_reg__,r25
 436 01b0 74F4      		brge .L44
 437               	.L42:
 438               	.LM68:
 439 01b2 0E94 0000 		call twiReadByteACK
 440 01b6 FE01      		movw r30,r28
 441 01b8 EF0D      		add r30,r15
 442 01ba F11D      		adc r31,__zero_reg__
 443 01bc 8083      		st Z,r24
 444               	.LM69:
 445 01be F394      		inc r15
 446 01c0 2F2D      		mov r18,r15
 447 01c2 3327      		clr r19
 448 01c4 C801      		movw r24,r16
 449 01c6 0197      		sbiw r24,1
 450 01c8 2817      		cp r18,r24
 451 01ca 3907      		cpc r19,r25
 452 01cc 94F3      		brlt .L42
 453               	.L44:
 454               	.LM70:
 455 01ce 0E94 0000 		call twiReadByteNACK
 456 01d2 CE0D      		add r28,r14
 457 01d4 D11D      		adc r29,__zero_reg__
 458 01d6 2197      		sbiw r28,1
 459 01d8 8883      		st Y,r24
 460               	.LM71:
 461 01da 0E94 0000 		call twiStop
 462               	.LM72:
 463 01de 80E0      		ldi r24,lo8(0)
 464 01e0 90E0      		ldi r25,hi8(0)
 465               	.L35:
 466               	/* epilogue: frame size=0 */
 467 01e2 DF91      		pop r29
 468 01e4 CF91      		pop r28
 469 01e6 1F91      		pop r17
 470 01e8 0F91      		pop r16
 471 01ea FF90      		pop r15
 472 01ec EF90      		pop r14
 473 01ee 0895      		ret
 474               	/* epilogue end (size=7) */
 475               	/* function _rtcReadNByte size 81 (68) */
 476               	.LFE26:
 478               	.global	rtcWriteNByte
 480               	rtcWriteNByte:
 481               	.LFB27:
 482               	.LM73:
 483               	/* prologue: frame size=0 */
 484               	/* prologue end (size=0) */
 485 01f0 782F      		mov r23,r24
 486               	.LM74:
 487 01f2 9A01      		movw r18,r20
 488 01f4 462F      		mov r20,r22
 489 01f6 672F      		mov r22,r23
 490 01f8 84E6      		ldi r24,lo8(100)
 491 01fa 0E94 0000 		call _rtcWriteNByte
 492               	.LM75:
 493 01fe 9927      		clr r25
 494               	/* epilogue: frame size=0 */
 495 0200 0895      		ret
 496               	/* epilogue end (size=1) */
 497               	/* function rtcWriteNByte size 9 (8) */
 498               	.LFE27:
 500               	.global	rtcReadNByte
 502               	rtcReadNByte:
 503               	.LFB28:
 504               	.LM76:
 505               	/* prologue: frame size=0 */
 506               	/* prologue end (size=0) */
 507 0202 782F      		mov r23,r24
 508               	.LM77:
 509 0204 9A01      		movw r18,r20
 510 0206 462F      		mov r20,r22
 511 0208 672F      		mov r22,r23
 512 020a 84E6      		ldi r24,lo8(100)
 513 020c 0E94 0000 		call _rtcReadNByte
 514               	.LM78:
 515 0210 9927      		clr r25
 516               	/* epilogue: frame size=0 */
 517 0212 0895      		ret
 518               	/* epilogue end (size=1) */
 519               	/* function rtcReadNByte size 9 (8) */
 520               	.LFE28:
 522               	.global	getDateTime
 524               	getDateTime:
 525               	.LFB29:
 526               	.LM79:
 527               	/* prologue: frame size=7 */
 528 0214 0F93      		push r16
 529 0216 1F93      		push r17
 530 0218 CF93      		push r28
 531 021a DF93      		push r29
 532 021c CDB7      		in r28,__SP_L__
 533 021e DEB7      		in r29,__SP_H__
 534 0220 2797      		sbiw r28,7
 535 0222 0FB6      		in __tmp_reg__,__SREG__
 536 0224 F894      		cli
 537 0226 DEBF      		out __SP_H__,r29
 538 0228 0FBE      		out __SREG__,__tmp_reg__
 539 022a CDBF      		out __SP_L__,r28
 540               	/* prologue end (size=12) */
 541 022c 8C01      		movw r16,r24
 542               	.LM80:
 543 022e 82E3      		ldi r24,lo8(50)
 544 0230 F801      		movw r30,r16
 545 0232 8083      		st Z,r24
 546               	.LM81:
 547 0234 80E3      		ldi r24,lo8(48)
 548 0236 8183      		std Z+1,r24
 549               	.LM82:
 550 0238 AE01      		movw r20,r28
 551 023a 4F5F      		subi r20,lo8(-(1))
 552 023c 5F4F      		sbci r21,hi8(-(1))
 553 023e 67E0      		ldi r22,lo8(7)
 554 0240 80E0      		ldi r24,lo8(0)
 555 0242 0E94 0000 		call rtcReadNByte
 556               	.LM83:
 557 0246 0E5F      		subi r16,lo8(-(2))
 558 0248 1F4F      		sbci r17,hi8(-(2))
 559 024a B801      		movw r22,r16
 560 024c 8F81      		ldd r24,Y+7
 561 024e 0E94 0000 		call hextoa2
 562               	.LM84:
 563 0252 0E5F      		subi r16,lo8(-(2))
 564 0254 1F4F      		sbci r17,hi8(-(2))
 565 0256 B801      		movw r22,r16
 566 0258 8E81      		ldd r24,Y+6
 567 025a 0E94 0000 		call hextoa2
 568               	.LM85:
 569 025e 0E5F      		subi r16,lo8(-(2))
 570 0260 1F4F      		sbci r17,hi8(-(2))
 571 0262 B801      		movw r22,r16
 572 0264 8D81      		ldd r24,Y+5
 573 0266 0E94 0000 		call hextoa2
 574               	.LM86:
 575 026a 0E5F      		subi r16,lo8(-(2))
 576 026c 1F4F      		sbci r17,hi8(-(2))
 577 026e B801      		movw r22,r16
 578 0270 8B81      		ldd r24,Y+3
 579 0272 0E94 0000 		call hextoa2
 580               	.LM87:
 581 0276 0E5F      		subi r16,lo8(-(2))
 582 0278 1F4F      		sbci r17,hi8(-(2))
 583 027a B801      		movw r22,r16
 584 027c 8A81      		ldd r24,Y+2
 585 027e 0E94 0000 		call hextoa2
 586               	.LM88:
 587 0282 0E5F      		subi r16,lo8(-(2))
 588 0284 1F4F      		sbci r17,hi8(-(2))
 589 0286 B801      		movw r22,r16
 590 0288 8981      		ldd r24,Y+1
 591 028a 0E94 0000 		call hextoa2
 592               	/* epilogue: frame size=7 */
 593 028e 2796      		adiw r28,7
 594 0290 0FB6      		in __tmp_reg__,__SREG__
 595 0292 F894      		cli
 596 0294 DEBF      		out __SP_H__,r29
 597 0296 0FBE      		out __SREG__,__tmp_reg__
 598 0298 CDBF      		out __SP_L__,r28
 599 029a DF91      		pop r29
 600 029c CF91      		pop r28
 601 029e 1F91      		pop r17
 602 02a0 0F91      		pop r16
 603 02a2 0895      		ret
 604               	/* epilogue end (size=11) */
 605               	/* function getDateTime size 72 (49) */
 606               	.LFE29:
 608               	.global	setDateTime
 610               	setDateTime:
 611               	.LFB30:
 612               	.LM89:
 613               	/* prologue: frame size=7 */
 614 02a4 0F93      		push r16
 615 02a6 1F93      		push r17
 616 02a8 CF93      		push r28
 617 02aa DF93      		push r29
 618 02ac CDB7      		in r28,__SP_L__
 619 02ae DEB7      		in r29,__SP_H__
 620 02b0 2797      		sbiw r28,7
 621 02b2 0FB6      		in __tmp_reg__,__SREG__
 622 02b4 F894      		cli
 623 02b6 DEBF      		out __SP_H__,r29
 624 02b8 0FBE      		out __SREG__,__tmp_reg__
 625 02ba CDBF      		out __SP_L__,r28
 626               	/* prologue end (size=12) */
 627 02bc 8C01      		movw r16,r24
 628               	.LM90:
 629 02be 0C96      		adiw r24,12
 630 02c0 0E94 0000 		call a2tobcd2
 631 02c4 8983      		std Y+1,r24
 632               	.LM91:
 633 02c6 C801      		movw r24,r16
 634 02c8 0A96      		adiw r24,10
 635 02ca 0E94 0000 		call a2tobcd2
 636 02ce 8A83      		std Y+2,r24
 637               	.LM92:
 638 02d0 C801      		movw r24,r16
 639 02d2 0896      		adiw r24,8
 640 02d4 0E94 0000 		call a2tobcd2
 641 02d8 8B83      		std Y+3,r24
 642               	.LM93:
 643 02da 81E0      		ldi r24,lo8(1)
 644 02dc 8C83      		std Y+4,r24
 645               	.LM94:
 646 02de C801      		movw r24,r16
 647 02e0 0696      		adiw r24,6
 648 02e2 0E94 0000 		call a2tobcd2
 649 02e6 8D83      		std Y+5,r24
 650               	.LM95:
 651 02e8 C801      		movw r24,r16
 652 02ea 0496      		adiw r24,4
 653 02ec 0E94 0000 		call a2tobcd2
 654 02f0 8E83      		std Y+6,r24
 655               	.LM96:
 656 02f2 C801      		movw r24,r16
 657 02f4 0296      		adiw r24,2
 658 02f6 0E94 0000 		call a2tobcd2
 659 02fa 8F83      		std Y+7,r24
 660               	.LM97:
 661 02fc AE01      		movw r20,r28
 662 02fe 4F5F      		subi r20,lo8(-(1))
 663 0300 5F4F      		sbci r21,hi8(-(1))
 664 0302 67E0      		ldi r22,lo8(7)
 665 0304 80E0      		ldi r24,lo8(0)
 666 0306 0E94 0000 		call rtcWriteNByte
 667               	/* epilogue: frame size=7 */
 668 030a 2796      		adiw r28,7
 669 030c 0FB6      		in __tmp_reg__,__SREG__
 670 030e F894      		cli
 671 0310 DEBF      		out __SP_H__,r29
 672 0312 0FBE      		out __SREG__,__tmp_reg__
 673 0314 CDBF      		out __SP_L__,r28
 674 0316 DF91      		pop r29
 675 0318 CF91      		pop r28
 676 031a 1F91      		pop r17
 677 031c 0F91      		pop r16
 678 031e 0895      		ret
 679               	/* epilogue end (size=11) */
 680               	/* function setDateTime size 62 (39) */
 681               	.LFE30:
 683               		.comm xRdorData,9,1
 684               		.comm xRDCACData,8,1
 685               		.comm xRAlrData,399,1
 686               		.comm xRwenshiData,12,1
 687               		.comm SECOND_BUFFER,1,1
 688               		.comm MINUTE_BUFFER,1,1
 689               		.comm HOUR_BUFFER,1,1
 690               		.comm WEEK_BUFFER,1,1
 691               		.comm DAY_BUFFER,1,1
 692               		.comm MONTH_BUFFER,1,1
 693               		.comm YEAR_BUFFER,1,1
 694               	.Letext0:
DEFINED SYMBOLS
                            *ABS*:00000000 sd2300.c
  f:\temp/ccm4aaaa.s:3      *ABS*:0000003f __SREG__
  f:\temp/ccm4aaaa.s:4      *ABS*:0000003e __SP_H__
  f:\temp/ccm4aaaa.s:5      *ABS*:0000003d __SP_L__
  f:\temp/ccm4aaaa.s:6      *ABS*:00000000 __tmp_reg__
  f:\temp/ccm4aaaa.s:7      *ABS*:00000001 __zero_reg__
  f:\temp/ccm4aaaa.s:20     .text:00000000 hexToBcd
  f:\temp/ccm4aaaa.s:51     .text:00000026 a2toi
  f:\temp/ccm4aaaa.s:99     .text:00000068 hextoa2
  f:\temp/ccm4aaaa.s:123    .text:0000007c a2tobcd2
  f:\temp/ccm4aaaa.s:141    .text:00000088 twiInit
  f:\temp/ccm4aaaa.s:165    .text:0000009a twiStart
  f:\temp/ccm4aaaa.s:186    .text:000000a6 twiStop
  f:\temp/ccm4aaaa.s:202    .text:000000ac twiWriteByte
  f:\temp/ccm4aaaa.s:225    .text:000000ba twiReadByteACK
  f:\temp/ccm4aaaa.s:250    .text:000000ca twiReadByteNACK
  f:\temp/ccm4aaaa.s:275    .text:000000da sd2300Init
  f:\temp/ccm4aaaa.s:290    .text:000000e0 _rtcWriteNByte
  f:\temp/ccm4aaaa.s:372    .text:0000014e _rtcReadNByte
  f:\temp/ccm4aaaa.s:480    .text:000001f0 rtcWriteNByte
  f:\temp/ccm4aaaa.s:502    .text:00000202 rtcReadNByte
  f:\temp/ccm4aaaa.s:524    .text:00000214 getDateTime
  f:\temp/ccm4aaaa.s:610    .text:000002a4 setDateTime
                            *COM*:00000009 xRdorData
                            *COM*:00000008 xRDCACData
                            *COM*:0000018f xRAlrData
                            *COM*:0000000c xRwenshiData
                            *COM*:00000001 SECOND_BUFFER
                            *COM*:00000001 MINUTE_BUFFER
                            *COM*:00000001 HOUR_BUFFER
                            *COM*:00000001 WEEK_BUFFER
                            *COM*:00000001 DAY_BUFFER
                            *COM*:00000001 MONTH_BUFFER
                            *COM*:00000001 YEAR_BUFFER

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__udivmodqi4
atoi

⌨️ 快捷键说明

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