单片机能否发出do re mi fa的声音

作者&投稿:方储 (若有异议请与网页底部的电邮联系)
求钢琴音阶的声音do re mi fa so la si do,单独的音频mp3文件~

已发送请查收

已发送,请查收,邮件中有说明。
信件被退回来了,邮箱是不存再的,发了一个自己做的钢琴八度音阶,两种速度,如果你真的想要,给个可以收到的邮箱吧。

可以的。
#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int

uchar i=0;
sbit SPK = P3^4;
sbit K1 = P1^0;
uchar code HI_LIST[]=
{
0,266,229,232,233,236,238,240,241,242,244,245,246,247,248
};
uchar code LO_LIST[]=
{
0,4,13,10,20,3,8,6,2,23,5,26,1,4,3
};

void T0_INT() interrupt 1
{
TL0 = LO_LIST[i];
TH0 = HI_LIST[i];
SPK = !SPK;
}

void DelayMS(uint ms)
{
uchar t;
while(ms--)
{
for(t=0;t<120;t++);
}
}

void main()
{
IE = 0x82;
TMOD = 0x00;
while(1)
{
while(K1==1);
while(K1==0);
for(i=1;i<15;i++)
{
TR0 = 1;
DelayMS(500);
TR0 = 0;
DelayMS(50);
}
}
}
还比如下面这个程序,可以唱一段:

用一般的蜂鸣器就可以,但是音效不太好,控制蜂鸣器发声的频率就可以打出不同音调的声音了~

加蜂鸣器当然可以、、、、、


赤坎区17743564229: 单片机能否发出do re mi fa的声音 -
马柄紫杉: 用一般的蜂鸣器就可以,但是音效不太好,控制蜂鸣器发声的频率就可以打出不同音调的声音了~

赤坎区17743564229: 认为自己单片机在控制蜂鸣器发声方面够硬的请进
马柄紫杉: 蜂鸣器是不能发出do,re,mi,fa,so,la,xi 这七个自然音的,因为它只有一个工作频率,你说的应该是和蜂鸣器长得一样的小喇叭,如果想要用单片机写曲子,只控制好那7个音阶和节拍的配合就够了,把相应的乐谱输入进去就可以了,它是可以的,...

赤坎区17743564229: 求一c语言程序 单片机独立按键控制蜂鸣器发出do,re,mi,fa,so,la,si音符 -
马柄紫杉: 呵呵~初学者没事,好好学就能学好.留个邮箱地址,我给你发一个资料,资料很有用,你看了就知道.好了,现在回过头来说下这个问题.首先你要明白一个问题,那就是不同的频率对应不同的声音,你不要想太细了,想为什么同是方波会不...

赤坎区17743564229: 单片机唱歌代码怎么编比如,do,re,mi ,fa,so ,la,xi, -
马柄紫杉: do re mi fa so la xi do,,,8个音的频率f1 蜂鸣器中断号0x07/int 21h 延长时间t(ms)

赤坎区17743564229: 单片机如可否直接将数字信号发射出去 -
马柄紫杉: 完全可以,因为可以用单片机的I/O口模拟某种调制信号,用一个简单的单管发射电路就可以发射出去.网上可以找到无限MIC电路,发射的信号由FM收音机接收或其他接收机接收.只是你需要了解脉码调制方式,比如FSK,DTMF等等

赤坎区17743564229: 单片机如何通过串口发送以下指令的? -
马柄紫杉: 单片机是的缓冲区是一个字节的.所以有两种思路. 一种是判断发送完成的标志位,一位一位的写进去. 一种是自己建立一个缓冲区,把要发送的数据复制到缓冲区,数据长度也写进去.然后通过串口中断来发送缓冲区的数据.如果写入的长度不为零,则发送该长度的字节.

赤坎区17743564229: 用八个按钮控制p1端口使电子琴发出do,re,mi,fa,so,la,si,deo(用单片机汇编语言编程 用蜂鸣器发生 -
马柄紫杉: 这是以前写的,用的是P0口.T0H EQU 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 ;控制高中低音区 ...

赤坎区17743564229: 怎样用C程序让单片机发出哆来咪发嗖拉西 -
马柄紫杉: /*************************** ****让蜂鸣器唱多拉米发*************/#include//51单片机头文件 sbit beep = P1^7; char type,temp1; int temp0=1746; int code time[]={ 1746, 1552, 1396, 1309, 1164, 1047, 931, 873};//蜂鸣器不同频率设置 void main() { ...

赤坎区17743564229: 单片机串口通信,首先电脑给单片机发送一个字符串hello,单片机收到后,led全亮,然后, -
马柄紫杉: //11.0592MHz 9600波特率 #include <reg51.h>#define LED P0//定义IO口unsigned char buff[5];//定义字符缓冲区void InitUART(void)//初始化串口 {TMOD = 0x20;SCON = 0x50;TH1 = 0xFD;TL1 = TH1;PCON = 0x00;EA = 1;ES = 1;TR1 ...

赤坎区17743564229: 单片机PCA和PWM的问题 -
马柄紫杉: 请你先搞清一个问题.PCA指的是单片机的一个功能模块(以我知道的,应该是SST的51单片机上的或C8051F上的),然后PWM指的的是脉冲宽度调制,是一种技术. 使用单片机的PCA模块可以实现PWM功能,比如要输出一个固定的频率,...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网