[通信/电子]摇摇棒汇编程序
自己看程序连图吧~
;=====分配单元地址====================================
OUTPUT1 EQU 31H ;P2口查表的暂存器 OUTPUT2 EQU 30H ;P1口查表的暂存器 COUNT1 EQU 32H C1 EQU 33H C2 EQU 34H C3 EQU 35H C4 EQU 36H C5 EQU 37H C6 EQU 38H C7 EQU 39H C8 EQU 3AH C9 EQU 3BH C10 EQU 3CH KEY BIT P0.2
ORG 0000H ;起始地址
JMP RESET
ORG 0003H ;外部中断入口地址
JMP INT
ORG 0030H
/*===========================================
复位程序
===========================================*/
RESET:
MOV C1,#00H ;偏移量
MOV C2,#00H
MOV C3,#00H
MOV C4,#00H
/*
MOV C5,#00H
MOV C6,#00H
MOV C7,#00H
MOV C8,#00H
MOV C9,#00H
MOV C10,#00H */
MOV OUTPUT1,#00H
MOV OUTPUT2,#00H
SETB KEY ;把P0.2置高,作为输入口
MOV COUNT1,#00H
SETB EX0 ;分中断
SETB EA ;总中断
SETB IT0 ;启动
/*==========================================
主程序
==========================================*/
MAIN:
MOV P2,#0FFH
CALL KEY_SCAN
CALL NOAD
LJMP MAIN
/*=========================================
按键处理程序
只做了两种模式,大家可以再加
=========================================*/
KEY_SCAN:
JB KEY,KEY_RET
LCALL DELAY
JB KEY,KEY_RET
INC COUNT1
INC COUNT1
MOV A,COUNT1
CJNE A,#4,KEY_D
MOV COUNT1,#00H KEY_D:
JNB KEY,$
KEY_RET:
RET
/*==========================================
散转程序
==========================================*/
NOAD:
MOV DPTR,#TAB_B ;设置散转表地址
MOV A,COUNT1
JMP @A+DPTR
TAB_B: ;散转表
AJMP OPR_0
AJMP OPR_2
OPR_0:
MOV DPTR,#TAB1
MOV A,C1
MOVC A,@A+DPTR
MOV OUTPUT1,A
MOV DPTR,#TAB2
MOV A,C2
MOVC A,@A+DPTR
MOV OUTPUT2,A
MOV P2,OUTPUT1
MOV P1,OUTPUT2
CALL DELAY
INC C1
INC C2
MOV A,C2
CJNE A,#64,OPR_0
MOV C1,#00H
MOV C2,#00H
LJMP OPR_RET
OPR_2:
MOV DPTR,#TAB3
MOV A,C3
MOVC A,@A+DPTR
MOV OUTPUT1,A
MOV DPTR,#TAB4
MOV A,C4
MOVC A,@A+DPTR
MOV OUTPUT2,A
MOV P2,OUTPUT1
MOV P1,OUTPUT2
CALL DELAY
INC C3
INC C4
MOV A,C4
CJNE A,#64,OPR_2
MOV C3,#00H
MOV C4,#00H
LJMP OPR_RET
OPR_RET:
RET
/*===========================================
中断处理程序
===========================================*/
INT:
MOV P1,#0FFH
MOV P2,#0FFH
CALL DELAY
RETI
/*===========================================
延时程序
===========================================*/
DELAY:
MOV R7,#3
D1: MOV R6,#0E0H
DJNZ R6,$
DJNZ R7,D1
RET
;===========================真心爱你==========================
TAB1:
DB
0FFH,0F7H,0F3H,0F7H,0F7H,0F7H,0F0H,0F7H,0C7H,0E7H,0B7H,0CBH,0EFH,0F0H,0FBH,0FDH
DB
0FFH,0F9H,0F8H,0ABH,0AH,0B2H,0BAH,0A2H,0DBH,0DAH,0C2H,0DAH,0DBH,0E8H,0F9H,0FFH
DB
0FFH,0E1H,0DEH,0BFH,0BFH,0BFH,0DFH,0EFH,0EFH,0DFH,0BFH,0BFH,0BFH,0DEH,0E1H,0FFH
DB
0FFH,0FFH,0DFH,0DFH,0DFH,0D0H,0D5H,0A5H,95H,0D5H,0A5H,0D0H,0DFH,0DFH,0FFH,0FFH TAB2:
DB
0FFH,0FFH,0CFH,0BFH,7FH,0FFH,03H,0F7H,0EFH,7FH,0BFH,0DFH,0FFH,03H,0FFH,0FFH
DB
0FFH,0FFH,0FCH,0FCH,0CCH,0CBH,0C7H,0CBH,5CH,9FH,0EFH,0F7H,0FBH,0FDH,0FFH,0FFH
DB
0FFH,0FFH,0FFH,7FH,0BFH,0DFH,0EFH,0F7H,0F7H,0E7H,0DFH,0BFH,7FH,0FFH,0FFH,0FFH
DB
0FFH,0DFH,0DFH,0DDH,0DBH,17H,4FH,5FH,5FH,5FH,4FH,07H,0DBH,0DDH,0DFH,0FFH ;=========================新年快乐============================
TAB3:
DB
0FFH,0FFH,0FEH,0FEH,0BEH,0BEH,0DEH,0DEH,0D8H,0DEH,0DEH,0EEH,0EEH,0E0H,0FFH,0FFH
DB
0FFH,0FFH,0FFH,0F8H,0FBH,0FBH,0E0H,0FBH,0FBH,0FEH,0FDH,0FBH,80H,0FFH,0F8H,0FFH
DB
0FFH,0FFH,0FFH,0F7H,0F7H,0F5H,0F5H,0F0H,0F5H,0F5H,0F5H,0D4H,0E7H,0F7H,0F8H,0FFH
DB
0DEH,0DEH,0DEH,0DEH,0EEH,0EEH,0E0H,0FFH,0EEH,0E6H,0EAH,0ECH,0CCH,0AAH,0E6H,0EEH
TAB4:
DB
0FFH,0FFH,0F7H,0EFH,0DFH,0BFH,0FFH,0FFH,01H,0FBH,0F7H,0BFH,0DFH,0EFH,0F7H,0FFH
DB
0BFH,0BFH,0BBH,37H,0AFH,9FH,3FH,9FH,0AFH,0B7H,0BBH,0FFH,01H,0FFH,0FFH,0FFH
DB
0DFH,0DFH,0DFH,0DFH,0DFH,0DFH,0DFH,01H,0DFH,0DFH,0DFH,1FH,0DFH,0DFH,0DFH,0FFH
DB
0FFH,0FFH,0FFH,01H,0FFH,0FFH,0FH,0F1H,0FFH,0EFH,8FH,0B0H,03H,0B7H,9FH,0EFH ;=======================================================
END ;结束
本文档为【[通信/电子]摇摇棒汇编程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。