999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ISD1420的語(yǔ)音編輯器設(shè)計(jì)

2010-04-12 00:00:00張仕海何永洪張仔兵謝云波
現(xiàn)代電子技術(shù) 2010年6期

摘 要:基于ISD1420芯片,給出一種利用單片機(jī)89C51控制的語(yǔ)音編輯器,分析該系統(tǒng)的構(gòu)成、硬件方案、用戶界面以及軟件方案。首先給出整個(gè)系統(tǒng)的總體構(gòu)成以及框圖,同時(shí)給出一個(gè)硬件系統(tǒng)的設(shè)計(jì)方案和軟件流程,也給出了一個(gè)簡(jiǎn)要的方法去實(shí)現(xiàn)用戶界面。語(yǔ)音編輯器具有分段、錄音、播放、組合播放等基本的語(yǔ)音編輯功能,具有MIC與線路錄音兩種模式,利用該方法設(shè)計(jì)的語(yǔ)音編輯器既可以單獨(dú)用來(lái)對(duì)音頻設(shè)備進(jìn)行語(yǔ)音編輯,也可以以模塊的形式加入到其他設(shè)備上。

關(guān)鍵詞:ISD1420;語(yǔ)音編輯;軟件方案;硬件方案;用戶界面

中圖分類號(hào):TP302.1文獻(xiàn)標(biāo)識(shí)碼:B

文章編號(hào):1004-373X(2010)06-051-04

Design of Voice Editor Based on ISD1420

ZHANG Shihai1,HE Yonghong2,ZHANG Zaibing1,XIE Yunbo1

(1.Chongqing Information Technology College,Chongqing,404001,China;

2.College of Communication and Information Engineering,Chongqing University of Posts and Telecommunications,Chongqing,400065,China)

Abstract:A voice editor based on ISD1420,which uses microchip 89C51 to control the system′s construction,user interface and solutions of hardware and software flow are introduced,The voice editor has voice,sound recording,playback,combined voice playback and other basic editing functions.With the MIC and line recording mode,the voice editor using this method may be individually edited foraudio equipment devices,but also can be added to other devices in the form of module.

Keywords:ISD1420;voice editing;software solutions;hardware solutions;user interface

0 引 言

在嵌入式系統(tǒng)飛速發(fā)展的今天,人們的身邊無(wú)時(shí)無(wú)刻不存在著嵌入式的產(chǎn)品[1]。利用單片機(jī)和ISD1420芯片設(shè)計(jì)的語(yǔ)音編輯器可以方便地對(duì)播放的語(yǔ)音文件進(jìn)行分段播放、分段組合、以及分段錄音等功能。該語(yǔ)音編輯器可以用在測(cè)試儀以及其他產(chǎn)品上,也可以單獨(dú)用來(lái)控制語(yǔ)音播放設(shè)備。

1 系統(tǒng)構(gòu)成

語(yǔ)音編輯器要具有分段錄音、分段播放、分段組合播放等基本的語(yǔ)音編輯功能及良好的用戶操作界面。

系統(tǒng)設(shè)計(jì)主要圍繞用戶操作界面展開(kāi)。在單片機(jī)控制下,對(duì)ISD1420進(jìn)行上述基本的語(yǔ)音編輯操作。其系統(tǒng)結(jié)構(gòu)如圖1所示。

顯示器 顯示用戶在對(duì)系統(tǒng)進(jìn)行操作時(shí)的相關(guān)信息。如,分段地址、錄放音提示、分段組合操作提示等等,以直觀地指示用戶操作。

鍵盤(pán) 圍繞語(yǔ)音編輯功能,系統(tǒng)應(yīng)為用戶提供一個(gè)友好的操作界面,以使用戶方便靈活地使用本系統(tǒng)。

單片機(jī) 作為系統(tǒng)的控制核心,從鍵盤(pán)接受用戶命令,以控制系統(tǒng)顯示及語(yǔ)音電路工作。

圖1 系統(tǒng)結(jié)構(gòu)圖

ISD1420是一種錄音數(shù)據(jù)永久保存、高保真、低耗電、適用于同單片機(jī)接口的新一代語(yǔ)音器件[2],是系統(tǒng)功能實(shí)現(xiàn)的核心。在單片機(jī)控制下實(shí)現(xiàn)了題目要求的所有功能。

2 硬件方案

2.1 顯示部分

在分段錄音和放音過(guò)程中,系統(tǒng)應(yīng)該為用戶提供段地址顯示,以為其指示當(dāng)前正在操作的那個(gè)段,段地址為兩位。在這些操作中,系統(tǒng)還應(yīng)該提供操作指示,如提示開(kāi)始、進(jìn)行中、結(jié)束等。系統(tǒng)設(shè)置一位數(shù)碼管,以閃爍、字符等形式提示用戶操作。系統(tǒng)選擇3位LED七段數(shù)碼管,已基本滿足操作提示的需求,如圖2所示。

圖2 數(shù)碼管顯示部分

3位LED七段數(shù)碼管采用靜態(tài)顯示方式,其顯示穩(wěn)定,程序簡(jiǎn)單,電路實(shí)現(xiàn)也不復(fù)雜。它的顯示數(shù)據(jù)由8位D觸發(fā)器74LS374鎖存輸出,驅(qū)動(dòng)數(shù)碼管顯示。8位D觸發(fā)器的輸入采用總線連接。其鎖存控制由單片機(jī)的寫(xiě)命令WR[3],加上地址信息進(jìn)行;其地址分配為FE00H,F(xiàn)D00H,F(xiàn)B00H。

2.2 鍵盤(pán)

鍵盤(pán)是人機(jī)的主要界面,所有用戶命令都是由它向單片機(jī)發(fā)出的。首先進(jìn)行交互設(shè)計(jì),根據(jù)功能要求設(shè)置功能鍵,包括錄音、放音、組合、分段等按鍵,其操作使用方法見(jiàn)用戶使用手冊(cè)。

對(duì)段地址,系統(tǒng)需要0~9的按鍵,以保證用戶能夠?qū)ぶ稩SD1420的所有段[4]。系統(tǒng)總共由14個(gè)鍵構(gòu)成。

為滿足系統(tǒng)結(jié)構(gòu)的簡(jiǎn)單起見(jiàn),系統(tǒng)采用與鍵盤(pán)單獨(dú)接口。系統(tǒng)利用P1口與鍵盤(pán)陣列連接。其中,低4位作為單片機(jī)的鍵盤(pán)列掃描輸入;高4位作為單片機(jī)的鍵盤(pán)行掃描輸出。

系統(tǒng)采用中斷方式管理鍵盤(pán),使系統(tǒng)能夠?qū)崟r(shí)地響應(yīng)用戶操作。鍵盤(pán)陣列的4列線,連接到4與門(mén)的輸入。4與門(mén)的輸出連接單片機(jī)INT1,為低有效。平時(shí)沒(méi)有按鍵按下時(shí),4與門(mén)連接的上拉電阻使與門(mén)的輸出為高電平,無(wú)中斷產(chǎn)生。這時(shí)程序從列輸入的是1111。

在掃描鍵盤(pán)時(shí),程序首先讓行掃描輸出0000,這樣,在這4行中的14個(gè)鍵,只要有一個(gè)鍵按下,與門(mén)都能輸出低電平而產(chǎn)生中斷。程序可通過(guò)鍵盤(pán)中斷服務(wù)程序具體確定是那一個(gè)鍵按下,如圖3所示。

它的具體方法是,依次向各行(P1.7~P0.0)輸出0,程序就能從列端口讀出對(duì)應(yīng)按鍵所在位置的列編碼(P1.3~P0.0)。如表1所示。這樣程序就能得到低4位與高4位的掃描值,得到對(duì)應(yīng)鍵盤(pán)的編碼值。

2.3 ISD1420

與顯示器一起采用總線連接,段地址單片機(jī)通過(guò)74LS374鎖存后,再輸入到ISD1420,74LS374鎖存控制信號(hào)構(gòu)成同顯示器,由單片機(jī)的WR加上地址信號(hào)組合構(gòu)成。它的地址分配為7F00H。單片機(jī)通過(guò)一條輸出指令完成語(yǔ)音電路的段地址輸出,以控制語(yǔ)音電路分段操作,如圖4所示。

系統(tǒng)控制芯片的PLAYE端口,平時(shí)為高電平,當(dāng)出現(xiàn)下降沿時(shí)開(kāi)始錄音[5]。

圖3 按鍵結(jié)構(gòu)圖

表1 按鍵與行列編碼對(duì)照表

信號(hào)EOM是語(yǔ)音段結(jié)束標(biāo)志,當(dāng)錄音結(jié)束,若存儲(chǔ)器沒(méi)完,ISD1420會(huì)自動(dòng)為其加上EOM標(biāo)志符[6],表示該段錄音結(jié)束。放音時(shí),當(dāng)遇到EOM標(biāo)志符,EOM信號(hào)會(huì)由高電平輸出一個(gè)低脈沖。該信號(hào)連至單片機(jī)的T1/P3.5引腳[7],使單片機(jī)能夠及時(shí)知道該語(yǔ)音段結(jié)束,以便控制下一步操作。

圖4 ISD1420芯片電路圖

2.4 單片機(jī)

這里選擇的89C51具有40個(gè)I/O口。系統(tǒng)不能采用簡(jiǎn)單的最小系統(tǒng)連接,由上述可知,它無(wú)法滿足該系統(tǒng)的需求。該設(shè)計(jì)可利用它的開(kāi)放總線連接更多的設(shè)備。

該設(shè)計(jì)將3個(gè)數(shù)碼管和語(yǔ)音芯片通過(guò)總線方式接入系統(tǒng)。低位地址不用,所以不用進(jìn)行低8位的地址擴(kuò)展。選擇A8,A9,A10分別作為3個(gè)數(shù)碼低電平的有效地址信號(hào),再與單片機(jī)的WR信號(hào)組合,以構(gòu)成帶地址信息的寫(xiě)控制信號(hào)。這樣,程序便可像訪問(wèn)存儲(chǔ)器一樣訪問(wèn)這些端口,其地址為:FE00H,F(xiàn)D00H,F(xiàn)B00H。語(yǔ)音芯片也是采用這種方式進(jìn)入系統(tǒng)的,其地址是7F00H。這種方式既可使電路簡(jiǎn)單,也可使操作簡(jiǎn)單[8]。P1口作為系統(tǒng)的鍵盤(pán)掃描接口,連接如前述,這里不再贅述。

3 用戶界面

用戶界面如下:

鍵盤(pán):0~9、[錄音]、[放音]、[組合]、[分段]。

顯示:3位7段數(shù)碼管。段號(hào)2位,以確定錄音、放音位置;計(jì)數(shù)器1位,9~0減1計(jì)數(shù)。

指令格式:<參數(shù)表> <命令>。

四個(gè)主要功能為:

(1) 分段

操作:分段數(shù)+[分段]

(2) 錄音

操作:欲錄音段號(hào)+[錄音]

顯示:當(dāng)按下[錄音]時(shí),欲錄音段號(hào)閃3下后,計(jì)數(shù)顯示9;錄音開(kāi)始,計(jì)數(shù)器減1,直到0,錄音結(jié)束。

(3) 回放

操作:欲放音段號(hào)+[放音]4)、組合放音:功能用于檢查組合放音效果。

操作:段號(hào)i+[組合]+段號(hào)j+[組合]+…+段號(hào)n+[組合]+[放音]

顯示:在組合時(shí),顯示段號(hào),閃爍,按下[組合]后顯示消失,再重復(fù);組合放音時(shí),顯示當(dāng)前放音段號(hào);計(jì)數(shù)器先顯示組合段總數(shù),每放完一段減1,直到0。

4 軟件方案

內(nèi)存分配如下:

顯示緩沖為3個(gè)單元,第一、二單元用于存放段號(hào),第三單元用于存放計(jì)數(shù)器值。

組合段緩沖為一個(gè)單元,為一個(gè)放音段地址??紤]單片機(jī)的存儲(chǔ)容量與系統(tǒng)成本。設(shè)計(jì)考慮10個(gè)單元,F(xiàn)F為組合結(jié)束標(biāo)志。當(dāng)?shù)谝粏卧扔贔F時(shí),為緩沖器空,ISD1420的段地址從該緩沖區(qū)取出。軟件流程圖如圖5所示。

圖5 軟件流程圖

為方便起見(jiàn),系統(tǒng)采用平均分段管理方式。根據(jù)ISD1420語(yǔ)音芯片器件使用手冊(cè)可知,最多可分為160個(gè)段。其中,0~159為分段使用的有效地址。系統(tǒng)按1 s四個(gè)字的語(yǔ)速算,對(duì)于20 s的存儲(chǔ)空間來(lái)說(shuō),最多不能超過(guò)80個(gè)段,該時(shí)段空間最小為1個(gè)字。其分段范圍為1<分段數(shù)<80,在這個(gè)前提下,用戶可根據(jù)實(shí)際需求來(lái)分段,段號(hào)為0~79。

在執(zhí)行[分段]命令時(shí),要將地址間隔計(jì)算出來(lái),以便段號(hào)與語(yǔ)音芯片地址映射。地址間隔存于專用地址間隔單元spacing中。

分段寄存器seg_num:存放執(zhí)行[分段]命令后的分段數(shù)。用戶進(jìn)行錄音、放音的段號(hào),程序必須驗(yàn)證在此范圍方可執(zhí)行,否則提示錯(cuò)誤信息“E”。系統(tǒng)默認(rèn)分段數(shù)seg_num為 40, spacing為4,分段確定后,段地址可以由下式計(jì)算:

分段地址= seg_num×spacing

地址間隔=160/seg_num

暫存器temp:系統(tǒng)預(yù)留一個(gè)單元。用來(lái)以二進(jìn)制數(shù)方式存放段號(hào)。以temp_ sign為暫存器標(biāo)志,用于指示按鍵輸入,其等于0時(shí),段號(hào)只有1位;等于1時(shí),段號(hào)有2位。前次數(shù)字鍵是十位,當(dāng)前數(shù)字鍵是個(gè)位。如果是兩位數(shù),程序要對(duì)這兩位二-十進(jìn)制數(shù)進(jìn)行計(jì)算,轉(zhuǎn)換成二進(jìn)制數(shù),即BCD十位×10+BCD個(gè)位,存入temp。當(dāng)執(zhí)行錄音、放音、分段操作時(shí),程序從temp取參數(shù),計(jì)算段地址。用戶在輸入段號(hào)時(shí),如果出現(xiàn)錯(cuò)誤,可重新輸入。第一次輸入的段號(hào),將被第二次輸入的段號(hào)覆蓋。

組合段緩沖ally_ buf:系統(tǒng)預(yù)留10個(gè)單元,只有執(zhí)行組合放音時(shí)才用。組合是所有段中任意選擇10個(gè)段構(gòu)成的隊(duì)列。系統(tǒng)用ally_pointer作為入隊(duì)地址指針,以ally_out作為出隊(duì)地址指針。組合放音時(shí),在該指針指示下,依次將錄音段從緩沖區(qū)中取出播放,以構(gòu)成短語(yǔ),直到ally_out=ally_pointer。程序在沒(méi)有執(zhí)行[組合]功能時(shí),保持ally_pointer=0;當(dāng)用戶按下[組合]鍵時(shí),程序應(yīng)將暫存器temp的內(nèi)容傳入ally_ buf中,并修改ally_pointer。在執(zhí)行[放音]時(shí),程序首先檢查ally_pointer是否等于0,是,執(zhí)行temp的段放音;否則,執(zhí)行ally_ buf的段放音,直到FF標(biāo)志[9]。用戶指令單元dictate:存放用戶指令。主程序從這里識(shí)別用戶命令,并執(zhí)行命令。

命令標(biāo)志sign_dic:其等于0時(shí),當(dāng)前按鍵為數(shù)字鍵。等于1時(shí),當(dāng)前按鍵為命令鍵。

命令與數(shù)字的識(shí)別:當(dāng)鍵盤(pán)碼大于7F時(shí),為數(shù)字按鍵,否則為命令按鍵。

七段顯示:0~9,E為錯(cuò)誤提示。這里采用共陰極7段數(shù)碼管,如圖6所示。

出口如下:

temp為對(duì)應(yīng)段號(hào)的二進(jìn)制數(shù)??梢灾苯佑?jì)算段地址,最大范圍,小于分段數(shù)seg_num。

sign_dic等于1時(shí),請(qǐng)求執(zhí)行dictate中的命令。

dictate為命令代碼[10]。

圖6 七段數(shù)碼管

5 結(jié) 語(yǔ)

按照該方法設(shè)計(jì)的語(yǔ)音編輯器可行性強(qiáng),操作簡(jiǎn)單,界面清晰,在實(shí)際的生活中,該語(yǔ)音編輯器經(jīng)過(guò)改進(jìn)后可以很方便地應(yīng)用到MP3,DVD,錄音筆等音頻設(shè)備中,同時(shí)也可以用到遠(yuǎn)程語(yǔ)音控制中。與其他的相比,該語(yǔ)音編輯器具有價(jià)格更低廉,可單獨(dú)作為器件來(lái)實(shí)現(xiàn),因此具有一定的實(shí)用價(jià)值。

參考文獻(xiàn)

[1]馬洪連.嵌入式系統(tǒng)設(shè)計(jì)[M].北京:電子工業(yè)出版社,2006.

[2]ISD1420數(shù)據(jù)手冊(cè)[EB/OL].http://www.winbond.com.

[3]李朝青.單片機(jī)原理及接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,1998.

[4]徐捷,徐華中.ISD1420語(yǔ)音芯片在PIC單片機(jī)系統(tǒng)的應(yīng)用[D].武漢:武漢理工大學(xué),2006.

[5]劉沛.基于ISD1420的語(yǔ)音報(bào)警器設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2004,27(12):19-21.

[6]李平,李亞榮,關(guān)天民.基于ISD1420的高響度語(yǔ)音電路設(shè)計(jì)[J].儀表技術(shù),2005(1):75-76.

[7]張毅剛.MCS-51單片機(jī)原理及應(yīng)用[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2004.

[8]蔣懷偉,尹志強(qiáng),朱衛(wèi)國(guó).ISD1420語(yǔ)音芯片在單片機(jī)控制系統(tǒng)中的應(yīng)用研究[J].合肥工業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2002(Z1):1 036-1 040.

[9]張守波,郭松林.高保真語(yǔ)音錄放電路及其在儀器中的應(yīng)用[J].儀表技術(shù),2004(3):26-27.

[10]ISD Data Sheet.ISD1400 Series Single Chip Voice Record/Playback Devices .http://www.21 ic.Com,2004.

主站蜘蛛池模板: aa级毛片毛片免费观看久| 亚洲无码久久久久| 国产女人18水真多毛片18精品 | 国产精品内射视频| 国内精品久久人妻无码大片高| 久久精品波多野结衣| 97色伦色在线综合视频| 精品视频一区二区观看| 国产福利小视频高清在线观看| 国产女同自拍视频| 无码日韩人妻精品久久蜜桃| 黄色污网站在线观看| 亚洲不卡av中文在线| 婷婷亚洲综合五月天在线| 色悠久久综合| 久久婷婷人人澡人人爱91| 88av在线看| 亚洲首页在线观看| 中文字幕日韩欧美| 四虎影视永久在线精品| 动漫精品啪啪一区二区三区| 人妻精品久久无码区| 91视频区| 亚洲美女AV免费一区| 制服丝袜 91视频| 国产丝袜一区二区三区视频免下载| 亚洲欧美日韩中文字幕一区二区三区 | 色婷婷电影网| 亚洲精品第1页| 国产精品对白刺激| 综合久久五月天| 久久天天躁夜夜躁狠狠| 波多野结衣无码中文字幕在线观看一区二区 | 久久精品人人做人人爽| 思思99热精品在线| 日本色综合网| 国产精品冒白浆免费视频| 欧美亚洲国产视频| 国产一级做美女做受视频| 亚洲综合专区| 成人免费黄色小视频| 伊人激情综合网| 超级碰免费视频91| 最新国产精品鲁鲁免费视频| a级毛片免费播放| 久精品色妇丰满人妻| 中文无码影院| 一级看片免费视频| 亚洲综合亚洲国产尤物| 色呦呦手机在线精品| 人妻无码AⅤ中文字| 国产麻豆精品久久一二三| 亚洲中文在线看视频一区| 日韩在线观看网站| 国产国产人成免费视频77777| 久久精品国产亚洲麻豆| av一区二区无码在线| 五月婷婷伊人网| 国产成人啪视频一区二区三区 | 国产黑丝一区| 国产H片无码不卡在线视频| 欧美 亚洲 日韩 国产| 伊大人香蕉久久网欧美| 久久国产精品夜色| yjizz国产在线视频网| 一区二区理伦视频| 国产欧美在线观看精品一区污| 日韩视频精品在线| 久久综合结合久久狠狠狠97色 | 成人年鲁鲁在线观看视频| 久久综合五月婷婷| 2021无码专区人妻系列日韩| 国产丰满成熟女性性满足视频| 色首页AV在线| 欧美成人综合视频| 亚洲第一香蕉视频| 国产精品专区第1页| 亚洲va视频| 2021国产精品自拍| 国产中文在线亚洲精品官网| 欧美日韩午夜视频在线观看| 久久综合色播五月男人的天堂|