问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

有编程高手能提供一个汇编语言实现的简易电子琴程序吗?急!谢谢

发布网友 发布时间:2023-08-08 14:53

我来回答

5个回答

热心网友 时间:2023-09-24 09:18

T0HEQU 30H
T0L EQU 31H
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP T0ISR
ORG 0030H
MAIN:
MOV SP,#5FH
MOV TMOD,#01H
SETB ET0
SETB EA
LOOP:
MOV DPTR,#FREQ
MOV A,P2;控制高中低音区
MOV R1,#0
ANL A,#03H
JB ACC.0,LOOP01
MOV R1,#14
SJMP LOOP0
LOOP01:
JB ACC.1,LOOP0
MOV R1,#28
LOOP0:
JB P0.0,LOOP1;控制音频1234567
MOV A,R1
MOVC A,@A+DPTR
MOV T0H,A
INC DPTR
MOV A,R1
MOVC A,@A+DPTR
MOV T0L,A
LJMP LOOP
LOOP1:
JB P0.1,LOOP2
MOV A,R1
ADD A,#2
MOVC A,@A+DPTR
MOV T0H,A
INC DPTR
MOV A,R1
ADD A,#2
MOVC A,@A+DPTR
MOV T0L,A
LJMP LOOP
LOOP2:
JB P0.2,LOOP3
MOV A,R1
ADD A,#4
MOVC A,@A+DPTR
MOV T0H,A
INC DPTR
MOV A,R1
ADD A,#4
MOVC A,@A+DPTR
MOV T0L,A
LJMP LOOP
LOOP3:
JB P0.3,LOOP4
MOV A,R1
ADD A,#6
MOVC A,@A+DPTR
MOV T0H,A
INC DPTR
MOV A,R1
ADD A,#6
MOVC A,@A+DPTR
MOV T0L,A
LJMP LOOP
LOOP4:
JB P0.4,LOOP5
MOV A,R1
ADD A,#8
MOVC A,@A+DPTR
MOV T0H,A
INC DPTR
MOV A,R1
ADD A,#8
MOVC A,@A+DPTR
MOV T0L,A
LJMP LOOP
LOOP5:
JB P0.5,LOOP6
MOV A,R1
ADD A,#10
MOVC A,@A+DPTR
MOV T0H,A
INC DPTR
MOV A,R1
ADD A,#10
MOVC A,@A+DPTR
MOV T0L,A
LJMP LOOP
LOOP6:
JB P0.6,LOOP7
MOV A,R1
ADD A,#12
MOVC A,@A+DPTR
MOV T0H,A
INC DPTR
MOV A,R1
ADD A,#12
MOVC A,@A+DPTR
MOV T0L,A
LJMP LOOP
LOOP7:
CLR TR0
LJMP LOOP
;-----------------------------
T0ISR:
CLR TR0
MOV TH0,T0H
MOV TL0,T0L
SETB TR0
CPL P3.0
RETI
;-----------------------------
FREQ:
DB 0F2H,03DH;低音1
DB 0F3H,0BDH;低音2
DB 0F5H,014H;低音3
DB 0F5H,0B1H;低音4
DB 0F6H,0D0H;低音5
DB 0F7H,0D1H;低音6
DB 0F8H,0B5H;低音7

DB 0F9H,01EH;中音1
DB 0F9H,0DEH;中音2
DB 0FAH,08AH;中音3
DB 0FAH,0D8H;中音4
DB 0FBH,068H;中音5
DB 0FBH,0E8H;中音6
DB 0FCH,05AH;中音7
 
DB 0FCH,08FH;高音1
DB 0FCH,0EFH;高音2
DB 0FDH,045H;高音3
DB 0FDH,06CH;高音4
DB 0FDH,0B4H;高音5
DB 0FDH,0F4H;高音6
DB 0FEH,029H;高音7
;-----------------------------
END

热心网友 时间:2023-09-24 09:18

两个步骤
1要用中断程序16读到键盘的状态,

2要利用8253控制输出频率,发出声音来。

假如读取中断16不够信息的话,就改造中断9,把相关键盘状态记录到特定位置。

这个程序的水平好高啊,这个可是俺们当时的梦想啊

热心网友 时间:2023-09-24 09:19

是不是,小写时,低音,大写时,高音?追问是同时按下左shift和数字键发出低音,同时按下右shift和数字键发出低音

追答难到不难,就是麻烦点。

读出左、右shift,需要读出两个字节。

一般,键盘上,上、下排列了四行按键,输出不同的音调,也够用了。
每个按键,读出一个字节,就行了,没有弄过读出两个字节的。

如果这样深入要求,左右Ctrl,还可以升降半音,或者加上颤音,
太麻烦了,大概没有人会弄的。

热心网友 时间:2023-09-24 09:19

没有追问不带这样欺负人的

热心网友 时间:2023-09-24 09:20

要求真
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
夫妻养狗狗把谁当主人 两人同养狗认谁当主人 什么蔬菜和水果可以美容祛斑呢? vivox60怎么查看参数配置详情 怎样查看vivo手机的屏幕参数? vivo手机怎么看手机参数 vi##手机怎么看配置? 义乌到湖州没有直达快客???必须到南浔?? 湖州到绍兴的汽车有几班? 注销驾考需要本人吗 验车是自己去验还是找中介去验? 验审车要送烟吗? 验车时候,车内要不要放香烟? 两包香烟过年检 保育员考试成绩怎么查询? 内蒙距离广州大约多少公里 呼和浩特到广州多少公里? 只要放在企业仓库的商品物资就是存货。这说法对吗?为什么? 呼和浩特到广州多少公里 广州至内蒙古多少公里 肉蒙古到广州有多少公里 内蒙古离广州多远 内蒙古到广东多少公里 乌兰泡子距离海拉尔多少公里 海拉尔到乌兰监狱多远 海拉尔开车到乌兰监狱怎么走 海拉尔到乌兰敖都多少公里 一块地有几个平方怎么计算? 白塔机场离呼伦贝尔大草原有多远 白塔到海拉尔还有多少公里 简易电子琴用汇编程序 东方头条充值的话费要多久才能到账? 屋里喷乐果还能住吗 氧化乐果吸入性中毒,舌头发麻 伊利大草原距阿克苏多少公里 万金刚的事迹是什么? 空气中弥漫乐果农药气味,鼻子误吸入会有什么副作用吗,感觉有些害怕,这味道怪怪的 乐果农药闻了对人的危害 你未曾坠落星海的内容简介 你未曾坠落星海的编辑推荐 毕业班励志歌曲? 深圳中英街通行证可以取消预约吗深圳中英街通行证怎么取消预约 谁知道那什么“树与花”的演唱会什么时候演啊??就是有朴树还有张悬的那个?都要去哪些城市~会来北京不? 我要看27号上海树与花朴树张悬演唱会,大家有经验的告诉我他俩组合一场演唱会能开多久 为什么高德地图农村建筑不能实时更新 高德地图为什么不更新了 contentpane翻译成中文是什么意思 江苏离辽宁远还是内蒙古远 内蒙古离甘肃有多远 内容都为黑框的文章啥意思