版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、目錄第一章 緒論21.1概述21.2語(yǔ)音識(shí)別的研究歷史及現(xiàn)狀31.3語(yǔ)音識(shí)別技術(shù)及其原理31.4語(yǔ)音識(shí)別的分類(lèi)41.5語(yǔ)音識(shí)別技術(shù)的前景展望41.6語(yǔ)音識(shí)別芯片AP7003簡(jiǎn)介41.7系統(tǒng)總體方案5第二章 硬件電路設(shè)計(jì)72.1 AT89S52單片機(jī)電路設(shè)計(jì)72.1.1 AT89S52簡(jiǎn)介72.1.2AT89S52引腳說(shuō)明72.1.3基于AT89S52的語(yǔ)音識(shí)別模塊電路設(shè)計(jì)102.2 S3C2410硬件設(shè)計(jì)122.2.1 S3C2410芯片簡(jiǎn)介122.2.2 S3C2410引腳圖142.2.3 S3C2410硬件設(shè)計(jì)142.3電機(jī)電路設(shè)計(jì)15第三章 系統(tǒng)軟件設(shè)計(jì)153.1 linux和QT153
2、.1.1 嵌入式linux 簡(jiǎn)介153.1.2 QT簡(jiǎn)介173.2 系統(tǒng)軟件的實(shí)現(xiàn)183.2.1 S3C2410的軟件實(shí)現(xiàn)183.2.2單片機(jī)軟件的軟件實(shí)現(xiàn)19第四章 總結(jié)21基于語(yǔ)音識(shí)別技術(shù)的門(mén)禁系統(tǒng)摘要:通過(guò)對(duì)語(yǔ)音識(shí)別原理的系統(tǒng)分析,結(jié)合特定人語(yǔ)音識(shí)別的具體情況,闡了基于語(yǔ)音識(shí)別的門(mén)禁系統(tǒng)的設(shè)計(jì)思路,介紹了其中的幾個(gè)關(guān)鍵性技術(shù)要點(diǎn)。應(yīng)用ARM芯片S3C2410,51單片機(jī) ,從硬件、軟件、算法優(yōu)化等方面實(shí)現(xiàn)了基于語(yǔ)音識(shí)別門(mén)禁系統(tǒng)的總體設(shè)計(jì),在S3C2410-S平臺(tái)上完成了原型系統(tǒng)的開(kāi)發(fā),并從應(yīng)用的角度闡明了本系統(tǒng)理論上的合理性與可行性。關(guān)鍵詞:語(yǔ)音識(shí)別 s3c2410 ARM 門(mén)禁系統(tǒng) 單
3、片機(jī)第一章 緒論1.1概述 綜合集成計(jì)算機(jī)、通訊、自動(dòng)識(shí)別、機(jī)械工程和安全管理系統(tǒng)等相關(guān)技術(shù)的門(mén)禁系統(tǒng)有效地解決了重要部門(mén)和場(chǎng)所的安全訪問(wèn)控制問(wèn)題,已得到廣泛的應(yīng)用,成為日常工作和生活中的電子門(mén)衛(wèi)。目前,門(mén)禁系統(tǒng)采用較多的是非接觸式RF卡、生物識(shí)別技術(shù)、IC卡、密碼輸入等方式。然而隨著科學(xué)技術(shù)的發(fā)展,綜合應(yīng)用語(yǔ)音識(shí)別、指紋識(shí)別、虹膜識(shí)別、紅(熱)感應(yīng)等最新生物識(shí)別技術(shù),結(jié)合電磁鎖等技術(shù)的門(mén)禁系統(tǒng)已廣泛吸引了人們的注意,并將逐步成為門(mén)禁系統(tǒng)發(fā)展的主流與最終目標(biāo)之一。利用語(yǔ)音識(shí)別技術(shù)來(lái)實(shí)現(xiàn)門(mén)禁系統(tǒng)不用像其他方式一樣需要觸摸,具有方便、安全、準(zhǔn)確、信息完整、獨(dú)立性強(qiáng)、反應(yīng)速度快等優(yōu)點(diǎn)。因此,基于語(yǔ)音
4、識(shí)別技術(shù)的門(mén)禁系統(tǒng)有著非常獨(dú)特的優(yōu)勢(shì)和發(fā)展前景。1.2語(yǔ)音識(shí)別的研究歷史及現(xiàn)狀 語(yǔ)音識(shí)別的研究工作始于20世紀(jì)50年代,1952年Bell實(shí)驗(yàn)室開(kāi)發(fā)的Audry系統(tǒng)是第一個(gè)可以識(shí)別10個(gè)英文數(shù)字的語(yǔ)音識(shí)別系統(tǒng)。1959年,Rorgie和Forge采用數(shù)字計(jì)算機(jī)識(shí)別英文元音和孤立詞,從此開(kāi)始了計(jì)算機(jī)語(yǔ)音識(shí)別。60年代,蘇聯(lián)的Matin等提出了語(yǔ)音結(jié)束點(diǎn)的端點(diǎn)檢測(cè),使語(yǔ)音識(shí)別水平明顯上升;Vintsyuk提出了動(dòng)態(tài)編程,這一提法在以后的識(shí)別中不可或缺。60年代末、70年代初的重要成果是提出了信號(hào)線性預(yù)測(cè)編碼(LPC)技術(shù)和動(dòng)態(tài)時(shí)間規(guī)整(DTW)技術(shù),有效地解決了語(yǔ)音信號(hào)的特征提取和不等長(zhǎng)語(yǔ)音匹配問(wèn)
5、題;同時(shí)提出了矢量量化(VQ)和隱馬爾可夫模型(HMM)理論。80年代語(yǔ)音識(shí)別研究進(jìn)一步走向深入:HMM模型和人工神經(jīng)網(wǎng)絡(luò)(ANN)在語(yǔ)音識(shí)別中成功應(yīng)用。1988年,F(xiàn)ULEE Kai等用VQ/I-IMM方法實(shí)現(xiàn)了997個(gè)詞匯的非特定人連續(xù)語(yǔ)音識(shí)別系統(tǒng)SPHINX。這是世界上第1個(gè)高性能的非特定人、大詞匯量、連續(xù)語(yǔ)音識(shí)別系統(tǒng)。進(jìn)入90年代后,語(yǔ)音識(shí)別技術(shù)進(jìn)一步成熟,并開(kāi)始向市場(chǎng)提供產(chǎn)品。許多發(fā)達(dá)國(guó)家如美國(guó)、日本、韓國(guó)以及IBM、Apple、AT&T、Microsoft等公司都為語(yǔ)音識(shí)別系統(tǒng)的實(shí)用化開(kāi)發(fā)研究投以巨資。同時(shí)漢語(yǔ)語(yǔ)音識(shí)別也越來(lái)越受到重視。IBM開(kāi)發(fā)的 ViaVoice和Microso
6、ft開(kāi)發(fā)的中文識(shí)別引擎都具有了相當(dāng)高的漢語(yǔ)語(yǔ)音識(shí)別水平。進(jìn)入21世紀(jì),隨著消費(fèi)類(lèi)電子產(chǎn)品的普及,嵌入式語(yǔ)音處理技術(shù)發(fā)展迅速2?;谡Z(yǔ)音識(shí)別芯片的嵌入式產(chǎn)品也越來(lái)越多,如Sensory公司的RSC系列語(yǔ)音識(shí)別芯片、Infineon公司的Unispeech和Unilite語(yǔ)音芯片等,這些芯片在嵌入式硬件開(kāi)發(fā)中得到了廣泛的應(yīng)用。在軟件上,目前比較成功的語(yǔ)音識(shí)別軟件有:Nuance、IBM的Viavoice和Microsoft的SAPI以及開(kāi)源軟件HTK,這些軟件都是面向非特定人、大詞匯量的連續(xù)語(yǔ)音識(shí)別系統(tǒng)。 我國(guó)語(yǔ)音識(shí)別研究一直緊跟國(guó)際水平,國(guó)家也很重視。國(guó)內(nèi)中科院的自動(dòng)化所、聲學(xué)所以及清華大學(xué)等科
7、研機(jī)構(gòu)和高校都在從事語(yǔ)音識(shí)別領(lǐng)域的研究和開(kāi)發(fā)。國(guó)家863智能計(jì)算機(jī)專(zhuān)家組為語(yǔ)音識(shí)別技術(shù)研究專(zhuān)門(mén)立項(xiàng),并取得了高水平的科研成果。我國(guó)中科院自動(dòng)化所研制的非特定人、連續(xù)語(yǔ)音聽(tīng)寫(xiě)系統(tǒng)和漢語(yǔ)語(yǔ)音人機(jī)對(duì)話系統(tǒng),其準(zhǔn)確率和系統(tǒng)響應(yīng)率均可達(dá)90%以上。1.3語(yǔ)音識(shí)別技術(shù)及其原理 語(yǔ)音識(shí)別技術(shù)的關(guān)鍵在于準(zhǔn)確地分辨出不同人的語(yǔ)音特征及其信息內(nèi)容,并以此控制其他設(shè)備來(lái)滿足人們的各種需要。語(yǔ)音識(shí)別根據(jù)應(yīng)用場(chǎng)合、使用對(duì)象、語(yǔ)音詞匯量、算法模型等同的分類(lèi)依據(jù),可分為不同的類(lèi)型。針對(duì)辦公室、家庭等私人小型場(chǎng)所,門(mén)禁系統(tǒng)涉及到的主要是特定人語(yǔ)音識(shí)別的特殊要求。本文擬采用對(duì)用戶的依賴(lài)性分類(lèi)的形式,將相關(guān)語(yǔ)音識(shí)別分為兩類(lèi):對(duì)用
8、戶聲音特征的辨識(shí)和對(duì)用戶發(fā)出的命令的確認(rèn)。基于對(duì)聲音特征辨識(shí)的特定人語(yǔ)音識(shí)別在對(duì)安全要求很高的部門(mén)門(mén)禁系統(tǒng)中得到了較為廣泛的應(yīng)用。其基原理:當(dāng)系統(tǒng)接收到外界語(yǔ)音信息后,從事先訓(xùn)練好的語(yǔ)音庫(kù)中找出惟一匹配的聲音特征模型進(jìn)行辨識(shí),如果匹配成功則執(zhí)行下一步操作;反之,如果元法匹配將會(huì)拒絕執(zhí)行任何操作。特定人語(yǔ)音識(shí)別應(yīng)用較簡(jiǎn)單,不需要預(yù)先采集過(guò)多的樣本,對(duì)硬件資源要求也較低,因此降低了系統(tǒng)運(yùn)行中的前期成本;此外,其訓(xùn)練過(guò)程可以根據(jù)用戶習(xí)慣,由用戶任意定義控制項(xiàng)目的具體命令語(yǔ)句,因而適合大多數(shù)中小型以下企業(yè)或部門(mén)的各類(lèi)應(yīng)用。1.4語(yǔ)音識(shí)別的分類(lèi) 由于語(yǔ)音識(shí)別的目的和作用不同,識(shí)別又分為說(shuō)話人識(shí)別和語(yǔ)音識(shí)
9、別。其中說(shuō)話人識(shí)別,可分為與文本有關(guān)和與文本無(wú)關(guān)兩類(lèi)。與文本有關(guān)的語(yǔ)音識(shí)別系統(tǒng)要求用戶按照規(guī)定的內(nèi)容發(fā)音,每個(gè)人的語(yǔ)音模型逐個(gè)被精確地建立,而識(shí)別時(shí)也必須按規(guī)定的內(nèi)容發(fā)音,因此可以達(dá)到較好的識(shí)別效果;而與文本無(wú)關(guān)的識(shí)別系統(tǒng)則不規(guī)定說(shuō)話人的發(fā)音內(nèi)容,模型建立相對(duì)困難,但用戶使用方便,應(yīng)用范圍較寬。從用途上看,可分為說(shuō)話人識(shí)別和說(shuō)話人確認(rèn)。前者判定某一待識(shí)別的聲音是多個(gè)話者中的一個(gè),是多選一的問(wèn)題,屬于閉集識(shí)別范圍。后者判定一個(gè)待識(shí)別的聲音“是或不是”某一特定說(shuō)話者的語(yǔ)音,其輸出只有兩種結(jié)果,為肯定或否定的問(wèn)題。該系統(tǒng)的語(yǔ)音識(shí)別芯片是AP7003,并在其上實(shí)現(xiàn)與文本有關(guān)的說(shuō)話人的確認(rèn),然后執(zhí)行相應(yīng)
10、的命令與操作。該系統(tǒng)主要由說(shuō)話人識(shí)別模塊、門(mén)鎖控制電機(jī)以及門(mén)鎖等部分組成。在訓(xùn)練時(shí),說(shuō)話人的聲音通過(guò)麥克風(fēng)進(jìn)入說(shuō)話人語(yǔ)音信號(hào)采集前端電路,由語(yǔ)音信號(hào)處理電路對(duì)采集的語(yǔ)音信號(hào)進(jìn)行特征化和語(yǔ)音處理,提取說(shuō)話人的個(gè)性特征參數(shù)并進(jìn)行存儲(chǔ),形成說(shuō)話人特征參數(shù)數(shù)據(jù)庫(kù)。在識(shí)別時(shí),將待識(shí)別語(yǔ)音與說(shuō)話人特征參數(shù)數(shù)據(jù)庫(kù)進(jìn)行匹配,通過(guò)輸出電路控制門(mén)控電機(jī),最終實(shí)現(xiàn)對(duì)門(mén)鎖的控制。1.5語(yǔ)音識(shí)別技術(shù)的前景展望 語(yǔ)音作為當(dāng)前通信系統(tǒng)中最自然的通信媒介,語(yǔ)音識(shí)別技術(shù)是非常重要的人機(jī)交互技術(shù)。隨著計(jì)算機(jī)和語(yǔ)音處理技術(shù)的發(fā)展,語(yǔ)音識(shí)別系統(tǒng)的實(shí)用性將進(jìn)一步提高。應(yīng)用語(yǔ)音的自動(dòng)理解和翻譯,可消除人類(lèi)相互交往的語(yǔ)言障礙。國(guó)外已有多種
11、基于語(yǔ)音識(shí)別產(chǎn)品(如聲控?fù)芴?hào)電話、語(yǔ)音記事本等)的應(yīng)用,基于特定任務(wù)和環(huán)境的聽(tīng)寫(xiě)機(jī)也已經(jīng)進(jìn)入應(yīng)用階段。這預(yù)示著語(yǔ)音識(shí)別技術(shù)有著非常廣泛的應(yīng)用領(lǐng)域和市場(chǎng)前景。隨著語(yǔ)音技術(shù)的進(jìn)步和通信技術(shù)的飛速發(fā)展,語(yǔ)音識(shí)別技術(shù)將為網(wǎng)上會(huì)議、商業(yè)管理、醫(yī)藥衛(wèi)生、教育培訓(xùn)等各個(gè)領(lǐng)域帶來(lái)極大的便利5,其應(yīng)用和經(jīng)濟(jì)、社會(huì)效益前景非常良好。1.6語(yǔ)音識(shí)別芯片AP7003簡(jiǎn)介AP7003是一款新型、低成本語(yǔ)音識(shí)別專(zhuān)用集成電路,內(nèi)置有麥克風(fēng)放大器、A/D轉(zhuǎn)換器、語(yǔ)音處理器和I/O控制器,經(jīng)預(yù)處理后可識(shí)別12組不同的字詞,每組1.5秒時(shí)長(zhǎng),可連詞或單詞識(shí)別。AP7003包括AP7003-01(由CPU串行控制)和AP7003-
12、02(由按鍵直接控制)兩種型號(hào),且具有高度的I/O可編程性,使用簡(jiǎn)單方便,可廣泛應(yīng)用于玩具、識(shí)別轉(zhuǎn)控、自動(dòng)答錄等領(lǐng)域。 其主要特性如下: 內(nèi)置麥克風(fēng)放大器 內(nèi)置A/D轉(zhuǎn)換器; DIP40雙列直插式封裝; 識(shí)別12組1.5秒時(shí)長(zhǎng)字詞; I/O口具有2個(gè)普通輸入、4個(gè)觸發(fā)輸入、2個(gè)輸出口(分別有4個(gè)和12個(gè)輸出)、2個(gè)LED動(dòng); 指令優(yōu)化以方便用戶使用; 2.4V4.5V工作電壓,且具備低功耗模式。AP7003具有兩種工作模式,即錄音模式和識(shí)別模式。在使用識(shí)別模式之前,應(yīng)先將目標(biāo)詞錄入芯片內(nèi)。AP7003內(nèi)有12個(gè)存儲(chǔ)體用于存儲(chǔ)12組不同的字句,每個(gè)存儲(chǔ)體可存儲(chǔ)1.5秒時(shí)長(zhǎng)的字詞,可通過(guò)鍵盤(pán)或按程
13、序編制的順序選擇存儲(chǔ)體錄入及存放目標(biāo)詞。語(yǔ)音可通過(guò)外部麥克風(fēng)或其它媒體錄入芯片內(nèi),經(jīng)內(nèi)部處理后以不同的數(shù)字特征信號(hào)保存于存儲(chǔ)體中。目標(biāo)詞錄入芯片內(nèi)后即可將工作模式轉(zhuǎn)換到識(shí)別模式,工作時(shí)芯片將當(dāng)前語(yǔ)音與事先已錄入存儲(chǔ)體的目標(biāo)詞語(yǔ)音相比較,如果有語(yǔ)音特征相匹配,則在芯片的相應(yīng)輸出端口輸出高電平或低電平。需要時(shí)可以將芯片編程為省電模式以節(jié)省電能,當(dāng)有按鍵信號(hào)時(shí)芯片將被喚醒。 系統(tǒng)上電后必須先給AP7003-01發(fā)清除指令Clear Word以清除12個(gè)存儲(chǔ)體內(nèi)的內(nèi)容,然后發(fā)出一個(gè)存儲(chǔ)指令(Store Word1Store Word12之一)將目標(biāo)詞錄入芯片相應(yīng)的存儲(chǔ)體內(nèi)。當(dāng)LED1有效時(shí)表示芯片準(zhǔn)備
14、好錄入目標(biāo)詞。通過(guò)指令Set R_Model或Set R_Mode2可選擇兩種識(shí)別模式:Set R_Model為單詞識(shí)別模式,該模式下識(shí)別操作完成后芯片進(jìn)入省電狀態(tài)以等待新的指令;Set R_Mode2為連詞識(shí)別模式,該模式下識(shí)別操作完成后芯片返回語(yǔ)音錄入狀態(tài)。 進(jìn)入語(yǔ)音識(shí)別狀態(tài)前必須通過(guò)指令Set R_LevellSet R_Level4設(shè)置識(shí)別時(shí)要求的匹配度,Set R_Level4要求匹配程度最高,而Set R_Level1最低,可以根據(jù)經(jīng)驗(yàn)設(shè)定為中間某一個(gè)值。跟在一個(gè)Store Word112指令之后的Store Flag指令將前面錄入的語(yǔ)音存入指定的存儲(chǔ)體以作為目標(biāo)詞。Clear O
15、utputs指令用于清除A端口輸出狀態(tài)(POA1POA12)。Shut Down指令將芯片轉(zhuǎn)入關(guān)閉模式以節(jié)省電能。 當(dāng)數(shù)據(jù)格式或時(shí)序出現(xiàn)在串行數(shù)據(jù)(SERIAL DATA)輸入口PIT3、PIT2、PIT1時(shí),芯片將發(fā)送錯(cuò)誤代碼到串行數(shù)據(jù)輸出口POB4,同時(shí)將數(shù)據(jù)、時(shí)鐘發(fā)送到串行數(shù)據(jù)輸出口POB2、POB3。指令Store Word112、Store Flag、Clear Word、Set R_Level14和Clear Outputs執(zhí)行完成后芯片將輸出一個(gè)Done代碼。芯片每次執(zhí)行完語(yǔ)音識(shí)別后,輸出一個(gè)匹配指示代碼(Match Word1Match Word12或NO Match)。當(dāng)有一
16、個(gè)語(yǔ)音匹配時(shí),LED2有效,如果PIM2被拉高(端口A使能),則A端口相應(yīng)的引腳變?yōu)橛行АH绻鸓IM1引腳被拉低,芯片的語(yǔ)音識(shí)別功能被禁止。1.7系統(tǒng)總體方案該系統(tǒng)的核心處理器是單片機(jī)89s52和ARM芯片S3C2410,并在其上實(shí)現(xiàn)與文本有關(guān)的說(shuō)話人的確認(rèn),然后執(zhí)行相應(yīng)的命令與操作。該系統(tǒng)主要由說(shuō)話人識(shí)別模塊、門(mén)鎖控制電機(jī)以及門(mén)鎖等部分組成。在訓(xùn)練時(shí),說(shuō)話人的聲音通過(guò)麥克風(fēng)進(jìn)入說(shuō)話人語(yǔ)音信號(hào)采集前端電路,由語(yǔ)音信號(hào)處理電路對(duì)采集的語(yǔ)音信號(hào)進(jìn)行特征化和語(yǔ)音處理,提取說(shuō)話人的個(gè)性特征參數(shù)并進(jìn)行存儲(chǔ),形成說(shuō)話人特征參數(shù)數(shù)據(jù)庫(kù)。在識(shí)別時(shí),將待識(shí)別語(yǔ)音與說(shuō)話人特征參數(shù)數(shù)據(jù)庫(kù)進(jìn)行匹配,通過(guò)輸出電路控制門(mén)
17、控電機(jī),最終實(shí)現(xiàn)對(duì)門(mén)鎖的控制。本系統(tǒng)的硬件部分由單片機(jī)89S52、ARM芯S3C2410、無(wú)線發(fā)送模塊、音頻輸入電路、語(yǔ)音識(shí)別電路、門(mén)鎖控制電路、等部分組成。系統(tǒng)框圖如圖1所示。硬件系統(tǒng)主要完成的任務(wù)是將語(yǔ)音信號(hào)數(shù)字化,實(shí)現(xiàn)語(yǔ)音數(shù)據(jù)的采集、上傳、保存、識(shí)別。系統(tǒng)框圖如圖1所示麥克風(fēng)開(kāi)關(guān)電路門(mén)鎖電機(jī)電路 S3C2410語(yǔ)音識(shí)別芯片AP7003無(wú)線發(fā)送模塊89S52 圖1-1 系統(tǒng)硬件框圖 發(fā)出語(yǔ)音命令單片機(jī)向S3C2410發(fā)送指令識(shí)別成功語(yǔ)音處理與識(shí)別NYS3C2410判斷哪一個(gè)門(mén) 控制電機(jī)轉(zhuǎn)動(dòng)圖1-2 系統(tǒng)流程圖第二章 硬件電路設(shè)計(jì)2.1 AT89S52單片機(jī)電路設(shè)計(jì)2.1.1 AT89S52
18、簡(jiǎn)介 AT89S52 是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲(chǔ)器。使用Atmel 公司高密度非 易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完 全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于 常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng) 可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提 供高靈活、超有效的解決方案。 AT89S52具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,256字節(jié)RAM, 32 位I/O 口線,看門(mén)狗定時(shí)器,2 個(gè)數(shù)據(jù)指針,三個(gè)16 位 定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,
19、 片內(nèi)晶振及時(shí)鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏 輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工 作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié), 單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。2.1.2AT89S52引腳說(shuō)明AT89S52系列單片機(jī)各引腳如圖2-1所示。 圖2-140個(gè)引腳中, 4組8位共32個(gè)I/O口,正電源和地線兩根,外置石英振蕩器的時(shí)鐘線兩根,現(xiàn)在對(duì)引腳的功能加以說(shuō)明:VCC:供電電壓。GND:接地。P0口:P0口為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每腳可吸收8TTL門(mén)電流。當(dāng)P1口的管
20、腳第一次寫(xiě)1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門(mén)電流。P1口管腳寫(xiě)入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門(mén)電流,當(dāng)P2口被寫(xiě)“1”時(shí),其管腳被內(nèi)部上拉電阻
21、拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫(xiě)時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。 P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門(mén)電流。當(dāng)P3口寫(xiě)入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3.0 RXD(串行輸
22、入口)P3.1 TXD(串行輸出口)P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)P3.4 T0(記時(shí)器0外部輸入)P3.5 T1(記時(shí)器1外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通)P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。 I/O口作為輸入口時(shí)有兩種工作方式即所謂的讀端口與讀引腳讀端口時(shí)實(shí)際上并不從外部讀入數(shù)據(jù)而是把端口鎖存器的內(nèi)容讀入到內(nèi)部總線經(jīng)過(guò)某種運(yùn)算或變換后再寫(xiě)回到端口鎖存器只有讀端口時(shí)才真正地把外部的數(shù)據(jù)讀入到內(nèi)部總線上面圖中的兩個(gè)三角形表示的就是輸入緩沖器CPU將根據(jù)不同的指令分別發(fā)出讀端口或讀引腳信號(hào)以
23、完成不同的操作這是由硬件自動(dòng)完成的不需要我們操心1然后再實(shí)行讀引腳操作否則就可能讀入出錯(cuò)為什么看上面的圖如果不對(duì)端口置1端口鎖存器原來(lái)的狀態(tài)有可能為0Q端為0Q為1加到場(chǎng)效應(yīng)管柵極的信號(hào)為1該場(chǎng)效應(yīng)管就導(dǎo)通對(duì)地呈現(xiàn)低阻抗,此時(shí)即使引腳上輸入的信號(hào)為1也會(huì)因端口的低阻抗而使信號(hào)變低使得外加的1信號(hào)讀入后不一定是1若先執(zhí)行置1操作則可以使場(chǎng)效應(yīng)管截止引腳信號(hào)直接加到三態(tài)緩沖器中實(shí)現(xiàn)正確的讀入由于在輸入操作時(shí)還必須附加一個(gè)準(zhǔn)備動(dòng)作所以這類(lèi)I/O口被稱(chēng)為準(zhǔn)雙向口89C51的P0/P1/P2/P3口作為輸入時(shí)都是準(zhǔn)雙向口接下來(lái)讓我們?cè)倏戳硪粋€(gè)問(wèn)題從圖中可以看出這四個(gè)端口還有一個(gè)差別除了P1口外P0P2P
24、3口都還有其他的功能 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。 ALE/PROG:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。
25、 /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。 /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2:來(lái)自反向振蕩器的輸出。2.1.3基于AT89S52的語(yǔ)音識(shí)別模塊電路設(shè)計(jì) 圖2-2 電源電路
26、圖2-3振蕩電路 圖2-4 復(fù)位電路 注:語(yǔ)音識(shí)別成功在D1輸出信號(hào),信號(hào)傳輸?shù)絾纹瑱C(jī) 圖2-5語(yǔ)音芯片驅(qū)動(dòng)電路 注:無(wú)線模塊連接單片機(jī),單片機(jī)接收到語(yǔ)音識(shí)別芯片的信號(hào)后通過(guò)此模塊發(fā)送信號(hào)到S3C2410 圖 2-6 無(wú)線發(fā)送電路 圖2-6 單片機(jī)接口電路2.2 S3C2410硬件設(shè)計(jì)2.2.1 S3C2410芯片簡(jiǎn)介S3C2410處理器是Samsung公司基于ARM公司的ARM920T處理器核,采用0.18um制造工藝的32位微控制器。該處理器擁有:獨(dú)立的16KB指令Cache和16KB數(shù)據(jù)Cache,MMU,支持TFT的LCD控制器,NAND閃存控制器,3路UART,4路DMA,4路帶PW
27、M的Timer ,I/O口,RTC,8路10位ADC,Touch Screen接口,IIC-BUS 接口,IIS-BUS 接口,2個(gè)USB主機(jī),1個(gè)USB設(shè)備,SD主機(jī)和MMC接口,2路SPI。S3C2410處理器最高可運(yùn)行在203MHz。 核心板的尺寸僅相當(dāng)于名片的2/3大小,尺寸如此小巧的嵌入式核心板是國(guó)內(nèi)首創(chuàng)。開(kāi)發(fā)商可以充分發(fā)揮想象力,設(shè)計(jì)制造出小體積,高性能的嵌入式應(yīng)用產(chǎn)品。 (1) S3C2410芯片集成了大量的功能單元,包括: (2) 內(nèi)部1.8V,存儲(chǔ)器3.3V,外部I/O3.3V,16KB數(shù)據(jù)Cache,16KB指令Cache,MMU。 (3) 內(nèi)置外部存儲(chǔ)器控制器(SDRAM
28、控制和芯片選擇邏輯)。 (4) LCD控制器,一個(gè)LCD專(zhuān)業(yè)DMA。 (5) 4個(gè)帶外部請(qǐng)求線的DMA。 (6) 3個(gè)通用異步串行端口(IrDA1.0,16-Byte Tx FIFO and 16-Byte Rx FIFO),2通道SPI (7) 一個(gè)多主I2C總線,一個(gè)I2S總線控制器。 (8) SD主接口版本1.0和多媒體卡協(xié)議版本2.11兼容。 (9) 兩個(gè)USB HOST,一個(gè)USB DEVICE(VER1.1)。 (10) 4個(gè)PWM定時(shí)器和一個(gè)內(nèi)部定時(shí)器。 (11) 看門(mén)狗定時(shí)器。 (12) 117個(gè)通用I/O。 (13) 56個(gè)中斷源。 (14) 24個(gè)外部中斷。 (15) 電源
29、控制模式:標(biāo)準(zhǔn)、慢速、休眠、掉電。 (16) 8通道10位ADC和觸摸屏接口。 (17) 帶日歷功能的實(shí)時(shí)時(shí)鐘。 (18) 芯片內(nèi)置PLL。 (19) 設(shè)計(jì)用于手持設(shè)備和通用嵌入式系統(tǒng)。 (20) 16/32位RISC體系結(jié)構(gòu),使用ARM920T CPU核的強(qiáng)大指令集。 (21) 帶MMU的先進(jìn)的體系結(jié)構(gòu)支持WinCE、EPOC32、Linux。 (22) 指令緩存(Cache)、數(shù)據(jù)緩存、寫(xiě)緩存和物理地址TAG RAM,減小了對(duì)主存儲(chǔ)器帶寬和性能的影響。 (23) ARM920T CPU核支持ARM調(diào)試的體系結(jié)構(gòu)。 (24) 內(nèi)部先進(jìn)的位控制器總線(AMBA)(AMBA2.0,AHB/APB
30、)。(25) 小端/大端支持 (26) 地址空間:每個(gè)BANK128MB(全部為1GB)。 (27) 每個(gè)BANK可編程為8/16/32位數(shù)據(jù)總線。 (28) BANK0到BANK6為固定起始地址。 (29) BANK7可編程BANK起始地址和大小。 (30) 一共8個(gè)存儲(chǔ)器BANK。 (31) 前6個(gè)存儲(chǔ)器BANK用于ROM、SRAM和其它。 (32) 兩個(gè)存儲(chǔ)器BANK用于ROM、SRAM、和SDRAM(同步隨機(jī)存儲(chǔ)器)。 支持等待信號(hào)用以擴(kuò)展總線周期。 (33) 支持SDRAM掉電模式下的自刷新。 (34) 支持不同類(lèi)型的ROM用于啟動(dòng)(NOR/NAND Flash、EEPROM和其它)
31、。 2.2.2 S3C2410引腳圖 圖2-7 引腳圖2.2.3 S3C2410硬件設(shè)計(jì) 基于現(xiàn)有的開(kāi)發(fā)板,我們只需把無(wú)線接收模塊的接收模塊連接到S3C2410的串口,為S3C2410開(kāi)發(fā)板通電即可。 注:RXD TXD 接S3C2410的TXD RXD端 圖2-8 無(wú)線接收模塊 2.3電機(jī)電路設(shè)計(jì) 本系統(tǒng)選用了德國(guó)瑞瑪大功率電動(dòng),此電動(dòng)機(jī)拉力強(qiáng),很適合門(mén)禁系統(tǒng)的應(yīng)用電機(jī):德國(guó)銳瑪AVANTI最大推拉力:1500 N (適合面積4-18平方米的家用車(chē)庫(kù)門(mén))工作電壓:24V標(biāo)準(zhǔn)提升高度:2550mm,可配置加長(zhǎng)導(dǎo)軌:最高提升高度:4670mm停電狀態(tài):停電保護(hù)系統(tǒng)。移動(dòng)馬達(dá)是自鎖的。通過(guò)鑰匙可以
32、手動(dòng)運(yùn)行。待機(jī)電耗:1W最大推拉力:1500N(418平方米車(chē)庫(kù)門(mén)面積)。 圖2-9 電機(jī)控制電路 第三章 系統(tǒng)軟件設(shè)計(jì)3.1 linux和QT3.1.1 嵌入式linux 簡(jiǎn)介 本系統(tǒng)的S3C2410是在嵌入式linux QT 平臺(tái)上開(kāi)發(fā)的,有必要對(duì)其作必要的介紹。 嵌入式系統(tǒng)出現(xiàn)于60年代晚期,它最初被用于控制機(jī)電電話交換機(jī),如今已被廣泛的應(yīng)用于工業(yè)制造、過(guò)程控制、通訊、儀器、儀表、汽車(chē)、船舶、航空、航天、軍事裝備、消費(fèi)類(lèi)產(chǎn)品等眾多領(lǐng)域。計(jì)算機(jī)系統(tǒng)核心CPU,每年在全球范圍內(nèi)的產(chǎn)量大概在二十億顆左右,其中超過(guò)80應(yīng)用于各類(lèi)專(zhuān)用性很強(qiáng)的嵌入式系統(tǒng)。一般的說(shuō),凡是帶有微處理器的專(zhuān)用軟硬件系統(tǒng)都
33、可以稱(chēng)為嵌入式系統(tǒng)。 1. 嵌入式Linux系統(tǒng)就是利用Linux其自身的許多特點(diǎn),把它應(yīng)用到嵌入式系統(tǒng)里。 Linux做嵌入式的優(yōu)勢(shì),首先,Linux是開(kāi)放源代碼的,不存在黑箱技術(shù),遍布全球的眾多Linux愛(ài)好者又是Linux開(kāi)發(fā)者的強(qiáng)大技術(shù)支持;其次,Linux的內(nèi)核小、效率高,內(nèi)核的更新速度很快,linux是可以定制的,其系統(tǒng)內(nèi)核最小只有約134KB。第三,Linux是免費(fèi)的OS,在價(jià)格上極具競(jìng)爭(zhēng)力。 Linux還有著嵌入式操作系統(tǒng)所需要的很多特色,突出的就是Linux適應(yīng)于多種CPU和多種硬件平臺(tái),是一個(gè)跨平臺(tái)的系統(tǒng)。到目前為止,它可以支持二三十種CPU。而且性能穩(wěn)定,裁剪性很好,開(kāi)發(fā)
34、和使用都很容易。很多CPU包括家電業(yè)芯片,都開(kāi)始做Linux的平臺(tái)移植工作。移植的速度遠(yuǎn)遠(yuǎn)超過(guò)Java的開(kāi)發(fā)環(huán)境。也就是說(shuō),如果今天用Linux環(huán)境開(kāi)發(fā)產(chǎn)品,那么將來(lái)?yè)QCPU就不會(huì)遇到困擾。同時(shí),Linux內(nèi)核的結(jié)構(gòu)在網(wǎng)絡(luò)方面是非常完整的,Linux對(duì)網(wǎng)絡(luò)中最常用的TCP/IP協(xié)議有最完備的支持。提供了包括十兆、百兆、千兆的以太網(wǎng)絡(luò),以及無(wú)線網(wǎng)絡(luò),Toker ring(令牌環(huán)網(wǎng))、光纖甚至衛(wèi)星的支持。所以Linux很適于做信息家電的開(kāi)發(fā)。 還有使用Linux為的是來(lái)開(kāi)發(fā)無(wú)線連接產(chǎn)品的開(kāi)發(fā)者越來(lái)越多。Linux在快速增長(zhǎng)的無(wú)線連接應(yīng)用主場(chǎng)中有一個(gè)非常重要的優(yōu)勢(shì),就是有足夠快的開(kāi)發(fā)速度。這是因?yàn)長(zhǎng)
35、Inux有很多工具,并且Linux為眾多程序員所熟悉。因此,我們要在嵌入式系統(tǒng)中使用Linux操作系統(tǒng)。 Linux的大小適合嵌入式操作系統(tǒng)Linux固有的模塊性,適應(yīng)性和可配置性,使得這很容易做到。另外,Linux源碼的實(shí)用性和成千上萬(wàn)的程序員熱切其望它用于無(wú)數(shù)的嵌入式應(yīng)用軟件中,導(dǎo)致很多嵌入式Linux的出現(xiàn),包括:Embedix,ETLinux,LEM,Linux Router Project,LOAF,uCLinux,muLinux,ThinLinux,F(xiàn)irePlug,Linux和PizzaBox Linux 相對(duì),Linux的圖形界面還相對(duì)較弱,但近年Linux的圖形界面發(fā)展也很快
36、,這也就不是問(wèn)題。 2. 什么是嵌入式Linux 嵌入式linux 是將日益流行的Linux操作系統(tǒng)進(jìn)行裁剪修改,使之能在嵌入式計(jì)算機(jī)系統(tǒng)上運(yùn)行的一種操作系統(tǒng)。嵌入式linux既繼承了Interlnet上無(wú)限的開(kāi)放源代碼資源,又具有嵌入式操作系統(tǒng)的特性。嵌入式Linux的特點(diǎn)是版權(quán)費(fèi)免費(fèi);購(gòu)買(mǎi)費(fèi)用媒介成本技術(shù)支持全世界的自由軟件開(kāi)發(fā)者提供支持網(wǎng)絡(luò)特性免費(fèi),而且性能優(yōu)異,軟件移植容易,代碼開(kāi)放,有許多應(yīng)用軟件支持,應(yīng)用產(chǎn)品開(kāi)發(fā)周期短,新產(chǎn)品上市迅速,因?yàn)橛性S多公開(kāi)的代碼可以參考和移植,實(shí)時(shí)性能RT_Linux Hardhat Linux 等嵌入式Linux支持,實(shí)時(shí)性能穩(wěn)定性好安全性好。 3.
37、嵌入式Linux有巨大的市場(chǎng)前景和商業(yè)機(jī)會(huì),出現(xiàn)了大量的專(zhuān)業(yè)公司和產(chǎn)品,如Montavista Lineo Emi等,有行業(yè)協(xié)會(huì)如Embedded Linux Consortum等,得到世界著名計(jì)算機(jī)公司和OEM板級(jí)廠商的支持,例如IBM Motorola Intel等。傳統(tǒng)的嵌入式系統(tǒng)廠商也采用了Linux策略,如Lynxworks Windriver QNX等,還有Internet上的大量嵌入式Linux愛(ài)好者的支持。嵌入式Linux支持幾乎所有的嵌入式CPU和被移植到幾乎所有的嵌入式OEM板。 4. 4.嵌入式Linux的應(yīng)用領(lǐng)域非常廣泛,主要的應(yīng)用領(lǐng)域有信息家電、PDA 、機(jī)頂盒、Di
38、gital Telephone、Answering Machine、Screen Phone 、數(shù)據(jù)網(wǎng)絡(luò)、Ethernet Switches、Router、Bridge、Hub、Remote access servers、ATM、Frame relay 、遠(yuǎn)程通信、醫(yī)療電子、交通運(yùn)輸計(jì)算機(jī)外設(shè)、工業(yè)控制、航空航天領(lǐng)域等。 5.如果分別讓10位工程師給出嵌入式系統(tǒng)的定義,將得到10個(gè)不同的答案。一般來(lái)說(shuō),大部分的嵌入式系統(tǒng)執(zhí)行特定的任務(wù)。我們假定最簡(jiǎn)單的嵌入式系統(tǒng)包括輸入/輸出功能,以及一些控制邏輯,該系統(tǒng)基于它的配置執(zhí)行某些類(lèi)型的功能。按照這個(gè)標(biāo)準(zhǔn),可以認(rèn)為一個(gè)包含實(shí)現(xiàn)控制邏輯74123計(jì)數(shù)器
39、以及一個(gè)狀態(tài)是一個(gè)嵌入式系統(tǒng)。也許可以補(bǔ)充說(shuō),該系統(tǒng)必須可通過(guò)存儲(chǔ)在固件中的軟件進(jìn)行編程。這個(gè)新的嵌入式系統(tǒng)定義包括輸入/輸出(I/O),以及存儲(chǔ)在系統(tǒng)固件中的控制邏輯。一個(gè)帶有鼠標(biāo)、鍵盤(pán)、網(wǎng)絡(luò)連接并運(yùn)行圖形用戶界面(GUI,graphical user interface)多任務(wù)操作系統(tǒng)的桌面計(jì)算機(jī)顯然滿足這些要求,但我們能認(rèn)為它是一個(gè)嵌入式系統(tǒng)嗎? 如果桌面計(jì)算機(jī)不是一個(gè)嵌入式系統(tǒng),那么手持設(shè)備呢?它們有I/O功能,可以運(yùn)行存儲(chǔ)在固件中的控制邏輯。有人說(shuō),桌面計(jì)算機(jī)和手持設(shè)備都有通用計(jì)算機(jī)設(shè)備,可以運(yùn)行軟件來(lái)執(zhí)行許多不同的任務(wù),與之不同的是,嵌入式系統(tǒng)(例如,洗碗機(jī)控制器或飛行導(dǎo)航系統(tǒng))主
40、要是為特定任務(wù)而設(shè)計(jì)的。這種特定的功能限定使嵌入式設(shè)備有功能上的唯一性。如果是這樣,為什么一些嵌入式系統(tǒng)設(shè)計(jì)成具有附加的功能,如存儲(chǔ)在非易失性存儲(chǔ)器中的程序,并且具有運(yùn)行可以完成原始設(shè)計(jì)范圍之外的任務(wù)的多任務(wù)操作系統(tǒng)的能力呢? 在過(guò)去,區(qū)分嵌入式系統(tǒng)和通用計(jì)算機(jī)比現(xiàn)在簡(jiǎn)單的多。例如,可以很容易地區(qū)分出一個(gè)基于8051的T1分幅卡嵌入式系統(tǒng)和一臺(tái)Sun UNIX工作站。而現(xiàn)在,從功能方面很難區(qū)分一臺(tái)Sun工作站和一個(gè)包含PowerPC以及32MB內(nèi)存和16MB閃存的機(jī)頂盒。這樣的機(jī)頂盒可以運(yùn)行帶GUI的多任務(wù)操作系統(tǒng),可現(xiàn)場(chǎng)升級(jí),可以同時(shí)運(yùn)行多個(gè)程序(如視頻控制器、數(shù)字錄像和Java虛擬機(jī)),還
41、可以進(jìn)行安全的因特網(wǎng)在線交易。很難判斷這種機(jī)頂盒是否是一個(gè)嵌入式系統(tǒng)。顯然,硬件性能的提升和價(jià)格的下降使通用計(jì)算機(jī)和嵌入式系統(tǒng)之間的界限變得很模糊,技術(shù)的進(jìn)步使得我們很難定義什么是嵌入式。3.1.2 QT簡(jiǎn)介Qt是一個(gè)跨平臺(tái)的c+圖形用戶界面應(yīng)用程序框架。它提供給應(yīng)用程序開(kāi)發(fā)者建立藝術(shù)級(jí)的圖形用戶界面所需的所用功能。Qt是完全面向?qū)ο蟮模苋菀讛U(kuò)展,并且允許真正地組件編程。 自從1996年早些時(shí)候,Qt進(jìn)入商業(yè)領(lǐng)域,它已經(jīng)成為全世界范圍內(nèi)數(shù)千種成功的應(yīng)用程序的基礎(chǔ)。Qt也是流行的Linux桌面環(huán)境KDE 的基礎(chǔ),KDE是所有主要的Linux發(fā)行版的一個(gè)標(biāo)準(zhǔn)組件。 Qt支持下述平臺(tái): MS/Wi
42、ndows - 95、98、NT 4.0、ME、2000、XP 和 Vista Unix/X11 - Linux、Sun Solaris、HP-UX、Compaq Tru64 UNIX、IBM AIX、SGI IRIX和其它很多X11平臺(tái) Macintosh - Mac OS X Embedded - 有幀緩沖(framebuffer)支持的Linux平臺(tái),Windows CE。 Symbian/S60 - 目前已經(jīng)可以提供技術(shù)預(yù)覽版本 Qt是諾基亞公司的一個(gè)產(chǎn)品。 Qt被按不同的版本發(fā)行: Qt商業(yè)版 提供給商業(yè)軟件開(kāi)發(fā)。它們提供傳統(tǒng)商業(yè)軟件發(fā)行版并且提供在協(xié)議有效期內(nèi)的免費(fèi)升級(jí)和技術(shù)支持服
43、務(wù)。如果要獲得最新信息,請(qǐng)瀏覽諾基亞公司Qt Software網(wǎng)站頁(yè)面,或者與sales聯(lián)系。商業(yè)版多一些擴(kuò)展模塊。 Qt開(kāi)源版是Qt僅僅為了開(kāi)發(fā)自由和開(kāi)放源碼軟件, 提供了和商業(yè)版本同樣的功能。GNU通用公共許可證下,它是免費(fèi)的。最新的版本可以在這里下載。從2009年3月發(fā)布的Qt 4.5 起,諾基亞將為Qt增添新的開(kāi)源LGPL授權(quán)選擇。關(guān)于如何正確的選擇這三種授權(quán)協(xié)議,可以閱讀。 從2009年5月11日起,諾基亞Qt Software 宣布 Qt源代碼庫(kù)面向公眾開(kāi)放,Qt 開(kāi)發(fā)人員可通過(guò)為 Qt 以及與 Qt 相關(guān)的項(xiàng)目貢獻(xiàn)代碼、翻譯、示例以及其他內(nèi)容,協(xié)助引導(dǎo)和塑造 Qt未來(lái)的發(fā)展。為了
44、便于這些內(nèi)容的管理,Qt Software 啟用了基于 Git 和 Gitorious 開(kāi)源項(xiàng)目的Web 源代碼管理系統(tǒng)。在推出開(kāi)放式 Qt 代碼庫(kù)的同時(shí),Qt Software 在其官方網(wǎng)站發(fā)布了其產(chǎn)品規(guī)劃(Roadmap)。其中概述了研發(fā)項(xiàng)目中的最新功能,展現(xiàn)了現(xiàn)階段對(duì) Qt 未來(lái)發(fā)展方向的觀點(diǎn),以期鼓勵(lì)社區(qū)提供反饋和貢獻(xiàn)代碼,共同引導(dǎo)和塑造 Qt 的未來(lái)。 Qt的優(yōu)勢(shì)Qt 同 X Window 上的 Motif,Openwin,GTK 等圖形界 面庫(kù)和 Windows 平臺(tái)上的 MFC,OWL,VCL,ATL 是同類(lèi)型的東西,但是 Qt 具有下列優(yōu)點(diǎn): 優(yōu)良的跨平臺(tái)特性: Qt支持下列操
45、作系統(tǒng): Microsoft Windows 95/98, Microsoft Windows NT, Linux,Solaris, SunOS, HP-UX, Digital UNIX (OSF/1, Tru64), Irix, FreeBSD,BSD/OS, SCO, AIX, OS390,QNX 等等。 面向?qū)ο?Qt 的良好封裝機(jī)制使得 Qt 的模塊化程度非常高,可重用性較好,對(duì)于用戶開(kāi)發(fā)來(lái)說(shuō)是非常 方便的。 Qt 提供了一種稱(chēng)為 signals/slots 的安全類(lèi)型來(lái)替代 callback,這使得各個(gè)元件 之間的協(xié)同工作變得十分簡(jiǎn)單。 豐富的 API Qt包括多達(dá) 250 個(gè)以上的
46、 C+ 類(lèi),還提供基于模板的 collections, serialization, file, I/Odevice, directory management, date/time 類(lèi)。甚至還包括正則表達(dá)式的處理 功能。 支持 2D/3D 圖形渲染,支持 OpenGL 大量的開(kāi)發(fā)文檔 XML 支持 Webkit 引擎的集成,可以實(shí)現(xiàn)本地界面與Web內(nèi)容的無(wú)縫集成 但是真正使得 Qt 在自由軟件界的眾多 Widgets (如 Lesstif,Gtk,EZWGL,Xforms,fltk 等等)中脫穎而出的還是基于 Qt 的重量級(jí)軟件 KDE 。3.2 系統(tǒng)軟件的實(shí)現(xiàn)3.2.1 S3C2410的軟
47、件實(shí)現(xiàn) 本系統(tǒng)實(shí)現(xiàn)的是控制多個(gè)門(mén)的升起與降落,當(dāng)單片機(jī)通過(guò)無(wú)線模塊發(fā)送信號(hào)過(guò)來(lái)的時(shí)候,S3C2410從串口中讀出數(shù)據(jù)并對(duì)它作出響應(yīng)。S3C2410的主要工作是判斷是哪一個(gè)門(mén)發(fā)過(guò)來(lái)的信號(hào),并對(duì)其作出響應(yīng)的控制。下面給出部分代碼S3C2410發(fā)送子函數(shù):void Uart_SendByten(int Uartnum, U8 data)/ok eric rong /int i;if(Uartnum=0) while(!(rUTRSTAT0 & 0x4); /Wait until THR is empty.hudelay(10);WrUTXH0(data); else while(!(rUTRSTAT
48、1 & 0x4); /Wait until THR is empty.hudelay(10);WrUTXH1(data); S3C2410接收子函數(shù): char Uart_Getchn(char* Revdata, int Uartnum, int timeout)if(Uartnum=0)while(!(rUTRSTAT0 & 0x1); /Receive data read*Revdata=RdURXH0();return TRUE;elsewhile(!(rUTRSTAT1 & 0x1);/Receive data read*Revdata=RdURXH1();return TRUE;3
49、.2.2單片機(jī)軟件的軟件實(shí)現(xiàn)單片機(jī)的主要的工作是采集語(yǔ)音芯片的信號(hào)通過(guò)無(wú)線模塊發(fā)送給S3C2410主要程序如下:#include#define uchar unsigned char#define uint unsigned intsbit out=P20;sbit signal_input=P11;uint count,temp;void Timer0_Init()TMOD=0X01 ;/十六位定時(shí)器EA=1;/開(kāi)總中斷ET0=1;/ 定時(shí)器T0中斷允許位IT0=1;/外部中斷0跳沿有效,高到低有效 IT1=1;EX0=1; EX1=1;TH0=(65536-10000)/256; TL0=(65536-10000)%256;void timecounter0() interrupt 1 using 2count+; T
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年林業(yè)科技創(chuàng)新項(xiàng)目樹(shù)苗采購(gòu)合同3篇
- 2025年個(gè)人房產(chǎn)買(mǎi)賣(mài)合同標(biāo)準(zhǔn)文本下載7篇
- 二零二五年度智慧城市建設(shè)名義合伙人合同4篇
- 2025年度旅游度假村經(jīng)營(yíng)管理合同范本4篇
- 2025年度跨境投資委托理財(cái)合同范文集錄3篇
- 2025年度智能家居個(gè)人精裝修房屋租賃合同(長(zhǎng)期居住舒適保障)4篇
- 2025年度定制門(mén)窗安裝與品牌授權(quán)合作協(xié)議4篇
- 二零二五版美發(fā)店合伙人經(jīng)營(yíng)目標(biāo)與業(yè)績(jī)考核合同4篇
- 2024年中級(jí)經(jīng)濟(jì)師考試題庫(kù)及完整答案(典優(yōu))
- 建筑材料采購(gòu)合作協(xié)議書(shū)(2篇)
- 春節(jié)文化常識(shí)單選題100道及答案
- 12123交管學(xué)法減分考試題及答案
- 2024年杭州師范大學(xué)附屬醫(yī)院招聘高層次緊缺專(zhuān)業(yè)人才筆試真題
- 制造業(yè)BCM業(yè)務(wù)連續(xù)性管理培訓(xùn)
- 商場(chǎng)停車(chē)場(chǎng)管理制度
- 2025年寒假實(shí)踐特色作業(yè)設(shè)計(jì)模板
- 2024年全國(guó)職業(yè)院校技能大賽高職組(體育活動(dòng)設(shè)計(jì)與實(shí)施賽項(xiàng))考試題庫(kù)(含答案)
- 24年追覓在線測(cè)評(píng)28題及答案
- TGDNAS 043-2024 成人靜脈中等長(zhǎng)度導(dǎo)管置管技術(shù)
- 《陸上風(fēng)電場(chǎng)工程概算定額》NBT 31010-2019
- QJ903.9A-1995航天產(chǎn)品工藝文件管理制度管理用工藝文件編制規(guī)則
評(píng)論
0/150
提交評(píng)論