📄 12864.lis
字号:
00DE 159A sbi 0x2,5
00E0 .dbline 77
00E0 1D9A sbi 0x3,5
00E2 .dbline 78
00E2 ; delay_us(10);
00E2 0AE0 ldi R16,10
00E4 10E0 ldi R17,0
00E6 A1DF xcall _delay_us
00E8 .dbline 79
00E8 ; SCLK_CLE;
00E8 159A sbi 0x2,5
00EA .dbline 79
00EA 1D98 cbi 0x3,5
00EC .dbline 80
00EC ; delay_us(3);
00EC 03E0 ldi R16,3
00EE 10E0 ldi R17,0
00F0 9CDF xcall _delay_us
00F2 .dbline 81
00F2 ; command=command<<1;//高位先发
00F2 440F lsl R20
00F4 .dbline 82
00F4 ; }
00F4 L28:
00F4 .dbline 70
00F4 6395 inc R22
00F6 L30:
00F6 .dbline 70
00F6 6830 cpi R22,8
00F8 30F3 brlo L27
00FA X7:
00FA .dbline 83
00FA ; command=CMD<<4;
00FA 4A2D mov R20,R10
00FC 4F70 andi R20,#0x0F
00FE 4295 swap R20
0100 .dbline 84
0100 ; for(i=0;i<8;i++)//把数据送到线上去
0100 6627 clr R22
0102 18C0 xjmp L36
0104 L33:
0104 .dbline 85
0104 ; { SCLK_CLE;
0104 .dbline 85
0104 159A sbi 0x2,5
0106 .dbline 85
0106 1D98 cbi 0x3,5
0108 .dbline 86
0108 ; if(command&0x80)
0108 47FF sbrs R20,7
010A 03C0 rjmp L37
010C X8:
010C .dbline 87
010C ; {SID_SET;}
010C .dbline 87
010C 149A sbi 0x2,4
010E .dbline 87
010E 1C9A sbi 0x3,4
0110 .dbline 87
0110 02C0 xjmp L38
0112 L37:
0112 .dbline 89
0112 ; else
0112 ; {SID_CLE;}
0112 .dbline 89
0112 149A sbi 0x2,4
0114 .dbline 89
0114 1C98 cbi 0x3,4
0116 .dbline 89
0116 L38:
0116 .dbline 90
0116 ; delay_us(1);
0116 01E0 ldi R16,1
0118 10E0 ldi R17,0
011A 87DF xcall _delay_us
011C .dbline 91
011C ; SCLK_SET;//时钟总线拉高,数据传送给显示屏
011C 159A sbi 0x2,5
011E .dbline 91
011E 1D9A sbi 0x3,5
0120 .dbline 92
0120 ; delay_us(1);
0120 01E0 ldi R16,1
0122 10E0 ldi R17,0
0124 82DF xcall _delay_us
0126 .dbline 93
0126 ; SCLK_CLE;
0126 159A sbi 0x2,5
0128 .dbline 93
0128 1D98 cbi 0x3,5
012A .dbline 94
012A ; delay_us(3);
012A 03E0 ldi R16,3
012C 10E0 ldi R17,0
012E 7DDF xcall _delay_us
0130 .dbline 95
0130 ; command=command<<1;//高位先发
0130 440F lsl R20
0132 .dbline 96
0132 ; }
0132 L34:
0132 .dbline 84
0132 6395 inc R22
0134 L36:
0134 .dbline 84
0134 6830 cpi R22,8
0136 30F3 brlo L33
0138 X9:
0138 .dbline 97
0138 ; CS_CLE;
0138 139A sbi 0x2,3
013A .dbline 97
013A 1B98 cbi 0x3,3
013C .dbline 98
013C ; delay_us(15);
013C 0FE0 ldi R16,15
013E 10E0 ldi R17,0
0140 74DF xcall _delay_us
0142 .dbline -2
0142 L20:
0142 .dbline 0 ; func end
0142 0C940000 xjmp pop_xgsetF00C
0146 .dbsym r i 22 c
0146 .dbsym r command 20 c
0146 .dbsym r CMD 10 c
0146 .dbend
0146 .dbfunc e Write_one_char _Write_one_char fV
0146 ; i -> R22
0146 ; date -> R20
0146 ; dat -> R10
.even
0146 _Write_one_char::
0146 0E940000 xcall push_xgsetF00C
014A A02E mov R10,R16
014C .dbline -1
014C .dbline 103
014C ; }
014C ;
014C ; //发送一个字符
014C ; void Write_one_char(unsigned char dat)
014C ; {
014C .dbline 105
014C ; uchar date,i;
014C ; CS_SET;
014C 139A sbi 0x2,3
014E .dbline 105
014E 1B9A sbi 0x3,3
0150 .dbline 106
0150 ; date=0xfa;
0150 4AEF ldi R20,250
0152 .dbline 107
0152 ; for(i=0;i<8;i++)//把数据送到线上去
0152 6627 clr R22
0154 18C0 xjmp L43
0156 L40:
0156 .dbline 108
0156 ; { SCLK_CLE;
0156 .dbline 108
0156 159A sbi 0x2,5
0158 .dbline 108
0158 1D98 cbi 0x3,5
015A .dbline 109
015A ; if(date&0x80)
015A 47FF sbrs R20,7
015C 03C0 rjmp L44
015E X10:
015E .dbline 110
015E ; {SID_SET;}
015E .dbline 110
015E 149A sbi 0x2,4
0160 .dbline 110
0160 1C9A sbi 0x3,4
0162 .dbline 110
0162 02C0 xjmp L45
0164 L44:
0164 .dbline 112
0164 ; else
0164 ; {SID_CLE;}
0164 .dbline 112
0164 149A sbi 0x2,4
0166 .dbline 112
0166 1C98 cbi 0x3,4
0168 .dbline 112
0168 L45:
0168 .dbline 113
0168 ; delay_us(1);
0168 01E0 ldi R16,1
016A 10E0 ldi R17,0
016C 5EDF xcall _delay_us
016E .dbline 114
016E ; SCLK_SET;//时钟总线拉高,数据传送给显示屏
016E 159A sbi 0x2,5
0170 .dbline 114
0170 1D9A sbi 0x3,5
0172 .dbline 115
0172 ; delay_us(10);
0172 0AE0 ldi R16,10
0174 10E0 ldi R17,0
0176 59DF xcall _delay_us
0178 .dbline 116
0178 ; SCLK_CLE;
0178 159A sbi 0x2,5
017A .dbline 116
017A 1D98 cbi 0x3,5
017C .dbline 117
017C ; delay_us(3);
017C 03E0 ldi R16,3
017E 10E0 ldi R17,0
0180 54DF xcall _delay_us
0182 .dbline 118
0182 ; date=date<<1;//高位先发
0182 440F lsl R20
0184 .dbline 119
0184 ; }
0184 L41:
0184 .dbline 107
0184 6395 inc R22
0186 L43:
0186 .dbline 107
0186 6830 cpi R22,8
0188 30F3 brlo L40
018A X11:
018A .dbline 120
018A ; date=dat&0xf0;
018A 4A2D mov R20,R10
018C 407F andi R20,240
018E .dbline 121
018E ; for(i=0;i<8;i++)//把数据送到线上去
018E 6627 clr R22
0190 18C0 xjmp L49
0192 L46:
0192 .dbline 122
0192 ; {
0192 .dbline 123
0192 ; SCLK_CLE;
0192 159A sbi 0x2,5
0194 .dbline 123
0194 1D98 cbi 0x3,5
0196 .dbline 124
0196 ; if(date&0x80)
0196 47FF sbrs R20,7
0198 03C0 rjmp L50
019A X12:
019A .dbline 125
019A ; {SID_SET;}
019A .dbline 125
019A 149A sbi 0x2,4
019C .dbline 125
019C 1C9A sbi 0x3,4
019E .dbline 125
019E 02C0 xjmp L51
01A0 L50:
01A0 .dbline 127
01A0 ; else
01A0 ; {SID_CLE;}
01A0 .dbline 127
01A0 149A sbi 0x2,4
01A2 .dbline 127
01A2 1C98 cbi 0x3,4
01A4 .dbline 127
01A4 L51:
01A4 .dbline 128
01A4 ; delay_us(1);
01A4 01E0 ldi R16,1
01A6 10E0 ldi R17,0
01A8 40DF xcall _delay_us
01AA .dbline 129
01AA ; SCLK_SET;//时钟总线拉高,数据传送给显示屏
01AA 159A sbi 0x2,5
01AC .dbline 129
01AC 1D9A sbi 0x3,5
01AE .dbline 130
01AE ; delay_us(3);
01AE 03E0 ldi R16,3
01B0 10E0 ldi R17,0
01B2 3BDF xcall _delay_us
01B4 .dbline 131
01B4 ; SCLK_CLE;
01B4 159A sbi 0x2,5
01B6 .dbline 131
01B6 1D98 cbi 0x3,5
01B8 .dbline 132
01B8 ; delay_us(3);
01B8 03E0 ldi R16,3
01BA 10E0 ldi R17,0
01BC 36DF xcall _delay_us
01BE .dbline 133
01BE ; date=date<<1;//高位先发
01BE 440F lsl R20
01C0 .dbline 134
01C0 ; }
01C0 L47:
01C0 .dbline 121
01C0 6395 inc R22
01C2 L49:
01C2 .dbline 121
01C2 6830 cpi R22,8
01C4 30F3 brlo L46
01C6 X13:
01C6 .dbline 135
01C6 ; date=dat<<4;
01C6 4A2D mov R20,R10
01C8 4F70 andi R20,#0x0F
01CA 4295 swap R20
01CC .dbline 136
01CC ; for(i=0;i<8;i++)//把数据送到线上去
01CC 6627 clr R22
01CE 18C0 xjmp L55
01D0 L52:
01D0 .dbline 137
01D0 ; { SCLK_CLE;
01D0 .dbline 137
01D0 159A sbi 0x2,5
01D2 .dbline 137
01D2 1D98 cbi 0x3,5
01D4 .dbline 138
01D4 ; if(date&0x80)
01D4 47FF sbrs R20,7
01D6 03C0 rjmp L56
01D8 X14:
01D8 .dbline 139
01D8 ; {SID_SET;}
01D8 .dbline 139
01D8 149A sbi 0x2,4
01DA .dbline 139
01DA 1C9A sbi 0x3,4
01DC .dbline 139
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -