74HC595走马灯演示程序

2022-12-26  

;================================================

SDATA_595 EQU P1.0 ;串行数据输入

SCLK_595 EQU P1.1 ;移位时钟脉冲

RCK_595 EQU P1.2 ;输出锁存器控制脉冲

;================================================

ORG 0000H

LJMP MAIN

ORG 0030H

;================================================

MAIN:

MOV SP,#60H

MOV R0,#0FEH

MAIN1:

CALL OUT_595

CALL DELAY

MOV A,R0

RL A

MOV R0,A

JMP MAIN1

;---------------------------------------------------------------

;输出锁存器输出数据子程序

;---------------------------------------------------------------

OUT_595:

LCALL WR_595

CLR RCK_595

NOP

NOP

SETB RCK_595 ;上升沿将数据送到输出锁存器

NOP

NOP

NOP

CLR RCK_595

RET

;--------------------------------------------------------------

;移位寄存器接收数据子程序

;--------------------------------------------------------------

WR_595:

MOV R4,#08H

MOV A,R0

WR_LOOP:

RLC A

MOV SDATA_595,C

SETB SCLK_595 ;上升沿发生移位

NOP

NOP

CLR SCLK_595

DJNZ R4,WR_LOOP

RET

;--------------------------------------------------------------

;延时子程序

;--------------------------------------------------------------

DELAY:

MOV R5,#03H

DEL0:

MOV R6,#0FFH

DEL1:

MOV R7,#0FFH

DJNZ R7,$

DJNZ R6,DEL1

DJNZ R5,DEL0

RET

;---------------------------------------------------------------

END


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。