51单片机LED点阵显示(16*16)源代码

;预定义
          SER BIT P1.4
          SCLR BIT P1.5
          SRCLK BIT P1.6
          RCK BIT P1.7
;主程序
          org 0000h
          ljmp start
          org 0100h
   start: mov dptr,#tab
          mov r2,#05h
          mov r3,dpl
          mov r4,dph
    loop: mov dpl,r3
          mov dph,r4
          movc a,@a+dptr
          call disp1
          djnz r2,loop
          mov r2,#05h
          mov dpl,r3
          mov dph,r4
          inc dptr
          inc dptr
          mov r3,dpl
          mov r4,dph
          ljmp loop
;列扫描
   disp1: mov r1,#00h
   disp2: clr sclr
          setb sclr
          mov a,#00h
          movc a,@a+dptr
          cjne a,#0ffh,disp3
          inc dptr
          clr a
          movc a,@a+dptr
          cjne a,#0ffh,disp4
          ljmp start
   disp4: mov a,#0ffh
          dec dpl
   disp3: call send1
          mov a,#00h
          inc dptr
          movc a,@a+dptr
          call send1
          clr rck
          setb rck
          mov p1,r1
          call delay
          mov r1,p1
          inc r1
          mov a,r1
          anl a,#0fh
          cjne a,#00h,disp5
          ret
   disp5: inc dptr
          ljmp disp2
;行扫描  
   send1: clr rck
          clr c
          mov r5,#08h
   send2: rrc a
          mov ser,c
          clr srclk
          setb srclk
          djnz r5,send2
          ret
;延时
   delay: mov r7,#81h
    del1: mov r6,00fh
             djnz r6,$
             djnz r7,del1
             ret
     tab: db 004H,028H,008H,024H,032H,022H,0C2H,021H
            db 0C2H,026H,034H,038H,004H,004H,008H,018H
      db 030H,0F0H,0C0H,017H,060H,010H,018H,010H
      db 00CH,014H,006H,018H,004H,010H,000H,000H
      db 002H,002H,004H,082H,0F8H,073H,004H,020H
      db 002H,000H,0E2H,03FH,042H,020H,082H,040H
      db 002H,040H,0FAH,03FH,002H,020H,042H,020H
      db 022H,020H,0C2H,03FH,002H,000H,000H,000H
      db 000H,001H,004H,002H,01CH,00CH,0C0H,03FH
      db 01CH,0C0H,002H,009H,002H,016H,092H,060H
      db 04AH,020H,082H,02FH,002H,020H,00EH,024H
      db 000H,022H,090H,031H,00CH,020H,000H,000H
      db 000H,002H,000H,004H,0FEH,00FH,000H,038H
      db 002H,0E0H,082H,04FH,044H,029H,028H,029H
      db 030H,029H,0C8H,0FFH,008H,029H,00CH,029H
      db 004H,029H,086H,02FH,004H,020H,000H,000H
      db 001H,000H,002H,000H,00CH,000H,0F0H,07FH
      db 040H,044H,040H,044H,040H,044H,040H,044H
      db 0FFH,07FH,040H,044H,040H,044H,042H,044H
      db 041H,044H,0FEH,07FH,000H,000H,000H,000H
      db 0ffh,0ffh
      end

 

posted on 2010-05-13 12:36  java课程设计  阅读(1136)  评论(0)    收藏  举报

导航