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

正文內(nèi)容

基于單片機(jī)的sd卡錄音筆設(shè)計與實現(xiàn)_畢業(yè)設(shè)計論文-資料下載頁

2025-02-26 10:23本頁面
  

【正文】 2 播放上一段錄音,按下 Key1播放下一段錄音; 61 長按 Key2 鍵將清除所有已錄語音,此時會有 “SD 卡已擦除 ” 的提示音; 長按 Key1 鍵將停止放音 。 結(jié)論:實現(xiàn)錄音,放音,刪除功能,測試成功。 結(jié)論 本課題是基于單片機(jī)的 SD 卡錄音筆設(shè)計與實現(xiàn),根據(jù)課題的要求設(shè)計了 SD 卡數(shù)碼錄音筆,在設(shè)計中主要完成了以下幾個方面的內(nèi)容: 系統(tǒng)硬件結(jié)構(gòu)設(shè)計: SPCE061A 開 發(fā)板, SD 卡模組。系統(tǒng)軟件架構(gòu)設(shè)計:完成了語音文件的錄制,播放和刪除,寫入,讀取及擦除 SD 卡。 在本課題中,用 SPCE061A 開發(fā)板上的 MIC 作為語音信號采集器,喇叭作語音播放器,通過單片機(jī)內(nèi)部存儲器并調(diào)用語音模塊對輸入的命令進(jìn)行處理,完成錄音的過程。 62 由于芯片功能和本人能力的限制,本系統(tǒng)還有許多有待完善和擴(kuò)展的地方,主要有以下兩方面: SPCE061A 開發(fā)板片內(nèi) FLASH 的容量只有 32K,預(yù)存的語音信息質(zhì)量受到了很大的限制。這些問題可以通過外接 SPR 模組擴(kuò)充系統(tǒng)存儲空間來解決。 隨著計算機(jī)的不斷普及,人 們對人機(jī)交互的要求越來越高。 SD 卡錄音筆的研究和開發(fā)將極大的提高人機(jī)交互質(zhì)量,因而我相信在不久的將來 SD 卡數(shù)碼錄音筆會得到充分的發(fā)展和應(yīng)用。 致謝 經(jīng)過 3 個多月的努力,終于完成了本次畢業(yè)設(shè)計。一直以來,邢老師不但為我們創(chuàng)造了良好的學(xué)習(xí)氛圍而且給我們提供了畢業(yè)設(shè)計的設(shè)備。從邢老師那里我不僅學(xué)習(xí)到了知識,更重要的是他嚴(yán)格要求,精益求精,嚴(yán) 63 謹(jǐn)求實的治學(xué)態(tài)度給我留下了深刻的印象,這必將使我終身受益。在此,向邢老師致以深深的謝意。 感謝北方工業(yè)大學(xué)信息工程學(xué)院為我們提供了做畢業(yè)設(shè)計的實驗室,感謝信息工程學(xué)院所有幫助 過我、指導(dǎo)過我的老師,是他們無私的指導(dǎo)和耐心的教誨,讓我學(xué)習(xí)到了很多。同時我也真誠的感謝我的班級導(dǎo)師邢志強(qiáng)老師,從剛進(jìn)大學(xué)的毛頭小子成長到現(xiàn)在,都得到了邢老師熱情的幫助和無微不至關(guān)懷。 感謝通信工程 06A2 班的所有同學(xué)。在與他們共同學(xué)習(xí),共同生活的四年里,與他們的交流和討論,擴(kuò)展了我的思路,對論文的完成頗有益處。 真誠的感謝我的家人,他們對我無私的關(guān)心和支持,是我勇往直前的動力,他們對我的鼓勵使我度過了大學(xué)生活中的一個個難關(guān)。 64 參考文獻(xiàn) [1] 姜志玲 .用凌陽單片機(jī)實現(xiàn)多路數(shù)據(jù)采集與傳輸系統(tǒng) [J]. 西華大學(xué)學(xué)報 .2021 [2] 王素珍,田振清 .用 ISP 實現(xiàn)對 ISD25120 語音芯片的錄放音控制 [J].電聲技術(shù) .2021 [3] 林陽 .凌陽 16位單片機(jī)與其它主流單片機(jī)的比較 [J]. 電子世界 . 2021 [4] 王竹便 .錄音技術(shù)及技巧淺議 [J].科技情報開發(fā)與經(jīng)濟(jì) .2021 [5] 孟憲超 . 數(shù)碼錄音筆原理及應(yīng)用 [J].信息時代導(dǎo)刊 .2021 [6] 薛駒義,張彥斌等 .凌陽 16 位單片機(jī)原理及應(yīng)用 [M].北京:北京航空航天大學(xué)出版社, 2021 [7] 羅亞非 等編 .凌陽 16 位單片機(jī)應(yīng)用基礎(chǔ) [M].北京 :北京航空航天大學(xué)出版社, 2021 65 [8] Digital Voice Recorder Design.[DB/OL].Sunplus Technology, ,2021 Version [9] John [M].北京:計量出版社,1995 [10] 鄧元慶 .數(shù)字電路與邏輯設(shè)計 [M].北京:電子工業(yè)出版社, 2021 [11] 胡隆,許靜波 .錄音、調(diào)音與音響技術(shù) [M].北京:北京工業(yè)大學(xué)出版社,第 1 版 [12] 王宏民 .錄音與調(diào)音 [M].北京:中國廣播電視出版社, 第 1 版 [13] 楊行峻 ,遲惠生 .語音信號數(shù)字處理 [M].北京:電子工業(yè)出版社,第 1 版 [14] One based on monolithic integrated circuit39。s digital sound recording and the broadcast system.[M].Prentice Hall Press,1993 66 [15] SD Memory Card Specifications.[Z].2021 附錄 附錄 1 主程序代碼 () include include .\Driver\SD\ include .\FS\ include .\DVRSystem\ include .\DVRSystem\ include .\System\ include .\Driver\KEY\ define ADC_Channel Mic // 0~7 (Mic, Line_In1 ~ Line_In6) 67 void KeyProcess()。 void StatusProcess()。 SysStatus Status。 // 系統(tǒng)狀態(tài), SysStatus 定義在 中 int SpeechIndex。 int WriteProtect。 //================================================= // 語法格式: int main(void) // 實現(xiàn)功能: 主函數(shù) //================================================= int main() { 68 SpeechIndex = 0。 WriteProtect = 0。 Status = IDLE。 DrvKeyInit()。 SD_IOInit()。 SetINTStatus(C_IRQ5_2Hz)。 SetINTStatus(C_IRQ4_1KHz)。 __asm(IRQ ON)。 SACM_DVR1600_Initial()。 // 語音初始化 if(0 == SD_ChkCard()) { // 檢測卡是否插入 PlaySnd(VOICE_ATTENTION, DAC1 + DAC2)。 PlaySnd(VOICE_SDCARDNOTINSERT, DAC1 + DAC2)。 69 while(0 == SD_ChkCard())。 // 等待卡插入 } if(1 == SD_ChkCardWP()) // 檢測卡是否有寫保護(hù) { WriteProtect = 1。 PlaySnd(VOICE_ATTENTION, DAC1 + DAC2)。 PlaySnd(VOICE_SDCARDWRITEPROTECT, DAC1 + DAC2)。 } else { FS_Init()。 // 沒有寫保護(hù),執(zhí)行初始化操作 PlaySnd(VOICE_READY, DAC1 + DAC2)。 } 70 // while(1) { KeyProcess()。 // 按鍵處理 StatusProcess()。 // 系統(tǒng)狀態(tài)處理 SACM_DVR1600_ServiceLoop()。 // 錄 /放音服務(wù) } return 0。 } //================================================= // 語法格式: int StatusProcess(void) // 實現(xiàn)功能: 系統(tǒng)狀態(tài)處理函數(shù) 71 //================================================= void StatusProcess() { switch(Status) { case RECORD: if(FS_GetUnusedSecNum() 1) // 檢測是否超出 SD 卡容量范圍 { SACM_DVR1600_Stop()。 Status = IDLE。 } break。 case PLAY: if(FS_CheckFileEnd()) // 檢測當(dāng)前語音是否播放完畢 72 { SACM_DVR1600_Stop()。 FS_CloseOpenFile()。 Status = IDLE。 } // case IDLE: default: break。 } } //================================================= // 語法格式: int KeyProcess(void) // 實現(xiàn)功能: 按鍵處理函數(shù) //================================================= void KeyProcess() 73 { unsigned int Key, KeyType。 Key = KeyScan_GetKey(amp。KeyType)。 if(1 == WriteProtect) // 卡有寫保護(hù),拒絕按鍵操作 { if((C_SReleaseKeyState == KeyType) || (C_LReleaseKeyState == KeyType)) { PlaySnd(VOICE_SDCARDWRITEPROTECT, DAC1 + DAC2)。 } return。 } switch(Key) { case C_Record: // Record 74 if(C_SReleaseKeyState == KeyType) { // 短按鍵,錄 /放音控制 if(PLAY == Status) { SACM_DVR1600_Stop()。 // 如果正在放音,則先停止播放 FS_CloseOpenFile()。 Status = IDLE。 } if(IDLE == Status) { if((g_FileNum = FS_MAX_FILENUM) || (FS_GetUnusedSecNum() = 0)) { // 文件已滿,退出 PlaySnd(VOICE_DANG, DAC1 + DAC2)。 75 break。 } PlaySnd(VOICE_START, DAC1 + DAC2)。 FS_CreatFile()。 FS_WriteFile(0)。 // 為語音長度跳過兩個 word FS_WriteFile(0)。 SACM_DVR1600_Rec(RceMonitorOff, ADC_Channel, BIT_RATE_24K)。 Status = RECORD。 } else if(RECORD == Status) { SACM_DVR1600_Stop()。 while(RECORD == Status)// 等待完成錄音收尾工作 SACM_DVR1600_ServiceLoop()。 76 PlaySnd(VOICE_OVER, DAC1 + DAC2)。 SpeechIndex = g_FileNum 1。 } } break。 case C_Prev: // Play Prev if((C_SReleaseKeyState != KeyType) amp。amp。 (C_LReleaseKeyState != KeyType)) break。 if(g_FileNum 0) { if(PLAY == Status) // 如果正在放音,則先停止播放 { SACM_DVR1600_Stop()。 FS_CloseOpenFile()。 } 77 else if(RECORD == Status) // 如果正在錄音則不處理 { break。 } if(C_LReleaseKeyState == KeyType) { // 長按鍵,擦除所有語音段 FS_Init()。 PlaySnd(VOICE_SDCARDERASED, DAC1 + DAC2)。 Status
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1