51单片机 汇编语言电子琴
来源:互联网 发布:windows ad域管理软件 编辑:程序博客网 时间:2024/04/30 18:05
以前写过一个 C 语言的:
http://hi.baidu.com/do_sermon/item/c5e55bc1fc2dc30ec710b2f9
应网友要求,再写个汇编的。另外,还增加了显示按键号码的功能。
题目链接:http://zhidao.baidu.com/question/1818901024900190348.html
电路十分简单:
P0 外接一个共阳数码管;
P1 外接八个独立按键;
P3.7 外接扬声器。
汇编语言程序如下:
ORG 0000H
SJMP START
ORG 000BH
CPL P3.7
MOV TH0, 30H
MOV TL0, 31H
RETI
START:
INC TMOD
MOV IE, #82H
M_LOOP:
CLR A
JNB P1.0, K0
JNB P1.1, K1
JNB P1.2, K2
JNB P1.3, K3
JNB P1.4, K4
JNB P1.5, K5
JNB P1.6, K6
JNB P1.7, K7
SJMP M_LOOP
K7: INC A
K6: INC A
K5: INC A
K4: INC A
K3: INC A
K2: INC A
K1: INC A
K0: CLR TR0
PUSH ACC
ADD A, #(D - $ - 2)
MOVC A, @A + PC
MOV P0, A
POP ACC
RL A
PUSH ACC
ADD A, #(M - $ - 3)
MOVC A, @A + PC
MOV 30H, A
MOV TH0, A
POP ACC
ADD A, #(M - $ - 2)
MOVC A, @A + PC
MOV 31H, A
MOV TL0, A
SETB TR0
SJMP M_LOOP
M: DW 64580, 64684, 64777, 64820, 64898, 64968, 65030, 65058
D: DB 0C0H,0F9H,0A4H,0B0H, 99H, 92H, 82H,0F8H, 80H, 90H
END
题目所要求的功能,都实现了。
是不是很简单 ?
- 51单片机 汇编语言电子琴
- 单片机,51c``电子琴
- 51单片机做的电子琴
- 基于51单片机的电子琴
- 51单片机之电子琴设计
- 51单片机电子琴C代码
- 51单片机 C语言电子琴
- 详解51单片机播放音乐、电子琴、快进
- 51单片机电子琴编码 — 《断桥残雪》《庐州月》
- 基于51单片机的4×4矩阵键盘电子琴
- 51单片机实训-4×4矩阵键盘电子琴
- 51单片机 汇编语言 两道题
- 51单片机汇编语言使用串口
- 基于汇编语言的电子琴设计(1)
- 基于汇编语言的电子琴设计(2)
- 基于汇编语言的电子琴设计(3)
- 基于汇编语言的电子琴设计(4)
- 基于汇编语言的电子琴设计(5)
- 51 单片机:在 P0 口接上 8 个 LED,实现每次亮两个灯的流水灯
- 80x86 汇编语言:实现两个字符串内容交换
- 京东电商API
- C语言:500 以内最大 10 个素数并求和
- 51单片机基于 Proteus 制作 10 以内加减的计算器
- 51单片机 汇编语言电子琴
- 在 51 单片机系统中使用 8155(2)
- 【Java并发编程】深入分析volatile(四)
- 80x86 汇编语言:组合 BCD 码的乘法
- 80x86 汇编语言编程:要求显示完整的算式
- 80x86汇编语言编程:用光标键控制三角形的移动
- 字符串转拼音
- 80x86汇编语言编程:用光标键控制字符串的移动
- windows脚本命令执行adb shell之后的命令