单片机led广告屏设计与开发 第5页

单片机led广告屏设计与开发 第5页
参考文献:
[1]贾金玲 《单片机原理及应用》电子科技大学出版社
[2]冯林 《单片机课程设计》电子工业出版社
[3]李敬 《单片机原理》清华大学出版社
[4]张红 《单片机原理与设计示例》机械工业出版社
[5]余建国 《单片机课程设计示例》人民邮电出版社
[6]陈晓东 《单片机原理及应用》电子工业出版社
[7]汪琼 《单片机课程设计》机械工业出版社
[8]李天华 《单片机原理》电子工业出版社
[9] www.751com.cn

附录:
1、 LED广告循环参考代码:
        ORG 0000H
        MOV R4,#08H        ;一个字,八字节代码
        MOV P2,#0A0H       ;利用p2口第二功能
        MOV R1,#00H
        MOV A,#00H
        MOVX @R1,A         ;关显示
       
NEW_CODE:MOV 61H,#04H      ;此程序有四个字
        MOV DPTR,#DIS_CODE
        ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DIP:    MOV 69H,#40H       ;一个字停留的速度
RD_DISP:
        MOV R3,#80H        ;选通一行
        MOV R2,#00H        ;送出字码

RDISP1: MOV A,#00H         ;;;;
        MOVX @R1,A         ;;;;关显示
        MOV A,R3           ;;;;
        
 
www.751com.cn
        DJNZ R4,RDISP1     ;送完一个字代码吗?
        MOV R4,#08H        ;重新初始化r4
        DJNZ 69H,RD_DISP   ;速度系数没有循环完,继续
    
        MOV R7,#08H        ;指针dptr加8
DEC_CODE:INC DPTR          ;指向下一个字代码
        DJNZ R7,DEC_CODE   ;四个字都循环了一遍了吗?

        DJNZ 61H,DIP
        MOV 61H,#02H

        SJMP NEW_CODE

SEND:   MOV PCON,#80H      ;初始化串行口
        MOV TMOD,#20H      ;为方式0
        MOV TH1,#98H
        CLR ET1
        SETB TR1
        MOV SCON,#00H
        CLR ES

        MOV A,R3
        MOV SBUF,A         ;把选通行代码送出
    W1: JNB TI,W1          ;等待数据送出
        CLR TI             ;数据送出后,中断标志清零

        RET

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

DELAYT:MOV R7,#01H
DLY1: MOV R6,#0FFH
DLY2: DJNZ R6,DLY2
      DJNZ R7,DLY1
      RET

DIS_CODE: DB 10H,0FEH,92H,0FEH,92H,0FEH,11H,1FH
DIS_CODE1:DB 0FFH,0FFH,18H,18H,18H,18H,0FFH,0FFH
DIS_CODE2: DB 10H,0FEH,92H,0FEH,92H,0FEH,11H,1FH
DIS_CODE3: DB 3EH,04H,08H,0FFH,08H,04H,14H,08H
2、直接写端口参考代码:
        MOV R0,#79H       ;直接写端口程序
        MOV R2,#00H       ;暂存取得的字型码,它将在填充缓存子程序中使用
        MOV R3,#00H       ;用于取得键值后,键值暂存此中
        MOV 70H,#10H      ;70h放置速度系数
        MOV 71H,#00H      ;71h=00h,表示右移,01h表示左移

FILL:   ACALL FILLFUL     ;填充数据缓冲区
        MOV A,70H
        MOV 72H,A
DIS_CAL:ACALL DISPLAY
        ACALL KEY_SCAN    ;检测是否有键按下
        JNZ DEAL          ;有键按下,则跳出程序主线,转去键处理
        DJNZ 72H,DIS_CAL  ;速度系数循环完,则应改变字位
        SJMP FILL

DEAL:   ACALL DISPLAY
        ACALL DISPLAY     ;消抖动
        ACALL KEY_SCAN    ;确认有键按下吗?
        JZ FILL           ;无键按下则跳回主线,继续显示
        ACALL GET_KEY     ;取键值
        ACALL GET_K_NUM   ;计算键代码
        MOV A,R3
        CLR C
        SUBB A,#10H

上一页  [1] [2] [3] [4] [5] [6] [7] 下一页

Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有