📄 74hc595-ys.asm
字号:
;595应用演示程序:
;=====================================================
;74HC595 走马灯演示程序
;创作日期:2008/01/08
;创作者: OuBin
;=====================================================
SDATA_595 EQU P1.0 ;串行数据输入 ser-14
SCK11_595 EQU P1.1 ;移位时钟脉冲 scjk-11
RCK12_595 EQU P1.2;输出锁存器控制脉冲 RCK12-12
;=====================================================10
ORG 0000H
LJMP MAIN
ORG 0030H
;=====================================================
MAIN:
MOV SP,#60H
MOV R0,#0FEH ;1111 1110B列扫描数据
START:
;WR_595移位寄存器接收数据子程序 在DATA=1时,
;R0的数输入595,在SCK=1,8位存入数存器
MOV R4,#08H ;8列
MOV A, R0 ;R0=要输入的数
WR_LOOP: ;从p1.0中输入8位数R4=8
RLC A ;0FFEH=1111 1110左移
MOV SDATA_595,C ;=p1.0=595-14**************
SETB SCK11_595 ;p1.1=595-11上升沿发生移1位
NOP
NOP
CLR SCK11_595 ;SCK11=595-11=0**********
DJNZ R4,WR_LOOP
;-----------------------------------------------------
;输出锁存器数据 p1.2=;OUT_595:
;---------------------------------------------------
CLR RCK12_595 ;P1.2=0 30
NOP
NOP
SETB RCK12_595 ;P1.2=1上升沿将数据送到输出锁存器
NOP
NOP
CLR RCK12_595
CALL DELAY ;20
MOV A,R0
RL A
MOV R0,A
JMP START
;--------------------------------------------------------------
;延时子程序
;--------------------------------------------------------------
DELAY:
MOV R5,#03 ;#03H
DEL0:
MOV R6,#0FFH
DEL1:
MOV R7,#0FFH
DJNZ R7,$
DJNZ R6,DEL1
DJNZ R5,DEL0
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -