當(dāng)前位置:首頁 > 電源 > 數(shù)字電源
[導(dǎo)讀]介紹一種基于單片機(jī)和USB服務(wù)芯片PDIUSBD12的USB接口設(shè)計(jì)。該接口應(yīng)用在嵌入式指紋識別系統(tǒng)中,用于嵌入式系統(tǒng)與計(jì)算機(jī)之間進(jìn)行用戶指紋數(shù)據(jù)庫的上傳和下載。詳細(xì)介紹了USB接口的硬件設(shè)計(jì)和固件程序的實(shí)現(xiàn)。

 在指紋自動識別系統(tǒng)中,嵌入式系統(tǒng)由于功耗低、設(shè)備體積小、安全性高等優(yōu)點(diǎn),已經(jīng)得到越來越廣泛的應(yīng)用。通用串行總線(USB)是由Inter、Microsoft、IBM和NEC等共同制定的微機(jī)總線接口規(guī)范,具有較高的傳輸速率(USB 1.1支持最高傳輸速度為12Mb/s,而USB 2.0的傳輸速度最高可達(dá)到480Mb/s),支持即插即用,占用系統(tǒng)資源少,擴(kuò)展能力強(qiáng)。在嵌入式系統(tǒng)的應(yīng)用中,幾乎不可避免與PC機(jī)的通信,由于通信速度的要求以及計(jì)算機(jī)硬件高速發(fā)展,傳統(tǒng)的RS232接口已經(jīng)越來越不能滿足用戶的需求,所以在嵌入式系統(tǒng)中USB接口的實(shí)現(xiàn)勢在必行。
1 嵌入式指紋自動識別系統(tǒng)
    本文所介紹的嵌入式指紋自動識別系統(tǒng)采用DSP與單片機(jī)協(xié)同工作,以實(shí)現(xiàn)指紋自動識別以及用戶服務(wù)系統(tǒng)。其中單片機(jī)選用Philps公司的P89C52,DSP處理器選用TI公司的TMS320C5416。單片機(jī)具有系統(tǒng)控制能力強(qiáng)、結(jié)構(gòu)簡單、擴(kuò)展方便等特點(diǎn),適合作為系統(tǒng)的控制核心;而DSP采用的增強(qiáng)型哈佛結(jié)構(gòu)、多級流水線、多處理單元以及特殊的指令(乘加指令等),使得DSP具有強(qiáng)大的數(shù)據(jù)處理能力,并且TMS320C5416支持最高160MHz的時鐘頻率,基于其強(qiáng)大數(shù)據(jù)處理能力和高運(yùn)行速度,所以將它作為系統(tǒng)的算法核心處理器。由單片機(jī)為核心的控制模塊主要完成用戶服務(wù)系統(tǒng)和系統(tǒng)通信接口,由DSP為協(xié)處理器的算法模塊完成指紋采集和處理。用戶通過鍵盤輸入控制整個系統(tǒng)的工作流程,通過LCD了解系統(tǒng)的工作狀態(tài)及處理結(jié)果。DSP由其HPI(主機(jī)接口)與單片機(jī)以中斷方式進(jìn)行通信。而整個系統(tǒng)通過USB接口與上位PC機(jī)之間進(jìn)行通信。其結(jié)構(gòu)如圖1。

 

 

    系統(tǒng)新用戶注冊時,通過鍵盤輸入注冊ID,然后系統(tǒng)由DSP控制指紋傳感器采集用戶指紋數(shù)據(jù)。如果采集到有效指紋,經(jīng)過DSP進(jìn)行指紋處理得到指紋模板數(shù)據(jù)。系統(tǒng)將該指紋模板存入系統(tǒng)數(shù)據(jù)庫中。如果需要,也可以通過USB接口將用戶信息和對應(yīng)模板都上傳至PC機(jī)中備份。當(dāng)嵌入式系統(tǒng)數(shù)據(jù)丟失時,可以通過USB接口將PC機(jī)里所存?zhèn)浞菹螺d至系統(tǒng)中。下面著重介紹系統(tǒng)的控制模塊和USB接口的設(shè)計(jì)。
2 系統(tǒng)控制模塊設(shè)計(jì)
    系統(tǒng)控制模塊的核心處理器為P89C52,由于其接口有限,同時完成系統(tǒng)控制和USB接口控制將十分困難。而從系統(tǒng)成本、開發(fā)時間周期和繼承性方面考慮,換用其他處理器也不太方便,所以必須考慮在此處理器的基礎(chǔ)上完成多項(xiàng)任務(wù)。由指紋自動識別系統(tǒng)的特點(diǎn)來看,系統(tǒng)在完成指紋錄入或登錄后才需要利用USB接口完成指紋模板和登錄信息的傳輸,所以對于處理器來說,USB控制和系統(tǒng)控制可以采用時分復(fù)用的方式進(jìn)行。由此,利用一個電平轉(zhuǎn)換芯片和一個8總線收發(fā)器來控制數(shù)據(jù)的選通及流向,以保證系統(tǒng)能夠正常工作。具體實(shí)現(xiàn)如圖2。

 


    SN74ALVC164245為5V~3.3V電平轉(zhuǎn)換芯片,負(fù)責(zé)控制單片機(jī)與DSP之間的數(shù)據(jù)流向以及電平轉(zhuǎn)換。因?yàn)閱纹瑱C(jī)的IO電平為5V,而DSP的IO電平為3.3V,所以必須進(jìn)行電平轉(zhuǎn)換。另外,SN74ALVC164245的OE和DIR腳聯(lián)合控制數(shù)據(jù)的流向,當(dāng)OE為高時,芯片兩邊的數(shù)據(jù)互相獨(dú)立;當(dāng)OE為低時,通過DIR的狀態(tài)來控制數(shù)據(jù)的流向。74HC245為總線傳輸器,用來控制單片機(jī)同LCD控制芯片KS0108的數(shù)據(jù)通信,其工作原理與SN74ALVC164245類似,只是沒有電平轉(zhuǎn)換功能。同樣,USB服務(wù)芯片通過SUSPEND管腳來使能數(shù)據(jù)線,將SUSPEND腳置高電平時,整個PDIUSBD12處于休眠狀態(tài)。由此,單片機(jī)就可以通過控制引腳的狀態(tài)來控制數(shù)據(jù)總線,以實(shí)現(xiàn)單片機(jī)數(shù)據(jù)總線的時分復(fù)用。
3 系統(tǒng)USB接口設(shè)計(jì)
3.1 USB接口硬件設(shè)計(jì)
    USB接口硬件主要以接口芯片PDIUSBD12為中心,設(shè)計(jì)它與USB物理接口以及微控制器之間的連接。接口模塊通過跳線選擇供電方式,可同時支持USB總線供電方式和外設(shè)供電方式,為全速USB設(shè)備接口。設(shè)計(jì)過程中充分考慮到可靠性、可測性以及電磁兼容性。其接口電路如圖3所示。

    接口電路供電通過撥盤開關(guān)K1選擇,當(dāng)K1接MVCC時,系統(tǒng)為自供電方式;當(dāng)K1接UVSB時,為總線供電方式。當(dāng)系統(tǒng)處于自供電方式情況下,系統(tǒng)通過EOT_N引腳來檢測VUSB是否存在,并接上一個1M?贅的放電電阻來減弱充電,以確保當(dāng)VUSB移開時EOT_N變?yōu)榈?,并且此時自供電電源與USB總線之間只能共地,同時設(shè)備不能通過USB口向VBNS輸出電流。
    在單片機(jī)與PDIUSBD12的控制通信方面,單片機(jī)通過對PDIUSBD12的A0腳的狀態(tài)控制來指示并行數(shù)據(jù)總線P0上傳輸內(nèi)容為命令還是數(shù)據(jù)。此時,PDIUSBD12上用于數(shù)據(jù)地址總線復(fù)用的ALE引腳一直接地。中斷引腳INT_N是系統(tǒng)的關(guān)鍵,幾乎所有USB的活動在設(shè)備接口端都是由PDIUSBD12接收,然后通過中斷通知單片機(jī)完成。PDIUSBD12上的掛起SUSPEND為一個雙向引腳,由此保證USB設(shè)備既能被設(shè)備主控(單片機(jī))也能被上位PC機(jī)喚醒,而PDIUSBD12工作時連續(xù)3次沒有檢測到SOP就將掛起腳置高。
    PDIUSBD12片上GL_N引腳通過外接發(fā)光二極管來指示系統(tǒng)工作狀態(tài),在USB枚舉過程中,LED指示根據(jù)通信狀況間歇閃爍;當(dāng)PDIUSBD12成功枚舉和配置后,LED指示將一直點(diǎn)亮;隨后與PDIUSBD12之間成功地傳輸(帶應(yīng)答)將關(guān)閉LED;處于掛起狀態(tài)時LED將會關(guān)閉。
    片上時鐘發(fā)生電路采用6MHz晶振,匹配一個22pF和一個68pF的無源電容。采用6MHz晶振也是為了降低產(chǎn)品制造過程中產(chǎn)生EMI(電磁干擾效應(yīng))的風(fēng)險,因?yàn)橥獠烤€路的頻率越高,其EMI效應(yīng)也會越強(qiáng),而在片外電路采用較低頻率并在芯片內(nèi)部進(jìn)行倍頻的措施將既不影響芯片的處理速度,又能提高在外部布線的安全性。使用兩個不同容值電容的目的是為了使晶體能夠快速起振,經(jīng)過測量,晶振的啟動時間在2ms左右。
    PDIUSBD12可采用5V和3.3V兩種工作電壓。由于主控單片機(jī)的IO電壓為5V,所以對PDIUSBD12也使用5V的工作電壓。此時在接入5V至PDIUSBD12 VCC腳的同時,要將PDIUSBD12上的VOUT腳空出,接去耦電容。另外,為了減小系統(tǒng)的EMI,在USB連接器輸入側(cè)的VBUS和地線上增加磁珠,如圖3的BLM21P,并且在USB的屏蔽罩與地之間使用容性耦合。
    由于USB通信協(xié)議的復(fù)雜性,相當(dāng)一部分工作由硬件電路來完成,所以對硬件電路設(shè)計(jì)的準(zhǔn)確性要求非常嚴(yán)格,布線要合理要盡量減少分布電容和電磁干擾的影響,硬件電路的質(zhì)量將直接影響到數(shù)據(jù)能否正常傳輸。
3.2 USB設(shè)備固件程序的開發(fā)
    固件程序主要由主程序和中斷服務(wù)程序組成。USB設(shè)備請求包括標(biāo)準(zhǔn)設(shè)備請求和廠商請求。標(biāo)準(zhǔn)設(shè)備請求用來完成USB設(shè)備枚舉的命令,而廠商請求則是根據(jù)具體USB設(shè)備來完成特殊任務(wù)的命令。對于本文采用的USB服務(wù)芯片PDIUSBD12,其片內(nèi)的SIE(串行接口引擎)實(shí)現(xiàn)了全部的USB協(xié)議層,且完全由硬件實(shí)現(xiàn)而不需要固件的參與,所以對于USB固件程序來說,USB協(xié)議的具體實(shí)現(xiàn)就可以根據(jù)PDIUSBD12所提供的命令字來完成。最后剩下的就是硬件層上讀寫數(shù)據(jù)的程序?qū)崿F(xiàn)。其總體結(jié)構(gòu)如圖4。

 


    其工作流程大致為:主循環(huán)完成一些初始化工作,轉(zhuǎn)入等待中斷的循環(huán)中;當(dāng)USB總線上有事務(wù)發(fā)生時,PDIUSBD12將會自動產(chǎn)生相應(yīng)的中斷來通知固件程序;然后固件程序轉(zhuǎn)入相應(yīng)的中斷服務(wù)程序處理中斷,主循環(huán)通過讀取中斷服務(wù)程序中設(shè)定的事件標(biāo)志和循環(huán)數(shù)據(jù)緩沖區(qū)來決定轉(zhuǎn)入相應(yīng)的請求響應(yīng);響應(yīng)程序通過再下層的PDIUSBD12命令接口程序控制PDIUSBD12完成相應(yīng)數(shù)據(jù)或命令操作。此積木式結(jié)構(gòu)的固件程序組合完成了USB接口設(shè)備從初始化到數(shù)據(jù)傳輸?shù)娜縐SB活動。
    本文根據(jù)USB1.1協(xié)議由其服務(wù)芯片PDIUSBD12和單片機(jī)P89C52完成了嵌入式指紋自動識別系統(tǒng)的USB接口硬件和固件程序的研究和開發(fā),并結(jié)合上位PC機(jī)的驅(qū)動程序和應(yīng)用程序?yàn)檎麄€嵌入式系統(tǒng)提供了一個穩(wěn)定性好、傳輸速度快、使用方便的USB接口。達(dá)到嵌入式系統(tǒng)與PC機(jī)之間靈活通信,使本嵌入式指紋自動識別系統(tǒng)得到了更廣范的應(yīng)用。
參考文獻(xiàn)
[1] Philps.PDIUSBD12 Datasheet.http://www.21icsearch.com/searchpdf/default.asp?admin=.
[2] Walter Oney.Programming the Microsoft Windows Driver Model[M].Microsoft Press,1999.
[3] Compaq,Intel,Microsoft,NEC.Universal serial bus specification Revision 1.1.http://www.8easy.cn/Soft_Show.asp?SoftID=91.
[4] 夏瑋瑋.嵌入式系統(tǒng)關(guān)鍵技術(shù)分析與開發(fā)應(yīng)用,2003,2.
[5] PDIUSBD12固件編程指南.http://www.zlgmcu.com.
[6] 王朔,李剛.USB接口器件PDIUSBD12的接口應(yīng)用設(shè)計(jì),天津:天津大學(xué).

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉