基于單片機的數碼語音溫度計設計
圖2 傳感器的連接圖本文引用地址:http://www.104case.com/article/172542.htm
圖2 中傳感器的2 腳與單片機的輸入/ 輸出( I/ O)腳連接,進行雙方通信,采用4. 7 k 的電阻上拉。由于DS18B20 單線通信功能是分時完成的,系統對它的各項操作必須嚴格按協議進行。操作協議為: 初始化DS18B20( 發復位脈沖) →發ROM 功能命令→發存儲器操作命令→處理數據,各項操作都有嚴格的時序要求。
1. 2. 2 單片機
采用與MCS51兼容的STC89C52, 具有8K 字節的在系統可編程Flash 存儲器,其MOSI、MISO、REST、SCK 等引腳通過鎖存后與計算機的并口連接,就可實現對內部的Flash 存儲器編程,內含512 B 的RAM, 32 個可編程I/ O口線, 3 個16 位的定時/ 計數器等特點,可以為眾多嵌入式控制應用系統提供高靈活、超有效的解決方案,非常適合本項目的應用。
1. 2. 3 語音模塊
采用美國華幫公司生產的高集成度、高性能的ISD1720 語音錄放芯片, 采樣率在4~ 12 kHz 之間調節,根據采樣頻率的不同,可以錄存12~ 36 s 的語音信息, 語音信息在該芯片內部的固態多級存儲陣列里按行存放,可以通過指令中的11 位地址精確尋址; 該芯片集語音處理和存儲于一體,具有重復自開發,掉電信息保存,可工作于獨立按鍵模式和SPI 控制模式,錄放結束自動進人低功耗狀態,可直接*輸人或模擬通道輸入,也可喇叭直接輸出,芯片工作電壓2. 4~ 5. 5 V之間,可以多段錄音, 其基本存儲單元入口地址范圍是0X010~0X09F。應用電路如圖3 所示。根據需要,將錄制的語音分成13 個段,即“零~ 十、點、度”,如37. 5 度,播報為“ 三、十、七、點、五、度”,每段語音的錄制時間約為1. 35 s,由于錄制時間不易精確掌握,用手動控制的方式對13 段語音進行錄制,然后手動檢查每段語音錄制效果,如圖3 所示,閉合S4 進行語音信息錄制、松開即錄制結束,語音信息通過MIC 錄入,觸發S5 鍵進行播放,檢查當前錄制信息段的效果,在錄制或者播放的過程中,可以通過LED 的閃爍來了解操作的進程; 如果某段語音錄制效果不理想,必須及時刪除,因為在手動控制方式下,刪除操作只對開始一段和最末一段信息有效; 錄制完成后,還必須檢查每段信息在器件的存儲體系中是否是按環形結構存儲的,這可以通過閉合S5 并保持來實現,此時,器件將按順序不停的播放當前信息段與其前一信息段之間的所有信息段,通過反復錄制,直到滿意為止; 當然,也可以采用商業的錄制設備來實現。
圖3 語音芯片連接圖
由該芯片內部的語音存放地址范圍可知,每段語音存放約11 行,為了準確知道每段語音的入口地址和結束地址,可以利用單片機檢查。ISD1720 提供了4 線( SCLK, MOSI, MISO, SS) SPI 接口與單片機連接,由于二者的SPI 時序不易協調,系統采用了單片機的P1. 1, P1. 2, P1. 3, P1. 4 口模擬SPI 時序對ISD1720 進行控制。具體操作時, 器件初始化完成后,發送PLAY指令,器件從當前信息段的開始地址進行語音回放,當遇到該段語音的結束標志EOM 時,回放結束,讀取記錄指針和回放指針的位置( 即查閱狀態寄存器SR0 和SR1) ,這樣可以精確的知道每段語音的開始地址和結束地址。由于系統正常工作時,采用SPI 模式,根據測量得到的溫度值,尋找到相應的語音段入口,將語音信息讀出; 在SPI 模式下,該芯片的操作命令SET PLAY、S ET REC、SET??REASE 有一個先入先出的緩存器,在相同類型的SET 命令下,使得從一個存儲塊到另一個存儲塊之間可以實現無縫連接,使人聽起來感覺到輸出的溫度語音信號是連續的。圖3 中S1 是復位按鈕, S2 是快進按鈕, S3 是檫除按鈕, S6 是直通模式選擇按鈕, S7 進行音量調節; 以上開關按鈕都是低電平有效; R4 是語音采樣頻率的選擇電阻,當其為80 k 時,語音錄制的采樣頻率為8 kHz; 當不使用語音播報功能時,可以將SW 開關斷開,同時語音播報的時間間隔通過單片機電路中的1 個三位的撥碼開關選擇,可以設置8 個檔位,每個檔位的時間參數由程序控制。
1. 2. 4 顯示和電源模塊
采用3 位LED 數碼顯示,保留一位小數,輸出方式采用動態掃描形式,選擇單片機的兩個端口經過驅動器后作為LED 的字段線和字位線,減少輸出的總電流;為了便攜式應用,電源采用九伏電池供電,通過LM7805 降壓為5 V 供系統各模塊使用。布線和制作PCB 板時,特別要注意地線的處理,要求數字地、模擬地、以及揚聲器的地都要單獨走線,最后與電源地連接。
評論