⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fourled.inc

📁 PIC单片机指令集
💻 INC
字号:
;-----------------------------------------------------------------------;
;									;
;	#INCLUDE <FOURLED.INC>						;
;									;
;; !!!	contain table, must be located at the front end of every page	;
;;	externally defined pins (in main program)			;
;									;
;PORTSEG EQU PORTD	; segment port					;
;TRISEG  EQU TRISD	; direction of segment port			;
;PORTCA  EQU PORTB	; common anode port				;
;TRICA   EQU TRISB	; direction of segment port			;
;									;
;	#INCLUDE <DLY2_5mS.INC>						;		
;									;
;=======================================================================;
;
;	Four digits are displayed on each four LEDs
;	data stored in DATBF2(MSB)/DATBF1(LSB)
;
;	DATBF1/DATBF2 must be delared in main program
;	<DLY2_5mS.INC> must be included in main program
;
;
	CBLOCK		
	 DATBF1,DATBF2	
	ENDC	
;
FOURLED:
	BANKSEL TRISEG	; TRISEG is in bank1
	MOVLW 0
	MOVWF TRISEG	; set segment port to be output
	MOVWF TRICA	; set common anode port to be output
	BANKSEL PORTSEG	; PORTSEG is in bank0 
;
	MOVF DATBF1,W
	CALL FOUR_TBL
	MOVWF PORTSEG		; output unit digit here!
	MOVLW B'11111110'
	MOVWF PORTCA		; light up LED1(CA1)
	CALL DLY2_5mS		; delay 2.5 mS
	BSF PORTCA,0
;
	SWAPF DATBF1,W
	CALL FOUR_TBL
	MOVWF PORTSEG		; output ten digit here !
	MOVLW B'11111101'
	MOVWF PORTCA		; light up LED2(CA2)
	CALL DLY2_5mS		; delay 2.5 mS
	BSF PORTCA,1
;
	MOVF DATBF2,W
	CALL FOUR_TBL
	MOVWF PORTSEG		; output hundred digit here !
	MOVLW B'11111011'
	MOVWF PORTCA		; light up LED3(CA3)
	CALL DLY2_5mS		; delay 2.5 mS
	BSF PORTCA,2
;
	SWAPF DATBF2,W
	CALL FOUR_TBL
	MOVWF PORTSEG		; output thousand digit here !
	MOVLW B'11110111'
	MOVWF PORTCA		; light up LED4(CA4)
	CALL DLY2_5mS		; delay 2.5 mS
;
	MOVLW H'FF'
	MOVWF PORTCA		; trun off LEDs
	MOVWF PORTSEG	
;
	RETURN
;
;       TABLE READER
;
FOUR_TBL:
        ANDLW B'00001111'	; only 0~F are valid
	ADDWF PCL
; 
        RETLW H'C0'     ; 0
        RETLW H'F9'     ; 1
        RETLW H'A4'     ; 2
        RETLW H'B0'     ; 3
        RETLW H'99'     ; 4
        RETLW H'92'     ; 5
        RETLW H'82'     ; 6
        RETLW H'F8'     ; 7
        RETLW H'80'     ; 8
        RETLW H'90'     ; 9
        RETLW H'88'     ; A
        RETLW H'83'     ; b
        RETLW H'C6'     ; C
        RETLW H'A1'     ; d
        RETLW H'86'     ; E
        RETLW H'8E'     ; F
;
;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -