PT6311器件子程序

发布者:BlissfulBliss最新更新时间:2018-01-14 来源: eefocus关键字:PT6311器件子程序 手机看文章 扫描二维码
随时随地手机看文章

VFD控制驱动器
;占用: ACC, R0, R1

;************ 公共变量定义 ****************
PUBLIC WVFD_6311
PUBLIC GETKEY_6311
PUBLIC SETUP_6311
PUBLIC DIM_VFD
PUBLIC CLEAR_VFD
PUBLIC WLED_6311
;************ 公共变量定义 ***************

; EXTRN BIT(B_CLOSE_MACH) ;现键值寄存
;************* 变量说明 ******************
BC_DIN_6311 BIT P2.4 ;数据输入脚
BC_DOUT_6311 BIT P2.5 ;数据输出脚
BC_CLK_6311 BIT P2.6 ;时钟
BC_STB_6311 BIT P2.3 ;使能脚

;************ 变量说明 *****************

;************** 常数定义 ******************

;************** 常数定义 ******************
PT6311KEY_NUM EQU 16D ;现在用的6311键总数(48个)
READ_6311KEY EQU 42H ;PT6311读键值命令符
;===========公共子程序 (可被C调用)==================

;************* 写6311显示内存 **************
;********************************************
;参数1: PAR 要写的显存地址(MSB: 1 1 B5,B4,B3,B2,B1,B0 :LSB)(B5-B0 MEM START ADDRESS)
;参数2: PAR+03H 写的高1位数据
;参数3: PAR+02H 写的中8位数据
;参数4: PAR+01H 写的低8位数据(先送出, 且从bit0位开始)
;返回:
;占用: ACC

WVFD_6311: ;发送数据到PT6311进行显示
CLR BC_STB_6311 ;pt6311 stb=0 (ENABLE)
MOV A,#40H ;data set command--write data to disp mem by increment address mod
LCALL DISP ;sendn data to pt6311 here is data set command
SETB BC_STB_6311 ;STD=1 (DISABLE)
NOP
CLR BC_STB_6311 ;PT6311 ENABLE
MOV A, PAR ;pt6311 disp mem start mem in 1DH
LCALL DISP ;send data to pt6311 here is address set command
; JB B_CLOSE_MACH,CLEAR_LBL1
MOV A, PAR+02H
LCALL DISP ;send data to pt6311 here is transmission data
MOV A, PAR+01H
LCALL DISP ;send data to pt6311 here is transmission data
SETB BC_STB_6311 ;PT6311 DISABLE
RET
CLEAR_LBL1: 
MOV A, #00H
LCALL DISP ;send data to pt6311 here is transmission data
MOV A, #00H
LCALL DISP ;send data to pt6311 here is transmission data
SETB BC_STB_6311 ;PT6311 DISABLE
RET
;******** 读键盘按键子程序 ************
;***************************************
;参数:
;返回: PAR 返回键值, 0=无按键
;占用: ACC

GETKEY_6311:
SETB BC_STB_6311 ;STB
SETB BC_DOUT_6311 ;pt6311 Dout
SETB BC_DIN_6311 ;pt6311 Din
NOP 
CLR BC_STB_6311 ;pt6311 STB
MOV A, #READ_6311KEY
LCALL DISP ;向pt6311发送读键值命令
MOV PAR, #PT6311KEY_NUM
NOP
LBL_P8:
CLR BC_CLK_6311 ;Pt6311 CLK
NOP
NOP
NOP 
NOP
MOV C,BC_DOUT_6311 ;pt6311 Dout
JC LBL_P9 
NOP
SETB BC_CLK_6311 ;Pt6311 CLK
NOP
DJNZ PAR, LBL_P8 ;PAR表示键位置
LJMP LBL_P99
LBL_P9:
NOP
LBL_P99:
SETB BC_STB_6311 ;pt6311 STB
RET 

;***************************************** 
;参数:
;返回:
;占用: ACC

SETUP_6311:
CLR BC_STB_6311 ;ready to send data to pt6311 STB
MOV A,#0CH ;0000,1010=0AH
LCALL DISP ;send command to pt6311,here is set displayer mod,11dig/17seg
SETB BC_STB_6311 ;STD
RET

;********** 打开荧光显示 **************
;参数:
;返回:
;占用: ACC

DIM_VFD: CLR BC_STB_6311 ;STD=0 点亮显示字符
NOP
MOV A,#8FH
LCALL DISP ;send data to pt6311,here is control disp dimming
NOP
SETB BC_STB_6311 ;STD=1
RET
;********** 清除11段数据显示(清荧光屏) ******** 
;参数:
;返回:
;占用: ACC, R1

CLEAR_VFD:
MOV R1,#0EH ;清除14段数据显示
MOV PAR, #0C0H ;置显存第1段的地址
LBL200: 
MOV PAR+01H, #00H ;置低8位数据
MOV PAR+02H, #00H ;置中8位数据
LCALL WVFD_6311 ;送入pt6311显存
MOV A, PAR
ADD A, #03H
MOV PAR, A ;start address move to next digit 下一个
DJNZ R1,LBL200
RET

;********** 送数据到6311的LED口 *********

;参数: PAR 要送入的数据
;返回:
;占用: ACC

WLED_6311:
CLR BC_STB_6311 ;pt6311 stb=0 (ENABLE)
MOV A,#41H ;data set command--write data to LED PORT
LCALL DISP ;sendn data to pt6311 here is data set command
MOV A, PAR ;pt6311 LED DATA
LCALL DISP ;send data to pt6311 here is address set command
SETB BC_STB_6311 ;PT6311 DISABLE
RET

;************** 写一字节到6311 ************
;参数: ACC 要写入的数据(从bit0位开始送出)
;返回:
;占用: ACC, R0

DISP: MOV R0,#008H ;send command to pt6311
CLR C
LBL206: CLR BC_CLK_6311 ;PT6311 CLK
RRC A
MOV BC_DIN_6311,C ;send data to pt6311
NOP
NOP
NOP
NOP
NOP
SETB BC_CLK_6311 ;CLK 
NOP
NOP
NOP
NOP
DJNZ R0, LBL206
SETB BC_DIN_6311
SETB BC_CLK_6311 ;BC_CLK_6311 normal high
RET


关键字:PT6311器件子程序 引用地址:PT6311器件子程序

上一篇:单片机遥控控制的霓虹灯程序
下一篇:单片机软件陷阱介绍

小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
热门活动
换一批
更多
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved