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

📄 main.lis

📁 在mega128上实现ad2543的驱动程序
💻 LIS
📖 第 1 页 / 共 4 页
字号:
 0104 87BB              out 0x17,R24
 0106                   .dbline 22
 0106 80EF              ldi R24,240
 0108 88BB              out 0x18,R24
 010A                   .dbline 23
 010A 04E1              ldi R16,20
 010C 10E0              ldi R17,0
 010E 93DF              xcall _delay_nms
 0110                   .dbline 25
 0110 CF9B              sbis 0x19,7
 0112 01C0              rjmp L44
 0114                   .dbline 26
 0114 0BC0              xjmp L45
 0116           L44:
 0116                   .dbline 27
 0116 CE9B              sbis 0x19,6
 0118 02C0              rjmp L46
 011A                   .dbline 28
 011A 4395              inc R20
 011C 07C0              xjmp L47
 011E           L46:
 011E                   .dbline 29
 011E CD9B              sbis 0x19,5
 0120 02C0              rjmp L48
 0122                   .dbline 30
 0122 4E5F              subi R20,254    ; addi 2
 0124 03C0              xjmp L49
 0126           L48:
 0126                   .dbline 31
 0126 CC9B              sbis 0x19,4
 0128 01C0              rjmp L50
 012A                   .dbline 32
 012A 4D5F              subi R20,253    ; addi 3
 012C           L50:
 012C           L49:
 012C           L47:
 012C           L45:
 012C                   .dbline 33
 012C 80EF              ldi R24,240
 012E 87BB              out 0x17,R24
 0130                   .dbline 34
 0130 8FE0              ldi R24,15
 0132 88BB              out 0x18,R24
 0134                   .dbline 35
 0134 042F              mov R16,R20
 0136                   .dbline -2
 0136           L35:
 0136 0E940000          xcall pop_gset1
 013A                   .dbline 0 ; func end
 013A 0895              ret
 013C                   .dbsym r key 20 c
 013C                   .dbend
 013C                   .dbfile C:\DOCUME~1\Administrator\桌面\ad2543/lcd.h
 013C                   .dbfunc e LCD_init _LCD_init fV
                        .even
 013C           _LCD_init::
 013C                   .dbline -1
 013C                   .dbline 39
 013C                   .dbline 40
 013C 8AB3              in R24,0x1a
 013E 806F              ori R24,240
 0140 8ABB              out 0x1a,R24
 0142                   .dbline 41
 0142 D39A              sbi 0x1a,3
 0144                   .dbline 42
 0144 D19A              sbi 0x1a,1
 0146                   .dbline 43
 0146 28E2              ldi R18,40
 0148 01E0              ldi R16,1
 014A 17D0              xcall _LCD_Write_char
 014C                   .dbline 44
 014C 10D0              xcall _LCD_en_write
 014E                   .dbline 45
 014E 08E2              ldi R16,40
 0150 10E0              ldi R17,0
 0152 58DF              xcall _delay_nus
 0154                   .dbline 46
 0154 28E2              ldi R18,40
 0156 01E0              ldi R16,1
 0158 10D0              xcall _LCD_Write_char
 015A                   .dbline 47
 015A 2CE0              ldi R18,12
 015C 01E0              ldi R16,1
 015E 0DD0              xcall _LCD_Write_char
 0160                   .dbline 48
 0160 21E0              ldi R18,1
 0162 01E0              ldi R16,1
 0164 0AD0              xcall _LCD_Write_char
 0166                   .dbline 49
 0166 02E0              ldi R16,2
 0168 10E0              ldi R17,0
 016A 65DF              xcall _delay_nms
 016C                   .dbline -2
 016C           L52:
 016C                   .dbline 0 ; func end
 016C 0895              ret
 016E                   .dbend
 016E                   .dbfunc e LCD_en_write _LCD_en_write fV
                        .even
 016E           _LCD_en_write::
 016E                   .dbline -1
 016E                   .dbline 53
 016E                   .dbline 54
 016E DB9A              sbi 0x1b,3
 0170                   .dbline 55
 0170 01E0              ldi R16,1
 0172 10E0              ldi R17,0
 0174 47DF              xcall _delay_nus
 0176                   .dbline 56
 0176 DB98              cbi 0x1b,3
 0178                   .dbline -2
 0178           L53:
 0178                   .dbline 0 ; func end
 0178 0895              ret
 017A                   .dbend
 017A                   .dbfunc e LCD_Write_char _LCD_Write_char fV
 017A           ;           data -> R20
 017A           ;        command -> R22
                        .even
 017A           _LCD_Write_char::
 017A 0E940000          xcall push_gset2
 017E 422F              mov R20,R18
 0180 602F              mov R22,R16
 0182                   .dbline -1
 0182                   .dbline 60
 0182                   .dbline 61
 0182 00E1              ldi R16,16
 0184 10E0              ldi R17,0
 0186 3EDF              xcall _delay_nus
 0188                   .dbline 62
 0188 6130              cpi R22,1
 018A 11F4              brne L55
 018C                   .dbline 63
 018C D998              cbi 0x1b,1
 018E 03C0              xjmp L56
 0190           L55:
 0190                   .dbline 65
 0190 8BB3              in R24,0x1b
 0192 8270              andi R24,2
 0194 8BBB              out 0x1b,R24
 0196           L56:
 0196                   .dbline 67
 0196 8BB3              in R24,0x1b
 0198 8F70              andi R24,15
 019A 8BBB              out 0x1b,R24
 019C                   .dbline 68
 019C 842F              mov R24,R20
 019E 807F              andi R24,240
 01A0 2BB2              in R2,0x1b
 01A2 282A              or R2,R24
 01A4 2BBA              out 0x1b,R2
 01A6                   .dbline 69
 01A6 E3DF              xcall _LCD_en_write
 01A8                   .dbline 70
 01A8 842F              mov R24,R20
 01AA 8F70              andi R24,#0x0F
 01AC 8295              swap R24
 01AE 482F              mov R20,R24
 01B0                   .dbline 71
 01B0 8BB3              in R24,0x1b
 01B2 8F70              andi R24,15
 01B4 8BBB              out 0x1b,R24
 01B6                   .dbline 72
 01B6 842F              mov R24,R20
 01B8 807F              andi R24,240
 01BA 2BB2              in R2,0x1b
 01BC 282A              or R2,R24
 01BE 2BBA              out 0x1b,R2
 01C0                   .dbline 73
 01C0 D6DF              xcall _LCD_en_write
 01C2                   .dbline -2
 01C2           L54:
 01C2 0E940000          xcall pop_gset2
 01C6                   .dbline 0 ; func end
 01C6 0895              ret
 01C8                   .dbsym r data 20 c
 01C8                   .dbsym r command 22 c
 01C8                   .dbend
 01C8                   .dbfunc e LCD_Clear _LCD_Clear fV
                        .even
 01C8           _LCD_Clear::
 01C8                   .dbline -1
 01C8                   .dbline 80
 01C8                   .dbline 81
 01C8           ; }   
 01C8 21E0              ldi R18,1
 01CA 01E0              ldi R16,1
 01CC D6DF              xcall _LCD_Write_char
 01CE                   .dbline -2
 01CE           L57:
 01CE                   .dbline 0 ; func end
 01CE 0895              ret
 01D0                   .dbend
 01D0                   .dbfunc e LCD_set_xy _LCD_set_xy fV
 01D0           ;        address -> R20
 01D0           ;              y -> R20
 01D0           ;              x -> R22
                        .even
 01D0           _LCD_set_xy::
 01D0 0E940000          xcall push_gset2
 01D4 422F              mov R20,R18
 01D6 602F              mov R22,R16
 01D8                   .dbline -1
 01D8                   .dbline 91
 01D8           ; }   
 01D8           ; }   
 01D8           ; }   
 01D8           ; }   
 01D8           ; }   
 01D8           ; }   
 01D8           ; }   
 01D8           ; }   
 01D8           ; }   
 01D8           ; }   
 01D8                   .dbline 93
 01D8           ; }   
 01D8           ; }   
 01D8                   .dbline 94
 01D8           ; }   
 01D8 4423              tst R20
 01DA 19F4              brne L59
 01DC                   .dbline 95
 01DC           ; }   
 01DC 462F              mov R20,R22
 01DE 4058              subi R20,128    ; addi 128
 01E0 02C0              xjmp L60
 01E2           L59:
 01E2                   .dbline 97
 01E2           ; }   
 01E2           ; }   
 01E2 462F              mov R20,R22
 01E4 4057              subi R20,112    ; addi 144
 01E6           L60:
 01E6                   .dbline 98
 01E6           ; }   
 01E6 242F              mov R18,R20
 01E8 01E0              ldi R16,1
 01EA C7DF              xcall _LCD_Write_char
 01EC                   .dbline 99
 01EC           ; }   
 01EC                   .dbline -2
 01EC           L58:
 01EC 0E940000          xcall pop_gset2
 01F0                   .dbline 0 ; func end
 01F0 0895              ret
 01F2                   .dbsym r address 20 c
 01F2                   .dbsym r y 20 c
 01F2                   .dbsym r x 22 c
 01F2                   .dbend
 01F2                   .dbfunc e LCD_DisplayCharacter _LCD_DisplayCharacter fV
 01F2           ;           Char -> R20
                        .even
 01F2           _LCD_DisplayCharacter::
 01F2 0E940000          xcall push_gset1
 01F6 402F              mov R20,R16
 01F8                   .dbline -1
 01F8                   .dbline 109
 01F8           ; }   
 01F8           ; }   
 01F8           ; }   
 01F8           ; }   
 01F8           ; }   
 01F8           ; }   
 01F8           ; }   
 01F8           ; }   
 01F8           ; }   
 01F8           ; }   
 01F8                   .dbline 110
 01F8           ; }   
 01F8 242F              mov R18,R20
 01FA 0027              clr R16
 01FC BEDF              xcall _LCD_Write_char
 01FE                   .dbline -2
 01FE           L61:
 01FE 0E940000          xcall pop_gset1
 0202                   .dbline 0 ; func end
 0202 0895              ret
 0204                   .dbsym r Char 20 c
 0204                   .dbend
 0204                   .dbfunc e LCD_DisplayString _LCD_DisplayString fV
 0204           ;         string -> R20,R21
 0204           ;              y -> R10
 0204           ;              x -> R22
                        .even
 0204           _LCD_DisplayString::
 0204 0E940000          xcall push_gset3
 0208 A22E              mov R10,R18
 020A 602F              mov R22,R16
 020C 4E81              ldd R20,y+6
 020E 5F81              ldd R21,y+7
 0210                   .dbline -1
 0210                   .dbline 120
 0210           ; }   
 0210           ; }   
 0210           ; }   
 0210           ; }   
 0210           ; }   
 0210           ; }   
 0210           ; }   
 0210           ; }   
 0210           ; }   
 0210           ; }   
 0210                   .dbline 121
 0210           ; }   
 0210 2A2D              mov R18,R10
 0212 062F              mov R16,R22
 0214 DDDF              xcall _LCD_set_xy
 0216 04C0              xjmp L64
 0218           L63:
 0218                   .dbline 123
 0218 FA01              movw R30,R20
 021A 0191              ld R16,Z+
 021C AF01              movw R20,R30
 021E E9DF              xcall _LCD_DisplayCharacter
 0220           L64:
 0220                   .dbline 122
 0220           ; }   
 0220 FA01              movw R30,R20
 0222 2080              ldd R2,z+0
 0224 2220              tst R2
 0226 C1F7              brne L63
 0228                   .dbline -2
 0228           L62:
 0228 0E940000          xcall pop_gset3
 022C                   .dbline 0 ; func end
 022C 0895              ret
 022E                   .dbsym r string 20 pc
 022E                   .dbsym r y 10 c
 022E                   .dbsym r x 22 c
 022E                   .dbend
 022E                   .dbfunc e LCD_DisplayInt _LCD_DisplayInt fV
 022E           ;              n -> R22
 022E           ;              j -> R22
 022E           ;            str -> R10,R11
 022E           ;              a -> y+2
 022E           ;              i -> R20
 022E           ;              t -> R20,R21
 022E           ;              y -> R14
 022E           ;              x -> R12
                        .even
 022E           _LCD_DisplayInt::
 022E 0E940000          xcall push_gset5
 0232 E22E              mov R14,R18
 0234 C02E              mov R12,R16
 0236 2797              sbiw R28,7
 0238 4989              ldd R20,y+17
 023A 5A89              ldd R21,y+18
 023C                   .dbline -1
 023C                   .dbline 134
 023C           ; }   
 023C           ; }   
 023C           ; }   
 023C           ; }   
 023C           ; }   
 023C           ; }   
 023C           ; }   
 023C           ; }   
 023C           ; }   
 023C           ; }   
 023C           ; }   
 023C           ; }   
 023C                   .dbline 137
 023C           ; }   
 023C           ; }   
 023C           ; }   
 023C 80E0              ldi R24,<_ch1
 023E 90E0              ldi R25,>_ch1
 0240 5C01              movw R10,R24
 0242                   .dbline 138
 0242           ; }   
 0242 20E1              ldi R18,10000
 0244 37E2              ldi R19,39
 0246 8A01              movw R16,R20
 0248 0E940000          xcall div16u
 024C 2AE0              ldi R18,10
 024E 30E0              ldi R19,0
 0250 0E940000          xcall mod16u
 0254 0A83              std y+2,R16
 0256                   .dbline 139
 0256           ; }   
 0256 28EE              ldi R18,1000
 0258 33E0              ldi R19,3
 025A 8A01              movw R16,R20
 025C 0E940000          xcall div16u
 0260 2AE0              ldi R18,10
 0262 30E0              ldi R19,0
 0264 0E940000          xcall mod16u
 0268 0B83              std y+3,R16
 026A                   .dbline 140
 026A           ; }   

⌨️ 快捷键说明

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