; Copyright (c) 1998, MICROCHIP Technology Inc
;*************************************************
TITLE "PS7219 TEST" ;标题
LIST P=16C711 ;处理器为PIC16C711
#INCLUDE P16c711.INC
TIMER1 EQU H'000C' ;定义延时寄存器
TIMER2 EQU H'000D'
SENT_ADDRESS EQU H'000E' ;定义发送地址寄存器
SENT_DATA EQU H'000F' ;定义发送数据寄存器
LED1 EQU H'0010'
LED2 EQU H'0011'
LED3 EQU H'0012'
LED4 EQU H'0013'
LED5 EQU H'0014'
LED6 EQU H'0015'
LED7 EQU H'0016'
LED8 EQU H'0017'
COUNT EQU H'0018'
NO_OP EQU 0X00 ;定义控制寄存器
DIGIT1 EQU 0X01
DIGIT2 EQU 0X02
DIGIT3 EQU 0X03
DIGIT4 EQU 0X04
DIGIT5 EQU 0X05
DIGIT6 EQU 0X06
DIGIT7 EQU 0X07
DIGIT8 EQU 0X08
DECODE EQU 0X09
INTSEN EQU 0X0A
SCAN EQU 0X0B
SHUT EQU 0X0C
FLASH EQU 0X0D
DISPLAY EQU 0X0F
LOAD EQU 0 ;通讯引脚定义
DOUT EQU 1
CLK EQU 2
ORG 0
GOTO START ;程序开始
ORG H'0010'
;*************************
; 延时子程序
;*************************
T1
MOVLW 33 ;延时子程序T1
MOVWF TIMER1
DEL_LOP
CLRWDT
DECFSZ TIMER1,1
GOTO DEL_LOP
RETURN
T2
MOVLW 0X04 ;延时子程序T2
MOVWF TIMER1
MOVLW 0XFF
LOOP2
MOVWF TIMER2
LOOP1
CLRWDT
DECFSZ TIMER2,1
GOTO LOOP1
DECFSZ TIMER1,1
GOTO LOOP2
RETURN
SEND
MOVLW 8 ;数据传送子程序SEND
MOVWF COUNT
BCF PORTA,LOAD ;初始化LOAD引脚
CALL T1
SET_LP1
BCF STATUS,C ;发送8位地址
BSF PORTA,CLK
RLF SENT_ADDRESS,1
BCF PORTA,DOUT
BTFSC STATUS,C
BSF PORTA,DOUT
BCF PORTA,CLK
CALL T1 ;调用延时子程序T1
DECFSZ COUNT,1 ;COUNT减一为1零则结束传送
GOTO SET_LP1
BSF PORTA,CLK
MOVLW 8
MOVWF COUNT
BSF PORTA,LOAD
SET_LP2
BCF STATUS,C ;发送8位数据
BSF PORTA,CLK
RLF SENT_DATA,1
BCF PORTA,DOUT