ORL A,CONBITH ;合成控制字
MOV CONBITH,A ;放回CONBITH
RET ;返回
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 显示程序 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;共阳LED显示,P0口输出段码,P2口输出扫描字
DISPLAY: MOV R1,#26H ;显示首址
MOV R5,#0FEH ;设扫描字
PLAY: MOV A,R5 ;放入A
MOV P2,A ;P2口输出
MOV A,@R1 ;取显示数据
MOV DPTR,#TAB ;取段码表首址
MOVC A,@A+DPTR ;查段码
MOV P0,A ;从P0输出
MOV A,R5 ;读入扫描字
JB ACC.1,PLAY1 ; 不是十位(LED),不显示小数点
CLR P0.7 ;是十位,显示小数点
PLAY1: LCALL DL1MS ;点亮1毫秒
INC R1 ;指向下一显示数据
JNB ACC.3,ENDOUT ;是第四位LED,退出
RL A ;不是,左移一位
MOV R5,A ;放回R5
SETB P0.7 ;关小数点
AJMP PLAY ;转PLAY循环
ENDOUT: MOV P2,#0FFH ;显示结束,关显示输出口
MOV P0,#0FFH ;
RET ;返回
;
;0-9共阳段码表
TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH,0FFH
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 发送控制字节子程序 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
PUTBIT: MOV A,CONBITL ;低8位控制字入A
SETB P3.2 ;BH1415使能(允许写)
LCALL PUT ;发送8位
MOV A,CONBITH ; 高8位控制字入A
LCALL PUT ; 发送8位
CLR P3.2 ; BH1415写禁止
CLR P3.0 ;复位
CLR P3.1 ;复位
上一页 [1] [2] [3] [4] [5] [6] [7] [8] 下一页
本文关键字:数控 51单片机,单片机-工控设备 - 51单片机