找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2704|回复: 1
收起左侧

无字库的12864屏汇编语言程序

[复制链接]
ID:133 发表于 2014-10-29 15:49 | 显示全部楼层 |阅读模式
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP EX0INT
ORG 000BH
AJMP T0INT
ORG 0030H
MAIN: MOV TMOD,#01H
SETB EA
SETB EX0  ;外中断EX0接按键
SETB IT0  ;下降沿触发
SETB ET0  ;定时器和T0,10MS中断,作为按键防抖延时
SETB TR0
MOV TH0,#0D8H ;10MS定时常数
MOV TL0,#0F0H
MAIN1: MOV DPTR,#TAB ;字码表初址赋值
MOV R0,#2
MOV R1,#0FEH ;列控制码
MOV R3,#8  ;列数
MOV R4,#128         ;移动" "及 MY QQ等19个字符,,中间3 个空格及"I"算1屏。以128屏计
CM: JNB  F0,$  ;判断按键标志位,0暂停,1流动
MOV R5,#4  ;每屏反复显示4次
MOV R3,#8  ;列数
C1: MOV R2,#0  ;取字指针(反向,指针从最后一个字节开始,即#150)
C8: MOV  P2,#0FFH ;关显示
MOV A,R2  ;
MOVC A,@A+DPTR ;取当前列的显示字码的一个字节
MOV P0,A  ;送1~8行控制口
INC R2  ;(反向,指针-1)
MOV A,R1
MOV P2,A  ;送列控制码
    ACALL D5MS  ;显示5MS
RL A  ;列控制码左移,显示下一列(RR A,则从左向右流动)
MOV R1,A  
DJNZ R3,C8  ;未显示8 列,继续
MOV R3,#8
DJNZ R5,C1  ;未显示4次,继续
INC DPTR  ;一屏反复显示5次完,字码表初值加1(DPTR要-1)
DJNZ R4,CM  ;128屏未移动完,继续
AJMP MAIN1  ;128屏显示完,返回,重新从" "开始显示
EX0INT: JNB 7FH,RTI  ;10MS未到,跳出中断
CPL F0  ;10MS到,按键标志位求反。0 暂停。1 流动
RTI: RETI
T0INT: MOV TH0,#0D8H ;重置定时常数
MOV TL0,#0F0H
SETB 7FH  ;位寻址的2FH的最高位7FH,作10MS到标志位,置1
RETI
D5MS: MOV R6,#10
MOV R7,#248
DJNZ R7,$
DJNZ R6,$-4
RET
TAB:      ;(0) M(1) Y(2)  (3) Q(4) Q(5)  (6) I(7)
          ; S(8)  (9) 5(10) 7(11) 8(12) 7(13) 4(14) 3(15)
          ; 9(16) 3(17) 3(18)
DB 000H, 000H, 000H, 000H, 000H, 000H, 000H, 000H;" ",0
DB 0FFH, 00EH, 070H, 0C0H, 078H, 006H, 0FFH, 000H;"M",1
DB 001H, 003H, 00CH, 0F8H, 00CH, 003H, 001H, 000H;"Y",2
DB 000H;" ",3
DB 000H, 03EH, 0C3H, 081H, 0A1H, 0C3H, 07EH, 000H;"Q",4
DB 000H, 03EH, 0C3H, 081H, 0A1H, 0C3H, 07EH, 000H;"Q",5
DB 000H;" ",6
DB 000H, 0FFH,000H, 000H;"I",7
DB 066H, 0C9H, 089H, 089H, 091H, 091H, 062H, 000H;"S",8
DB 000H;" ",9
DB 000H, 04FH, 085H, 085H, 085H, 085H, 079H, 000H;"5",10
DB 000H, 001H, 001H, 081H, 071H, 01DH, 003H, 000H;"7",11
DB 000H, 036H, 0C9H, 089H, 089H, 089H, 0D9H, 026H;"8",12
DB 000H, 001H, 001H, 081H, 071H, 01DH, 003H, 000H;"7",13
DB 000H, 030H, 038H, 02CH, 026H, 021H, 0FFH, 020H;"4",14
DB 000H, 062H, 081H, 081H, 089H, 089H, 076H, 000H;"3",15
DB 000H, 04EH, 091H, 091H, 091H, 053H, 03EH, 000H;"9",16
DB 000H, 062H, 081H, 081H, 089H, 089H, 076H, 000H;"3",17

回复

使用道具 举报

ID:61875 发表于 2014-10-30 13:16 | 显示全部楼层
谢谢楼主好资料学习学习。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表