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

正文內(nèi)容

單片機(jī)課程設(shè)計-基于stc89c52rc單片機(jī)的音樂播放器設(shè)計-閱讀頁

2024-11-08 01:33本頁面
  

【正文】 0X46,0X42,0X74,0X42,0X32, 0X36,0X42,0X58, 0X82,0X72,0X62,0X52,0X46,0X32, 0X3C,0X12,0XB2, 0X36,0X52,0X42,0X32,0X11,0XC1,0XB2, 0XC6,0X12,0XC4,0X12,0XC2, 0X76,0XA2,0X82,0X72,0X51,0X41,0X32, 0X48,0X02,0X42,0X52,0X62, 0X76,0X82,0X74,0X82,0X72, 0X56,0X41,0X38,0X32,0X22, 0X16,0XC2,0X72,0X52,0X42,0X42, 0X3C,0X04,0X04,0X04,0X04, 0xFF}。 void delay1() { unsigned int m,n。m0。n0。 } //上一首歌曲; void last() { delay1()。P2=0x90。P2=0xb7。P2=0x19。P2=0x91。P2=0xb4。P2=0xd0。P2=0x50。P2=0x97。P2=0x10。 if(b==1) { if (song==song1) {song=song2。} else if (song==song2) {song=song3。} else if (song==song3) {song=song4。} else if (song==song4) {song=song5。} else if (song==song5) {song=song6。} else if (song==song6){song=song7。} else if (song==song7){song=song8。} else if (song==song8){song=song9。} else if (song==song9){song=song1。} } } void main() { TMOD=0x01。 //EA=1。 song=song2。 while(1) { j=0。 break。 break。} while(e==0)。0x0F。 //song(song+j)[]中所放的每個字節(jié) //前 4 位乘 2 表示為音符頻率在數(shù)組 yin[]中的位置 TH0=yin[2*l]。 TR0=1。amp。SPK=1。i0。 } TR0=0。 } } } //回 main /*每個音符的發(fā)聲 */ void timer0() interrupt 1 using 1 { TH0=yin[2*l]。 SPK = ~SPK。 for(c=150。c) for(d=100。d)。 D3: MOV R3,248 DJNZ R3,$ DJNZ R4,D3 DJNZ R7,D2 DJNZ R5,DELAY // 節(jié)拍值放在 R5,決定節(jié)拍 RET 建立音樂的步驟: 1. 先把樂譜的音符找出,然后建立 T 值表的順序。 3. 簡譜碼(音符)為高位,節(jié)拍為(節(jié)拍數(shù))為低 4 位,音符節(jié)拍碼放在程序的 “TABLE”處。如果 1 拍為 秒, 1/4 拍是 秒,只要設(shè)定延遲時間就可求得節(jié)拍的時間 。所以只要求得 1/4 拍的 DEALY時間,其余的節(jié)拍就是它的倍數(shù) . 簡 譜 發(fā) 音 簡 譜 碼 T 值 5 低音 SO 1 64260 6 低音 LA 2 64400 7 低音 TI 3 64524 1 中音 DO 4 64580 2 中音 RE 5 64684 3 中音 MI 3 64777 4 中音 FA 7 64820 5 中音 SO 8 64898 6 中音 LA 9 64968 7 中音 TI A 65030 1 高音 DO B 65058 2 高音 RE C 65110 3 高音 MI D 65157 4 高音 FA E 65178 5 高音 SO F 65217 不發(fā)音 0 節(jié) 拍 碼 節(jié) 拍 數(shù) 1 1/4 拍 2 2/4 拍 3 3/4 拍 4 1 拍 5 1 又 1/4 拍 6 1 又 1/2 拍 8 2 拍 A 2 又 1/2 拍 C 3 拍 F 3 又 3/4 拍 編程思路如下: 將常用的音符頻率所對應(yīng)的計數(shù)器初值放置在數(shù)組 yin[]中, song1[ ]——song9[ ]中所放的每個字節(jié)前 4 位乘 2 表示為音符頻率在數(shù)組 yin[]中的位置,后 4 位為多少個 1/4 拍。 1/4 拍定時 可以 采用匯編精確定時, 要求不太高的可以嘗試用 C51 循環(huán)體來延時。 九、關(guān)于本次設(shè)計元器件及原理的一點(diǎn)補(bǔ)充 定時器 /計數(shù)器的應(yīng)用: 16位的定時器 /計數(shù)器實(shí)質(zhì)上就是一個加 1計數(shù)器,其控制電路受軟件控制、切換。顯然,定時器的定時時間與系統(tǒng)的振蕩頻率有關(guān)。如果晶振為 12MHz,則計數(shù)周期為: T=1/( 12106) Hz1/12=1μs 這是最短的定時周期。 當(dāng)定時器 /計數(shù)器為計數(shù)工作方式時,通過引腳 T0 和 T1 對外部信號計數(shù),外部脈沖的下降沿將觸發(fā)計數(shù)。若一個機(jī)器周期采樣值為 1,下一個機(jī)器周期采樣值為 0,則計數(shù)器加1。所以檢測一個由 1 至 0的跳變需要兩個機(jī)器周期,故外部事年的最高計數(shù)頻率為振蕩頻率的 1/24。 其步驟如下: 確定工作方式(即對 TMOD 賦值); 預(yù)置定時或計數(shù)的初值(可直接將初值寫入 TH0、 TL0 或 TH TL1); 根據(jù)需要開放定時器 /計數(shù)器的中斷(直接對 IE 位賦值); 啟動定時器 /計數(shù)器(若已規(guī)定用軟件啟動,則可把 TR0 或 TR1 置 “1” ;若已規(guī)定由外中斷引腳電平啟動,則需給外引腳步加啟動電平。 定時器 /計數(shù)器的工作方式有以下四種 : 0 當(dāng) TMOD 中的 M0=0, M1=0 時,為 13 位計數(shù)或定時方式,其中 TLi 使用低5 位, 1 當(dāng) TMOD 中的 M0=1, M1=0 時,為 16 位計數(shù)或定時方 2 當(dāng) TMOD 中的 M0=0, M1=1 時,為 8 位自動重裝初值計數(shù)或定時方式 3 T0 為方式 3 時, T1 作為波特率發(fā)生器,其 TF TR1 資源出借給 T0 使用,而 T0 可以構(gòu)成兩個獨(dú)立的結(jié)構(gòu),其中 TL0 構(gòu)成一個完整的 8 位定時器 /計數(shù)器,而 TH0 則是一個僅能對晶振頻率 12 分頻的定時器。一般 T1 作波特率發(fā)生器時,常設(shè)置成方式 2 的自動重裝模式 。通過計數(shù) T 來產(chǎn)生一定頻率的音頻脈沖。 復(fù)位電路介 紹: 采用手動復(fù)位, VCC 上電時, C 充電,在 10K 電阻上出現(xiàn)電壓,使得單片機(jī)復(fù)位; 幾個毫秒后, C 充滿, 10K 電阻上電流降為 0,電壓也為 0,使得單片機(jī)進(jìn)入工作狀態(tài)。 Button 松手, C 又充電,在 10K 電阻上出現(xiàn)電壓,使得單片機(jī)復(fù)位。 X T A L 218X T A L 119A L E30EA31P S E N29RS T9P 0 .0 /A D 039P 0 .1 /A D 138P 0 .2 /A D 237P 0 .3 /A D 336P 0 .4 /A D 435P 0 .5 /A D 534P 0 .6 /A D 633P 0 .7 /A D 732P 1 .0 /T 21P 1 .1 /T 2 E X2P 1 . 23P 1 . 34P 1 . 45P 1 . 56P 1 . 67P 1 . 78P 3 .0 /R X D10P 3 .1 /T X D11P 3 .2 /I NT 012P 3 .3 /I NT 113P 3 .4 /T 014P 3 .7 / R D17P 3 . 6 / W R16P 3 .5 /T 115P 2 .7 /A 1 528P 2 .0 / A 821P 2 .1 / A 922P 2 .2 /A 1 023P 2 .3 /A 1 124P 2 .4 /A 1 225P 2 .5 /A 1 326P 2 .6 /A 1 427U1AT89C52X11 2 M H zC13 0 p FC23 0 p FL S 1S O UN D E RJ P 1J UM P E R 本次設(shè)計所用元器件詳細(xì)列表: 元器件名稱 型號 數(shù)量 單 片機(jī) STC89C52 1 按鍵 一個自鎖按鍵 3個普通按鍵 4 極性電容 10uf 1 瓷片電容 30uf 2 晶振 12MHZ 1 七段數(shù)碼管 GEM5101BE(共陽) 1 蜂鳴器 1 三極管 C9013 2 電阻 10K、 、 470、 330 4 注: 實(shí)物中還包括兩個發(fā)光二極管,一個用于測試單片機(jī)最小系統(tǒng)是否能正常工作,另外一個用于指示單片機(jī)是否已被供電。最簡單的一個例子,在本次設(shè)計之前,我根本不知道蜂鳴器還有有源與無源之分,剛開始買了有源蜂鳴器,結(jié)果接到電路中,以上電它就一直叫,而且基本是一種頻率。調(diào)了幾天還以為是軟件的原因。后來在網(wǎng)上無意中發(fā)現(xiàn)蜂鳴器分有源與無源兩種,這才又仔細(xì)的查了一下他們的區(qū)別。這正是本次課程設(shè)計所需要的器件。于是又重新打起了精神做實(shí)物。甚至在此之前還有好多電子器件只聞其名未見其真面目。特別是遇到具體的問題時,該如何去解決,向同學(xué)求助以及如何有效的上網(wǎng)查資料。以前聽理論課時感覺很抽象,這次通過做實(shí) 物對這些理論知識理解得更深刻了。單片機(jī)本來就是操作、實(shí)踐性很強(qiáng)的課程。 在做這次課程設(shè)計中,得到了寢室同學(xué)熱心的幫助,使我在編寫程序與調(diào)試程序方面都有了很大的進(jìn)步。單純的理論知識學(xué)起來是很枯燥的,通過硬件的制作,逼著自己去了解很多元器件的原理以及如何應(yīng)用這些原理做出具有實(shí)際意義的作品。做硬件時遇到困難是很正常的,一次成功的可能性不大。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1