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

📄 eeprom.lis

📁 使用ICCAVR编写的AT24C16的读写函数
💻 LIS
📖 第 1 页 / 共 4 页
字号:
 0426 4068              ori R20,128
 0428                   .dbline 96
 0428 01C0              xjmp L111
 042A           L110:
 042A                   .dbline 97
 042A                   .dbline 98
 042A 4F77              andi R20,127
 042C                   .dbline 99
 042C           L111:
 042C                   .dbline 100
 042C 1A9A              sbi 0x3,2
 042E                   .dbline 101
 042E 1A98              cbi 0x3,2
 0430                   .dbline 102
 0430           L107:
 0430                   .dbline 92
 0430 6395              inc R22
 0432           L109:
 0432                   .dbline 92
 0432 6830              cpi R22,8
 0434 A8F3              brlo L106
 0436                   .dbline 104
 0436 1C98              cbi 0x3,4
 0438                   .dbline 105
 0438 042F              mov R16,R20
 043A                   .dbline -2
 043A           L99:
 043A 0E940000          xcall pop_gset2
 043E                   .dbline 0 ; func end
 043E 0895              ret
 0440                   .dbsym r temp 20 c
 0440                   .dbsym r i 22 c
 0440                   .dbsym r addr 16 c
 0440                   .dbend
 0440                   .dbfunc e ds1302_write_time _ds1302_write_time fV
                        .even
 0440           _ds1302_write_time::
 0440                   .dbline -1
 0440                   .dbline 109
 0440                   .dbline 111
 0440 2227              clr R18
 0442 0EE8              ldi R16,142
 0444 B4DF              xcall _ds1302_write_byte
 0446                   .dbline 112
 0446 20E8              ldi R18,128
 0448 00E8              ldi R16,128
 044A B1DF              xcall _ds1302_write_byte
 044C                   .dbline 114
 044C 20910100          lds R18,_time_buf+1
 0450 0CE8              ldi R16,140
 0452 ADDF              xcall _ds1302_write_byte
 0454                   .dbline 115
 0454 20910200          lds R18,_time_buf+2
 0458 08E8              ldi R16,136
 045A A9DF              xcall _ds1302_write_byte
 045C                   .dbline 116
 045C 20910300          lds R18,_time_buf+3
 0460 06E8              ldi R16,134
 0462 A5DF              xcall _ds1302_write_byte
 0464                   .dbline 117
 0464 20910700          lds R18,_time_buf+7
 0468 0AE8              ldi R16,138
 046A A1DF              xcall _ds1302_write_byte
 046C                   .dbline 118
 046C 20910400          lds R18,_time_buf+4
 0470 04E8              ldi R16,132
 0472 9DDF              xcall _ds1302_write_byte
 0474                   .dbline 119
 0474 20910500          lds R18,_time_buf+5
 0478 02E8              ldi R16,130
 047A 99DF              xcall _ds1302_write_byte
 047C                   .dbline 120
 047C 20910600          lds R18,_time_buf+6
 0480 00E8              ldi R16,128
 0482 95DF              xcall _ds1302_write_byte
 0484                   .dbline 121
 0484 20910700          lds R18,_time_buf+7
 0488 0AE8              ldi R16,138
 048A 91DF              xcall _ds1302_write_byte
 048C                   .dbline 122
 048C 20E8              ldi R18,128
 048E 0EE8              ldi R16,142
 0490 8EDF              xcall _ds1302_write_byte
 0492                   .dbline -2
 0492           L112:
 0492                   .dbline 0 ; func end
 0492 0895              ret
 0494                   .dbend
 0494                   .dbfunc e ds1302_read_time _ds1302_read_time fV
                        .even
 0494           _ds1302_read_time::
 0494                   .dbline -1
 0494                   .dbline 126
 0494                   .dbline 128
 0494 0CE8              ldi R16,140
 0496 AFDF              xcall _ds1302_read_byte
 0498 00930100          sts _time_buf+1,R16
 049C                   .dbline 129
 049C 08E8              ldi R16,136
 049E ABDF              xcall _ds1302_read_byte
 04A0 00930200          sts _time_buf+2,R16
 04A4                   .dbline 130
 04A4 06E8              ldi R16,134
 04A6 A7DF              xcall _ds1302_read_byte
 04A8 00930300          sts _time_buf+3,R16
 04AC                   .dbline 131
 04AC 04E8              ldi R16,132
 04AE A3DF              xcall _ds1302_read_byte
 04B0 00930400          sts _time_buf+4,R16
 04B4                   .dbline 132
 04B4 02E8              ldi R16,130
 04B6 9FDF              xcall _ds1302_read_byte
 04B8 00930500          sts _time_buf+5,R16
 04BC                   .dbline 133
 04BC 00E8              ldi R16,128
 04BE 9BDF              xcall _ds1302_read_byte
 04C0 802F              mov R24,R16
 04C2 8F77              andi R24,127
 04C4 80930600          sts _time_buf+6,R24
 04C8                   .dbline 134
 04C8 0AE8              ldi R16,138
 04CA 95DF              xcall _ds1302_read_byte
 04CC 00930700          sts _time_buf+7,R16
 04D0                   .dbline -2
 04D0           L121:
 04D0                   .dbline 0 ; func end
 04D0 0895              ret
 04D2                   .dbend
 04D2                   .dbfunc e ds1302_init _ds1302_init fV
                        .even
 04D2           _ds1302_init::
 04D2                   .dbline -1
 04D2                   .dbline 138
 04D2                   .dbline 140
 04D2 1C98              cbi 0x3,4
 04D4                   .dbline 141
 04D4 1A98              cbi 0x3,2
 04D6                   .dbline 142
 04D6 149A              sbi 0x2,4
 04D8                   .dbline 143
 04D8 129A              sbi 0x2,2
 04DA                   .dbline -2
 04DA           L129:
 04DA                   .dbline 0 ; func end
 04DA 0895              ret
 04DC                   .dbend
 04DC                   .dbfile E:\icc\eeprom\eeprom.c
 04DC                   .dbfunc e delay_ms _delay_ms fV
 04DC           ;              a -> R20
 04DC           ;              b -> R22
 04DC           ;              i -> R16
                        .even
 04DC           _delay_ms::
 04DC 0E940000          xcall push_gset2
 04E0                   .dbline -1
 04E0                   .dbline 14
 04E0                   .dbline 16
 04E0 41E0              ldi R20,1
 04E2 06C0              xjmp L134
 04E4           L131:
 04E4                   .dbline 17
 04E4                   .dbline 18
 04E4 61E0              ldi R22,1
 04E6 01C0              xjmp L138
 04E8           L135:
 04E8                   .dbline 19
 04E8                   .dbline 20
 04E8                   .dbline 21
 04E8           L136:
 04E8                   .dbline 18
 04E8 6395              inc R22
 04EA           L138:
 04EA                   .dbline 18
 04EA 6623              tst R22
 04EC E9F7              brne L135
 04EE                   .dbline 22
 04EE           L132:
 04EE                   .dbline 16
 04EE 4395              inc R20
 04F0           L134:
 04F0                   .dbline 16
 04F0 4017              cp R20,R16
 04F2 C0F3              brlo L131
 04F4                   .dbline -2
 04F4           L130:
 04F4 0E940000          xcall pop_gset2
 04F8                   .dbline 0 ; func end
 04F8 0895              ret
 04FA                   .dbsym r a 20 c
 04FA                   .dbsym r b 22 c
 04FA                   .dbsym r i 16 c
 04FA                   .dbend
 04FA                   .dbfunc e main _main fV
 04FA           ;           temp -> y+0
 04FA           ;      time_read -> R20
 04FA           ;      send_flag -> R22
 04FA           ;              i -> R10
                        .even
 04FA           _main::
 04FA 2197              sbiw R28,1
 04FC                   .dbline -1
 04FC                   .dbline 25
 04FC                   .dbline 28
 04FC 6627              clr R22
 04FE                   .dbline 28
 04FE 46E0              ldi R20,6
 0500                   .dbline 29
 0500 8FEF              ldi R24,255
 0502 8BBB              out 0x1b,R24
 0504                   .dbline 30
 0504 2224              clr R2
 0506 2ABA              out 0x1a,R2
 0508                   .dbline 31
 0508 80EF              ldi R24,240
 050A 88BB              out 0x18,R24
 050C                   .dbline 32
 050C 8FEF              ldi R24,255
 050E 87BB              out 0x17,R24
 0510                   .dbline 33
 0510 85BB              out 0x15,R24
 0512                   .dbline 34
 0512 24BA              out 0x14,R2
 0514                   .dbline 35
 0514 82BB              out 0x12,R24
 0516                   .dbline 36
 0516 21BA              out 0x11,R2
 0518                   .dbline 37
 0518 DCDF              xcall _ds1302_init
 051A                   .dbline 38
 051A 92DF              xcall _ds1302_write_time
 051C                   .dbline 39
 051C 33DE              xcall _disp_init
 051E                   .dbline 40
 051E AA24              clr R10
 0520 08C0              xjmp L143
 0522           L140:
 0522                   .dbline 41
 0522                   .dbline 42
 0522 2A2D              mov R18,R10
 0524 0A2D              mov R16,R10
 0526 0050              subi R16,0    ; addi 256
 0528 69DE              xcall _twi_write
 052A                   .dbline 43
 052A 0FEF              ldi R16,4095
 052C 1FE0              ldi R17,15
 052E 68DD              xcall _delay
 0530                   .dbline 44
 0530           L141:
 0530                   .dbline 40
 0530 A394              inc R10
 0532           L143:
 0532                   .dbline 40
 0532 8A2D              mov R24,R10
 0534 8431              cpi R24,20
 0536 A8F3              brlo L140
 0538                   .dbline 53
 0538 0FEF              ldi R16,65535
 053A 1FEF              ldi R17,255
 053C 61DD              xcall _delay
 053E                   .dbline 54
 053E 20E0              ldi R18,<L144
 0540 30E0              ldi R19,>L144
 0542 00E8              ldi R16,128
 0544 CBDD              xcall _disp_word
 0546                   .dbline 55
 0546 20E0              ldi R18,<L145
 0548 30E0              ldi R19,>L145
 054A 00E9              ldi R16,144
 054C C7DD              xcall _disp_word
 054E                   .dbline 56
 054E 20E0              ldi R18,<L146
 0550 30E0              ldi R19,>L146
 0552 08E8              ldi R16,136
 0554 C3DD              xcall _disp_word
 0556                   .dbline 57
 0556 AA24              clr R10
 0558 1CC0              xjmp L148
 055A           L147:
 055A                   .dbline 60
 055A                   .dbline 61
 055A 9CDF              xcall _ds1302_read_time
 055C                   .dbline 62
 055C 20910600          lds R18,_time_buf+6
 0560 0DE8              ldi R16,141
 0562 F0DD              xcall _disp_number16
 0564                   .dbline 63
 0564 20900600          lds R2,_time_buf+6
 0568 2220              tst R2
 056A 31F4              brne L151
 056C                   .dbline 64
 056C                   .dbline 65
 056C 61E0              ldi R22,1
 056E                   .dbline 66
 056E 20900500          lds R2,_time_buf+5
 0572 2416              cp R2,R20
 0574 09F4              brne L154
 0576                   .dbline 67
 0576 6627              clr R22
 0578           L154:
 0578                   .dbline 68
 0578           L151:
 0578                   .dbline 69
 0578 6130              cpi R22,1
 057A 59F4              brne L157
 057C                   .dbline 70
 057C                   .dbline 71
 057C 9E01              movw R18,R28
 057E 0A2D              mov R16,R10
 0580 0050              subi R16,0    ; addi 256
 0582 95DE              xcall _twi_read
 0584                   .dbline 72
 0584 A394              inc R10
 0586                   .dbline 73
 0586 6627              clr R22
 0588                   .dbline 74
 0588 40910500          lds R20,_time_buf+5
 058C                   .dbline 75
 058C 2881              ldd R18,y+0
 058E 08E9              ldi R16,152
 0590 B8DD              xcall _disp_number10
 0592                   .dbline 76
 0592           L157:
 0592                   .dbline 78
 0592           L148:
 0592                   .dbline 59
 0592 E3CF              xjmp L147
 0594           X3:
 0594                   .dbline -2
 0594           L139:
 0594 2196              adiw R28,1
 0596                   .dbline 0 ; func end
 0596 0895              ret
 0598                   .dbsym l temp 0 c
 0598                   .dbsym r time_read 20 c
 0598                   .dbsym r send_flag 22 c
 0598                   .dbsym r i 10 c
 0598                   .dbend
                        .area data(ram, con, rel)
 0008                   .dbfile E:\icc\eeprom\eeprom.c
 0008           L146:
 0008                   .blkb 8
                        .area idata
 0008 4154323443313600  .byte 'A,'T,50,52,'C,49,54,0
                        .area data(ram, con, rel)
 0010                   .dbfile E:\icc\eeprom\eeprom.c
 0010           L145:
 0010                   .blkb 15
                        .area idata
 0010 32303038C4EA3130D4C23039C8D500    .byte 50,48,48,56,196,234,49,48,212,194,48,57,200,213,0
                        .area data(ram, con, rel)
 001F                   .dbfile E:\icc\eeprom\eeprom.c
 001F           L144:
 001F                   .blkb 13
                        .area idata
 001F C8CECEF1A3BA454550524F4D00        .byte 200,206,206,241,163,186,'E,'E,'P,'R,'O,'M,0
                        .area data(ram, con, rel)
 002C                   .dbfile E:\icc\eeprom\eeprom.c

⌨️ 快捷键说明

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