『壹』 求80C51單片機基礎視頻教程
http://xzl-841014.blog.xunlei.com/
這裡面有你要的郭天祥51單片機視頻教程,
建議看郭天祥的《單片機 十天征服你》
以下是他視內頻中的原話:
學單容片機需要的基礎
1與以前所學的知識關聯很少;
2隻需要掌握很基本的數電模電知識,如二進制、十進制、十六進制之間的轉換,與、或、非邏輯關系等;
3對各種器件的概念基本上是從0開始;
4如果要用C語言編程,需具備簡單的C語言基礎;
所以,所有人都站在了同一起跑線上;
『貳』 51單片機c視頻教程
郭天祥的視頻教程,迅雷資源裡面就有。郭天祥的視頻很好,對51講的很詳專細,你自己再完成他屬布置的作業,系統的學習下來,51可以說學的差不多了。非常贊同樓上的話,要發到你的郵箱里很不現實。一個多G的東西,上傳就要好久,你下的話還是要很長時間。自己去迅雷裡面下。
『叄』 求51單片機喇叭播放音樂的教程 C語言
對不起哈 和我的專業不對口
『肆』 求51自學網51單片機的視頻教程求連接
懂事電子設計 Vgz 學習單片機。
『伍』 求51單片機視頻教程
網上很多,在網路輸入 51單片機視頻教程 最前面的都是網上推薦教程, 再輸入 慧凈單片機 有更多教程了。
『陸』 求視頻:我想做個基於51的音樂播放器,怎樣實現音樂存儲和調用功能
這個來51音樂播放器很少有源視頻教程!
1、一般採取的手段是讀取內存卡裡面的音樂數據,通過匯流排協議,讀入到單片機的內存中處理,所以一般進行的是讀操作,讀內存卡哪個段的內容進行指令切換
2、調用就談不上了,單片機只是不停讀數據,它實際是沒有辦法存儲太多的數據的,存儲也談不上,音樂都是事先放到內存卡裡面,單片機一共才幾百B的內存,運算數據就夠了,即使是裡面的flash連半首歌都放不了!、
希望可以幫到你,如果滿意請採納!
『柒』 怎麼用單片機播放有人唱的音樂
我知道有幾種方法。一是用單片機通過數模轉換的方法播放音樂文件。如WAV格式文件。但可版能要涉及WAV格式權和讀取外部數據(如SD卡)等問題。二是利用mp3播放專用單片機,如AT89C51SND1C來播放mp3格式的文件。三是可以利用音樂錄放晶元來實現,如ISD4004系列單片語音錄放電路或ZY1420B晶元來做。用單片機來控制ISD4004來錄取或播放各種音樂。第三種方法比較容易實現,只要掌握了ISD4004的錄放指令即可,語音數據的存儲都存在該晶元內。不過我沒實際做過,不能提供太具體的方法。你可以去查一下。
『捌』 求51單片機蜂鳴器播放音樂的教程 C語言
這是我學校電子設計時做的,可以彈琴,也有幾首歌在裡面。。你應該看得懂#include <reg52.h> #define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
sbit BEEP=P2^0; //喇叭輸出腳uchar th0_f; //在中斷中裝載的T0的值高8位
uchar tl0_f; //在中斷中裝載的T0的值低8位
uchar key;/*------------------------------------------------
函數聲明
------------------------------------------------*/
uchar keyscan(void);//鍵盤掃描程序
void delay(uint i); //延時子程序/*-------- T0的值,及輸出頻率對照表 --------------*/
uchar code freq[36*2]={
0xA9,0xEF, //0x3F,0XEE,//00220HZ ,1 //0
0x93,0xF0, //0X3D,0XEF,//00233HZ ,1#
0x73,0xF1, //0X30,0XF0,//00247HZ ,2
0x49,0xF2, //0X18,0XF1,//00262HZ ,2#
0x07,0xF3, //0XE6,0XF1,//00277HZ ,3
0xC8,0xF3, //0XB7,0XF2,//00294HZ ,4
0x73,0xF4, //0X71,0XF3,//00311HZ ,4#
0x1E,0xF5, //0X2A,0XF4,//00330HZ ,5
0xB6,0xF5, //0XCF,0XF4,//00349HZ ,5#
0x4C,0xF6, //0X72,0XF5,//00370HZ ,6
0xD7,0xF6, //0X09,0XF6,//00392HZ ,6#
0x5A,0xF7, //0X97,0XF6,//00415HZ ,7
0xD8,0xF7, //0X20,0XF7,//00440HZ 1 //12
0x4D,0xF8, //0X9F,0XF7,//00466HZ 1# //13
0xBD,0xF8, //0X18,0XF8,//00494HZ 2 //14
0x24,0xF9, //0X88,0XF8,//00523HZ 2# //15
0x87,0xF9, //0XF3,0XF8,//00554HZ 3 //16
0xE4,0xF9, //0X59,0XF9,//00587HZ 4 //17
0x3D,0xFA, //0X05,0XFA,//00622HZ 4# //18
0x90,0xFA, //0X13,0XFA,//00659HZ 5 //19
0xDE,0xFA, //0X66,0XFA,//00698HZ 5# //20
0x29,0xFB, //0XB9,0XFA,//00740HZ 6 //21
0x6F,0xFB, //0X05,0XFB,//00784HZ 6# //22
0xB1,0xFB, //0X4D,0XFB,//00831HZ 7 //23
0xEF,0xFB, //0X90,0XFB,//00880HZ `1
0x2A,0xFC, //0XD0,0XFB,//00932HZ `1#
0x62,0xFC, //0X0C,0XFC,//00988HZ `2
0x95,0xFC, //0X44,0XFC,//01046HZ `2#
0xC7,0xFC, //0X7B,0XFC,//01109HZ `3
0xF6,0xFC, //0XAD,0XFC,//01175HZ `4
0x22,0xFD, //0XDD,0XFC,//01244HZ `4#
0x4B,0xFD, //0X0A,0XFD,//01318HZ `5
0x73,0xFD, //0X35,0XFD,//01397HZ `5#
0x98,0xFD, //0X5D,0XFD,//01480HZ `6
0xBB,0xFD, //0X83,0XFD,//01568HZ `6#
0xDC,0xFD, //0XA6,0XFD,//01661HZ `7 //35
};//定時中斷0,用於產生唱歌頻率
timer0() interrupt 1
{
TL0=tl0_f;TH0=th0_f; //調入預定時值
BEEP=~BEEP; //取反音樂輸出IO
}//音樂符號串解釋函數
//入口:要解釋的音樂符號串,輸出的音調串,輸出的時長串
changedata(uchar *song,uchar *diao,uchar *jie)
{
uchar i,i1,j;
char gaodi; //高低+/-12音階
uchar banyin;//有沒有半個升音階
uchar yinchang;//音長
uchar code jie7[8]={0,12,14,16,17,19,21,23}; //C調的7個值
*diao=*song;
for(i=0,i1=0;;)
{
gaodi=0; //高低=0
banyin=0;//半音=0
yinchang=4;//音長1拍
if((*(song+i)=='|') || (*(song+i)==' ')) i++;
//拍子間隔和一個空格過濾
switch(*(song+i))
{
case ',': gaodi=-12;i++;//低音
break;
case '`': gaodi=12;i++; //高音
break;
}
if(*(song+i)==0) //遇到0結束
{
*(diao+i1)=0; //加入結束標志0
*(jie+i1)=0;
return;
}
j=*(song+i)-0x30; i++; //取出基準音
j=jie7[j]+gaodi; //加上高低音
yinc: switch(*(song+i))
{
case '#': //有半音j加一個音階
i++;j++;
goto yinc;
case '-': //有一個音節加長
yinchang+=4;
i++;
goto yinc;
case '_': //有一個音節縮短
yinchang/=2;
i++;
goto yinc;
case '.': //有一個加半拍
yinchang=yinchang+yinchang/2;
i++;
goto yinc;
}
*(diao+i1)=j; //記錄音符
*(jie+i1)=yinchang; //記錄音長
i1++;
}
}//奏樂函數
//入口:要演奏的音樂符號串
void play(uchar *songdata)
{
uchar i,c,j=0;
uint n;
uchar diaodata[48]; //音調緩沖
uchar jiedata[48]; //音長緩沖
changedata(songdata,diaodata,jiedata); //解釋音樂符號串
TR0=1;
for(i=0;diaodata[i]!=0;i++) //逐個符號演奏
{
tl0_f=freq[diaodata[i]*2]; //取出對應的定時值送給T0
th0_f=freq[diaodata[i]*2+1];
for(c=0;c<jiedata[i];c++) //按照音長延時
{ key = keyscan();
for(n=0;n<29500;n++); // 29500
if(key != 0xff)//((!K1)||(!K2)||(!K3)||(!K4))//發現按鍵,立即退出播放
{
TR0=0;
return;
}
}
TR0=0;
for(n=0;n<460;n++); //460音符間延時
TR0=1;
}
TR0=0;
}//一分錢
uchar code yifenqian[]={
"5`1|6_`1_5|3_5_2_3_|5-|"
"3_5_6_`1_|5_6_5_3_|1.3__|2-|"
"3_2_1_2_|3-|6_5_3_5_|6-|"
"5_`1_6_5_|3_5_2|5_2_3_2_|1-|"
}; //世上只有媽媽好
uchar code mamahao[]={
"6.5_35|`16_5_6-|35_6_53_2_|1_,6_5_3_2-|"
"2.3_55_6_|321-|5.3_2_1_,6_1_|,5--"
};
//找朋友
uchar code zhaopengyou[]={ "5_6_5_6_|5_6_5|5_`1_7_6_|5 3|"
"5_5_3_4_|5_5_3|1_4_3_2_|1_2_1|"
};
//茉莉花
uchar code molihua[]={"33_5_6_`1_`1_6_|55_6_5-|33_5_6_`1_`1_6_|55_6_5-|"
"5553_5_|665-|32_3_53_2_|11_2_1|"
//"3_2_1_3_2.3_|56_`1_5-|23_5_2_3_1_,6_|,5-,61|"
//"2.3_1_2-1_,6_|,5--"
};
//新年好
uchar code xinnianhao[]={
"1_1_1 ,5|3_3_3 1|1_3_5 5|4_3_2-|"
"2_3_4-|3_2_3 1|1_3_2 ,5|,7_2_1-|"
};
//小星星
uchar code xingxing[]={
"1155|665-|4433|221-|"
"5544|332-|5544|332-|"
"1155|665-|4433|221-|"
};
//外婆的澎湖灣
uchar code waipodephw[]={
"3_5_5_5_6_`1_6_5_|`1_`1_`1_6_5-|"
"`3_`3_`3_`3_`4_`3_`2_`1_|`2_`2_`2_`3_`2-|"
"`3_`3_`3_`3_`4_`3_`2_`1_|6_`1_`1_6_5-|"
};
}
『玖』 怎樣用51單片機實現音樂播放
單片機的強項是控制,不能解碼音頻文件,而且不同的音頻編碼格式不一樣,不是普通的程序就能解決的。應該用專門的音頻解碼晶元。