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

📄 slq02.asm

📁 一个用PIC16C64开发的变色灯程序
💻 ASM
📖 第 1 页 / 共 3 页
字号:
   INCLUDE "SLQ.H"
   INCLUDE "P16C65.INC"
   LIST P=16C65
START   ORG .0
        GOTO MAIN
        NOP
        NOP
        NOP
ZD00 ORG .4
        MOVWF TMP_W
	MOVF STATUS , .0
	MOVWF TMP_OPTION
        BTFSC INTCON ,INTF
	GOTO ZD01
        BCF INTCON,T0IF
        ;BTFSS WB, .0
        ;GOTO ZD02
        ;BCF WB, .0
        ;MOVLW .1
        ;MOVWF JS
ZD02    INCFSZ JS, .0
        GOTO ZD110
        GOTO ZD100
ZD110   MOVF TMPORTB, .0
        MOVWF PORTB
        MOVF TMPORTC, .0
        MOVWF PORTC
        MOVF TMPORTD, .0
        MOVWF PORTD
        BTFSS TMPORTE, .0
        GOTO ZD101 ;BCF PORTE, .0
        BSF PORTE, .0  
ZD102   MOVF JS, .0
        CALL TABLE
        MOVWF TMR0
        MOVF JS, .0
        SUBWF L1, .0
        BTFSS STATUS ,C
        GOTO ZD03
        BSF TMPORTE, .0
ZD04    MOVF JS, .0
        SUBWF L2, .0
        BTFSS STATUS,C
        GOTO ZD05
        BSF TMPORTB, .1
ZD06    MOVF JS, .0
        SUBWF L3, .0
        BTFSS STATUS,C
        GOTO ZD07
        BSF TMPORTB, .2
ZD08    MOVF JS, .0
        SUBWF L4, .0
        BTFSS STATUS,C
        GOTO ZD09
        BSF TMPORTB, .3
ZD10    MOVF JS, .0
        SUBWF L5, .0
        BTFSS STATUS,C
        GOTO ZD11
        BSF TMPORTB, .4
ZD12    MOVF JS, .0
        SUBWF L6, .0
        BTFSS STATUS, C
        GOTO ZD13
        BSF TMPORTB, .5
ZD14    MOVF JS, .0
        SUBWF L7, .0
        BTFSS STATUS ,C
        GOTO ZD15
        BSF TMPORTB, .6
ZD16    MOVF JS, .0
        SUBWF L8, .0
        BTFSS STATUS ,C
        GOTO ZD17
        BSF TMPORTB, .7
ZD18    MOVF JS , .0
        SUBWF L9, .0
        BTFSS STATUS, C
        GOTO ZD19
        BSF TMPORTC, .0
ZD20    MOVF JS , .0
        SUBWF L10, .0
        BTFSS STATUS ,C
        GOTO ZD21
        BSF TMPORTC, .1
ZD22    MOVF JS , .0
        SUBWF L11, .0
        BTFSS STATUS ,C
        GOTO ZD23
        BSF TMPORTC, .2
ZD24    MOVF JS , .0
        SUBWF L12, .0
        BTFSS STATUS ,C
        GOTO ZD25
        BSF TMPORTC, .3
ZD26    MOVF JS , .0
        SUBWF L13, .0
        BTFSS STATUS ,C
        GOTO ZD27
        BSF TMPORTC, .4
ZD28    MOVF JS , .0
        SUBWF L14, .0
        BTFSS STATUS ,C
        GOTO ZD29
        BSF TMPORTC, .5
ZD30    MOVF JS , .0
        SUBWF L15, .0
        BTFSS STATUS ,C
        GOTO ZD31
        BSF TMPORTC, .6
ZD32    MOVF JS , .0
        SUBWF L16, .0
        BTFSS STATUS ,C
        GOTO ZD33
        BSF TMPORTC, .7
ZD34    MOVF JS , .0
        SUBWF L17, .0
        BTFSS STATUS ,C
        GOTO ZD35
        BSF TMPORTD, .0
ZD36    MOVF JS , .0
        SUBWF L18, .0
        BTFSS STATUS ,C
        GOTO ZD37
        BSF TMPORTD, .1
ZD38    MOVF JS , .0
        SUBWF L19, .0
        BTFSS STATUS ,C
        GOTO ZD39
        BSF TMPORTD, .2
ZD40    MOVF JS , .0
        SUBWF L20, .0
        BTFSS STATUS ,C
        GOTO ZD41
        BSF TMPORTD, .3
ZD42    MOVF JS , .0
        SUBWF L21, .0
        BTFSS STATUS ,C
        GOTO ZD43
        BSF TMPORTD, .4                           
ZD44    MOVF JS , .0
        SUBWF L22, .0
        BTFSS STATUS ,C
        GOTO ZD45
        BSF TMPORTD, .5
ZD46    MOVF JS , .0
        SUBWF L23, .0
        BTFSS STATUS ,C
        GOTO ZD47
        BSF TMPORTD, .6
ZD48    MOVF JS , .0
        SUBWF L24, .0
        BTFSS STATUS ,C
        GOTO ZD49
        BSF TMPORTD, .7
ZD50    DECF JS, .1 
ZD51    MOVF TMP_OPTION , .0
        MOVWF STATUS
        MOVF TMP_W, .0
        RETURN
ZD01    BCF INTCON,INTF
        ;BSF WB, .0
        INCF FB, .1
        MOVLW .24
        MOVWF JS
        BSF INTCON,T0IE
        GOTO ZD02
TABLE   ADDWF PCL, .1
        NOP
        RETLW  W1
        RETLW  W2
        RETLW  W3
        RETLW  W4
        RETLW  W5
        RETLW  W6
        RETLW  W7
        RETLW  W8
        RETLW  W9
        RETLW  W10
        RETLW  W11
        RETLW  W12
        RETLW  W13
        RETLW  W14
        RETLW  W15
        RETLW  W16
        RETLW  W17
        RETLW  W18
        RETLW  W19
        RETLW  W20
        RETLW  W21
        RETLW  W22
        RETLW  W23
        RETLW  W24
        RETLW  W24
        RETLW  W24
        RETLW  W24
ZD03    BCF TMPORTE, .0
        GOTO ZD04
ZD05    BCF TMPORTB, .1
        GOTO ZD06
ZD07    BCF TMPORTB, .2
        GOTO ZD08  
ZD09    BCF TMPORTB, .3
        GOTO ZD10
ZD11    BCF TMPORTB, .4
        GOTO ZD12
ZD13    BCF TMPORTB, .5
        GOTO ZD14
ZD15    BCF TMPORTB, .6
        GOTO ZD16
ZD17    BCF TMPORTB, .7
        GOTO ZD18
ZD19    BCF TMPORTC, .0
        GOTO ZD20
ZD21    BCF TMPORTC, .1
        GOTO ZD22
ZD23    BCF TMPORTC, .2
        GOTO ZD24
ZD25    BCF TMPORTC, .3
        GOTO ZD26
ZD27    BCF TMPORTC, .4
        GOTO ZD28
ZD29    BCF TMPORTC, .5
        GOTO ZD30
ZD31    BCF TMPORTC, .6
        GOTO ZD32
ZD33    BCF TMPORTC, .7
        GOTO ZD34
ZD35    BCF TMPORTD, .0
        GOTO ZD36
ZD37    BCF TMPORTD, .1
        GOTO ZD38
ZD39    BCF TMPORTD, .2
        GOTO ZD40
ZD41    BCF TMPORTD, .3
        GOTO ZD42
ZD43    BCF TMPORTD, .4
        GOTO ZD44
ZD45    BCF TMPORTD, .5
        GOTO ZD46
ZD47    BCF TMPORTD, .6
        GOTO ZD48
ZD49    BCF TMPORTD, .7
        GOTO ZD50
ZD100   CLRF PORTC
        CLRF PORTD
        BCF PORTE, .0
        CLRF PORTB
        BCF INTCON,T0IE ;CLOSE TIME
        GOTO ZD51 ;RETURN
ZD101   BCF PORTE, .0
        GOTO ZD102
JP00    BSF PORTA, .2
        NOP
        BTFSC XS, .7
        GOTO JP01
        BSF PORTE, .1
JP02    BTFSC XS, .4
        GOTO JP03
        BSF PORTE, .2
JP04    MOVLW .128
        MOVWF K
        CALL CS00
        MOVLW .16
        MOVWF K
        CALL CS00
        BCF PORTA, .2
        NOP
        BSF PORTA, .3
        NOP
        BTFSC XS, .6
        GOTO JP05
        BSF PORTE, .1
JP06    BTFSC XS, .2
        GOTO JP07
        BSF PORTE, .2
JP08    MOVLW .64
        MOVWF K
        CALL CS00
        MOVLW .8
        MOVWF K
        CALL CS00
        BCF PORTA, .3
        NOP
        BSF PORTA, .4
        NOP
        BTFSC XS, .5
        GOTO JP09
        BSF PORTE, .1
JP10    BTFSC XS, .1
        GOTO JP11
        BSF PORTE, .2
JP12    MOVLW .32
        MOVWF K
        CALL CS00
        MOVLW .4
        MOVWF K
        CALL CS00
        BCF PORTA, .4
        NOP
        BSF PORTA, .5
        NOP
        BTFSC XS, .4
        GOTO JP13
        BSF PORTE, .1
JP14    MOVLW .150
        CALL YS00
        BCF PORTA, .5
        NOP
        BTFSS  AX, .0
        GOTO JP00
        RETURN
JP01    BCF PORTE, .1
        NOP
        GOTO JP02
JP03    BCF PORTE, .2
        NOP
        GOTO JP04
JP05    BCF PORTE, .1
        NOP
        GOTO JP06
JP07    BCF PORTE, .2
        NOP
        GOTO JP08
JP09    BCF PORTE, .1
        NOP
        GOTO JP10
JP11    BCF PORTE, .2
        NOP
        GOTO JP12
JP13    BCF PORTE, .1
        NOP
        GOTO JP14
CS00    MOVLW .30
        SUBWF K, .0
        BTFSC STATUS, C
        GOTO CS01
        BTFSS PORTA, .1
        GOTO CS03
CS02    MOVF K, .0
        ANDWF YX, .0
        BTFSC STATUS, Z
        GOTO CS04
        BTFSS YX, .0
        GOTO CS06
        MOVF K, .0
        ANDWF AX, .0
        BTFSC STATUS,Z
        GOTO CS04
        INCF YS, .1
        MOVF YS, .0
        SUBWF JY, .0
        BTFSC STATUS,Z
        GOTO CS07
CS04    MOVLW .75
        CALL YS00
        RETURN
CS01    BTFSC PORTA, .0
        GOTO CS02
CS03    MOVF K, .0
        ANDWF AX, .0
        BTFSC STATUS , Z
        GOTO CS04
        BTFSS YX, .1
        GOTO CS05
        BSF YX, .1
        CALL AJ00
CS05    COMF K, .0
        IORWF AX , .1
        BSF YX, .0
        MOVLW .1
        MOVWF YS
        GOTO CS04
CS06    BSF YX, .0
        MOVF K, .0
        IORWF AX , .1
        MOVLW  .1
        MOVWF YS
        GOTO CS04
CS07    BSF YX, .1
        GOTO CS04
AJ00    MOVLW .128
        SUBWF K, .0
        BTFSC STATUS,Z
        GOTO AJ01
        MOVLW .64
        SUBWF K, .0
        BTFSC STATUS,Z
        GOTO AJ02
        MOVLW .32
        SUBWF K, .0
        BTFSC STATUS,Z
        GOTO AJ03
        MOVLW .16
        SUBWF K, .0
        BTFSC STATUS,Z
        GOTO AJ04
        MOVLW .8
        SUBWF K, .0
        BTFSC STATUS,Z
        GOTO AJ05
        CALL K600
AJ06    RETURN
AJ01    CALL K100
        GOTO AJ06
AJ02    CALL K200
        GOTO AJ06
AJ03    CALL K300
        GOTO AJ06
AJ04    CALL K400
        GOTO AJ06
AJ05    CALL K500
        GOTO AJ06
K100    MOVLW .255
        MOVWF XS
        MOVLW .96
        MOVWF YX
        RETURN
K200    MOVLW .0
        MOVWF XS
        MOVLW .128
        MOVWF YX
        BSF AX, .0
        RETURN
K300    MOVLW .1
        SUBWF GN, .0
        BTFSC STATUS,Z
        GOTO K301
        MOVLW .2
        SUBWF GN, .0
        BTFSC STATUS,Z
        GOTO K302
        MOVLW .3
        SUBWF GN, .0
        BTFSC STATUS,Z
        GOTO K303
        MOVLW .4
        SUBWF GN, .0
        BTFSC STATUS,Z
        GOTO K304
        INCF GN, .1
        MOVLW .5
        SUBWF GN, .0
        BTFSS STATUS,Z
        GOTO K305
        MOVLW .1
        MOVWF GN
K305    RETURN
K301    MOVLW .128
        MOVWF XS
        MOVLW .120
        MOVWF YX
        MOVLW .1
        MOVWF GH
        GOTO K305
K302    MOVLW .64
        MOVWF XS
        MOVLW .120
        MOVWF YX
        MOVLW .2
        MOVWF GH
        GOTO K305
K303    MOVLW .32
        MOVWF XS
        MOVLW .120
        MOVWF YX
        MOVLW .3
        MOVWF GH
        GOTO K305
K304    MOVLW .24
        MOVWF XS
        MOVLW .124
        MOVWF YX
        MOVLW .4
        MOVWF GH
        GOTO K305
K600    INCF SG, .1
        MOVLW .4
        SUBWF SG, .0
        BTFSC STATUS,Z
        GOTO K601
K602    MOVLW .1
        SUBWF SG, .0
        BTFSC STATUS,Z
        GOTO K603
        MOVLW .2
        SUBWF SG, .0
        BTFSC STATUS,Z
        GOTO K604
        MOVLW .3
        SUBWF SG, .0
        BTFSC STATUS,Z
        GOTO K605
K606    RETURN
K601    MOVLW .24
        MOVWF SG
        GOTO K602
K603    MOVLW .24
        MOVWF XS
        GOTO K606
K604    MOVLW .20
        MOVWF XS
        GOTO K606
K605    MOVLW .18
        MOVWF XS
        GOTO K606
K400    MOVLW .1
        SUBWF GH, .0
        BTFSC STATUS, Z
        GOTO K401
        MOVLW .2
        SUBWF GH, .0
        BTFSC STATUS,Z
        GOTO K403
        MOVLW .3
        SUBWF GH, .0
        BTFSC STATUS,Z
        GOTO K405
        MOVLW .4
        SUBWF GH, .0
        BTFSC STATUS,Z
        GOTO K407
K408    RETURN
K401    MOVLW .1
        MOVWF TS
        INCF TB, .1
        MOVLW .25
        SUBWF TB, .0
        BTFSS STATUS,Z
        GOTO K402
        MOVLW .1
        MOVWF TB
        MOVLW .0
        MOVWF ZTA
        CALL KM00
K402    MOVF TB, .0
        MOVWF ZTA
        BSF ZTB, .0
        CALL KN00
        GOTO K408
K403    INCF HS, .1
        MOVLW .11
        SUBWF HS, .0
        BTFSS STATUS,Z
        GOTO K404
        MOVLW .1
        MOVWF HS
K404    MOVLW .0
        MOVWF ZTA
        CALL KM00
        MOVF HS, .0
        MOVWF ZTA
        BSF ZTB, .0
        CALL KN00
        GOTO K408
K405    INCF TG, .1
        MOVLW .25
        SUBWF TG, .0
        BTFSS STATUS,Z
        GOTO K406
        MOVLW .1
        MOVWF TG
K406    MOVF TG, .0
        MOVWF ZTA
        CALL KM00
        GOTO K408
K407    MOVLW .1
        SUBWF SG, .0
        BTFSC STATUS,Z
        GOTO K412
        MOVLW .2
        SUBWF SG, .0
        BTFSC STATUS,Z
        GOTO K410
        MOVLW .3
        SUBWF SG, .0
        BTFSC STATUS,Z
        GOTO K411
        GOTO K408
K412    INCF RE, .1
        MOVLW .25
        SUBWF RE, .0
        BTFSS STATUS,Z
        GOTO K409
        MOVLW .0
        MOVWF RE
        GOTO K409
K410    INCF YE, .1
        MOVLW .25
        SUBWF YE, .0
        BTFSS STATUS,Z
        GOTO K409
        MOVLW .0
        MOVWF YE
        GOTO K409
K411    INCF BL, .1
        MOVLW .25
        SUBWF BL, .0
        BTFSS STATUS,Z
        GOTO K409
        MOVLW .0
        MOVWF BL
K409    CALL KL00
        GOTO K408
K500    MOVLW .1
        SUBWF GH, .0
        BTFSC STATUS,Z
        GOTO K501
        MOVLW .2
        SUBWF GH, .0

⌨️ 快捷键说明

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