新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于單片機設計的音樂馬桶

基于單片機設計的音樂馬桶

作者: 時間:2016-11-28 來源:網(wǎng)絡 收藏

AT89S51具有如下特點:40個引腳,4k Bytes Flash片內(nèi)程序存儲器,128 bytes的隨機存取數(shù)據(jù)存儲器(RAM),32個外部雙向輸入/輸出(I/O)口,5個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,看門狗(WDT)電路,片內(nèi)時鐘振蕩器。
1.主要特性:

· 8031 CPU與MCS-51 兼容
· 4K字節(jié)可編程FLASH存儲器(壽命:1000寫/擦循環(huán))
· 全靜態(tài)工作:0Hz-24KHz
· 三級程序存儲器保密鎖定
· 128*8位內(nèi)部RAM
· 32條可編程I/O線
· 兩個16位定時器/計數(shù)器
· 6個中斷源
· 可編程串行通道
· 低功耗的閑置和掉電模式
· 片內(nèi)振蕩器和時鐘電路
2.管腳說明:
VCC:供電電壓
GND:接地。
P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。
P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。
P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。
P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。
P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。
P3口也可作為AT89C51的一些特殊功能口,如下表所示:

P3口引腳特殊功能
P3.0RXD(串行輸入口)
P3.1TXD(串行輸出口)
P3.2(外部中斷0)
P3.3(外部中斷1)
P3.4T0(定時器0外部輸入)
P3.5T1(定時器1外部輸入)
P3.6WR(外部數(shù)據(jù)存儲器寫選通)
P3.7RD(外部數(shù)據(jù)存儲器讀先通)

3.3音樂馬桶實現(xiàn)原理:

主程序不斷掃描播放標志為0與播放標志為1的兩種情況。初始狀態(tài)播放標志為0,音樂模塊置0(不播放),計時變量一直置0,等待計時開始。當震動開關負跳變觸發(fā)外部中斷0,外部中斷程序?qū)⒁魳凡シ艠酥疚恢?。此時主程序給音樂模塊置1(播放),同時計時變量不再清0,當計時變量達到3分鐘時,播放標志清0。

第四章 系統(tǒng)軟件設計


4.1系統(tǒng)程序流程圖:




4.2仿真及調(diào)試:

軟件編寫使用keil uvision2
編程語言使用C51
仿真軟件采用proteus 7
仿真圖如下:



單片機已經(jīng)處于最小系統(tǒng)狀態(tài)。
其中D1代替了發(fā)聲模塊,高電工作。
D2僅用于仿真時顯示計時情況,1S滅1S亮。
按鍵開關代替了震動開關,工作原理都為導通開路狀態(tài)的切換。
仿真效果如下所述:當按鍵按下放開時(相當于震動開關響應一次震動發(fā)生負跳變),D1點亮(單片機輸出高電,相當于發(fā)聲模塊得電),同時D2開始閃爍(證明定時器工作正常)。3分鐘后,D1熄滅(相當于發(fā)聲模塊斷電),D2不再閃爍(停止計時),等待下一次按鍵(震動觸發(fā))。


關鍵詞: 音樂馬桶單片

評論


技術專區(qū)

關閉