當(dāng)前位置:首頁(yè) > 模擬 > 模擬
[導(dǎo)讀]隨著現(xiàn)代工業(yè)生產(chǎn)和科學(xué)研究對(duì)數(shù)據(jù)采集系統(tǒng)的要求日益提高,傳輸速度、糾錯(cuò)能力和操作安裝的簡(jiǎn)易性是人們進(jìn)行采集數(shù)據(jù)時(shí)一直關(guān)注的問(wèn)題,這使得數(shù)據(jù)通訊技術(shù)不可避免地成為了其中的關(guān)鍵技術(shù),而數(shù)據(jù)采集系統(tǒng)采用何種

隨著現(xiàn)代工業(yè)生產(chǎn)和科學(xué)研究對(duì)數(shù)據(jù)采集系統(tǒng)的要求日益提高,傳輸速度、糾錯(cuò)能力和操作安裝的簡(jiǎn)易性是人們進(jìn)行采集數(shù)據(jù)時(shí)一直關(guān)注的問(wèn)題,這使得數(shù)據(jù)通訊技術(shù)不可避免地成為了其中的關(guān)鍵技術(shù),而數(shù)據(jù)采集系統(tǒng)采用何種接口進(jìn)行數(shù)據(jù)通訊是影響系統(tǒng)整體效率的重要因素之一。USB(通用串行總線(xiàn))總線(xiàn)接口技術(shù)由于具有速度快、設(shè)備安裝和配置容易、易于擴(kuò)展、能夠采用總線(xiàn)供電及使用靈活等優(yōu)點(diǎn),已逐漸成為現(xiàn)代數(shù)據(jù)傳輸?shù)陌l(fā)展趨勢(shì)[1-5]。

本文給出了一種基于C8051F320的數(shù)據(jù)采集系統(tǒng)USB 接口設(shè)計(jì)方案,完成了USB 接口硬件電路設(shè)計(jì)和軟件程序開(kāi)發(fā),并將其應(yīng)用到倉(cāng)庫(kù)視頻監(jiān)控系統(tǒng)中,實(shí)現(xiàn)了快速、方便的數(shù)據(jù)采集和傳輸。

2 C8051F320 單片機(jī)原理

2.1 C8051F320 的主要特點(diǎn)

C8051F320 是由美國(guó)Cygnal 公司推出的C8051F 系列單片機(jī)中的一款用于USB 設(shè)備的小型單片機(jī)。該器件內(nèi)部集成有2304 Byte RAM 和16K Byte 的Flash 存儲(chǔ)器。由于利用該芯片進(jìn)行設(shè)計(jì)時(shí)可以不需要任何外部元件(包括電阻和晶振),因而是小型USB 應(yīng)用的理想選擇。與其它同類(lèi)USB 產(chǎn)品相比,C8051F320 主要具有如下一些特點(diǎn):

① 滿(mǎn)足 USB2.0 協(xié)議;

② 可在全速(12 Mbps)或低速(1.5 Mbps)下運(yùn)行;

③ 集成有一個(gè)時(shí)鐘源,對(duì)于全速或低速傳輸均可不用外部晶振;

④ 支持 8 個(gè)靈活通用的USB 端點(diǎn);

⑤ 內(nèi)置一個(gè) 1K 的USB 專(zhuān)用緩沖存儲(chǔ)器;

⑥ 集成了一個(gè) USB 接收器,不需要外部電阻。

⑦ 具有高速增強(qiáng)型 8051 MCU 內(nèi)核,該MCU 內(nèi)核采用流水線(xiàn)式指令結(jié)構(gòu),70%的指令執(zhí)行時(shí)間為一個(gè)或兩個(gè)系統(tǒng)時(shí)鐘周期,處理速度可達(dá)25MIPS(時(shí)鐘頻率為25MHz 時(shí))。此外,C8051F320 還有許多其它特性,如支持在系統(tǒng)編程(ISP),帶有可編程的數(shù)字I/O和數(shù)字交叉開(kāi)關(guān),可提供全速、非侵入式的在系統(tǒng)片內(nèi)調(diào)試電路等。

2.2 C8051F320 的引腳封裝

C8051F320 的引腳排列如圖1 所示,封裝為T(mén)QFP-32。其中VDD 為數(shù)字電源;GND為模擬地;REGIN 為5V 校準(zhǔn)器的輸入端;RST/C2CK 為設(shè)備的復(fù)位引腳或EC2 調(diào)試接口的時(shí)鐘信號(hào);P3.0/C2D 為端口P3.0 或EC2 調(diào)試接口的雙向信號(hào)引腳;VBUS 為USB 總線(xiàn)輸入腳;D+為USB 的D+;D-為USB 的D-;P0.2/XTAL1 為端口0.2 或外部晶振輸入;

P0.3/XTAL2 為端口P0.3 或外部晶振輸出;P0.6/CNVSTR 為端口P0.6 或ADC0 外部轉(zhuǎn)換開(kāi)始輸入腳;P0.7/VRFF 為端口P0.7 或外部參考電源的輸入端或輸出端;P0.0、P0.1、P0.4、P0.5、P1.0~P1.7、P2.0~P2.7 均為相應(yīng)的端口引腳。

3 USB 接口電路設(shè)計(jì)

3.1 USB 接口硬件電路設(shè)計(jì)

由于 C8051F320 微控制器內(nèi)部集成了一個(gè)USB 接收器,簡(jiǎn)單易用,因此,用它進(jìn)行USB 接口的硬件設(shè)計(jì)也顯得比較簡(jiǎn)單。主要包括兩部分的內(nèi)容,一是接口轉(zhuǎn)換模塊供電方式的選擇,二是USB 引腳的連接。圖2 是其USB 接口電路圖。模塊選擇自供電模式,圖2所示的整個(gè)模塊的供電電源都來(lái)自外部5V 電源。C8051F320 中的USB 收發(fā)器內(nèi)部已經(jīng)集成了上拉電阻,不需要任何外部器件就可直接與USB 接口相連。


圖 2 USB 接口連接電路圖

3.2 USB 設(shè)備固件程序設(shè)計(jì)

USB 設(shè)備固件程序是USB 設(shè)備必須實(shí)現(xiàn)的部分,它的主要目的是:當(dāng)USB 設(shè)備連接到主機(jī)上時(shí),主機(jī)可以發(fā)現(xiàn)新設(shè)備,然后建立連接并完成數(shù)據(jù)傳輸任務(wù),也就是能夠讓上位機(jī)能夠正常檢測(cè)和識(shí)別USB 設(shè)備。因此,本固件設(shè)計(jì)的目的是使主機(jī)能夠識(shí)別C8051F320設(shè)備,以及正確的與它進(jìn)行通信。同時(shí)為了在USB 上達(dá)到最大的傳輸速度,C8051F320 固件設(shè)計(jì)成中斷驅(qū)動(dòng)。

C8051F320固件分為兩個(gè)部分:前臺(tái)主程序和后臺(tái)中斷服務(wù)程序(ISR)。在USB固件程序中,最重要的工作就是USB描述符的定義和USB傳輸中斷的處理。USB描述符是USB協(xié)議定義的一套描述設(shè)備功能和屬性的固定結(jié)構(gòu)的描述語(yǔ)言。USB2.0中的描述符包括設(shè)備描述符、配置描述符、接口描述符、端點(diǎn)描述符等8種標(biāo)準(zhǔn)描述符和其它一些非標(biāo)準(zhǔn)描述符。USB主機(jī)通過(guò)USB描述符完成設(shè)備類(lèi)型的識(shí)別和配置,客戶(hù)端驅(qū)動(dòng)程序通過(guò)這些信息來(lái)正確訪(fǎng)問(wèn)設(shè)備并與其通信。本文在對(duì)C8051F320的配置中除了端點(diǎn)0外還用到了端點(diǎn)1和端點(diǎn)2,它們的描述符如表1所示。

USB傳輸中斷的處理也是一個(gè)重要的部分。傳輸中斷的處理由ISR和前臺(tái)主程序共同完成。這兩部分的數(shù)據(jù)交換通過(guò)事件標(biāo)志和數(shù)據(jù)緩沖區(qū)來(lái)實(shí)現(xiàn)[6]。當(dāng)C8051F320的USB引擎從主機(jī)收到一個(gè)數(shù)據(jù)包時(shí),就會(huì)產(chǎn)生一個(gè)中斷請(qǐng)求,C8051F320立即響應(yīng)中斷,通過(guò)讀取USB功能控制器的三個(gè)中斷寄存器CMINT、IN1INT和OUT1INT來(lái)判斷中斷來(lái)源(USB復(fù)位中斷、端點(diǎn)0中斷、端點(diǎn)1輸入中斷、端點(diǎn)2輸出中斷),然后根據(jù)不同的中斷來(lái)源跳入相應(yīng)的處理模塊以進(jìn)行不同的中斷處理,并在處理完畢后返回。其中,端點(diǎn)0是每個(gè)USB
設(shè)備都必須支持的默認(rèn)控制傳輸端點(diǎn),主要用于主機(jī)對(duì)USB設(shè)備的配置、狀態(tài)信息的獲取和設(shè)備錯(cuò)誤的糾正等,它的中斷處理模塊由控制輸出和控制輸入兩部分組成。每次傳輸首先由設(shè)置事務(wù)開(kāi)始,然后根據(jù)設(shè)置事務(wù)數(shù)據(jù)不同的中斷來(lái)源跳入相應(yīng)的處理模塊以進(jìn)行不同的中斷處理,并在處理完畢后返回。同時(shí)在ISR中,固件將數(shù)據(jù)包從C8051F320的USB引擎內(nèi)部緩沖區(qū)移到一個(gè)自定義的數(shù)據(jù)緩沖區(qū),并在隨后請(qǐng)求清零其內(nèi)部緩沖區(qū),以使其能夠繼續(xù)接收新的數(shù)據(jù)包。然后返回到主循環(huán),檢查自定義緩沖區(qū)內(nèi)是否有新的數(shù)據(jù)并開(kāi)始其它的任務(wù)。由于這種結(jié)構(gòu),主循環(huán)只用檢查自定義緩沖區(qū)內(nèi)需要處理的新數(shù)據(jù),專(zhuān)注于新數(shù)據(jù)的處理,而ISR也能夠以最大速度進(jìn)行數(shù)據(jù)的傳輸。這樣,程序?qū)SB的操作更加簡(jiǎn)單,也便于程序的維護(hù)。主程序和端點(diǎn)0的控制傳輸程序流程分別如圖3、圖4所示。端點(diǎn)1和端點(diǎn)2的程序流程與之類(lèi)似。

4數(shù)據(jù)的接收和顯示

在主機(jī)中安裝基于C8051F320USB設(shè)備的驅(qū)動(dòng)程序(可以在新華龍網(wǎng)站上下載)之后,該設(shè)備就會(huì)被默認(rèn)成該主機(jī)的一個(gè)串口,因此在主機(jī)的處理中可以將它當(dāng)作一個(gè)虛擬的串口進(jìn)行處理,讀取其數(shù)據(jù)就如讀串口數(shù)據(jù)一樣方便,很快就能夠建立快速通信平臺(tái)。主機(jī)軟件采用VC++開(kāi)發(fā)的,串行通信部分采用API函數(shù)直接進(jìn)行編寫(xiě)。它為應(yīng)用程序提供了通過(guò)串行接口收發(fā)數(shù)據(jù)的方法。主機(jī)軟件使用API文件函數(shù)進(jìn)行串口通信的控制。具體函數(shù)以及使用,可以查閱MSDN。將基于C8051F320的USB接口電路應(yīng)用到倉(cāng)庫(kù)視頻監(jiān)控系統(tǒng)中,其系統(tǒng)結(jié)構(gòu)框圖如圖5所示。

5結(jié)束語(yǔ)

本文利用C8051F320速度快、處理能力強(qiáng)、結(jié)構(gòu)簡(jiǎn)單等特點(diǎn),設(shè)計(jì)了一種基于C8051F320的數(shù)據(jù)采集系統(tǒng)USB接口方案,給出了USB接口電路具體的設(shè)計(jì)方法,并對(duì)主機(jī)的數(shù)據(jù)和顯示進(jìn)行了開(kāi)發(fā)。將設(shè)計(jì)的USB接口應(yīng)用到倉(cāng)庫(kù)視頻監(jiān)控系統(tǒng)中,能夠?qū)崿F(xiàn)快速、方便的數(shù)據(jù)傳輸,數(shù)據(jù)通信能達(dá)到上兆的傳輸速率,滿(mǎn)足了實(shí)時(shí)、快速傳遞數(shù)據(jù)的要求。

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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