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

📄 12864_example.lis

📁 我们编写了一个支持位操作、普通端口操作、并行操作、串行操作等多种模式的12864驱动
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 01E4 E0910200          lds R30,_VPORTBit
 01E8 F0910300          lds R31,_VPORTBit+1
 01EC 8081              ldd R24,z+0
 01EE 8160              ori R24,1
 01F0 8083              std z+0,R24
 01F2                   .dbline 125
 01F2                   .dbline 125
 01F2                   .dbline 126
 01F2 E0910200          lds R30,_VPORTBit
 01F6 F0910300          lds R31,_VPORTBit+1
 01FA 8081              ldd R24,z+0
 01FC 8D7F              andi R24,253
 01FE 8083              std z+0,R24
 0200                   .dbline 126
 0200                   .dbline 126
 0200                   .dbline 126
 0200                   .dbline 129
 0200 80910000          lds R24,_VPORT
 0204 90910100          lds R25,_VPORT+1
 0208 9070              andi R25,0
 020A 90930100          sts _VPORT+1,R25
 020E 80930000          sts _VPORT,R24
 0212                   .dbline 129
 0212 242E              mov R2,R20
 0214 3324              clr R3
 0216 322C              mov R3,R2
 0218 2224              clr R2
 021A 2C01              movw R4,R24
 021C 4228              or R4,R2
 021E 5328              or R5,R3
 0220 50920100          sts _VPORT+1,R5
 0224 40920000          sts _VPORT,R4
 0228                   .dbline 129
 0228 73DF              xcall _refreshVirtualPORT
 022A                   .dbline 129
 022A                   .dbline 132
 022A E0910200          lds R30,_VPORTBit
 022E F0910300          lds R31,_VPORTBit+1
 0232 8081              ldd R24,z+0
 0234 8460              ori R24,4
 0236 8083              std z+0,R24
 0238                   .dbline 132
 0238 6BDF              xcall _refreshVirtualPORT
 023A                   .dbline 132
 023A                   .dbline 132
 023A                   .dbline 133
 023A E0910200          lds R30,_VPORTBit
 023E F0910300          lds R31,_VPORTBit+1
 0242 8081              ldd R24,z+0
 0244 8B7F              andi R24,251
 0246 8083              std z+0,R24
 0248                   .dbline 133
 0248 63DF              xcall _refreshVirtualPORT
 024A                   .dbline 133
 024A                   .dbline 133
 024A                   .dbline -2
 024A           L28:
 024A 0E940000          xcall pop_gset1
 024E                   .dbline 0 ; func end
 024E 0895              ret
 0250                   .dbsym r Data 20 c
 0250                   .dbend
 0250                   .dbfunc e sendCommandToLCD _sendCommandToLCD fV
 0250           ;        Command -> R20
                        .even
 0250           _sendCommandToLCD::
 0250 0E940000          xcall push_gset1
 0254 402F              mov R20,R16
 0256                   .dbline -1
 0256                   .dbline 141
 0256                   .dbline 142
 0256 BBDF              xcall _waitForLCDReady
 0258                   .dbline 144
 0258 E0910200          lds R30,_VPORTBit
 025C F0910300          lds R31,_VPORTBit+1
 0260 8081              ldd R24,z+0
 0262 8E7F              andi R24,254
 0264 8083              std z+0,R24
 0266                   .dbline 144
 0266                   .dbline 144
 0266                   .dbline 145
 0266 E0910200          lds R30,_VPORTBit
 026A F0910300          lds R31,_VPORTBit+1
 026E 8081              ldd R24,z+0
 0270 8D7F              andi R24,253
 0272 8083              std z+0,R24
 0274                   .dbline 145
 0274                   .dbline 145
 0274                   .dbline 145
 0274                   .dbline 149
 0274 80910000          lds R24,_VPORT
 0278 90910100          lds R25,_VPORT+1
 027C 9070              andi R25,0
 027E 90930100          sts _VPORT+1,R25
 0282 80930000          sts _VPORT,R24
 0286                   .dbline 149
 0286 242E              mov R2,R20
 0288 3324              clr R3
 028A 322C              mov R3,R2
 028C 2224              clr R2
 028E 2C01              movw R4,R24
 0290 4228              or R4,R2
 0292 5328              or R5,R3
 0294 50920100          sts _VPORT+1,R5
 0298 40920000          sts _VPORT,R4
 029C                   .dbline 149
 029C 39DF              xcall _refreshVirtualPORT
 029E                   .dbline 149
 029E                   .dbline 151
 029E E0910200          lds R30,_VPORTBit
 02A2 F0910300          lds R31,_VPORTBit+1
 02A6 8081              ldd R24,z+0
 02A8 8460              ori R24,4
 02AA 8083              std z+0,R24
 02AC                   .dbline 151
 02AC 31DF              xcall _refreshVirtualPORT
 02AE                   .dbline 151
 02AE                   .dbline 151
 02AE                   .dbline 152
 02AE E0910200          lds R30,_VPORTBit
 02B2 F0910300          lds R31,_VPORTBit+1
 02B6 8081              ldd R24,z+0
 02B8 8B7F              andi R24,251
 02BA 8083              std z+0,R24
 02BC                   .dbline 152
 02BC 29DF              xcall _refreshVirtualPORT
 02BE                   .dbline 152
 02BE                   .dbline 152
 02BE                   .dbline -2
 02BE           L29:
 02BE 0E940000          xcall pop_gset1
 02C2                   .dbline 0 ; func end
 02C2 0895              ret
 02C4                   .dbsym r Command 20 c
 02C4                   .dbend
 02C4                   .dbfunc e setX _setX fV
 02C4           ;              X -> R20
                        .even
 02C4           _setX::
 02C4 0E940000          xcall push_gset1
 02C8 402F              mov R20,R16
 02CA                   .dbline -1
 02CA                   .dbline 160
 02CA                   .dbline 161
 02CA 4770              andi R20,7
 02CC                   .dbline 162
 02CC 486B              ori R20,184
 02CE                   .dbline 164
 02CE 042F              mov R16,R20
 02D0 BFDF              xcall _sendCommandToLCD
 02D2                   .dbline -2
 02D2           L30:
 02D2 0E940000          xcall pop_gset1
 02D6                   .dbline 0 ; func end
 02D6 0895              ret
 02D8                   .dbsym r X 20 c
 02D8                   .dbend
 02D8                   .dbfunc e setY _setY fV
 02D8           ;              Y -> R20
                        .even
 02D8           _setY::
 02D8 0E940000          xcall push_gset1
 02DC 402F              mov R20,R16
 02DE                   .dbline -1
 02DE                   .dbline 172
 02DE                   .dbline 173
 02DE 4F73              andi R20,63
 02E0                   .dbline 174
 02E0 4064              ori R20,64
 02E2                   .dbline 176
 02E2 042F              mov R16,R20
 02E4 B5DF              xcall _sendCommandToLCD
 02E6                   .dbline -2
 02E6           L31:
 02E6 0E940000          xcall pop_gset1
 02EA                   .dbline 0 ; func end
 02EA 0895              ret
 02EC                   .dbsym r Y 20 c
 02EC                   .dbend
 02EC                   .dbfunc e setStartLine _setStartLine fV
 02EC           ;              Y -> R20
                        .even
 02EC           _setStartLine::
 02EC 0E940000          xcall push_gset1
 02F0 402F              mov R20,R16
 02F2                   .dbline -1
 02F2                   .dbline 184
 02F2                   .dbline 185
 02F2 4770              andi R20,7
 02F4                   .dbline 186
 02F4 406C              ori R20,192
 02F6                   .dbline 188
 02F6 042F              mov R16,R20
 02F8 ABDF              xcall _sendCommandToLCD
 02FA                   .dbline -2
 02FA           L32:
 02FA 0E940000          xcall pop_gset1
 02FE                   .dbline 0 ; func end
 02FE 0895              ret
 0300                   .dbsym r Y 20 c
 0300                   .dbend
 0300                   .dbfunc e setLCDOnOFF _setLCDOnOFF fV
 0300           ;          State -> R20
                        .even
 0300           _setLCDOnOFF::
 0300 0E940000          xcall push_gset1
 0304 402F              mov R20,R16
 0306                   .dbline -1
 0306                   .dbline 196
 0306                   .dbline 197
 0306 4E63              ori R20,62
 0308                   .dbline 199
 0308 042F              mov R16,R20
 030A A2DF              xcall _sendCommandToLCD
 030C                   .dbline -2
 030C           L33:
 030C 0E940000          xcall pop_gset1
 0310                   .dbline 0 ; func end
 0310 0895              ret
 0312                   .dbsym r State 20 c
 0312                   .dbend
 0312                   .dbfunc e LCDDraw _LCDDraw fV
 0312           ;           Data -> y+4
 0312           ;              Y -> R20
 0312           ;              X -> R22
                        .even
 0312           _LCDDraw::
 0312 0E940000          xcall push_gset2
 0316 422F              mov R20,R18
 0318 602F              mov R22,R16
 031A                   .dbline -1
 031A                   .dbline 207
 031A                   .dbline 208
 031A 062F              mov R16,R22
 031C D3DF              xcall _setX
 031E                   .dbline 210
 031E 8FE3              ldi R24,63
 0320 8417              cp R24,R20
 0322 90F4              brsh L35
 0324                   .dbline 211
 0324                   .dbline 212
 0324 E0910200          lds R30,_VPORTBit
 0328 F0910300          lds R31,_VPORTBit+1
 032C 8081              ldd R24,z+0
 032E 8061              ori R24,16
 0330 8083              std z+0,R24
 0332                   .dbline 212
 0332                   .dbline 212
 0332 E0910200          lds R30,_VPORTBit
 0336 F0910300          lds R31,_VPORTBit+1
 033A 8081              ldd R24,z+0
 033C 877F              andi R24,247
 033E 8083              std z+0,R24
 0340                   .dbline 212
 0340                   .dbline 212
 0340                   .dbline 213
 0340 042F              mov R16,R20
 0342 0054              subi R16,64
 0344 C9DF              xcall _setY
 0346                   .dbline 214
 0346 10C0              xjmp L36
 0348           L35:
 0348                   .dbline 216
 0348                   .dbline 217
 0348 E0910200          lds R30,_VPORTBit
 034C F0910300          lds R31,_VPORTBit+1
 0350 8081              ldd R24,z+0
 0352 8860              ori R24,8
 0354 8083              std z+0,R24
 0356                   .dbline 217
 0356                   .dbline 217
 0356 E0910200          lds R30,_VPORTBit
 035A F0910300          lds R31,_VPORTBit+1
 035E 8081              ldd R24,z+0
 0360 8F7E              andi R24,239
 0362 8083              std z+0,R24
 0364                   .dbline 217
 0364                   .dbline 217
 0364                   .dbline 218
 0364 042F              mov R16,R20
 0366 B8DF              xcall _setY
 0368                   .dbline 219
 0368           L36:
 0368                   .dbline 221
 0368 0C81              ldd R16,y+4
 036A 38DF              xcall _sendDataToLCD
 036C                   .dbline -2
 036C           L34:
 036C 0E940000          xcall pop_gset2
 0370                   .dbline 0 ; func end
 0370 0895              ret
 0372                   .dbsym l Data 4 c
 0372                   .dbsym r Y 20 c
 0372                   .dbsym r X 22 c
 0372                   .dbend
 0372                   .dbfunc e ClearLCD _ClearLCD fV
 0372           ;              a -> R20
 0372           ;              b -> R22
                        .even
 0372           _ClearLCD::
 0372 0E940000          xcall push_gset2
 0376                   .dbline -1
 0376                   .dbline 228
 0376                   .dbline 229
 0376 4427              clr R20
 0378                   .dbline 229
 0378 6627              clr R22
 037A                   .dbline 230
 037A E0910200          lds R30,_VPORTBit
 037E F0910300          lds R31,_VPORTBit+1
 0382 8081              ldd R24,z+0
 0384 8860              ori R24,8
 0386 8083              std z+0,R24
 0388                   .dbline 230

⌨️ 快捷键说明

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