📄 potted1.asm
字号:
;T1=180mS;T2=560mS
;T= T1 T2 T1 T2 T1 T2 T1 T2 ......
;特殊内存定义
PORTB EQU 06H
PORTA EQU 05H
STATUS EQU 03H
PCL EQU 02H
CBLOCK 10H
;通用内存定义
COUNT1 ;560MS计数
COUNT2 ;80MS计数
COUNT3 ;20MS计数
COUNT4 ;延时基准计数
COUNT5 ;移位计数
COUNT6 ;
PA01JC
ENDC
;计数值定义
SIZ1 EQU 03H ;03
SIZ2 EQU 08H ;08
SIZ3 EQU 20H ;20
SIZ4 EQU 72H ;72
RB0 EQU 00H
RB1 EQU 01H
RB2 EQU 02H
RB3 EQU 03H
RB4 EQU 04H
RB5 EQU 05H
RB6 EQU 06H
RB7 EQU 07H
RA3 EQU 03H
;主程序复位地址
ORG 00H
GOTO START
;程序开始
ORG 08H
START
CALL SDCSH ;上电初始化
CALL DELAY90MS ;90MS延时
LOOP ;主程序循环
BCF PORTA,RA3 ;关闭3843
NOP
NOP
NOP
MOVLW 10H
MOVWF PORTB ;开始触发
CALL DELAY90MS ;90MS延时
MOVLW 0FH
MOVWF PORTB ;关闭触发
NOP
NOP
BSF PORTA,RA3 ;起动3843
CALL DELAY90MS ;90MS延时
BCF PORTA,RA3 ;关闭3843
NOP
NOP
NOP
MOVLW 10H
MOVWF PORTB ;开始触发
CALL DELAY10MS ;10MS延时
CALL DELAY280MS ;280MS延时
MOVLW 0FH
MOVWF PORTB ;关闭触发
NOP
NOP
BSF PORTA,RA3 ;起动3843
CALL DELAY10MS ;10MS延时
CALL DELAY280MS ;280MS延时
CLRWDT
GOTO LOOP
SDCSH ;上电初始化
NOP
MOVLW 00H ;B
TRIS 6 ;
MOVLW 00H ;A
TRIS 5
CLRF PORTA
CLRF PORTB
CALL DELAY10MS ;10MS延时
BSF PORTB,RB3
BCF PORTA,RA3
RETLW 0
DELAY280MS ;280MS延时
MOVLW SIZ1
MOVWF COUNT1
LO1
MOVLW SIZ2
MOVWF COUNT2
LO2
MOVLW SIZ3
MOVWF COUNT3
LO3
CLRWDT
MOVLW SIZ4
MOVWF COUNT4
DECFSZ COUNT4,1
GOTO $-1
DECFSZ COUNT3,1
GOTO LO3
DECFSZ COUNT2,1
GOTO LO2
DECFSZ COUNT1,1
GOTO LO1
RETLW 0
DELAY90MS ;90MS延时
MOVLW SIZ2
MOVWF COUNT2
LO22
MOVLW SIZ3
MOVWF COUNT3
LO33
CLRWDT
MOVLW SIZ4
MOVWF COUNT4
DECFSZ COUNT4,1
GOTO $-1
DECFSZ COUNT3,1
GOTO LO33
DECFSZ COUNT2,1
GOTO LO22
RETLW 0
DELAY10MS ;10MS延时
MOVLW SIZ3
MOVWF COUNT3
LO333
CLRWDT
MOVLW SIZ4
MOVWF COUNT4
DECFSZ COUNT4,1
GOTO $-1
DECFSZ COUNT3,1
GOTO LO333
RETLW 0
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -