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

📄 main.lst

📁 是介绍使用单片机控制数码管显示的程序,可以显示多种样式.
💻 LST
📖 第 1 页 / 共 3 页
字号:
0149 08              183                            inc     r0
014A 08              184                            inc     r0
014B E6              185                            mov     a,@r0
014C 540F            186                            anl     a,#0fh
014E 8018            187                            jmp     digital_display
0150 22              188                            ret   
0151 7809            189     digital_check6:        mov     r0,#digital_byte
0153 08              190                            inc     r0
A51 MACRO ASSEMBLER  MAIN                                                                 11/17/2007 23:56:46 PAGE     4

0154 08              191                            inc     r0
0155 08              192                            inc     r0
0156 E6              193                            mov     a,@r0
0157 C4              194                            swap    a
0158 540F            195                            anl     a,#0fh
015A 800C            196                            jmp     digital_display
015C 22              197                            ret
015D 7809            198     digital_check7:        mov     r0,#digital_byte
015F 08              199                            inc     r0
0160 08              200                            inc     r0
0161 08              201                            inc     r0
0162 E6              202                            mov     a,@r0
0163 540F            203                            anl     a,#0fh
0165 8001            204                            jmp     digital_display
0167 22              205                            ret
0168 90017C          206     digital_display:       mov     dptr,#data_tab_digital
016B 93              207                            movc    a,@a+dptr
016C F4              208                            cpl     a
016D 75A000          209                            mov     p2,#0
0170 F580            210                            mov     p0,a
0172 E508            211                            mov     a,digital_bit
0174 F5A0            212                            mov     p2,a
0176 23              213                            rl      a
0177 F508            214                            mov     digital_bit,a
0179 514B            215                            call    time2_5ms
017B 22              216                            ret
                     217     
                     218     ;*****************************************************
                     219     ;共阴数码管显示数据
                     220     ;排列为:0-F, 0.-F.
                     221     ;端口排列:p07   p06  p05  p04  p03  p02  p01  p00
                     222     ;段排列为: d    dp    e    c    g    b    f    a
                     223     ;*****************************************************
                     224     
017C B714AD9D        225     data_tab_digital:      db     0b7h,014h,0adh,09dh,01eh,09bh,0bbh,015h
0180 1E9BBB15                
0184 BF9F3FBA        226                            db     0bfh,09fh,03fh,0bah,0a8h,0bch,0abh,02bh
0188 A8BCAB2B                
018C F754EDDD        227                            db     0f7h,054h,0edh,0ddh,05eh,0dbh,0fbh,055h
0190 5EDBFB55                
0194 FFDF7FFA        228                            db     0ffh,0dfh,07fh,0fah,0e8h,0fch,0ebh,06bh
0198 E8FCEB6B                
                     229     ;*****************************************************
                     230     ;键盘中断处理程序
                     231     ;*****************************************************
                     232     
019C C2AF            233     keys_int:               clr     ea
019E C28B            234                             clr     ie1
01A0 75A000          235                             mov     p2,#0
01A3 E590            236                             mov     a,p1
01A5 F4              237                             cpl     a
01A6 540F            238                             anl     a,#0fh
01A8 B40005          239                             cjne    a,#0,keys_reader
01AB C28B            240                             clr     ie1
01AD D2AF            241                             setb    ea
01AF 32              242                             reti
01B0 5154            243     keys_reader:            call    time10ms
01B2 E590            244                             mov     a,p1
01B4 F4              245                             cpl     a
01B5 540F            246                             anl     a,#0fh
01B7 F50D            247                             mov     keys_byte,a
01B9 E590            248     keys_reader_0:          mov     a,p1
01BB F4              249                             cpl     a
01BC 540F            250                             anl     a,#0fh
01BE B400F8          251                             cjne    a,#0,keys_reader_0
01C1 C28B            252                             clr     ie1
A51 MACRO ASSEMBLER  MAIN                                                                 11/17/2007 23:56:46 PAGE     5

01C3 D2AF            253                             setb    ea
01C5 32              254                             reti
                     255     
                     256     ;*****************************************************
                     257     ;按键处理程序
                     258     ;*****************************************************
                     259     
01C6 B40102          260     keys_management:        cjne    a,#01h,keys_check_2
01C9 8010            261                             sjmp    keys_1
01CB B40202          262     keys_check_2:           cjne    a,#02h,keys_check_3
01CE 800E            263                             sjmp    keys_2
01D0 B40402          264     keys_check_3:           cjne    a,#04h,keys_check_4
01D3 800C            265                             sjmp    keys_3
01D5 B40802          266     keys_check_4:           cjne    a,#08h,keys_check_err
01D8 800A            267                             sjmp    keys_4
01DA 22              268     keys_check_err:         ret
                     269     
01DB 0201E7          270     keys_1:                 ljmp    keys_manage_1
01DE 0201EB          271     keys_2:                 ljmp    keys_manage_2
01E1 0201EF          272     keys_3:                 ljmp    keys_manage_3
01E4 020208          273     keys_4:                 ljmp    keys_manage_4
                     274     
                     275     ;*****************************************************
                     276     ;1键处理
                     277     ;*****************************************************
                     278     
01E7 120070          279     keys_manage_1:          lcall   beep1
01EA 22              280                             ret
                     281     
                     282     ;*****************************************************
                     283     ;2键处理
                     284     ;*****************************************************
                     285     
01EB 1200AA          286     keys_manage_2:          lcall   beep3
01EE 22              287                             ret
                     288     
                     289     ;*****************************************************
                     290     ;3键处理
                     291     ;*****************************************************
                     292     
01EF 120070          293     keys_manage_3:          lcall   beep1
01F2 1200FB          294                             lcall   digital
01F5 1200FB          295                             lcall   digital
01F8 1200FB          296                             lcall   digital
01FB 1200FB          297                             lcall   digital
01FE 1200FB          298                             lcall   digital
0201 1200FB          299                             lcall   digital
0204 1200AA          300                             lcall   beep3
0207 22              301                             ret
                     302     
                     303     ;*****************************************************
                     304     ;4键处理
                     305     ;*****************************************************
                     306     
0208 1200AA          307     keys_manage_4:          lcall   beep3
020B 1200FB          308                             lcall   digital
020E 1200FB          309                             lcall   digital
0211 1200FB          310                             lcall   digital
0214 1200FB          311                             lcall   digital
0217 1200FB          312                             lcall   digital
021A 1200FB          313                             lcall   digital
021D 1200AA          314                             lcall   beep3
0220 22              315                             ret
                     316     ;*****************************************************
                     317     ;延时10uS
                     318     ;*****************************************************
A51 MACRO ASSEMBLER  MAIN                                                                 11/17/2007 23:56:46 PAGE     6

                     319     
0221 7D05            320     time10us:               mov     r5,#05h                 ;11us
0223 DDFE            321                             djnz    r5,$
0225 22              322                             ret
                     323     
                     324     ;*****************************************************
                     325     ;延时50uS
                     326     ;*****************************************************
                     327     
0226 7D19            328     time50us:               mov     r5,#19h                 ;51us
0228 DDFE            329                             djnz    r5,$
022A 22              330                             ret
                     331     
                     332     ;*****************************************************
                     333     ;延时100uS
                     334     ;*****************************************************
                     335     
022B 7D31            336     time100us:              mov     r5,#31h                 ;99.6us
022D DDFE            337                             djnz    r5,$
022F 22              338                             ret
                     339     
                     340     ;*****************************************************
                     341     ;延时200uS
                     342     ;*****************************************************
                     343     
0230 7D64            344     time200us:              mov     r5,#64h                 ;201us
0232 DDFE            345                             djnz    r5,$
0234 22              346                             ret
                     347     
                     348     ;*****************************************************
                     349     ;延时250uS
                     350     ;*****************************************************
                     351     
0235 7D7C            352     time250us:              mov     r5,#7ch                 ;249.6us
0237 DDFE            353                             djnz    r5,$
0239 22              354                             ret
                     355     
                     356     ;*****************************************************
                     357     ;延时350uS
                     358     ;*****************************************************
                     359     
023A 7DAF            360     time350us:              mov     r5,#0afh                 ;351us
023C DDFE            361     time350us_1:            djnz    r5,time350us_1
023E 22              362                             ret
                     363     
                     364     ;*****************************************************
                     365     ;延时500uS
                     366     ;*****************************************************
                     367     

⌨️ 快捷键说明

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