![基于單片機多功能音樂播放器的設(shè)計_第1頁](http://file4.renrendoc.com/view/b490ae84ea92be2ab5c719df62ae6c42/b490ae84ea92be2ab5c719df62ae6c421.gif)
![基于單片機多功能音樂播放器的設(shè)計_第2頁](http://file4.renrendoc.com/view/b490ae84ea92be2ab5c719df62ae6c42/b490ae84ea92be2ab5c719df62ae6c422.gif)
![基于單片機多功能音樂播放器的設(shè)計_第3頁](http://file4.renrendoc.com/view/b490ae84ea92be2ab5c719df62ae6c42/b490ae84ea92be2ab5c719df62ae6c423.gif)
![基于單片機多功能音樂播放器的設(shè)計_第4頁](http://file4.renrendoc.com/view/b490ae84ea92be2ab5c719df62ae6c42/b490ae84ea92be2ab5c719df62ae6c424.gif)
![基于單片機多功能音樂播放器的設(shè)計_第5頁](http://file4.renrendoc.com/view/b490ae84ea92be2ab5c719df62ae6c42/b490ae84ea92be2ab5c719df62ae6c425.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
多功能音樂播放器的設(shè)計1、設(shè)計任務(wù)(1)可播放多首音樂,且通過按鍵來選擇播放的音樂(2)選擇音樂時,音樂名稱在LCD上顯示(3)音樂播放種類跨度要大一些,播放聲音要清晰電路原理圖⑴、單片機最小系統(tǒng)電路,主要由:時鐘振蕩電路、復(fù)位電路、電源電路等組成。圖2-1-2單片機最小系統(tǒng)電路(2)、矩陣鍵盤輸入電路BBOCO—圖2-1-3矩陣鍵盤輸入電路LCD1--.J1JC,!I-mmoL'JRV1iIxTALIDIPAD2P03/AM35PACMP05/AD5ro&AD6TO決MRSTJJBJETJD0-JALEA圖2-1-4LCD12864顯示電路(4)、蜂鳴器播放電路DDDPAP2 2/A10P2.J/A11PAA2P2WA13AP3CVRXDTpairrxoNOPINT圖2-1-52整體電路原理圖LC01蜂鳴器播放電路圖2-1-6系統(tǒng)仿真效果圖圖2-1-5蜂鳴器播放電路二、軟件設(shè)計整個KEIL工程文件有4個.C文件和1個頭文件組成,具體代碼如下:(1)PlayMusic.c#include<REG52.H>#include"SoundPlay.h"#include<math.h>#defineucharunsignedchar#defineuintunsignedintsbitWAI_INT0=P3A2;//復(fù)位//水平與垂直偏移ucharH_Offset=0;//ucharV_page_Offset=0;externucharKey_Num;externucharcodeName_Of_Song[];externucharKeyScan();//矩陣鍵盤掃描子程序externvoidLCD12864_Initialization();externvoidDisplay_Word(ucharP2,ucharL2,uchar*M)reentrant;externvoidDisplay_char(ucharP1,ucharL1,uchar*M)reentrant;voiddelay(uintK);//延時子程序voidkey_process();//矩陣鍵盤按鍵處理子程序voidDelay1ms(uintcount){unsignedinti,j;for(i=0;i<count;i++)for(j=0;j<120;j++);}//*****************************Music******************************************************//揮著翅膀的女孩unsignedcharcodeMusic_Girl[]={0x17,0x02,0x17,0x03,0x18,0x03,0x19,0x02,0x15,0x03,0x16,0x03,0x17,0x03,0x17,0x03,0x17,0x03,0x18,0x03,0x19,0x02,0x16,0x03,0x17,0x03,0x18,0x02,0x18,0x03,0x17,0x03,0x15,0x02,0x18,0x03,0x17,0x03,0x18,0x02,0x10,0x03,0x15,0x03,0x16,0x02,0x15,0x03,0x16,0x03,0x17,0x02,0x17,0x03,0x18,0x03,0x19,0x02,0x1A,0x03,0x1B,0x03,0x1F,0x03,0x1F,0x03,0x17,0x03,0x18,0x03,0x19,0x02,0x16,0x03,0x17,0x03,0x18,0x03,0x17,0x03,0x18,0x03,0x1F,0x03,0x1F,0x02,0x16,0x03,0x17,0x03,0x18,0x03,0x17,0x03,0x18,0x03,0x20,0x03,0x20,0x02,0x1F,0x03,0x1B,0x03,0x1F,0x66,0x20,0x03,0x21,0x03,0x20,0x03,0x1F,0x03,0x1B,0x03,0x1F,0x66,0x1F,0x03,0x1B,0x03,0x19,0x03,0x19,0x03,0x15,0x03,0x1A,0x66,0x1A,0x03,0x19,0x03,0x15,0x03,0x15,0x03,0x17,0x03,0x16,0x66,0x17,0x04,0x18,0x04,0x18,0x03,0x19,0x03,0x1F,0x03,0x1B,0x03,0x1F,0x66,0x20,0x03,0x21,0x03,0x20,0x03,0x1F,0x03,0x1B,0x03,0x1F,0x66,0x1F,0x03,0x1B,0x03,0x19,0x03,0x19,0x03,0x15,0x03,0x1A,0x66,0x1A,0x03,0x19,0x03,0x19,0x03,0x1F,0x03,0x1B,0x03,0x1F,0x00,0x1A,0x03,0x1A,0x03,0x1A,0x03,0x1B,0x03,0x1B,0x03,0x1A,0x03,0x19,0x03,0x19,0x02,0x17,0x03,0x15,0x17,0x15,0x03,0x16,0x03,0x17,0x03,0x18,0x03,0x17,0x04,0x18,0x0E,0x18,0x03,0x17,0x04,0x18,0x0E,0x18,0x66,0x17,0x03,0x18,0x03,0x17,0x03,0x18,0x03,0x20,0x03,0x20,0x02,0x1F,0x03,0x1B,0x03,0x1F,0x66,0x20,0x03,0x21,0x03,0x20,0x03,0x1F,0x03,0x1B,0x03,0x1F,0x66,0x1F,0x04,0x1B,0x0E,0x1B,0x03,0x19,0x03,0x19,0x03,0x15,0x03,0x1A,0x66,0x1A,0x03,0x19,0x03,0x15,0x03,0x15,0x03,0x17,0x03,0x16,0x66,0x17,0x04,0x18,0x04,0x18,0x03,0x19,0x03,0x1F,0x03,0x1B,0x03,0x1F,0x66,0x20,0x03,0x21,0x03,0x20,0x03,0x1F,0x03,0x1B,0x03,0x1F,0x66,0x1F,0x03,0x1B,0x03,0x19,0x03,0x19,0x03,0x15,0x03,0x1A,0x66,0x1A,0x03,0x19,0x03,0x19,0x03,0x1F,0x03,0x1B,0x03,0x1F,0x00,0x18,0x02,0x18,0x03,0x1A,0x03,0x19,0x0D,0x15,0x03,0x15,0x02,0x18,0x66,0x16,0x02,0x17,0x02,0x15,0x00,0x00,0x00};//同一首歌unsignedcharcodeMusic_Same[]={0x0F,0x01,0x15,0x02,0x16,0x02,0x17,0x66,0x18,0x03,0x17,0x02,0x15,0x02,0x16,0x01,0x15,0x02,0x10,0x02,0x15,0x00,0x0F,0x01,0x15,0x02,0x16,0x02,0x17,0x02,0x17,0x03,0x18,0x03,0x19,0x02,0x15,0x02,0x18,0x66,0x17,0x03,0x19,0x02,0x16,0x03,0x17,0x03,0x16,0x00,0x17,0x01,0x19,0x02,0x1B,0x02,0x1B,0x70,0x1A,0x03,0x1A,0x01,0x19,0x02,0x19,0x03,0x1A,0x03,0x1B,0x02,0x1A,0x0D,0x19,0x03,0x17,0x00,0x18,0x66,0x18,0x03,0x19,0x02,0x1A,0x02,0x19,0x0C,0x18,0x0D,0x17,0x03,0x16,0x01,0x11,0x02,0x11,0x03,0x10,0x03,0x0F,0x0C,0x10,0x02,0x15,0x00,0x1F,0x01,0x1A,0x01,0x18,0x66,0x19,0x03,0x1A,0x01,0x1B,0x02,0x1B,0x03,0x1B,0x03,0x1B,0x0C,0x1A,0x0D,0x19,0x03,0x17,0x00,0x1F,0x01,0x1A,0x01,0x18,0x66,0x19,0x03,0x1A,0x01,0x10,0x02,0x10,0x03,0x10,0x03,0x1A,0x0C,0x18,0x0D,0x17,0x03,0x16,0x00,0x0F,0x01,0x15,0x02,0x16,0x02,0x17,0x70,0x18,0x03,0x17,0x02,0x15,0x03,0x15,0x03,0x16,0x66,0x16,0x03,0x16,0x02,0x16,0x03,0x15,0x03,0x10,0x02,0x10,0x01,0x11,0x01,0x11,0x66,0x10,0x03,0x0F,0x0C,0x1A,0x02,0x19,0x02,0x16,0x03,0x16,0x03,0x18,0x66,0x18,0x03,0x18,0x02,0x17,0x03,0x16,0x03,0x19,0x00,0x00,0x00};//兩只蝴蝶unsignedcharcodeMusic_Two[]={0x17,0x03,0x16,0x03,0x17,0x01,0x16,0x03,0x17,0x03,0x16,0x03,0x15,0x01,0x10,0x03,0x15,0x03,0x16,0x02,0x16,0x0D,0x17,0x03,0x16,0x03,0x15,0x03,0x10,0x03,0x10,0x0E,0x15,0x04,0x0F,0x01,0x17,0x03,0x16,0x03,0x17,0x01,0x16,0x03,0x17,0x03,0x16,0x03,0x15,0x01,0x10,0x03,0x15,0x03,0x16,0x02,0x16,0x0D,0x17,0x03,0x16,0x03,0x15,0x03,0x10,0x03,0x15,0x03,0x16,0x01,0x17,0x03,0x16,0x03,0x17,0x01,0x16,0x03,0x17,0x03,0x16,0x03,0x15,0x01,0x10,0x03,0x15,0x03,0x16,0x02,0x16,0x0D,0x17,0x03,0x16,0x03,0x15,0x03,0x10,0x03,0x10,0x0E,0x15,0x04,0x0F,0x01,0x17,0x03,0x19,0x03,0x19,0x01,0x19,0x03,0x1A,0x03,0x19,0x03,0x17,0x01,0x16,0x03,0x16,0x03,0x16,0x02,0x16,0x0D,0x17,0x03,0x16,0x03,0x15,0x03,0x10,0x03,0x10,0x0D,0x15,0x00,0x19,0x03,0x19,0x03,0x1A,0x03,0x1F,0x03,0x1B,0x03,0x1B,0x03,0x1A,0x03,0x17,0x0D,0x16,0x03,0x16,0x03,0x16,0x0D,0x17,0x01,0x17,0x03,0x17,0x03,0x19,0x03,0x1A,0x02,0x1A,0x02,0x10,0x03,0x17,0x0D,0x16,0x03,0x16,0x01,0x17,0x03,0x19,0x03,0x19,0x03,0x17,0x03,0x19,0x02,0x1F,0x02,0x1B,0x03,0x1A,0x03,0x1A,0x0E,0x1B,0x04,0x17,0x02,0x1A,0x03,0x1A,0x03,0x1A,0x0E,0x1B,0x04,0x1A,0x03,0x19,0x03,0x17,0x03,0x16,0x03,0x17,0x0D,0x16,0x03,0x17,0x03,0x19,0x01,0x19,0x03,0x19,0x03,0x1A,0x03,0x1F,0x03,0x1B,0x03,0x1B,0x03,0x1A,0x03,0x17,0x0D,0x16,0x03,0x16,0x03,0x16,0x03,0x17,0x01,0x17,0x03,0x17,0x03,0x19,0x03,0x1A,0x02,0x1A,0x02,0x10,0x03,0x17,0x0D,0x16,0x03,0x16,0x01,0x17,0x03,0x19,0x03,0x19,0x03,0x17,0x03,0x19,0x03,0x1F,0x02,0x1B,0x03,0x1A,0x03,0x1A,0x0E,0x1B,0x04,0x17,0x02,0x1A,0x03,0x1A,0x03,0x1A,0x0E,0x1B,0x04,0x17,0x16,0x1A,0x03,0x1A,0x03,0x1A,0x0E,0x1B,0x04,0x1A,0x03,0x19,0x03,0x17,0x03,0x16,0x03,0x0F,0x02,0x10,0x03,0x15,0x00,0x00,0x00};//死了都要愛unsignedcharcodeMusic_Three[]={0x17,0x03,0x1F,0x02,0x1F,0x03,0x1F,0x03,0x1F,0x02,0x20,0x03,0x1B,0x03,0x1A,0x03,0x19,0x03,0x16,0x03,0x16,0x03,0x17,0x04,0x17,0x04,0x17,0x15,0x18,0x03,0x18,0x04,0x19,0x0E,0x19,0x03,0x1A,0x03,0x16,0x02,0x16,0x04,0x17,0x0E,0x17,0x03,0x18,0x16,0x1A,0x04,0x1A,0x04,0x1B,0x03,0x1A,0x04,0x1B,0x0E,0x1B,0x01,0x17,0x18,0x17,0x03,0x1F,0x02,0x1F,0x03,0x1F,0x03,0x1F,0x02,0x20,0x03,0x1B,0x03,0x1A,0x03,0x19,0x03,0x16,0x03,0x16,0x02,0x17,0x04,0x17,0x0E,0x17,0x15,0x18,0x02,0x18,0x04,0x19,0x0E,0x19,0x03,0x1A,0x03,0x1F,0x02,0x1B,0x02,0x1A,0x15,0x15,0x02,0x0D,0x02,0x0E,0x02,0x0D,0x03,0x0D,0x03,0x11,0x03,0x11,0x03,0x0D,0x03,0x11,0x03,0x15,0x04,0x15,0x0E,0x1F,0x02,0x10,0x02,0x10,0x03,0x0F,0x03,0x0E,0x66,0x0E,0x03,0x0C,0x03,0x0E,0x03,0x16,0x03,0x15,0x03,0x15,0x67,0x11,0x04,0x11,0x0E,0x1B,0x02,0x15,0x02,0x0D,0x02,0x0E,0x66,0x0D,0x03,0x0D,0x03,0x11,0x03,0x11,0x03,0x0D,0x03,0x11,0x03,0x15,0x04,0x15,0x0E,0x15,0x04,0x17,0x03,0x17,0x04,0x17,0x03,0x18,0x03,0x10,0x02,0x10,0x67,0x0F,0x03,0x10,0x00,0x18,0x0B,0x18,0x03,0x19,0x03,0x18,0x03,0x16,0x03,0x18,0x03,0x17,0x03,0x17,0x15,0x16,0x03,0x16,0x04,0x16,0x0E,0x16,0x04,0x16,0x04,0x17,0x03,0x18,0x04,0x17,0x67,0x16,0x04,0x15,0x67,0x15,0x03,0x15,0x04,0x15,0x0E,0x15,0x04,0x15,0x04,0x17,0x68,0x17,0x0E,0x17,0x03,0x10,0x03,0x15,0x03,0x17,0x03,0x18,0x66,0x18,0x04,0x19,0x04,0x1A,0x03,0x19,0x03,0x18,0x03,0x18,0x03,0x18,0x03,0x17,0x04,0x17,0x0E,0x17,0x02,0x16,0x04,0x15,0x0E,0x15,0x16,0x18,0x03,0x18,0x04,0x19,0x0E,0x19,0x03,0x1A,0x03,0x16,0x03,0x16,0x04,0x17,0x0E,0x17,0x03,0x18,0x17,0x1A,0x03,0x1B,0x03,0x1A,0x03,0x1B,0x16,0x17,0x03,0x1F,0x02,0x1F,0x03,0x1F,0x03,0x1F,0x66,0x20,0x03,0x1B,0x03,0x1A,0x03,0x19,0x03,0x16,0x03,0x16,0x03,0x17,0x04,0x17,0x0E,0x17,0x7B,0x18,0x03,0x18,0x04,0x19,0x0E,0x19,0x03,0x1A,0x03,0x16,0x03,0x16,0x04,0x17,0x0E,0x17,0x04,0x18,0x17,0x1A,0x04,0x1A,0x04,0x1B,0x03,0x1A,0x04,0x1B,0x72,0x17,0x04,0x1F,0x02,0x1F,0x03,0x1F,0x03,0x1F,0x66,0x20,0x03,0x1B,0x03,0x1A,0x03,0x19,0x03,0x16,0x03,0x16,0x03,0x17,0x04,0x17,0x0E,0x17,0x67,0x18,0x03,0x18,0x04,0x19,0x0E,0x19,0x03,0x1A,0x03,0x1F,0x02,0x1B,0x02,0x1A,0x14,0x00,0x00};unsignedcharcodeMusic_End[]={0x00,0x00,0x00,0x00};//**********************************************************************************voidmain(){InitialSound();IT0=1;LCD12864_Initialization();//液晶初始化函數(shù)//以下顯示“環(huán)境工程學(xué)院張小波”Display_Word(V_page_Offset+4,H_Offset,Name_Of_Song+15*32);Display_Word(V_page_Offset+4,16+H_Offset,Name_Of_Song+16*32);Display_Word(V_page_Offset+4,32+H_Offset,Name_Of_Song+19*32);Display_Word(V_page_Offset+4,48+H_Offset,Name_Of_Song+20*32);Display_Word(V_page_Offset+4,80+H_Offset,Name_Of_Song+21*32);Display_Word(V_page_Offset+4,96+H_Offset,Name_Of_Song+22*32);Display_Word(V_page_Offset+4,112+H_Offset,Name_Of_Song+23*32);while(1){key_process();}}/*延時子程序*/voiddelay(uintK){tijfor(i=K;i>0;i--)for(j=120;j>0;j--);}/*按鍵處理子程序*/voidkey_process(){KeyScan();switch(Key_Num){case13:delay(200);if(Key_Num==13){//以下顯示歌曲名:揮著翅膀的女孩Display_Word(V_page_Offset+2,H_Offset,Name_Of_Song+0*32);Display_Word(V_page_Offset+2,16+H_Offset,Name_Of_Song+1*32);Display_Word(V_page_Offset+2,32+H_Offset,Name_Of_Song+2*32);Display_Word(V_page_Offset+2,48+H_Offset,Name_Of_Song+3*32);Display_Word(V_page_Offset+2,64+H_Offset,Name_Of_Song+4*32);Display_Word(V_page_Offset+2,80+H_Offset,Name_Of_Song+5*32);Display_Word(V_page_Offset+2,96+H_Offset,Name_Of_Song+6*32);Play(Music_Girl,0,2,360);}case2:delay(200);if(Key_Num==2)//以下顯示歌曲名:同一首歌Display_Word(V_page_Offset+2,H_Offset,Name_Of_Song+24*32);Display_Word(V_page_Offset+2,16+H_Offset,Name_Of_Song+7*32);Display_Word(V_page_Offset+2,32+H_Offset,Name_Of_Song+8*32);Display_Word(V_page_Offset+2,48+H_Offset,Name_Of_Song+9*32);Display_Word(V_page_Offset+2,64+H_Offset,Name_Of_Song+10*32);Display_Word(V_page_Offset+2,80+H_Offset,Name_Of_Song+24*32);Display_Word(V_page_Offset+2,96+H_Offset,Name_Of_Song+24*32);Play(Music_Same,2,2,500);break;case1:delay(200);if(Key_Num==1){//以下顯示歌曲名:兩只蝴蝶Display_Word(V_page_Offset+2,H_Offset,Name_Of_Song+24*32);Display_Word(V_page_Offset+2,16+H_Offset,Name_Of_Song+11*32);Display_Word(V_page_Offset+2,32+H_Offset,Name_Of_Song+12*32);Display_Word(V_page_Offset+2,48+H_Offset,Name_Of_Song+13*32);Display_Word(V_page_Offset+2,64+H_Offset,Name_Of_Song+14*32);Display_Word(V_page_Offset+2,80+H_Offset,Name_Of_Song+24*32);Display_Word(V_page_Offset+2,96+H_Offset,Name_Of_Song+24*32);Play(Music_Two,0,2,360);/break;case5:delay(200);if(Key_Num==5){//以下顯示歌曲名:死了都要愛Display_Word(V_page_Offset+2,H_Offset,Name_Of_Song+24*32);Display_Word(V_page_Offset+2,16+H_Offset,Name_Of_Song+25*32);Display_Word(V_page_Offset+2,32+H_Offset,Name_Of_Song+26*32);Display_Word(V_page_Offset+2,48+H_Offset,Name_Of_Song+27*32);Display_Word(V_page_Offset+2,64+H_Offset,Name_Of_Song+28*32);Display_Word(V_page_Offset+2,80+H_Offset,Name_Of_Song+29*32);Display_Word(V_page_Offset+2,96+H_Offset,Name_Of_Song+24*32);Play(Music_Three,10,1,300);}/*case5:delay(200);if(Key_Num==5)Play(Music_Three,0,2,360);}break;*/}}voidwaibuzhongduan_INT0()interrupt0{uchari;for(i=0;i<8;i++){Display_Word(V_page_Offset+2,i*16+H_Offset,Name_Of_Song+24*32);}}(2)Keypad.c#include<reg52.H>#defineucharunsignedchar#defineuintunsignedint//掃描鍵盤時發(fā)送到0-3列上的掃描碼ucharKeyboardScanCode[4]={0xef,0xdf,0xbf,0x7f};ucharKey_Num=16;////掃描鍵盤并返回按鍵在鍵盤上的位置系列號//ucharKeyScan(){ucharRow=0,Col=0,Temp;for(Col=0;Col<4;Col++){P1=KeyboardScanCode[Col];Temp=P1&0x0f;if(Temp!=0x0f){switch(Temp){case0x0e:Row=0;break;case0x0d:Row=1;break;case0x0b:Row=2;break;case0x07:Row=3;break;}}returnKey_Num=Row*4+Col;//返回按鍵位置序號0-15}(3)12864顯示驅(qū)動程序.C//LCD_12864.c#include<reg52.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedint#defineLCD_DB_PORTP0//液晶數(shù)據(jù)線端口DB0-DB7#defineLCD_START_ROW0xc0#defineLCD_PAGE0xB8#defineLCD_COL0x40//起始行命令//頁指令//列指令bitReverse_Display=0;//是否反相顯示(白底黑字/黑底白字)//液晶引腳定義sbitDI=P2A0;sbitRW=P2A1;sbitE=P2A2;sbitCS1=P2A3;sbitCS2=P2A4;sbitRST=P2A5;////檢查LCD是否忙//bitLCD_IS_BUSY(){LCDDB_PORT=0xFF;_nop_();_nop_();////向LCD寫入一個字節(jié)(一般用于發(fā)送命令)//voidWrite_Byte_To_LCD(ucharcomand){while(LCD_IS_BUSY());LCD_DB_PORT=0xFF;_nop_();LCD_DB_PORT=comand;_nop_();}////向LCD寫入數(shù)據(jù)//voidWrite_Data_To_LCD(uchardat){while(LCD_IS_BUSY());LCD_DB_PORT=0xFF;_nop_();if(!Reverse_Display)//根據(jù)Reverse_Display決定是否反相顯示LCD_DB_PORT=dat;LCD_DB_PORT=~dat;_nop_();}////初始化LCD//voidLCD12864_Initialization(){CS=1;CS=1;Write_Byte_To_LCD(0x38);Write_Byte_To_LCD(0x3F);Write_Byte_To_LCD(0x01);Write_Byte_To_LCD(0x06);Write_Byte_To_LCD(LCD_START_ROW);}//r所指的數(shù)組中//通用顯示函數(shù)從第P頁第L列顯示W(wǎng)r所指的數(shù)組中//voidLCD_Show(ucharP,ucharL,ucharW,uchar*r)reentrantuchari;L{CS=1;CS=0;Write_Byte_To_LCD(LCD_PAGE+P);Write_Byte_To_LCD(LCD_COL+L);if(L+W<64){for(i=0;i<W;i++)Write_Data_To_LCD(r[i]);}{for(i=0;i<64-L;i++)Write_Data_To_LCD(r[i]);CS=0;CS=1;Write_Byte_To_LCD(LCD_PAGE+P);Write_Byte_To_LCD(LCD_COL);for(i=64-L;i<W;i++)Write_Data_To_LCD(r[i]);}}{CS=0;CS=1;Write_Byte_To_LCD(LCD_PAGE+P);Write_Byte_To_LCD(LCD_COL+L-64);for(i=0;i<W;i++)Write_Data_To_LCD(r[i]);}}////顯示一個8X16點陣字符//voidDisplay_char(ucharP1,ucharL1,uchar*M)reentrant{LCD_Show(P1,L1,8,M);LCD_Show(P1+1,L1,8,M+8);}////顯示一個16X16點陣字符(漢字上半部分與下半部分分別處在相鄰兩頁中)//voidDisplay_Word(ucharP2,ucharL2,uchar*M)reentrant{LCD_Show(P2,L2,16,M);LCD_Show(P2+1,L2,16,M+16);}(4)DotMatrix.c////與本程序有關(guān)的數(shù)字和漢字的點陣編碼DotMatrix.c//#include<reg51.h>#include<string.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedint//年、月、日、星期、時、分、秒等漢字點陣ucharcodeName_Of_Song[]={X)/*--文字0:揮--*/0x08,0x08,0x08,0xFF,0x88,0x48,0x16,0xD2,0x3A,0x16,0xD2,0x12,0x12,0x16,0x02,0x00,0x02,0x42,0x81,0x7F,0x00,0x08,0x09,0x09,0x09,0x09,0xFF,0x09,0x09,0x09,0x08,0x00,/*--文字1:著0x00,0x44,0x54,0x54,0x55,0x56,0xD4,0x7C,0x54,0x54,0x56,0x55,0x54,0x44,0x44,0x00,0x08,0x08,0x04,0x04,0x02,0xFF,0x55,0x55,0x55,0x55,0x55,0x55,0xFF,0x00,0x00,0x00,/*--文字2:翅--*/0x04,0xE4,0x24,0x3F,0x24,0xE4,0x0A,0x32,0x82,0xFE,0x08,0x32,0x82,0xFE,0x00,0x00,0x40,0x21,0x16,0x08,0x16,0x21,0x22,0x49,0x50,0x4F,0x42,0x49,0x50,0x4F,0x40,0x00,/*--文字3:膀0x00,0xFE,0x12,0x12,0xFE,0x00,0x64,0x24,0x2C,0x75,0xA6,0x34,0x2C,0x64,0x24,0x00,0xC0,0x3F,0x41,0x81,0x7F,0x00,0x81,0x61,0x1F,0x05,0x45,0x85,0x7D,0x01,0x00,0x00,/*--文字4:的0x00,0xF8,0x8C,0x8B,0x88,0xF8,0x40,0x30,0x8F,0x08,0x08,0x08,0x08,0xF8,0x00,0x00,0x00,0x7F,0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0x03,0x26,0x40,0x20,0x1F,0x00,0x00,/*--文字5:女0x20,0x20,0x20,0x20,0xE0,0x38,0x27,0x20,0x20,0x20,0xE0,0x20,0x20,0x20,0x20,0x00,0x80,0x80,0x40,0x41,0x22,0x22,0x14,0x0C,0x0C,0x0B,0x10,0x30,0xE0,0x40,0x00,0x00,/*--文字6:孩0x02,0x02,0x02,0xF2,0x8A,0x06,0x44,0x64,0x54,0x4D,0x46,0xC4,0x64,0x04,0x04,0x00,0x01,0x23,0x41,0x3F,0x00,0x48,0x48,0x24,0x24,0x12,0x09,0x0C,0x12,0x61,0x00,0x00,/*--文字7:同0x00,0xFE,0x02,0x12,0x92,0x92,0x92,0x92,0x92,0x92,0x92,0x12,0x02,0xFE,0x00,0x00,0x00,0xFF,0x00,0x00,0x1F,0x08,0x08,0x08,0x08,0x08,0x1F,0x40,0x80,0x7F,0x00,0x00,/*--文字8:一0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*--文字9:首--*/0x04,0x04,0x04,0xE4,0x25,0x26,0x34,0x2C,0x24,0x24,0x26,0xE5,0x04,0x04,0x04,0x00,0x00,0x00,0x00,0x7F,0x25,0x25,0x25,0x25,0x25,0x25,0x25,0x7F,0x00,0x00,0x00,0x00,/*--文字10:歌--*/0x80,0xBA,0xAA,0xAA,0xBA,0x82,0xFE,0xA2,0x90,0x0C,0xEB,0x08,0x28,0x18,0x08,0x00,0x00,0x1E,0x12,0x12,0x5E,0x80,0x7F,0x40,0x20,0x18,0x07,0x08,0x30,0xE0,0x40,0x00,/*--文字11:兩--*/0x02,0xF2,0x12,0x12,0x12,0xFE,0x92,0x12,0x12,0xFE,0x12,0x12,0x12,0xFB,0x12,0x00,0x00,0x7F,0x08,0x04,0x03,0x00,0x10,0x09,0x06,0x01,0x01,0x26,0x40,0x3F,0x00,0x00,/*--文字12:只--*/0x00,0x00,0x00,0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE,0x00,0x00,0x00,0x00,0x40,0x20,0x31,0x18,0x0E,0x04,0x00,0x00,0x00,0x02,0x04,0x19,0x70,0x20,0x00,/*--文字13:蝴--*/0xF0,0x10,0xFF,0x10,0xF0,0x08,0x88,0xFF,0x88,0x08,0x00,0xFE,0x12,0x12,0xFE,0x00,0x43,0x42,0x3F,0x2A,0x73,0x20,0x0F,0x88,0x4F,0x20,0x18,0x07,0x41,0x81,0x7F,0x00,/*--文字14:蝶0x00,0xF8,0x08,0xFF,0x08,0xF8,0x04,0xFE,0x84,0xBF,0xA4,0xA4,0xBF,0x84,0x04,0x00,0x10,0x11,0x11,0x0F,0x09,0x9D,0x4A,0x22,0x1A,0x06,0xFF,0x06,0x0A,0x72,0x22,0x00,/*--文字15:環(huán)0x00,0x22,0x22,0xFE,0x22,0x22,0x00,0x02,0xC2,0x32,0xFE,0x42,0x82,0x02,0x02,0x00,0x00,0x04,0x04,0x03,0x12,0x0A,0x04,0x03,0x00,0x00,0xFF,0x00,0x00,0x03,0x0E,0x00,/*--文字16:境0x20,0x20,0xFE,0x20,0x20,0x00,0x24,0xAC,0xB4,0xA5,0xA6,0xB4,0xAC,0x24,0x00,0x00,0x10,0x30,0x1F,0x08,0x08,0x00,0x80,0x4F,0x3A,0x0A,0x0A,0x7A,0x8F,0x80,0xE0,0x00,/*--文字17:工0x00,0x00,0x02,0x02,0x02,0x02,0x02,0xFE,0x02,0x02,0x02,0x02,0x02,0x02,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,/*--文字18:程--*/0x10,0x12,0xD2,0xFE,0x91,0x11,0x80,0xBF,0xA1,0xA1,0xA1,0xA1,0xBF,0x80,0x00,0x00,0x04,0x03,0x00,0xFF,0x00,0x41,0x44,0x44,0x44,0x7F,0x44,0x44,0x44,0x44,0x40,0x00,/*--文字19:學(xué)0x40,0x30,0x10,0x12,0x5C,0x54,0x50,0x51,0x5E,0xD4,0x50,0x18,0x57,0x32,0x10,0x00,0x00,0x02,0x02,0x02,0x02,0x02,0x42,0x82,0x7F,0x02,0x02,0x02,0x02,0x02,0x02,0x00,/*--文字20:院0xFE,0x02,0x32,0x4A,0x86,0x0C,0x24,0x24,0x25,0x26,0x24,0x24,0x24,0x0C,0x04,0x00,0xFF,0x00,0x02,0x04,0x83,0x41,0x31,0x0F,0x01,0x01,0x7F,0x81,0x81,0x81,0xF1,0x00,/*--文字24:--*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*--文字25:死--*/0x00,0x02,0xC2,0xB2,0x1E,0x12,0x92,0x72,0x02,0xFE,0x82,0x42,0x42,0x22,0x22,0x00,0x42,0x41,0x20,0x20,0x13,0x0C,0x03,0x00,0x00,0x3F,0x40,0x40,0x40,0x40,0x78,0x00,/*--文字26:了--*/0x00,0x02,0x02,0x02,0x02,0x02,0x02,0xF2,0x12,0x0A,0x0A,0x06,0x06,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*--文字27:都--*/0x20,0x24,0x24,0xA4,0x7F,0x24,0x34,0x28,0x24,0x00,0xFE,0x22,0x52,0x8A,0x06,0x00,0x04,0x02,0x7F,0x25,0x25,0x25,0x25,0x7F,0x00,0x00,0xFF,0x08,0x08,0x10,0x0F,0x00,/*--文字28:要--*/0x02,0x02,0xFA,0x4A,0x4A,0xFE,0x4A,0x4A,0x4A,0x7E,0x4A,0x4A,0xFA,0x02,0x02,0x00,0x02,0x82,0x82,0x42,0x4E,0x2B,0x2A,0x12,0x12,0x12,0x2A,0x26,0xC2,0x42,0x02,0x00,/*--文字29:愛--*/0x00,0x40,0xB2,0x96,0x9A,0x92,0xF6,0x9A,0x93,0x91,0x99,0x97,0x91,0x90,0x30,0x00,0x40,0x20,0xA0,0x90,0x4C,0x47,0x2A,0x2A,0x12,0x1A,0x26,0x22,0x40,0xC0,0x40,0x00,ucharcodeDigits[]={0x00,0x00,0xF0,0xF8,0x08,0x68,0xF8,0xF0,0x00,0x00,0x07,0x0F,0x0B,0x08,0x0F,0x07,//00x00,0x20,0x20,0x30,0xF8,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x0F,0x00,0x00,//120x00,0x30,0x38,0x08,0x88,0xF8,0x70,0x00,0x00,0x0C,0x0E,0x0B,0x09,0x08,0x08,0x00,//20x00,0x30,0x38,0x88,0x88,0xF8,0x70,0x00,0x00,0x06,0x0E,0x08,0x08,0x0F,0x07,0x00,//30x00,0x00,0xF8,0xF8,0x00,0xE0,0xE0,0x00,0x00,0x03,0x03,0x02,0x02,0x0F,0x0F,0x02,//40x00,0xF8,0xF8,0x88,0x88,0x88,0x08,0x00,0x00,0x08,0x08,0x08,0x0C,0x07,0x03,0x00,//50x00,0xC0,0xE0,0x78,0x58,0xC8,0x80,0x00,0x00,0x07,0x0F,0x08,0x08,0x0F,0x07,0x00,//60x00,0x08,0x08,0x88,0xE8,0x78,0x18,0x00,0x00,0x00,0x0E,0x0F,0x01,0x00,0x00,0x00,//70x00,0x70,0xF8,0xC8,0x88,0xF8,0x70,0x00,0x00,0x07,0x0F,0x08,0x09,0x0F,0x07,0x00,//80x00,0xF0,0xF8,0x08,0x08,0xF8,0xF0,0x00,0x00,0x00,0x09,0x0D,0x0F,0x03,0x01,0x00,//9(5)SOUNDPLAY.H/說明**************************************************************************曲譜存貯格式unsignedcharcodeMusicName{音高,音長,音高,音長,0,0};末尾:0,0表示結(jié)束(Important)音高由三位數(shù)字組成:個位是表示1~7這七個音符十位是表示音符所在的音區(qū):1-低音,2-中音,3-高音;百位表示這個音符是否要升半音:0-不升,1-升半音。音長最多由三位數(shù)字組成:個位表示音符的時值,其對應(yīng)關(guān)系是:|數(shù)值(n):|0|1|2|3|4|5|60-普通,1-連音,2-頓音調(diào)用演奏子程序的格式|調(diào)號(0-11)|升降八度|演奏速度(1-12000)::要播放的樂曲指針,結(jié)尾以(0,0)結(jié)束;:是指樂曲升多少個半音演奏;:1:降八度,2:不升不降,3:升八度;值越大速度越快;***************************************************************************/#ifndef__SOUNDPLAY_H_REVISION_FIRST__#define__SOUNDPLAY_H_REVISION_FIRST__〃**************************************************************************#defineSYSTEM_OSC#defineSOUND_SPACE12000000//定義晶振頻率12000000HZ4/5//定義普通音符演奏的長度分率,//每4分音符間隔#defineucharunsignedchar#defineuintunsignedintsbitBeeplO=P3^7;uintcodeFreTab[12]ucharcodeSignTab[7]率表中的位置ucharcodeLengthTab[7]={//定義輸出管腳={262,277,294,311,330,349,369,392,415,440,466,494};//原始頻率表={0,2,4,5,7,9,11};
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度辦公室裝修合同樣本:辦公空間綠化與景觀設(shè)計
- 電纜橋架購銷合同
- 數(shù)據(jù)分析技術(shù)在商業(yè)決策中的應(yīng)用研究
- 招投標與合同管理第六章
- 三農(nóng)網(wǎng)信息化實施與管理手冊
- 外架工程勞務(wù)分包合同
- 農(nóng)業(yè)現(xiàn)代化生產(chǎn)作業(yè)指導(dǎo)書
- 公司個人租車合同
- 員工培訓(xùn)保密協(xié)議合同書
- 資料外包協(xié)議書
- 合同工期延期補充協(xié)議書
- 2024年廣西電力行業(yè)職工職業(yè)技能大賽電氣值班員(光伏發(fā)電運維)理論試題庫(含答案)
- 燃氣管網(wǎng)改造項目資金申請報告-超長期特別國債投資專項
- DL∕ T 969-2005 變電站運行導(dǎo)則
- 應(yīng)急小組成立通知
- 關(guān)于如何做好清單招標控制價的幾點建議
- 地鐵前期工程交通疏解施工方案
- 小學(xué)升初中六年級數(shù)學(xué)考試試卷含答案(達標題)
- 2024年長沙航空職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫完整
- DBJ33-T 1009-2023 園林植物種植與養(yǎng)護技術(shù)規(guī)程
- 攪拌設(shè)備行業(yè)發(fā)展趨勢分析報告
評論
0/150
提交評論