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

📄 lcd.lst

📁 指纹识别源代码,用于智能门紧,还有配合MF800卡使用
💻 LST
📖 第 1 页 / 共 3 页
字号:
 335   1              if(position>=16)return;
 336   1              if(!line)
 337   1              {
 338   2                      write_command(SET_DDRAM_ADD+position);
 339   2                      delay50us();
 340   2              }
 341   1              else
 342   1              {
 343   2                      write_command(SET_DDRAM_ADD+0X40+position);
 344   2                      delay50us();
 345   2              }
 346   1              //write_command(DISP_ON_NCUR_B);
 347   1      }
 348          //////////////////////////////////////////////////////////////////
 349          void displayshort(unsigned short dispdata,unsigned char count,unsigned char startposi)
 350          {
 351   1              unsigned char line,i;
 352   1              if(startposi>=32)return;
 353   1      
 354   1      
 355   1              hex2bcd(dispdata);
 356   1              if(startposi>=16)
 357   1              {
 358   2                      line=LINE2;
 359   2                      startposi-=16;
 360   2              }
 361   1              else line=LINE1;
 362   1      
 363   1              for(i=0;i<count;i++)
 364   1              {
C51 COMPILER V7.01  LCD                                                                    03/08/2007 12:09:35 PAGE 7   

 365   2                      dispbuff[line][startposi+i]=tempbuff[5-count+i]+0x30;
 366   2              }
 367   1              display(line);
 368   1      }
 369          /////////////////////////////////////////////////////////////////////////////////////
 370          void displaybcd(unsigned char dispdata,unsigned char startposi)
 371          {
 372   1              unsigned char line;
 373   1              if(startposi>=32)return;
 374   1      
 375   1              if(startposi>=16)
 376   1              {
 377   2                      line=LINE2;
 378   2                      startposi-=16;
 379   2              }
 380   1              else
 381   1              {
 382   2                      line=LINE1;
 383   2              }
 384   1              dispbuff[line][startposi]=(dispdata>>4)+0x30;
 385   1              dispbuff[line][startposi+1]=(dispdata&0xf)+0x30;
 386   1              display(line);
 387   1      }
 388          /////////////////////////////////////////////////////////////////////////////////////
 389          
C51 COMPILER V7.01  LCD                                                                    03/08/2007 12:09:35 PAGE 8   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION lcdsetrs (BEGIN)
                                           ; SOURCE LINE # 163
                                           ; SOURCE LINE # 164
                                           ; SOURCE LINE # 165
0000 758002            MOV     P0,#02H
                                           ; SOURCE LINE # 166
0003 D2A3              SETB    SEL573L
                                           ; SOURCE LINE # 167
0005 00                NOP     
                                           ; SOURCE LINE # 168
0006 C2A3              CLR     SEL573L
                                           ; SOURCE LINE # 169
0008 22                RET     
             ; FUNCTION lcdsetrs (END)

             ; FUNCTION lcdclrrs (BEGIN)
                                           ; SOURCE LINE # 171
                                           ; SOURCE LINE # 172
                                           ; SOURCE LINE # 173
0000 E4                CLR     A
0001 F580              MOV     P0,A
                                           ; SOURCE LINE # 174
0003 D2A3              SETB    SEL573L
                                           ; SOURCE LINE # 175
0005 00                NOP     
                                           ; SOURCE LINE # 176
0006 C2A3              CLR     SEL573L
                                           ; SOURCE LINE # 177
0008 22                RET     
             ; FUNCTION lcdclrrs (END)

             ; FUNCTION _write_command (BEGIN)
                                           ; SOURCE LINE # 179
;---- Variable 'cmd' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 180
                                           ; SOURCE LINE # 181
0000 120000      R     LCALL   lcdclrrs
                                           ; SOURCE LINE # 187
0003 8F80              MOV     P0,R7
                                           ; SOURCE LINE # 188
0005 D290              SETB    LCDEN
                                           ; SOURCE LINE # 189
0007 00                NOP     
                                           ; SOURCE LINE # 190
0008 C290              CLR     LCDEN
                                           ; SOURCE LINE # 191
000A 22                RET     
             ; FUNCTION _write_command (END)

             ; FUNCTION _write_data (BEGIN)
                                           ; SOURCE LINE # 193
;---- Variable 'lcddata' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 194
                                           ; SOURCE LINE # 197
0000 120000      R     LCALL   lcdsetrs
                                           ; SOURCE LINE # 199
0003 8F80              MOV     P0,R7
                                           ; SOURCE LINE # 200
0005 D290              SETB    LCDEN
C51 COMPILER V7.01  LCD                                                                    03/08/2007 12:09:35 PAGE 9   

                                           ; SOURCE LINE # 201
0007 00                NOP     
                                           ; SOURCE LINE # 202
0008 C290              CLR     LCDEN
                                           ; SOURCE LINE # 203
000A 22                RET     
             ; FUNCTION _write_data (END)

             ; FUNCTION _displaybyte (BEGIN)
                                           ; SOURCE LINE # 207
;---- Variable 'dispposi' assigned to Register 'R6' ----
0000 CE                XCH     A,R6
0001 ED                MOV     A,R5
0002 CE                XCH     A,R6
;---- Variable 'dispdata' assigned to Register 'R5' ----
0003 CD                XCH     A,R5
0004 EF                MOV     A,R7
0005 CD                XCH     A,R5
                                           ; SOURCE LINE # 208
                                           ; SOURCE LINE # 209
0006 CF                XCH     A,R7
0007 EE                MOV     A,R6
0008 CF                XCH     A,R7
0009 120000      R     LCALL   _write_command
                                           ; SOURCE LINE # 210
000C 120000      E     LCALL   delay50us
                                           ; SOURCE LINE # 212
000F CF                XCH     A,R7
0010 ED                MOV     A,R5
0011 CF                XCH     A,R7
0012 120000      R     LCALL   _write_data
                                           ; SOURCE LINE # 213
0015 120000      E     LCALL   delay50us
                                           ; SOURCE LINE # 214
0018 22                RET     
             ; FUNCTION _displaybyte (END)

             ; FUNCTION _display (BEGIN)
                                           ; SOURCE LINE # 216
;---- Variable 'i' assigned to Register 'R6' ----
;---- Variable 'line' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 217
                                           ; SOURCE LINE # 219
0000 EF                MOV     A,R7
0001 701B              JNZ     ?C0006
                                           ; SOURCE LINE # 220
                                           ; SOURCE LINE # 221
0003 7F80              MOV     R7,#080H
0005 120000      R     LCALL   _write_command
                                           ; SOURCE LINE # 222
0008 120000      E     LCALL   delay50us
                                           ; SOURCE LINE # 223
000B E4                CLR     A
000C FE                MOV     R6,A
000D         ?C0007:
                                           ; SOURCE LINE # 224
                                           ; SOURCE LINE # 225
000D 7400        R     MOV     A,#LOW dispbuff
000F 2E                ADD     A,R6
0010 F8                MOV     R0,A
0011 E6                MOV     A,@R0
0012 FF                MOV     R7,A
C51 COMPILER V7.01  LCD                                                                    03/08/2007 12:09:35 PAGE 10  

0013 120000      R     LCALL   _write_data
                                           ; SOURCE LINE # 226
0016 120000      E     LCALL   delay50us
                                           ; SOURCE LINE # 227
0019 0E                INC     R6
001A BE10F0            CJNE    R6,#010H,?C0007
001D 22                RET     
                                           ; SOURCE LINE # 228
001E         ?C0006:
                                           ; SOURCE LINE # 230
                                           ; SOURCE LINE # 231
001E 7FC0              MOV     R7,#0C0H
0020 120000      R     LCALL   _write_command
                                           ; SOURCE LINE # 232
0023 120000      E     LCALL   delay50us
                                           ; SOURCE LINE # 233
0026 E4                CLR     A
0027 FE                MOV     R6,A
0028         ?C0011:
                                           ; SOURCE LINE # 234
                                           ; SOURCE LINE # 235
0028 7400        R     MOV     A,#LOW dispbuff+010H
002A 2E                ADD     A,R6
002B F8                MOV     R0,A
002C E6                MOV     A,@R0
002D FF                MOV     R7,A
002E 120000      R     LCALL   _write_data
                                           ; SOURCE LINE # 236
0031 120000      E     LCALL   delay50us
                                           ; SOURCE LINE # 237
0034 0E                INC     R6
0035 BE10F0            CJNE    R6,#010H,?C0011
                                           ; SOURCE LINE # 238
                                           ; SOURCE LINE # 239
0038         ?C0014:
0038 22                RET     
             ; FUNCTION _display (END)

             ; FUNCTION _displaymessage (BEGIN)
                                           ; SOURCE LINE # 240
;---- Variable 'line' assigned to Register 'R6' ----
0000 CE                XCH     A,R6
0001 ED                MOV     A,R5
0002 CE                XCH     A,R6
;---- Variable 'lmess' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 241
                                           ; SOURCE LINE # 244
;---- Variable 'i' assigned to Register 'R5' ----
0003 E4                CLR     A
0004 FD                MOV     R5,A
0005         ?C0015:
                                           ; SOURCE LINE # 245
                                           ; SOURCE LINE # 246
0005 75F010            MOV     B,#010H
0008 EF                MOV     A,R7
0009 A4                MUL     AB
000A 2400        R     ADD     A,#LOW dispmessage
000C F582              MOV     DPL,A
000E E5F0              MOV     A,B
0010 3400        R     ADDC    A,#HIGH dispmessage
0012 F583              MOV     DPH,A
0014 E582              MOV     A,DPL
C51 COMPILER V7.01  LCD                                                                    03/08/2007 12:09:35 PAGE 11  

0016 2D                ADD     A,R5
0017 F582              MOV     DPL,A
0019 E4                CLR     A
001A 3583              ADDC    A,DPH
001C F583              MOV     DPH,A
001E E4                CLR     A
001F 93                MOVC    A,@A+DPTR
0020 FC                MOV     R4,A
0021 EE                MOV     A,R6
0022 C4                SWAP    A
0023 54F0              ANL     A,#0F0H
0025 2400        R     ADD     A,#LOW dispbuff
0027 2D                ADD     A,R5
0028 F8                MOV     R0,A
0029 EC                MOV     A,R4
002A F6                MOV     @R0,A
                                           ; SOURCE LINE # 247
002B 0D                INC     R5
002C BD10D6            CJNE    R5,#010H,?C0015
002F         ?C0016:
                                           ; SOURCE LINE # 250
002F CF                XCH     A,R7
0030 EE                MOV     A,R6
0031 CF                XCH     A,R7
0032 120000      R     LCALL   _display
                                           ; SOURCE LINE # 252
0035 22                RET     
             ; FUNCTION _displaymessage (END)

             ; FUNCTION displayMain (BEGIN)
                                           ; SOURCE LINE # 253
                                           ; SOURCE LINE # 254
                                           ; SOURCE LINE # 256
;---- Variable 'i' assigned to Register 'R7' ----
0000 E4                CLR     A
0001 FF                MOV     R7,A
0002         ?C0019:
                                           ; SOURCE LINE # 257
                                           ; SOURCE LINE # 258
0002 EF                MOV     A,R7
0003 900000      R     MOV     DPTR,#dispmessage
0006 93                MOVC    A,@A+DPTR
0007 FE                MOV     R6,A
0008 7400        R     MOV     A,#LOW dispbuff
000A 2F                ADD     A,R7
000B F8                MOV     R0,A
000C EE                MOV     A,R6
000D F6                MOV     @R0,A
                                           ; SOURCE LINE # 259
000E 0F                INC     R7
000F BF10F0            CJNE    R7,#010H,?C0019
0012         ?C0020:
                                           ; SOURCE LINE # 261
0012 120000      E     LCALL   readFunctions
0015 EF                MOV     A,R7
0016 2431              ADD     A,#031H
0018 7800        R     MOV     R0,#LOW dispbuff+0EH
001A F6                MOV     @R0,A
                                           ; SOURCE LINE # 262
001B E4                CLR     A
001C FF                MOV     R7,A
001D 120000      R     LCALL   _display
C51 COMPILER V7.01  LCD                                                                    03/08/2007 12:09:35 PAGE 12  

                                           ; SOURCE LINE # 263
0020 22                RET     
             ; FUNCTION displayMain (END)

             ; FUNCTION displaytimeee (BEGIN)
                                           ; SOURCE LINE # 266
                                           ; SOURCE LINE # 267
                                           ; SOURCE LINE # 268
0000 7800        R     MOV     R0,#LOW dispbuff+010H
0002 7620              MOV     @R0,#020H
                                           ; SOURCE LINE # 270
0004 E500        E     MOV     A,datetime+02H
0006 75F00A            MOV     B,#0AH
0009 84                DIV     AB
000A 2430              ADD     A,#030H
000C 08                INC     R0
000D F6                MOV     @R0,A
                                           ; SOURCE LINE # 271
000E E500        E     MOV     A,datetime+02H
0010 75F00A            MOV     B,#0AH
0013 84                DIV     AB
0014 E5F0              MOV     A,B
0016 2430              ADD     A,#030H
0018 08                INC     R0
0019 F6                MOV     @R0,A
                                           ; SOURCE LINE # 273
001A 08                INC     R0
001B 762F              MOV     @R0,#02FH
                                           ; SOURCE LINE # 275
001D E500        E     MOV     A,datetime+03H
001F 75F00A            MOV     B,#0AH
0022 84                DIV     AB
0023 2430              ADD     A,#030H
0025 08                INC     R0
0026 F6                MOV     @R0,A
                                           ; SOURCE LINE # 276
0027 E500        E     MOV     A,datetime+03H
0029 75F00A            MOV     B,#0AH
002C 84                DIV     AB

⌨️ 快捷键说明

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