📄 test.s
字号:
; send(50, DATA);
ldi R18,1
ldi R16,50
xcall _send
.dbline 229
; send(60, DATA);
ldi R18,1
ldi R16,60
xcall _send
.dbline 230
; send(70, DATA);
ldi R18,1
ldi R16,70
xcall _send
.dbline 231
; send(80, DATA);
ldi R18,1
ldi R16,80
xcall _send
.dbline 232
; send(90, DATA);
ldi R18,1
ldi R16,90
xcall _send
.dbline 233
; send(100, DATA);
ldi R18,1
ldi R16,100
xcall _send
.dbline 234
; send(110, DATA);
ldi R18,1
ldi R16,110
xcall _send
.dbline 235
; send(127, DATA);
ldi R18,1
ldi R16,127
xcall _send
.dbline 236
; cs();
xcall _cs
.dbline 238
;
; send(0xB5, CMD); // Gamma Curve Set
clr R18
ldi R16,181
xcall _send
.dbline 239
; send(1, DATA);
ldi R18,1
ldi R16,1
xcall _send
.dbline 240
; cs();
xcall _cs
.dbline 242
;
; send(0xBE, CMD); // Power Control
clr R18
ldi R16,190
xcall _send
.dbline 243
; send(3, DATA);
ldi R18,1
ldi R16,3
xcall _send
.dbline 244
; cs();
xcall _cs
.dbline 246
;
; send(0x3A, CMD); // Power Control
clr R18
ldi R16,58
xcall _send
.dbline 247
; send(0b00000011, DATA);
ldi R18,1
ldi R16,3
xcall _send
.dbline 248
; cs();
xcall _cs
.dbline 250
;
; send(0x11, CMD); // Sleep out
clr R18
ldi R16,17
xcall _send
.dbline 251
; cs();
xcall _cs
.dbline 253
;
; send(0xB7, CMD); // Temperature gradient set
clr R18
ldi R16,183
xcall _send
.dbline 254
clr R20
clr R21
L35:
.dbline 254
.dbline 255
ldi R18,1
clr R16
xcall _send
.dbline 256
L36:
.dbline 254
; for(i=0; i<14; i++) {
subi R20,255 ; offset = 1
sbci R21,255
.dbline 254
cpi R20,14
ldi R30,0
cpc R21,R30
brlt L35
.dbline 257
; send(0, DATA);
; }
; cs();
xcall _cs
.dbline 259
;
; send(0x03, CMD); // Booster Voltage ON
clr R18
ldi R16,3
xcall _send
.dbline 260
; cs();
xcall _cs
.dbline 262
clr R20
clr R21
L39:
.dbline 262
.dbline 263
xcall _delay5ms
.dbline 264
L40:
.dbline 262
;
; for(i=0; i<8; i++) { // Booster Voltage stabilisieren lassen
subi R20,255 ; offset = 1
sbci R21,255
.dbline 262
cpi R20,8
ldi R30,0
cpc R21,R30
brlt L39
.dbline 266
; delay5ms();
; }
;
; send(0x20, CMD); // Inversion control
clr R18
ldi R16,32
xcall _send
.dbline 267
; cs();
xcall _cs
.dbline 269
;
; send(0x25, CMD); // Write contrast
clr R18
ldi R16,37
xcall _send
.dbline 270
; send(63, DATA);
ldi R18,1
ldi R16,63
xcall _send
.dbline 271
; cs();
xcall _cs
.dbline 274
;
;
; send(0x2C, CMD); // Memory Write
clr R18
ldi R16,44
xcall _send
.dbline 277
;
; // roter Balken
; s=0;
clr R22
.dbline 278
clr R20
clr R21
L43:
.dbline 278
; for(i=0; i<1176; i++) {
.dbline 279
; if(s == 0) send(15, DATA);
tst R22
brne L47
.dbline 279
ldi R18,1
ldi R16,15
xcall _send
xjmp L48
L47:
.dbline 280
; else if(s == 1) send(240, DATA);
cpi R22,1
brne L49
.dbline 280
ldi R18,1
ldi R16,240
xcall _send
xjmp L50
L49:
.dbline 281
; else if(s == 2) send(255, DATA);
cpi R22,2
brne L51
.dbline 281
ldi R18,1
ldi R16,255
xcall _send
L51:
L50:
L48:
.dbline 283
;
; if(++s == 3)
mov R24,R22
subi R24,255 ; addi 1
mov R22,R24
cpi R22,3
brne L53
.dbline 284
; s = 0;
clr R22
L53:
.dbline 285
L44:
.dbline 278
subi R20,255 ; offset = 1
sbci R21,255
.dbline 278
cpi R20,152
ldi R30,4
cpc R21,R30
brlt L43
.dbline 288
; }
;
; // gr黱er Balken
; s=0;
clr R22
.dbline 289
clr R20
clr R21
L55:
.dbline 289
; for(i=0; i<1176; i++) {
.dbline 290
; if(s == 0) send(141, DATA);
tst R22
brne L59
.dbline 290
ldi R18,1
ldi R16,141
xcall _send
xjmp L60
L59:
.dbline 291
; else if(s == 1) send(56, DATA);
cpi R22,1
brne L61
.dbline 291
ldi R18,1
ldi R16,56
xcall _send
xjmp L62
L61:
.dbline 292
; else if(s == 2) send(211, DATA);
cpi R22,2
brne L63
.dbline 292
ldi R18,1
ldi R16,211
xcall _send
L63:
L62:
L60:
.dbline 294
;
; if(++s == 3)
mov R24,R22
subi R24,255 ; addi 1
mov R22,R24
cpi R22,3
brne L65
.dbline 295
; s = 0;
clr R22
L65:
.dbline 296
L56:
.dbline 289
subi R20,255 ; offset = 1
sbci R21,255
.dbline 289
cpi R20,152
ldi R30,4
cpc R21,R30
brlt L55
.dbline 299
; }
;
; // blauer Balken
; s=0;
clr R22
.dbline 300
clr R20
clr R21
L67:
.dbline 300
; for(i=0; i<1176; i++) {
.dbline 301
; if(s == 0) send(255, DATA);
tst R22
brne L71
.dbline 301
ldi R18,1
ldi R16,255
xcall _send
xjmp L72
L71:
.dbline 302
; else if(s == 1) send(15, DATA);
cpi R22,1
brne L73
.dbline 302
ldi R18,1
ldi R16,15
xcall _send
xjmp L74
L73:
.dbline 303
; else if(s == 2) send(240, DATA);
cpi R22,2
brne L75
.dbline 303
ldi R18,1
ldi R16,240
xcall _send
L75:
L74:
L72:
.dbline 305
;
; if(++s == 3)
mov R24,R22
subi R24,255 ; addi 1
mov R22,R24
cpi R22,3
brne L77
.dbline 306
; s = 0;
clr R22
L77:
.dbline 307
L68:
.dbline 300
subi R20,255 ; offset = 1
sbci R21,255
.dbline 300
cpi R20,152
ldi R30,4
cpc R21,R30
brlt L67
.dbline 310
; }
;
; // gelber Balken
; s=0;
clr R22
.dbline 311
clr R20
clr R21
L79:
.dbline 311
; for(i=0; i<1176; i++) {
.dbline 312
; if(s == 0) send(0, DATA);
tst R22
brne L83
.dbline 312
ldi R18,1
clr R16
xcall _send
xjmp L84
L83:
.dbline 313
; else if(s == 1) send(240, DATA);
cpi R22,1
brne L85
.dbline 313
ldi R18,1
ldi R16,240
xcall _send
xjmp L86
L85:
.dbline 314
; else if(s == 2) send(15, DATA);
cpi R22,2
brne L87
.dbline 314
ldi R18,1
ldi R16,15
xcall _send
L87:
L86:
L84:
.dbline 316
;
; if(++s == 3)
mov R24,R22
subi R24,255 ; addi 1
mov R22,R24
cpi R22,3
brne L89
.dbline 317
; s = 0;
clr R22
L89:
.dbline 318
L80:
.dbline 311
subi R20,255 ; offset = 1
sbci R21,255
.dbline 311
cpi R20,152
ldi R30,4
cpc R21,R30
brlt L79
.dbline 321
; }
;
; // magenta Balken
; s=0;
clr R22
.dbline 322
clr R20
clr R21
L91:
.dbline 322
; for(i=0; i<1176; i++) {
.dbline 323
; if(s == 0) send(15, DATA);
tst R22
brne L95
.dbline 323
ldi R18,1
ldi R16,15
xcall _send
xjmp L96
L95:
.dbline 324
; else if(s == 1) send(0, DATA);
cpi R22,1
brne L97
.dbline 324
ldi R18,1
clr R16
xcall _send
xjmp L98
L97:
.dbline 325
; else if(s == 2) send(240, DATA);
cpi R22,2
brne L99
.dbline 325
ldi R18,1
ldi R16,240
xcall _send
L99:
L98:
L96:
.dbline 327
;
; if(++s == 3)
mov R24,R22
subi R24,255 ; addi 1
mov R22,R24
cpi R22,3
brne L101
.dbline 328
; s = 0;
clr R22
L101:
.dbline 329
L92:
.dbline 322
subi R20,255 ; offset = 1
sbci R21,255
.dbline 322
cpi R20,152
ldi R30,4
cpc R21,R30
brlt L91
.dbline 332
; }
;
; // cyan Balken
; s=0;
clr R22
.dbline 333
clr R20
clr R21
L103:
.dbline 333
; for(i=0; i<1176; i++) {
.dbline 334
; if(s == 0) send(240, DATA);
tst R22
brne L107
.dbline 334
ldi R18,1
ldi R16,240
xcall _send
xjmp L108
L107:
.dbline 335
; else if(s == 1) send(15, DATA);
cpi R22,1
brne L109
.dbline 335
ldi R18,1
ldi R16,15
xcall _send
xjmp L110
L109:
.dbline 336
; else if(s == 2) send(0, DATA);
cpi R22,2
brne L111
.dbline 336
ldi R18,1
clr R16
xcall _send
L111:
L110:
L108:
.dbline 338
;
; if(++s == 3)
mov R24,R22
subi R24,255 ; addi 1
mov R22,R24
cpi R22,3
brne L113
.dbline 339
; s = 0;
clr R22
L113:
.dbline 340
L104:
.dbline 333
subi R20,255 ; offset = 1
sbci R21,255
.dbline 333
cpi R20,152
ldi R30,4
cpc R21,R30
brlt L103
.dbline 343
clr R20
clr R21
L115:
.dbline 343
.dbline 344
ldi R18,1
clr R16
xcall _send
.dbline 345
L116:
.dbline 343
; }
;
; // wei遝r Balken
; for(i=0; i<1176; i++) {
subi R20,255 ; offset = 1
sbci R21,255
.dbline 343
cpi R20,152
ldi R30,4
cpc R21,R30
brlt L115
.dbline 348
clr R20
clr R21
L119:
.dbline 348
.dbline 349
ldi R18,1
ldi R16,255
xcall _send
.dbline 350
L120:
.dbline 348
; send(0, DATA);
; }
;
; // schwarzer Balken
; for(i=0; i<1617; i++) {
subi R20,255 ; offset = 1
sbci R21,255
.dbline 348
cpi R20,81
ldi R30,6
cpc R21,R30
brlt L119
.dbline 351
; send(255, DATA);
; }
; cs();
xcall _cs
.dbline 353
;
; send(0x29, CMD); // Display On
clr R18
ldi R16,41
xcall _send
.dbline 354
; cs();
xcall _cs
L123:
.dbline 356
.dbline 356
.dbline 356
L124:
.dbline 356
xjmp L123
X0:
.dbline -2
L34:
.dbline 0 ; func end
ret
.dbsym r s 22 c
.dbsym r i 20 I
.dbend
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -