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

📄 12864.lis

📁 数字频率计数字频率计数字频率计数字频率计
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 017A E9F7              brne L41
 017C                   .dbline 155
 017C           ;       LCD12864_clear();                                               //清屏
 017C B2DF              xcall _LCD12864_clear
 017E           L44:
 017E                   .dbline 156
 017E           L45:
 017E                   .dbline 156
 017E           ;       while(LCD12864_readBF());
 017E B8DF              xcall _LCD12864_readBF
 0180 0023              tst R16
 0182 E9F7              brne L44
 0184                   .dbline 157
 0184           ;       LCD12864_sendbyte(iCmd, LCDb_ENTRY);    // 输入模式设定         
 0184 26E0              ldi R18,6
 0186 0027              clr R16
 0188 89DF              xcall _LCD12864_sendbyte
 018A                   .dbline -2
 018A           L37:
 018A                   .dbline 0 ; func end
 018A 0895              ret
 018C                   .dbend
 018C                   .dbfunc e LCD12864_opGDRAM _LCD12864_opGDRAM fV
 018C           ;              i -> R20
 018C           ;              x -> R22,R23
 018C           ;              j -> R10
 018C           ;        ptGDRAM -> R12,R13
                        .even
 018C           _LCD12864_opGDRAM::
 018C 0E940000          xcall push_gset4
 0190 6801              movw R12,R16
 0192                   .dbline -1
 0192                   .dbline 166
 0192           ; }
 0192           ; /*******************************************
 0192           ; 函数名称: LCD12864_opGDRAM
 0192           ; 功    能: 向GDRAM写入数据,并显示(完成绘图功能)
 0192           ; 参    数: ptGDRAM--GDRAM数据指针
 0192           ; 返回值  : 无
 0192           ; /********************************************/
 0192           ; void LCD12864_opGDRAM(const uchar *ptGDRAM)
 0192           ; {
 0192                   .dbline 168
 0192           ;       uchar i,j;
 0192           ;       uint x=0;
 0192 6627              clr R22
 0194 7727              clr R23
 0196           L48:
 0196                   .dbline 169
 0196           L49:
 0196                   .dbline 169
 0196           ;       while(LCD12864_readBF());         //读忙标志
 0196 ACDF              xcall _LCD12864_readBF
 0198 0023              tst R16
 019A E9F7              brne L48
 019C                   .dbline 170
 019C           ;       LCD12864_sendbyte(iCmd,LCDb_EXTCMD1);           //扩充指令集,并关闭绘图显示    
 019C 24E3              ldi R18,52
 019E 0027              clr R16
 01A0 7DDF              xcall _LCD12864_sendbyte
 01A2                   .dbline 172
 01A2           ;       //写入并显示上半屏幕
 01A2           ;       for(i=0;i<32;i++)                                       //行地址计数
 01A2 4427              clr R20
 01A4 2DC0              xjmp L54
 01A6           L51:
 01A6                   .dbline 173
 01A6           ;      {                           
 01A6                   .dbline 174
 01A6           ;            for(j=0;j<8;j++)                                   //列地址计数
 01A6 AA24              clr R10
 01A8 27C0              xjmp L58
 01AA           L55:
 01AA                   .dbline 175
 01AA                   .dbline 176
 01AA 242F              mov R18,R20
 01AC 2068              ori R18,128
 01AE 0027              clr R16
 01B0 75DF              xcall _LCD12864_sendbyte
 01B2                   .dbline 177
 01B2 0AE0              ldi R16,10
 01B4 10E0              ldi R17,0
 01B6 24DF              xcall _Delayus
 01B8                   .dbline 178
 01B8 2A2D              mov R18,R10
 01BA 2068              ori R18,128
 01BC 0027              clr R16
 01BE 6EDF              xcall _LCD12864_sendbyte
 01C0                   .dbline 179
 01C0 0AE0              ldi R16,10
 01C2 10E0              ldi R17,0
 01C4 1DDF              xcall _Delayus
 01C6                   .dbline 180
 01C6 1B01              movw R2,R22
 01C8 6F5F              subi R22,255  ; offset = 1
 01CA 7F4F              sbci R23,255
 01CC F101              movw R30,R2
 01CE EC0D              add R30,R12
 01D0 FD1D              adc R31,R13
 01D2 2491              lpm R18,Z
 01D4 01E0              ldi R16,1
 01D6 62DF              xcall _LCD12864_sendbyte
 01D8                   .dbline 181
 01D8 0AE0              ldi R16,10
 01DA 10E0              ldi R17,0
 01DC 11DF              xcall _Delayus
 01DE                   .dbline 182
 01DE 1B01              movw R2,R22
 01E0 6F5F              subi R22,255  ; offset = 1
 01E2 7F4F              sbci R23,255
 01E4 F101              movw R30,R2
 01E6 EC0D              add R30,R12
 01E8 FD1D              adc R31,R13
 01EA 2491              lpm R18,Z
 01EC 01E0              ldi R16,1
 01EE 56DF              xcall _LCD12864_sendbyte
 01F0                   .dbline 183
 01F0 0AE0              ldi R16,10
 01F2 10E0              ldi R17,0
 01F4 05DF              xcall _Delayus
 01F6                   .dbline 184
 01F6           L56:
 01F6                   .dbline 174
 01F6 A394              inc R10
 01F8           L58:
 01F8                   .dbline 174
 01F8 8A2D              mov R24,R10
 01FA 8830              cpi R24,8
 01FC B0F2              brlo L55
 01FE                   .dbline 185
 01FE           L52:
 01FE                   .dbline 172
 01FE 4395              inc R20
 0200           L54:
 0200                   .dbline 172
 0200 4032              cpi R20,32
 0202 08F4              brsh X1
 0204 D0CF              xjmp L51
 0206           X1:
 0206                   .dbline 187
 0206           ;            {                                           
 0206           ;                                LCD12864_sendbyte(iCmd,0x80|i);//输入行地址
 0206           ;                                Delayus(10);
 0206           ;                                LCD12864_sendbyte(iCmd,0x80|j);//输入列地址
 0206           ;                                Delayus(10);
 0206           ;                  LCD12864_sendbyte(iDat,ptGDRAM[x++]); //输入高位字节数据 
 0206           ;                                Delayus(10);                
 0206           ;                                LCD12864_sendbyte(iDat,ptGDRAM[x++]); //输入低位字节数据
 0206           ;                                Delayus(10); 
 0206           ;            }
 0206           ;      }
 0206           ;        //写入并显示下半屏幕
 0206           ;        for(i=0;i<32;i++)            
 0206 4427              clr R20
 0208 2EC0              xjmp L62
 020A           L59:
 020A                   .dbline 188
 020A           ;      {                           
 020A                   .dbline 189
 020A           ;            for(j=8;j<16;j++)      
 020A 88E0              ldi R24,8
 020C A82E              mov R10,R24
 020E 27C0              xjmp L66
 0210           L63:
 0210                   .dbline 190
 0210                   .dbline 191
 0210 242F              mov R18,R20
 0212 2068              ori R18,128
 0214 0027              clr R16
 0216 42DF              xcall _LCD12864_sendbyte
 0218                   .dbline 192
 0218 0AE0              ldi R16,10
 021A 10E0              ldi R17,0
 021C F1DE              xcall _Delayus
 021E                   .dbline 193
 021E 2A2D              mov R18,R10
 0220 2068              ori R18,128
 0222 0027              clr R16
 0224 3BDF              xcall _LCD12864_sendbyte
 0226                   .dbline 194
 0226 0AE0              ldi R16,10
 0228 10E0              ldi R17,0
 022A EADE              xcall _Delayus
 022C                   .dbline 195
 022C 1B01              movw R2,R22
 022E 6F5F              subi R22,255  ; offset = 1
 0230 7F4F              sbci R23,255
 0232 F101              movw R30,R2
 0234 EC0D              add R30,R12
 0236 FD1D              adc R31,R13
 0238 2491              lpm R18,Z
 023A 01E0              ldi R16,1
 023C 2FDF              xcall _LCD12864_sendbyte
 023E                   .dbline 196
 023E 0AE0              ldi R16,10
 0240 10E0              ldi R17,0
 0242 DEDE              xcall _Delayus
 0244                   .dbline 197
 0244 1B01              movw R2,R22
 0246 6F5F              subi R22,255  ; offset = 1
 0248 7F4F              sbci R23,255
 024A F101              movw R30,R2
 024C EC0D              add R30,R12
 024E FD1D              adc R31,R13
 0250 2491              lpm R18,Z
 0252 01E0              ldi R16,1
 0254 23DF              xcall _LCD12864_sendbyte
 0256                   .dbline 198
 0256 0AE0              ldi R16,10
 0258 10E0              ldi R17,0
 025A D2DE              xcall _Delayus
 025C                   .dbline 199
 025C           L64:
 025C                   .dbline 189
 025C A394              inc R10
 025E           L66:
 025E                   .dbline 189
 025E 8A2D              mov R24,R10
 0260 8031              cpi R24,16
 0262 B0F2              brlo L63
 0264                   .dbline 200
 0264           L60:
 0264                   .dbline 187
 0264 4395              inc R20
 0266           L62:
 0266                   .dbline 187
 0266 4032              cpi R20,32
 0268 08F4              brsh X2
 026A CFCF              xjmp L59
 026C           X2:
 026C                   .dbline 201
 026C           ;            {            
 026C           ;                                LCD12864_sendbyte(iCmd,0x80|i);//输入行地址
 026C           ;                                Delayus(10);
 026C           ;                                LCD12864_sendbyte(iCmd,0x80|j);//输入列地址
 026C           ;                                Delayus(10);
 026C           ;                  LCD12864_sendbyte(iDat,ptGDRAM[x++]); //输入高位字节数据      
 026C           ;                                Delayus(10);
 026C           ;                                LCD12864_sendbyte(iDat,ptGDRAM[x++]); //输入低位字节数据
 026C           ;                                Delayus(10); 
 026C           ;            }
 026C           ;      }
 026C           ;        Delayus(10);
 026C 0AE0              ldi R16,10
 026E 10E0              ldi R17,0
 0270 C7DE              xcall _Delayus
 0272                   .dbline 202
 0272           ;        LCD12864_sendbyte(iCmd,LCDb_EXTCMD2);                     //打开绘图显示
 0272 26E3              ldi R18,54
 0274 0027              clr R16
 0276 12DF              xcall _LCD12864_sendbyte
 0278                   .dbline 203
 0278           ;        LCD12864_sendbyte(iCmd,LCDb_BASCMD);                      //还原回基本指令集模式
 0278 20E3              ldi R18,48
 027A 0027              clr R16
 027C 0FDF              xcall _LCD12864_sendbyte
 027E                   .dbline -2
 027E           L47:
 027E 0E940000          xcall pop_gset4
 0282                   .dbline 0 ; func end
 0282 0895              ret
 0284                   .dbsym r i 20 c
 0284                   .dbsym r x 22 i
 0284                   .dbsym r j 10 c
 0284                   .dbsym r ptGDRAM 12 pkc
 0284                   .dbend

⌨️ 快捷键说明

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