freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)音樂播放器課程設(shè)計(存儲版)

2025-07-22 17:29上一頁面

下一頁面
  

【正文】 人們生活水平的提高及對音樂的喜愛,對音樂播放器的品質(zhì),功能,品種等提出了越來越多的要求,表現(xiàn)在對控制系統(tǒng)性能、可靠性等要求越來越高。例如,就市場上的mp3目前的功能越來越強(qiáng)大體積卻越來越小,價格也逐漸便宜,被大多數(shù)人所能接受。20:接地腳。另外一種是外部時鐘方式,即將XTAL1接地,外部時鐘信號從XTAL2腳輸入。外部擴(kuò)充存儲器時,作數(shù)據(jù)總線(D0~D7)2)。 2)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。音符的節(jié)拍我們可以用定時器T0來控制,送入不同的初值,就可以產(chǎn)生不同的定時時間。1要產(chǎn)生音頻脈沖,只要算出某一音頻的周期(1/頻率),然后將此周期除以2,即為半周期時間。5 每個音符使用1個音節(jié),字節(jié)的高四位代表音符的高低,低四位代表音符的節(jié)拍。unsigned char code tab2[]=TWO BUFFER。unsigned char Sound_Temp_TH0,Sound_Temp_TL0。 ET0 = 1。}//**************************************************************************void Play(unsigned char *Sound,unsigned char Signature,unsigned Octachord,unsigned int Speed){unsigned int NewFreTab[12]。NewFreTab[i] = FreTab[j]*2。 Length = Sound[Point+1]。 //計算出高低音 SH=Tone/100。TL0 = Sound_Temp_TL0 + 12。 else LDiv1=LDiv/2。TH1 = Sound_Temp_TH1。TH1 = Sound_Temp_TH1。sbit LCDRW=P3^6。 LCDE=1。 //最后執(zhí)行命令。 //再輸出數(shù)據(jù)。WriteCMD(0x01)。unsigned char key。y++) {WriteData(name[y])。 }for(x=0。 temp=P1。 temp=P1。 case 0x0d: key=1+4*m。 Sound_Temp_TH0=tab[key]/256。 mydelay(3)。 } for(x=0。 0x0f。for(y=0。z++) { WriteData(tab2[z])。 } }}設(shè)計心得:在做次設(shè)計中,感覺比平時上課學(xué)習(xí)了很多東西,一方面自己在獨立思考和動手的能力上有了一定的提高。專周實驗完后,感覺到平時掌握的東西實在太少了,要真正實現(xiàn)學(xué)有所成、學(xué)有所用還有很長的路要走。微型計算機(jī)控制技術(shù)。北京:清華大學(xué)出版社,2005?,F(xiàn)代微機(jī)原理與接口技術(shù)。最后通過自己仔細(xì)查資料,一點一點的就慢慢懂了。 } Play(Music_Two,0,3,360)。 for(z=0。 } if(P2==0x7f) {//*********************************//**********顯示歌曲模塊********* WriteCMD(0x01)。 while(temp!=0x0f) { temp=P1。z++) { WriteData(tab4[z])。y11。 } temp=P1。 switch(temp) {case 0x0e: key=0+4*m。j0。while(1) {//********************鍵盤掃描************* P1=0xff。z++) { WriteData(num[z])。 for(y=0。y)。 WriteCMD(0x0f)。 LCDRW=0。 Delay()。}void WriteCMD(uchar Command) { Delay()。 } BeepIO = 0。i0。i0。 if(XG!=1) if(XG==0) //算出普通音符的演奏長度 if (SLen=4) LDiv1=LDivLDiv4。Sound_Temp_TL0 = Temp_T%256。while(Point SoundLength) {SL=Tone%10。}Point = 0。i++) // 根據(jù)調(diào)號及升降八度來生成新的頻率表 {j = i + Signature。 TH0 = Sound_Temp_TH0。 TL1 = Sound_Temp_TL1。 //原始頻率表unsigned char code SignTab[7] = { 0,2,4,5,7,9,11 }。unsigned char code num[]=200711111111 。例:設(shè)K=65536,F=1000000=Fi=1 MHZ。此外,結(jié)束符和體止符可以分別用代碼00H和FFH來表示,若查表結(jié)果為00H,則表示曲子終了;若查表結(jié)果為FFH,則產(chǎn)生相應(yīng)的停頓效果。阻抗R=1/(j*w*c)—7961。第5腳:R/W為讀寫信號線,高電平時進(jìn)行讀操作,低電平時進(jìn)行寫操作。~;~;~;~1.18:時鐘XTAL2腳,片內(nèi)振蕩電路的輸出端。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89S52是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。而最為重要的控制部分一般是由單片機(jī)來執(zhí)行完成的,這就必將導(dǎo)致和促進(jìn)單片機(jī)在音樂領(lǐng)域應(yīng)用的發(fā)展。家用音樂播放器產(chǎn)品及其它有關(guān)消費電器產(chǎn)品都是一些開環(huán)或閉環(huán)控制系統(tǒng),都由核心控制部分,執(zhí)行部分與人機(jī)界面三部分組成。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS51指令集和輸出管腳相兼容。 每個端口有8條線,共計32條I/O線。3. 第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。其電容C2角頻率w=2*pi*feq 即為 —125600。我們將每一音符的時間常數(shù)和其相應(yīng)的節(jié)拍常數(shù)作為一組,按順序?qū)非械乃谐?shù)排列成一個表,然后由查表程序依次取出,產(chǎn)生音符并控制節(jié)奏,就可以實現(xiàn)演奏效果。 Fr:要產(chǎn)生的頻率;4 其記數(shù)值的求法如:T=65536N=65536Fi/2/Fr。unsigned char code name[]=1234567 。unsigned int code FreTab[12] = { 262,277,294,311,330,349,369,392,415,440,466,494 }。 // 計算TH1應(yīng)裝入的初值 TH1 = Sound_Temp_TH1。}void BeepTimer0(void) interrupt 1 //音符發(fā)生中斷{BeepIO = !BeepIO。i12。 while(Sound[SoundLength] != 0x00) //計算歌曲長度 {SoundLength+=2。TR1 = 1。//計算計數(shù)器初值 Sound_Temp_TH0 = Temp_T/256。 //算出連音音符演奏的長度(多少個10ms) if (FD==1) LDiv=LDiv+LDiv/2。for(i=LDiv1。 for(i=LDiv2。
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1