📄 3510i.lis
字号:
00E8 .dbline 128
00E8 ; else
00E8 ; clr_bit(LCD_SIO_PORT, LCD_SIO);
00E8 C598 cbi 0x18,5
00EA L34:
00EA .dbline 129
00EA ; set_bit(LCD_SCL_PORT, LCD_SCL);
00EA C79A sbi 0x18,7
00EC .dbline 131
00EC ; //Bit 5
00EC ; clr_bit(LCD_SCL_PORT, LCD_SCL);
00EC C798 cbi 0x18,7
00EE .dbline 132
00EE ; if(data & 0x04)
00EE 02FF sbrs R16,2
00F0 02C0 rjmp L35
00F2 .dbline 133
00F2 ; set_bit(LCD_SIO_PORT, LCD_SIO);
00F2 C59A sbi 0x18,5
00F4 01C0 xjmp L36
00F6 L35:
00F6 .dbline 135
00F6 ; else
00F6 ; clr_bit(LCD_SIO_PORT, LCD_SIO);
00F6 C598 cbi 0x18,5
00F8 L36:
00F8 .dbline 136
00F8 ; set_bit(LCD_SCL_PORT, LCD_SCL);
00F8 C79A sbi 0x18,7
00FA .dbline 138
00FA ; //Bit 6
00FA ; clr_bit(LCD_SCL_PORT, LCD_SCL);
00FA C798 cbi 0x18,7
00FC .dbline 139
00FC ; if(data & 0x02)
00FC 01FF sbrs R16,1
00FE 02C0 rjmp L37
0100 .dbline 140
0100 ; set_bit(LCD_SIO_PORT, LCD_SIO);
0100 C59A sbi 0x18,5
0102 01C0 xjmp L38
0104 L37:
0104 .dbline 142
0104 ; else
0104 ; clr_bit(LCD_SIO_PORT, LCD_SIO);
0104 C598 cbi 0x18,5
0106 L38:
0106 .dbline 143
0106 ; set_bit(LCD_SCL_PORT, LCD_SCL);
0106 C79A sbi 0x18,7
0108 .dbline 145
0108 ; //Bit 7(LSB)
0108 ; clr_bit(LCD_SCL_PORT, LCD_SCL);
0108 C798 cbi 0x18,7
010A .dbline 146
010A ; if(data & 0x01)
010A 00FF sbrs R16,0
010C 02C0 rjmp L39
010E .dbline 147
010E ; set_bit(LCD_SIO_PORT, LCD_SIO);
010E C59A sbi 0x18,5
0110 01C0 xjmp L40
0112 L39:
0112 .dbline 149
0112 ; else
0112 ; clr_bit(LCD_SIO_PORT, LCD_SIO);
0112 C598 cbi 0x18,5
0114 L40:
0114 .dbline 150
0114 ; set_bit(LCD_SCL_PORT, LCD_SCL);
0114 C79A sbi 0x18,7
0116 .dbline -2
0116 L24:
0116 .dbline 0 ; func end
0116 0895 ret
0118 .dbsym r data 16 c
0118 .dbend
0118 .dbfunc e LCD_ReadDummy _LCD_ReadDummy fV
.even
0118 _LCD_ReadDummy::
0118 .dbline -1
0118 .dbline 155
0118 ; //done
0118 ; }
0118 ;
0118 ; void LCD_ReadDummy(void)
0118 ; {
0118 .dbline 156
0118 ; clr_bit(LCD_SIO_DDR, LCD_SIO); //set SDI.DDR = 0
0118 BD98 cbi 0x17,5
011A .dbline 157
011A ; set_bit(LCD_SIO_PORT, LCD_SIO);
011A C59A sbi 0x18,5
011C .dbline 158
011C ; clr_bit(LCD_CS_PORT, LCD_CS); //set CS = L
011C C498 cbi 0x18,4
011E .dbline 159
011E ; clr_bit(LCD_SCL_PORT, LCD_SCL);
011E C798 cbi 0x18,7
0120 .dbline 160
0120 ; set_bit(LCD_SCL_PORT, LCD_SCL);
0120 C79A sbi 0x18,7
0122 .dbline -2
0122 L41:
0122 .dbline 0 ; func end
0122 0895 ret
0124 .dbend
0124 .dbfunc e LCD_ReadData _LCD_ReadData fc
0124 ; r -> R16
.even
0124 _LCD_ReadData::
0124 .dbline -1
0124 .dbline 164
0124 ; }
0124 ;
0124 ; uchar LCD_ReadData(void)
0124 ; {
0124 .dbline 165
0124 ; uchar r = 0;
0124 0027 clr R16
0126 .dbline 166
0126 ; clr_bit(LCD_SIO_DDR, LCD_SIO); //set SDI.DDR = 0
0126 BD98 cbi 0x17,5
0128 .dbline 167
0128 ; set_bit(LCD_SIO_PORT, LCD_SIO);
0128 C59A sbi 0x18,5
012A .dbline 168
012A ; clr_bit(LCD_CS_PORT, LCD_CS); //set CS = L
012A C498 cbi 0x18,4
012C .dbline 170
012C ; //Bit 0(MSB)
012C ; clr_bit(LCD_SCL_PORT, LCD_SCL);
012C C798 cbi 0x18,7
012E .dbline 171
012E ; set_bit(LCD_SCL_PORT, LCD_SCL);
012E C79A sbi 0x18,7
0130 .dbline 172
0130 ; if(set_bit(LCD_SIO_PIN, LCD_SIO))
0130 86B3 in R24,0x16
0132 8062 ori R24,32
0134 86BB out 0x16,R24
0136 8823 tst R24
0138 11F0 breq L43
013A .dbline 173
013A ; r |= 0x80;
013A 0068 ori R16,128
013C 01C0 xjmp L44
013E L43:
013E .dbline 175
013E ; else
013E ; r &= ~0x80;
013E 0F77 andi R16,127
0140 L44:
0140 .dbline 177
0140 ; //Bit 1
0140 ; clr_bit(LCD_SCL_PORT, LCD_SCL);
0140 C798 cbi 0x18,7
0142 .dbline 178
0142 ; set_bit(LCD_SCL_PORT, LCD_SCL);
0142 C79A sbi 0x18,7
0144 .dbline 179
0144 ; if(set_bit(LCD_SIO_PIN, LCD_SIO))
0144 86B3 in R24,0x16
0146 8062 ori R24,32
0148 86BB out 0x16,R24
014A 8823 tst R24
014C 11F0 breq L45
014E .dbline 180
014E ; r |= 0x40;
014E 0064 ori R16,64
0150 01C0 xjmp L46
0152 L45:
0152 .dbline 182
0152 ; else
0152 ; r &= ~0x40;
0152 0F7B andi R16,191
0154 L46:
0154 .dbline 184
0154 ; //Bit 2
0154 ; clr_bit(LCD_SCL_PORT, LCD_SCL);
0154 C798 cbi 0x18,7
0156 .dbline 185
0156 ; set_bit(LCD_SCL_PORT, LCD_SCL);
0156 C79A sbi 0x18,7
0158 .dbline 186
0158 ; if(set_bit(LCD_SIO_PIN, LCD_SIO))
0158 86B3 in R24,0x16
015A 8062 ori R24,32
015C 86BB out 0x16,R24
015E 8823 tst R24
0160 11F0 breq L47
0162 .dbline 187
0162 ; r |= 0x20;
0162 0062 ori R16,32
0164 01C0 xjmp L48
0166 L47:
0166 .dbline 189
0166 ; else
0166 ; r &= ~0x20;
0166 0F7D andi R16,223
0168 L48:
0168 .dbline 191
0168 ; //Bit 3
0168 ; clr_bit(LCD_SCL_PORT, LCD_SCL);
0168 C798 cbi 0x18,7
016A .dbline 192
016A ; set_bit(LCD_SCL_PORT, LCD_SCL);
016A C79A sbi 0x18,7
016C .dbline 193
016C ; if(set_bit(LCD_SIO_PIN, LCD_SIO))
016C 86B3 in R24,0x16
016E 8062 ori R24,32
0170 86BB out 0x16,R24
0172 8823 tst R24
0174 11F0 breq L49
0176 .dbline 194
0176 ; r |= 0x10;
0176 0061 ori R16,16
0178 01C0 xjmp L50
017A L49:
017A .dbline 196
017A ; else
017A ; r &= ~0x10;
017A 0F7E andi R16,239
017C L50:
017C .dbline 198
017C ; //Bit 4
017C ; clr_bit(LCD_SCL_PORT, LCD_SCL);
017C C798 cbi 0x18,7
017E .dbline 199
017E ; set_bit(LCD_SCL_PORT, LCD_SCL);
017E C79A sbi 0x18,7
0180 .dbline 200
0180 ; if(set_bit(LCD_SIO_PIN, LCD_SIO))
0180 86B3 in R24,0x16
0182 8062 ori R24,32
0184 86BB out 0x16,R24
0186 8823 tst R24
0188 11F0 breq L51
018A .dbline 201
018A ; r |= 0x08;
018A 0860 ori R16,8
018C 01C0 xjmp L52
018E L51:
018E .dbline 203
018E ; else
018E ; r &= ~0x08;
018E 077F andi R16,247
0190 L52:
0190 .dbline 205
0190 ; //Bit 5
0190 ; clr_bit(LCD_SCL_PORT, LCD_SCL);
0190 C798 cbi 0x18,7
0192 .dbline 206
0192 ; set_bit(LCD_SCL_PORT, LCD_SCL);
0192 C79A sbi 0x18,7
0194 .dbline 207
0194 ; if(set_bit(LCD_SIO_PIN, LCD_SIO))
0194 86B3 in R24,0x16
0196 8062 ori R24,32
0198 86BB out 0x16,R24
019A 8823 tst R24
019C 11F0 breq L53
019E .dbline 208
019E ; r |= 0x04;
019E 0460 ori R16,4
01A0 01C0 xjmp L54
01A2 L53:
01A2 .dbline 210
01A2 ; else
01A2 ; r &= ~0x04;
01A2 0B7F andi R16,251
01A4 L54:
01A4 .dbline 212
01A4 ; //Bit 6
01A4 ; clr_bit(LCD_SCL_PORT, LCD_SCL);
01A4 C798 cbi 0x18,7
01A6 .dbline 213
01A6 ; set_bit(LCD_SCL_PORT, LCD_SCL);
01A6 C79A sbi 0x18,7
01A8 .dbline 214
01A8 ; if(set_bit(LCD_SIO_PIN, LCD_SIO))
01A8 86B3 in R24,0x16
01AA 8062 ori R24,32
01AC 86BB out 0x16,R24
01AE 8823 tst R24
01B0 11F0 breq L55
01B2 .dbline 215
01B2 ; r |= 0x02;
01B2 0260 ori R16,2
01B4 01C0 xjmp L56
01B6 L55:
01B6 .dbline 217
01B6 ; else
01B6 ; r &= ~0x02;
01B6 0D7F andi R16,253
01B8 L56:
01B8 .dbline 219
01B8 ; //Bit 7(LSB)
01B8 ; clr_bit(LCD_SCL_PORT, LCD_SCL);
01B8 C798 cbi 0x18,7
01BA .dbline 220
01BA ; set_bit(LCD_SCL_PORT, LCD_SCL);
01BA C79A sbi 0x18,7
01BC .dbline 221
01BC ; if(set_bit(LCD_SIO_PIN, LCD_SIO))
01BC 86B3 in R24,0x16
01BE 8062 ori R24,32
01C0 86BB out 0x16,R24
01C2 8823 tst R24
01C4 11F0 breq L57
01C6 .dbline 222
01C6 ; r |= 0x01;
01C6 0160 ori R16,1
01C8 01C0 xjmp L58
01CA L57:
01CA .dbline 224
01CA ; else
01CA ; r &= ~0x01;
01CA 0E7F andi R16,254
01CC L58:
01CC .dbline 226
01CC ; //done
01CC ; return r;
01CC .dbline -2
01CC L42:
01CC .dbline 0 ; func end
01CC 0895 ret
01CE .dbsym r r 16 c
01CE .dbend
01CE .dbfunc e LCD_Initialize _LCD_Initialize fV
01CE ; i -> R10
.even
01CE _LCD_Initialize::
01CE 0E940000 xcall push_gset3x
01D2 .dbline -1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -