导航:首页 > 操作系统 > 单片机做乐器

单片机做乐器

发布时间:2022-08-05 16:26:15

❶ 做一个mbed音乐盒,需要发出各种乐器的声音,求代码及电路图

这个东西想用单片机做出来啊,复杂咯,放弃这种想法吧,在电脑上玩就可以了;

❷ 用单片机做电子琴的问题

你首先要保证你的单片机外围电路要正常,他们是单片机工作的前提,我给你提点你查查,看看复位电路是否接好,最好用上电复位电路,再观察你的晶振电路是否正常,最好用示波器观察。不知道你用的是哪个型号的单片机,如果是40管脚的51系列,那你就再看看31管脚是否接的是高电平!就那个VPP,这个很多人就忽视了。检查完以后如果一切都正常,那要用软件测试的办法了,你写一个小程序,烧写进去,看看是否运行,如果可以的话,那就不是硬件的问题了,而是你的软件问题了,行了就说这么多了,如果 还有问题可以交流!祝你成功!!

❸ 我很喜欢音乐,还有很多乐器,请问单片机这个行业和音乐有关系么,谢谢

用单片机可以通过编程让他奏乐,呵呵,不过音质不匝地.但可以控制音乐存储芯片来实现放音,还可以控制硬盘,MP3,CD等尤其是MP3,就是一片单片机,你要是对单片机不了解下面是对单片机的介绍,有兴趣可以看一下

单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机了解计算机原理与结构的最佳选择。

可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称PC机。它由主机、键盘、显示器等组成。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上。
单片机的历史 :
第一代:七十年代后期, 4 位逻辑控制器件发展到 8 位。使用 NMOS 工艺(速度低,功耗大、集成度低)。代表产品: MC6800 、 Intel 8048 。
第二代:八十年代初,采用 CMOS 工艺,并逐渐被高速低功耗的 HMOS 工艺代替。代表产品: MC146805 、 Intel 8051 。
第三代:近十年来, MCU 的发展出现了许多新特点:
( 1 )在技术上,由可扩展总线型向纯单片型发展,即只能工作在单片方式。
( 2 ) MCU 的扩展方式从并行总线型发展出各种串行总线。
( 3 )将多个 CPU 集成到一个 MCU 中。
( 4 )在降低功耗,提高可靠性方面, MCU 工作电压已降至 3.3V 。
第四代: FLASH 的使用使 MCU 技术进入了第四代。

单片机的应用领域 :
1. 单片机在智能仪器仪表中的应用;
2. 单片机在工业测控中的应用;
3. 单片机在计算机网络和通讯技术中的应用;
4. 单片机在日常生活及家电中的应用;
5. 单片机在办公自动化方面。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。

单片机的作用
实际工作中并不是任何需要计算机的场合都要求计算机有很高的性能,一个控制电冰箱温度的计算机难道要用P4吗?应用的关键是看是否够用,是否有很好的性能价格比。
单片机通常用于工业生产的控制、生活中与程序和控制有关(如:电子琴、冰箱、智能空调等)的场合,它不是用来做办公自动化用的。

❹ 毕业设计我想用单片机做一个电子琴,程序最好是c语言编写的,那个好心人可以帮我提供点资料,要钱的免进!

www.doyoung.net

上有好多,要的话我还有流程图

/*********************************************************************************************

程序名:DoToy系列作品MidTouch21电子琴程序

编写人:杜洋

编写时间:2009年6月3日

硬件支持:STC11L60XE外部12MHZ晶振电源3V

接口说明:详见《DoToy_MidTouch21电路原理图》

修改日志:

NO.1-20090603_17.54完成电子琴21键的测试(20090603_1备)

NO.2-20090604_01.29改为第二次新板的硬件电路(20090604_2备)

/*********************************************************************************************

说明:

用STC11Fxx单片机I/O接口的高阻态输入功能,扫描I/O接口电平。

手指将VCC线和I/O接口线半连接,产生高电平信号。

/*********************************************************************************************/

voidINIT(void);

#include<STC11Fxx.H>

/*********************************************************************************************/

sbitSPEAKER=P1^0;//扬声器,低使能

sbitLED=P3^0;//LED正极,强推

sbitLED2=P3^1;//LED负极

sbitKEY11=P2^0;

sbitKEY12=P2^1;

sbitKEY13=P2^2;

sbitKEY14=P2^3;

sbitKEY15=P2^4;

sbitKEY16=P2^5;

sbitKEY17=P2^6;

sbitKEY21=P2^7;

sbitKEY22=P4^4;

sbitKEY23=P4^5;

sbitKEY24=P4^6;

sbitKEY25=P0^7;

sbitKEY26=P0^6;

sbitKEY27=P0^5;

sbitKEY31=P0^4;

sbitKEY32=P0^3;

sbitKEY33=P0^2;

sbitKEY34=P0^1;

sbitKEY35=P0^0;

sbitKEY36=P3^3;

sbitKEY37=P3^2;

/*********************************************************************************************/

unsignedcharMUSIC;

unsignedcharSTH0,STL0;

unsignedintcodetab[]={//音阶表

63628,63835,64021,64103,64260,64400,64524,//低音1-7

64580,64684,64777,64820,64898,64968,65030,//中音1-7

65058,65110,65157,65178,65217,65252,65283//高音1-7

};

/*********************************************************************************************/

voiddelay1ms(unsignedinta){//1ms延时程序(12MHz10倍于51单片机速度时)

unsignedinti;

while(--a!=0){

for(i=0;i<600;i++);

}

}/***************************************************************************************/

voidINIT(void){//初始化程序

TMOD=0x11;

ET0=1;

ET1=1;

EA=1;

P0M1=0xff;//I/O接口工作方式

P0M0=0x00;//P0全为高阻输入

P1M1=0xfe;//P1.0为准双向,其他为高阻输入

P1M0=0x00;

P2M1=0xff;//P2全为高阻输入

P2M0=0x00;

P3M1=0xfc;//P3.0为强推,其他为标准双向

P3M0=0x01;

P4M1=0xff;//P4全为高阻输入

P4M0=0x00;

P4SW=0xff;

LED=1;

LED2=0;

SPEAKER=0;

}

/***************************************************************************************/

voidmain(void){

INIT();//初始化

while(1){

if(KEY37==1){delay1ms(20);if(KEY37==1){MUSIC=20;}}//高音B(37)

if(KEY36==1){delay1ms(20);if(KEY36==1){MUSIC=19;}}

if(KEY35==1){delay1ms(20);if(KEY35==1){MUSIC=18;}}

if(KEY34==1){delay1ms(20);if(KEY34==1){MUSIC=17;}}

if(KEY33==1){delay1ms(20);if(KEY33==1){MUSIC=16;}}

if(KEY32==1){delay1ms(20);if(KEY32==1){MUSIC=15;}}

if(KEY31==1){delay1ms(20);if(KEY31==1){MUSIC=14;}}

//3

if(KEY27==1){delay1ms(20);if(KEY27==1){MUSIC=13;}}

if(KEY26==1){delay1ms(20);if(KEY26==1){MUSIC=12;}}

if(KEY25==1){delay1ms(20);if(KEY25==1){MUSIC=11;}}

if(KEY24==1){delay1ms(20);if(KEY24==1){MUSIC=10;}}

if(KEY23==1){delay1ms(20);if(KEY23==1){MUSIC=9;}}

if(KEY22==1){delay1ms(20);if(KEY22==1){MUSIC=8;}}

if(KEY21==1){delay1ms(20);if(KEY21==1){MUSIC=7;}}

//2

if(KEY17==1){delay1ms(20);if(KEY17==1){MUSIC=6;}}

if(KEY16==1){delay1ms(20);if(KEY16==1){MUSIC=5;}}

if(KEY15==1){delay1ms(20);if(KEY15==1){MUSIC=4;}}

if(KEY14==1){delay1ms(20);if(KEY14==1){MUSIC=3;}}

if(KEY13==1){delay1ms(20);if(KEY13==1){MUSIC=2;}}

if(KEY12==1){delay1ms(20);if(KEY12==1){MUSIC=1;}}

if(KEY11==1){delay1ms(20);if(KEY11==1){MUSIC=0;}}

//1

if(MUSIC!=0xff){//如果有音阶数值(非0XFF时)

STH0=tab[MUSIC]/256;//将音阶的频率值装入定时器T0

STL0=tab[MUSIC]%256;

TR0=1;//启动定时器

MUSIC=0xff;//清除寄存器

}else{//否则

SPEAKER=1;//关扬声器

LED=1;

TR0=0;//关定时器

}

}

}

/***************************************************************************************/

voidt0(void)interrupt1using0{//定时器0产生音频

TH0=STH0;

TL0=STL0;

SPEAKER=~SPEAKER;//取反频率产生音调

LED=SPEAKER;//LED同频闪烁

}

/***************************************************************************************/

/*************************************************************

*杜洋工作室www.DoYoung.net

/*************************************************************/

❺ 单片机做电子琴用蜂鸣器和扬声器有什么区别哪个好

嗡鸣器声音比较单调~有点刺耳……话说本来就是报警什么的……
但是扬声器声音比较小……用运放推比较好~

再者,扬声器发出方波的话听起来和嗡鸣器差不多……如果有DAC的话用运放推一个扬声器不错~否则直接嗡鸣器~

❻ 用单片机做电子琴,复音(合音)怎么实现

解析MIDI电子琴的设计用单片机是如何实现的

摘要:用单片机控制通用MIDI音源模块制作制作出的电子琴,结构简单,可靠性高,并且价格低廉,具有实用的价值。这种电子琴能够支持单音和复音弹奏,如果与高品质的音源芯片连接,音质更可与高档电子琴相媲美。我们在实验过程中,也曾采用手机中通用的音乐芯片构成音源模块,效果不错,价格更低廉,如韩国产的QS6400 等,这些芯片的驱动要复杂一些,需要对芯片进行初始化设置,详细内容可参看国防工业出版社出版的《MIDI原理与开发应用》一书中的相关章节。

关键字:电子琴,单片机,音源板,MD2064

1、电子琴的硬件设计方案
本电子琴包含48个按键键盘,即具有4个8度的音域,单片机AT89C51通过对所弹按键的识别,产生相应的MIDI消息。它支持单音弹奏和最多16个复音弹奏。电子琴结构示意图和电路原理图分别如图1和图2所示。AT89C51作为主控芯片,它使得键盘矩阵模块、通道和音色选择以及串口发送等各功能模块协调工作。48按键行列式键盘矩阵构成MIDI电子琴的键盘扫描输入端,由于89C51的P0口内部没有上拉电阻,故这里采用电阻R14——R21将列线拉至高电平,与六条行线组合完成48个琴键的扫描识别,在图1中,单片机与键盘矩阵间的双箭头线表示单片机在扫描键盘矩阵时,P0口和P2口分别作为输入/输出口使用。人机接口电路则利用了单片机P1口的大部分口线,并通过或门向INT0发出中断请求,该部分电路主要完成MIDI电子琴的通道设置和音色选择等人机交互功能。键盘的弹奏信息以及通道、音色信息经CPU处理后,由串口将标准的MIDI数据发送给MIDI音源及放大器,推动扬声器发声。

图1:MIDI电子琴结构示意图

图2:MIDI电子琴电路图

音源模块采用MD2064 套板,如图3所示。它是一种模块化的MIDI音源产品,由得理电子公司开发,具有标准MIDI接口,该板能接受标准GM MIDI命令进行音乐播放,自带3D, REVERB, CHORUS等效果处理。由于该套板的MIDI 接口采用了光耦合器,电流驱动,故设计了由Q1、Q2等器件组成的驱动电路,使单片机串口数据得以正常传输。在模块的耳机输出端取得信号后,经小功率放大即可推动扬声器发声。

2、电子琴的软件设计特点
该电子琴软件采用模块化设计方法,程序也较简单。软件中各功能模块都由相应的子程序完成,主要包含通道选择模块,音色选择模块,48按键键盘扫描模块,串口发送模块等,其中为了及时完成用户命令,音色选择模块采用了中断服务子程序,可以在演奏中快速响应使用者的请求。
主程序在完成串口初始化、相关变量的初始化以及设置通道后,即进入键盘扫描、发送音符消息流程,为了使按键识别准确可靠,还设置了两个缓冲区BUFF1和BUFF2保存键盘扫描值。主程序流程图如图3。

图3:MIDI电子琴程序的流程图

以下是部分功能模块的程序设计介绍。

2.1 音色选择模块的设计
该模块的功能是使MIDI电子琴能按要求快速改变音色,所以采用了中断服务子程序。当某个音色选择按键压下时,通过或门向单片机的INT0发出中断请求,CPU响应后进入该中断服务子程序。MIDI技术规范规定,标准MIDI含有128种音色,它们的编号范围是0~127,为了能够快速找到所需音色,硬件中设置3个按键,其中2个用于音色编号的单步增加和减小,每次增加或减小1个音色编号,另外一个键用于音色快进,当快进键有效时,每次增加8个音色编号,选择增加8个音色的原因是:标准MIDI的128种音色是按每8个音色一组编排的,共包含16个乐器组。电子琴开机时默认的音色编号是0,即大钢琴音色。

单片机的P1.2口线连接着音色增加按键,P1.3则连接音色减小按键,P1.4连接音色快进键。低电平时按键有效,这三个按键通过与门连接外部中断INT0,以便实时响应音色设置。该外部中断0的中断服务子程序流程图见图4,(图中省去了按键延时去抖动部分):

图4:音色改变子程序流程图

在该子程序中,变量TAMBER中存放当前音色,其值可在0~127间循环,当TAMBER是最大值127时,加1后又变为0;而当TAMBER为0时,减1则变为127;在边界范围加8取模后,刚好为其对应的音色值。

2.2 串口发送模块
串口发送模块主要用于发送产生的MIDI消息,串口采用的模式1,发送的波特率是31.25KBPS。串口通过驱动电路连接MIDI音源,发送MIDI消息。通道号存放在变量CHANNEL中,通过与90H相与,所得值就是当前所设置的通道号。

2.3 键盘扫描模块
本电子琴提供了48个MIDI按键,即4个8度音的音域范围,当按下单个键时,产生一条MIDI消息,当按下多个键值时产生对应键值的多条MIDI音符开消息,当某个键值被释放时,发送对应的音符关消息。这些MIDI消息通过串口发送给MIDI音源,产生MIDI音乐。音乐的时值由按键的时间长度控制,当按键被释放,实时产生MIDI消息,关闭被释放的键值音。

由P0口和P2口的P2.0~P2.5构成行列式键盘,也可继续扩展键盘,例如改为常用的49键或64键。因为支持复音按键,键盘扫描程序必须扫描到行列式键盘的每个键值,扫描所得的键值存放在缓冲区BUFF1或BUFF2中。键盘扫描程序获得的键盘编号范围是0~47,还需将这个键盘编号值转换为MIDI设备能够识别的钢琴键盘编号,这个功能由一个子程序来完成,限于篇幅本文不再详述。键盘扫描子程序流程如图5。

图5:键盘扫描子程序

❼ 51单片机能做电子琴吗

51单片机可以模拟电子琴,当然,音质不是太好,跟MIDI差不多。

阅读全文

与单片机做乐器相关的资料

热点内容
xlsx转换pdf 浏览:94
3dmax挤出命令英语 浏览:903
靶心率的定义和算法 浏览:513
3d模术师app哪里下载 浏览:474
php中文api文档 浏览:458
安卓设计怎么加入输入框 浏览:185
主根服务器什么时候开始 浏览:738
奇门遁甲完整版pdf 浏览:901
app软件怎么用的 浏览:802
电子书pdf购买 浏览:193
浪潮服务器如何做系统 浏览:111
冒险岛img格式加密 浏览:596
我的世界手游如何复制命令 浏览:659
天刀自动弹琴脚本源码 浏览:970
打开其它app微信怎么收不到 浏览:447
安卓游戏耳机怎么戴 浏览:18
不越狱怎么去除app广告 浏览:178
ipadminipdf阅读 浏览:507
文件夹无限制压缩会不会降低内存 浏览:412
荣耀怎样创建文件夹 浏览:631