【proteus仿真】单片机汇编+74xx595驱动8X8点阵滚动显示

【proteus仿真】单片机汇编+74xx595驱动8X8点阵滚动显示


  • Proteus仿真
    在这里插入图片描述

汇编代码(.asm)

		ORG		00H
		JMP		MAIN
		ORG   	0BH
		LJMP	INTS_T0
		ORG		30H
MAIN:	CLR		EA
		MOV		R2,#0
		MOV		R1,#16			;16个字符
		MOV		R0,#40H
		MOV		DPTR,#TAB		;把全部字符复制到40H
MOVEDATA:
		MOV		A,R2
		MOVC	A,@A+DPTR
		MOV		@R0,A
		INC		R2
		INC		R0
		DJNZ	R1,MOVEDATA
		MOV		TMOD,#01H		;定时器0工作方式1
		MOV		TL0,#0FFH		;置计数初值
		MOV		TH0,#03CH		;0FFFFH-3CAFH=50000,50MS
		MOV		R7,#5			;软件计数器,循环5次
		SETB	ET0				;允许T0中断
		CLR		ET1				;禁止T1中断
		SETB	EA
		SETB	TR0 
		MOV		SCON,#00H		;串行口工作模式0
		CLR		P3.2
		MOV		SP,#60H
		MOV		R3,#080H		;第一行
A0:		MOV		R2,#08H
		MOV		R0,#40H
LOOP:	MOV		DPTR,#TAB		;字符首地址
		MOV		R1,#2
		MOV		A,R3
		RR		A				;行码右移一位转下一行
		MOV		R3,A
		MOV		SBUF,A			;发送行码
WAIT1: 	JNB		TI,WAIT1		;等待一帧发送完
		CLR		TI
A1:		MOV		A,@R0
		MOV		SBUF,A
WAIT2:	JNB		TI,WAIT2
		CLR		TI
		INC		R0
		DJNZ	R1,A1
		SETB	P3.2			;显示一行
		CLR		P3.2
		DJNZ	R2,LOOP			;下一行
		JMP		A0
		JMP		$
INTS_T0:
		CLR	EA
		PUSH	00H
		PUSH	01H
		PUSH	02H
		DJNZ	R7,BACK			;软件次数,次数不到返回 
		MOV		R7,#5
		MOV		R0,#40H
		MOV		R1,#8
SHIFT1:
		MOV		R2,#2
		CLR		C
		PUSH	00H
		MOV		A,R0
		ADD		A,#1
		MOV		R0,A
		MOV		A,@R0
		POP		00H
		RLC		A
SHIFT2:
		MOV		A,@R0
		RLC		A
		MOV		@R0,A
		INC		R0
		DJNZ	R2,SHIFT2
		DJNZ	R1,SHIFT1
BACK:	POP		02H
		POP		01H
		POP		00H
		MOV		TMOD,#01H		;定时器0工作方式1
		MOV		TL0,#0FFH               
		MOV		TH0,#03CH		;0FFFFH-3CAFH=5000050MS
		SETB	ET0				;禁止T0中断
		CLR		ET1				;禁止T1中断
		SETB	EA
		SETB	TR0
		RETI
TAB:	DB		0FFH,0FFH		;箭头符号				
		DB		0DFH,0FFH
		DB		0BFH,0FFH														
		DB		001H,0FFH
		DB		0BFH,0FFH
		DB		0DFH,0FFH
		DB		0FFH,0FFH
		END

程序源码和仿真资源

本实验基于Proteus8.9SP2平台

链接:https://pan.baidu.com/s/1OGW_UsK1NksxnpL2uoxXuA 
提取码:nmc9

  你现在所拥有的,那未必是你梦寐以求的,可它却是真真切切属于你的。
  • 1
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值