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

📄 led的动态显示.txt

📁 C51的红外控制源程序
💻 TXT
字号:

  list p=16F877A,R=DEC
include "p16F877A.inc"
;;;;;user variables;;;;;;;;
Count2 equ 23H
Count3 equ 24H
data_out1 equ 25H
data_out2 equ 26H
;;;;;;;reset vector;;;;;;;;;
org 0x00
goto mainline
;;;;;;delay program;;;;;;;
delay_2ms
movlw 0x05
movwf Count2
lp0 movlw 0xff
movwf Count3
lp1 decfsz Count3,F
goto lp1
decfsz Count2,F
goto lp0
return 
delay_250ms
movlw 0x41
movwf Count2
movlw 0xff
movwf Count3
decfsz Count3,F
goto $-1
decfsz Count2,F
goto $-5
movlw 0xff
movwf Count2
movlw 0xff
movwf Count3
decfsz Count3,F
goto $-1
decfsz Count2,F
goto $-5
return 
;;;;;;main program;;;;;;;;;
mainline
banksel TRISA
movlw 0x00
movwf TRISA
movlw 0xff
movwf TRISB
movlw 0x00
movwf TRISC
movwf TRISD
movwf TRISE

banksel PORTA
movlw 0x00
movwf PORTA
movwf PORTB
movwf PORTC
movwf PORTD
movwf PORTE

banksel INTCON
bcf INTCON,PEIE
lp
btfsc PORTB,0
goto lp
call delay_250ms
wait1
btfss PORTB,2
goto led1
btfss PORTB,3
goto led2
goto wait1
lp2
movf PORTA,W
movwf data_out1
L2
btfsc PORTB,1
goto L2
call delay_250ms
wait2
btfss PORTB,2
goto led3
btfss PORTB,3
goto led4
goto wait2
led1
call delay_250ms
movlw 0x00
movwf PORTA
movlw 0x01
movwf PORTA
movlw 0xfe
movwf PORTC
goto lp2
led2
call delay_250ms
movlw 0x00
movwf PORTA
movlw 0x02
movwf PORTA
movlw 0xfe
movwf PORTC
goto lp2
led3
call delay_250ms

movlw 0x01
movwf PORTA
movlw 0xfd
movwf PORTC
call delay_2ms

banksel PORTC
movlw 0x00
movwf PORTC
movlw 0xfe
movwf PORTC
movf data_out1,W
movwf PORTA

call delay_2ms
call delay_2ms

led4
call delay_250ms

movlw 0x02
movwf PORTA
movlw 0xfd
movwf PORTC
call delay_2ms

banksel PORTC
movlw 0x00
movwf PORTC
movlw 0xfe
movwf PORTC
movf data_out1,W
movwf PORTA

call delay_2ms

end



 

⌨️ 快捷键说明

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