專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

4位共陽(yáng)數(shù)碼管動(dòng)態(tài)掃描顯示匯編程序

作者:佚名   來源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時(shí)間:2010年09月01日   【字體:

    本程序是用51單片機(jī)實(shí)現(xiàn)4位共陽(yáng)數(shù)碼管動(dòng)態(tài)掃描顯示程序,采用74HC573做驅(qū)動(dòng),定時(shí)器T0定時(shí)16ms,用來刷新數(shù)碼管顯示屏,軟件延時(shí)1ms實(shí)現(xiàn)數(shù)碼管亮滅延時(shí),相當(dāng)穩(wěn)定,沒有一點(diǎn)閃爍的感覺,很不錯(cuò)!如果要調(diào)整亮度可適當(dāng)調(diào)整數(shù)碼管亮的時(shí)間,F(xiàn)把程序上傳,與大家一起共享。!哈哈哈。!

   由于電路圖很簡(jiǎn)單我就不畫了大家從程序中都可看出來p2.0-2.3 是接4個(gè)位選 由于是共陽(yáng)所以是接的數(shù)碼管的正極,p2.5是74hc573的鎖存端,段的數(shù)據(jù)口是p0.我是從51hei單片機(jī)開發(fā)板上的電路圖仿制過來的 只是用4個(gè)io口做位選 節(jié)約了一片573芯片.

      D0  BIT  P2.0
      D1  BIT  P2.1
      D2  BIT  P2.2
      D3  BIT  P2.3
        SUBF0  EQU  30H
        SUBF1  EQU  31H
        SUBF2  EQU  32H
        SUBF3  EQU  33H
       COUT  EQU  34H
       ORG  0000H
       SJMP MIAN
       ORG  000BH
       LJMP INTER0
       ORG 0040H
       MIAN:MOV SP,#60H
       MOV IE,#00H
       MOV SUBF0,#80H
       MOV SUBF1,#80H
      MOV SUBF2,#80H
      MOV SUBF3,#80H
      MOV TH0,#0C1H
      MOV TL0,#80H
      MOV TMOD,#01H
      MOV R2,#00H
      MOV R1,#SUBF0
      MOV COUT,#04H
      LCALL DISPLAY
      LCALL SHUT
      SETB EA
      SETB ET0
      MOV DPTR,#TABLE
    LOOP:MOV A,R2
         MOVC A,@A+DPTR
   LOOP0:MOV @R1,A
         INC R1
      INC R2
      DJNZ COUT,LOOP
      SETB TR0
      SJMP $
  INTER0:CLR ET0
         CLR TR0
      PUSH ACC
      PUSH PSW
      MOV TH0,#0C1H
      MOV TL0,#80H
      LCALL DISPLAY
      SETB ET0
      SETB TR0
      POP PSW
      POP ACC
      RETI
 DISPLAY:SETB D1
         SETB D2
      SETB D3
   CLR D0
   CLR P2.5
   MOV P0,SUBF0
   SETB P2.5
   LCALL DELAY
   SETB D0
   SETB D2
   SETB D3
   CLR D1
   CLR P2.5
   MOV P0,SUBF1
   SETB P2.5
   LCALL DELAY
   SETB D0
   SETB D1
   SETB D3
   CLR D2
   CLR P2.5
   MOV P0,SUBF2
   SETB P2.5
   LCALL DELAY
   SETB D0 
   SETB D1
   SETB D2
   CLR D3
   CLR P2.5
   MOV P0,SUBF3
   SETB P2.5
   LCALL DELAY
   LCALL SHUT
   RET
 SHUT:SETB D0
      SETB D1
      SETB D2
      SETB D3
      RET
   DELAY:MOV R7,#02H
      DL:MOV R6,#0FFH
     DL1:DJNZ R6,DL1
      DJNZ R7,DL
      RET
   TABLE:DB 99H,92H,82H,0F8H
         END
關(guān)閉窗口

相關(guān)文章