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

📄 read-byte.lis

📁 这个程序是用atmega128芯片对24c04进行读写的例子
💻 LIS
📖 第 1 页 / 共 2 页
字号:
 00A8 0E2D              mov R16,R14
 00AA B9DF              xcall _i2c_wrdata
 00AC                   .dbline 89
 00AC 0A2D              mov R16,R10
 00AE B7DF              xcall _i2c_wrdata
 00B0                   .dbline 90
 00B0 AA24              clr R10
 00B2 07C0              xjmp L30
 00B4           L27:
 00B4                   .dbline 91
 00B4                   .dbline 92
 00B4 EA2D              mov R30,R10
 00B6 FF27              clr R31
 00B8 EC0D              add R30,R12
 00BA FD1D              adc R31,R13
 00BC 0081              ldd R16,z+0
 00BE AFDF              xcall _i2c_wrdata
 00C0                   .dbline 93
 00C0           L28:
 00C0                   .dbline 90
 00C0 A394              inc R10
 00C2           L30:
 00C2                   .dbline 90
 00C2 0E80              ldd R0,y+6
 00C4 A014              cp R10,R0
 00C6 B0F3              brlo L27
 00C8           X6:
 00C8                   .dbline 94
 00C8 C8DF              xcall _i2c_stop
 00CA                   .dbline -2
 00CA           L23:
 00CA                   .dbline 0 ; func end
 00CA 0C940000          xjmp pop_xgset00FC
 00CE                   .dbsym r addh 14 c
 00CE                   .dbsym r addl 10 c
 00CE                   .dbsym r i 10 c
 00CE                   .dbsym l i2c_nub 6 c
 00CE                   .dbsym r i2c_add 14 i
 00CE                   .dbsym r i2c_data 12 pc
 00CE                   .dbend
 00CE                   .dbfunc e i2c_rebyte _i2c_rebyte fc
 00CE           ;       i2c_data -> R10
 00CE           ;        i2c_add -> R10
                        .even
 00CE           _i2c_rebyte::
 00CE AA92              st -y,R10
 00D0 A02E              mov R10,R16
 00D2                   .dbline -1
 00D2                   .dbline 99
 00D2           L32:
 00D2                   .dbline 102
 00D2                   .dbline 103
 00D2 9DDF              xcall _i2c_start
 00D4                   .dbline 104
 00D4 00EA              ldi R16,160
 00D6 A3DF              xcall _i2c_wrdata
 00D8                   .dbline 105
 00D8           L33:
 00D8                   .dbline 106
 00D8 80917100          lds R24,113
 00DC 887F              andi R24,248
 00DE 8831              cpi R24,24
 00E0 C1F7              brne L32
 00E2           X7:
 00E2                   .dbline 108
 00E2 0A2D              mov R16,R10
 00E4 9CDF              xcall _i2c_wrdata
 00E6                   .dbline 109
 00E6 93DF              xcall _i2c_start
 00E8                   .dbline 110
 00E8 01EA              ldi R16,161
 00EA 99DF              xcall _i2c_wrdata
 00EC                   .dbline 111
 00EC A2DF              xcall _i2c_redata
 00EE A02E              mov R10,R16
 00F0                   .dbline 112
 00F0 B4DF              xcall _i2c_stop
 00F2                   .dbline 113
 00F2 0A2D              mov R16,R10
 00F4                   .dbline -2
 00F4           L31:
 00F4                   .dbline 0 ; func end
 00F4 A990              ld R10,y+
 00F6 0895              ret
 00F8                   .dbsym r i2c_data 10 c
 00F8                   .dbsym r i2c_add 10 c
 00F8                   .dbend
 00F8                   .dbfunc e i2c_rese _i2c_rese fV
 00F8           ;           addh -> R20
 00F8           ;           addl -> R14
 00F8           ;              i -> R14
 00F8           ;        i2c_nub -> R12
 00F8           ;        i2c_add -> R20,R21
 00F8           ;             aa -> R10,R11
                        .even
 00F8           _i2c_rese::
 00F8 0E940000          xcall push_xgset30FC
 00FC A901              movw R20,R18
 00FE 5801              movw R10,R16
 0100 C884              ldd R12,y+8
 0102                   .dbline -1
 0102                   .dbline 122
 0102                   .dbline 124
 0102 E42E              mov R14,R20
 0104                   .dbline 125
 0104 452F              mov R20,R21
 0106 5527              clr R21
 0108                   .dbline 126
 0108 CA94              dec R12
 010A           L36:
 010A                   .dbline 128
 010A                   .dbline 129
 010A 81DF              xcall _i2c_start
 010C                   .dbline 130
 010C 00EA              ldi R16,160
 010E 87DF              xcall _i2c_wrdata
 0110                   .dbline 131
 0110           L37:
 0110                   .dbline 132
 0110 80917100          lds R24,113
 0114 887F              andi R24,248
 0116 8831              cpi R24,24
 0118 C1F7              brne L36
 011A           X8:
 011A                   .dbline 134
 011A 042F              mov R16,R20
 011C 80DF              xcall _i2c_wrdata
 011E                   .dbline 135
 011E 0E2D              mov R16,R14
 0120 7EDF              xcall _i2c_wrdata
 0122                   .dbline 136
 0122 75DF              xcall _i2c_start
 0124                   .dbline 137
 0124 01EA              ldi R16,161
 0126 7BDF              xcall _i2c_wrdata
 0128                   .dbline 138
 0128 EE24              clr R14
 012A 07C0              xjmp L42
 012C           L39:
 012C                   .dbline 139
 012C                   .dbline 140
 012C 8CDF              xcall _i2c_redataack
 012E EE2D              mov R30,R14
 0130 FF27              clr R31
 0132 EA0D              add R30,R10
 0134 FB1D              adc R31,R11
 0136 0083              std z+0,R16
 0138                   .dbline 141
 0138           L40:
 0138                   .dbline 138
 0138 E394              inc R14
 013A           L42:
 013A                   .dbline 138
 013A EC14              cp R14,R12
 013C B8F3              brlo L39
 013E           X9:
 013E                   .dbline 142
 013E 79DF              xcall _i2c_redata
 0140 EC2D              mov R30,R12
 0142 FF27              clr R31
 0144 EA0D              add R30,R10
 0146 FB1D              adc R31,R11
 0148 0083              std z+0,R16
 014A                   .dbline 144
 014A 87DF              xcall _i2c_stop
 014C                   .dbline -2
 014C           L35:
 014C                   .dbline 0 ; func end
 014C 0C940000          xjmp pop_xgset30FC
 0150                   .dbsym r addh 20 c
 0150                   .dbsym r addl 14 c
 0150                   .dbsym r i 14 c
 0150                   .dbsym r i2c_nub 12 c
 0150                   .dbsym r i2c_add 20 i
 0150                   .dbsym r aa 10 pc
 0150                   .dbend
 0150                   .dbfile E:\产品\开发板\mega128-board\实验程序\I2C读写24C04\read-byte.c
 0150                   .dbfunc e s_ms _s_ms fV
 0150           ;              t -> R16,R17
                        .even
 0150           _s_ms::
 0150                   .dbline -1
 0150                   .dbline 7
 0150                   .dbline 8
 0150 02C0              xjmp L47
 0152           L44:
 0152                   .dbline 9
 0152                   .dbline 10
 0152           L45:
 0152                   .dbline 8
 0152 0150              subi R16,1
 0154 1040              sbci R17,0
 0156           L47:
 0156                   .dbline 8
 0156 81E0              ldi R24,1
 0158 90E0              ldi R25,0
 015A 8017              cp R24,R16
 015C 9107              cpc R25,R17
 015E C8F3              brlo L44
 0160           X10:
 0160                   .dbline -2
 0160           L43:
 0160                   .dbline 0 ; func end
 0160 0895              ret
 0162                   .dbsym r t 16 i
 0162                   .dbend
 0162                   .dbfunc e main _main fI
                        .even
 0162           _main::
 0162                   .dbline -1
 0162                   .dbline 15
 0162                   .dbline 16
 0162 8FEF              ldi R24,255
 0164 8ABB              out 0x1a,R24
 0166                   .dbline 17
 0166 8BBB              out 0x1b,R24
 0168                   .dbline 18
 0168 4BDF              xcall _i2c_init
 016A                   .dbline 19
 016A 02E1              ldi R16,18
 016C B0DF              xcall _i2c_rebyte
 016E 202E              mov R2,R16
 0170 2094              com R2
 0172 2BBA              out 0x1b,R2
 0174                   .dbline -2
 0174           L48:
 0174                   .dbline 0 ; func end
 0174 0895              ret
 0176                   .dbend

⌨️ 快捷键说明

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