當(dāng)前位置:首頁(yè) > 智能硬件 > 智能硬件
[導(dǎo)讀]利用USB接口技術(shù),采用USB模塊CH375,在加速器核輻射監(jiān)測(cè)系統(tǒng)中實(shí)現(xiàn)了多個(gè)探測(cè)通道USB接口與計(jì)算機(jī)通信。給出了CH375與單片機(jī)接口電路的原理簡(jiǎn)圖,并詳細(xì)介紹了實(shí)現(xiàn)多通道USB數(shù)據(jù)傳輸?shù)纳?、下位機(jī)的程序設(shè)計(jì)。

摘要:利用USB接口技術(shù),采用USB模塊CH375,在加速器核輻射監(jiān)測(cè)系統(tǒng)中實(shí)現(xiàn)了多個(gè)探測(cè)通道USB接口與計(jì)算機(jī)通信。給出了CH375與單片機(jī)接口電路的原理簡(jiǎn)圖,并詳細(xì)介紹了實(shí)現(xiàn)多通道USB數(shù)據(jù)傳輸?shù)纳?、下位機(jī)的程序設(shè)計(jì)。
關(guān)鍵詞:USB接口,加速器,核輻射監(jiān)測(cè)系統(tǒng),多通道

    正離子靜電加速器在運(yùn)轉(zhuǎn)過(guò)程中會(huì)產(chǎn)生能量較高的γ﹑X和快中子等多種放射性輻射,對(duì)周圍的環(huán)境造成污染,對(duì)生命造成危害[1]。由于其體積龐大,輻射范圍廣,需設(shè)計(jì)一個(gè)多探測(cè)端的多通道同步核輻射監(jiān)測(cè)系統(tǒng),針對(duì)加速器周圍環(huán)境進(jìn)行輻射防護(hù)監(jiān)測(cè)。每個(gè)探測(cè)端屬于一個(gè)探測(cè)通道,它們相互獨(dú)立。各通道將采集到的數(shù)據(jù)傳輸給上位機(jī)(主控計(jì)算機(jī))。上位機(jī)進(jìn)行數(shù)據(jù)處理并顯示各個(gè)探測(cè)端的輻射強(qiáng)度及吸收劑量。

    若采用串口(RS232)實(shí)現(xiàn)多通道傳輸,各通道每次向上位機(jī)傳輸?shù)臄?shù)據(jù)容量大(16K),而串口傳輸速度慢,花費(fèi)的時(shí)間長(zhǎng)。在通信過(guò)程中,相應(yīng)通道進(jìn)入中斷服務(wù)程序后,不能夠再采集新的信號(hào),更加嚴(yán)重地影響了系統(tǒng)的探測(cè)效率。于是就采用CH375構(gòu)成的USB接口進(jìn)行數(shù)據(jù)傳輸。速率可提高到1Mbit/s以上。同時(shí)USB所具有的即插即用、通用性強(qiáng)、易擴(kuò)展、可靠性好等優(yōu)點(diǎn)[2,3]也極大地改善了接口的使用性能。

1 CH375模塊[4]簡(jiǎn)介

    USB模塊CH375是一個(gè)USB總線的通用設(shè)備接口芯片,用戶無(wú)需編寫驅(qū)動(dòng)程序,內(nèi)置有USB通訊中的底層協(xié)議,完全滿足USB1.1標(biāo)準(zhǔn)。具有8位數(shù)據(jù)總線(D0~D7)、地址輸入(A0)、讀(RD#)、 寫(WR#)、片選控制線(CS#)以及中斷輸出(INT#),可以方便地掛接到單片機(jī)的數(shù)據(jù)總線上。當(dāng)A0為低電平時(shí)選擇數(shù)據(jù)端口,單片機(jī)通過(guò)8位并口對(duì)CH375進(jìn)行讀寫數(shù)據(jù);為高電平時(shí)選擇命令端口,可以向其寫入命令。

    在本地端,單片機(jī)對(duì)CH375的操作是采用命令加數(shù)據(jù)的I/O操作方式,任何操作都是先發(fā)命令(其命令格式參考文獻(xiàn)3)給CH375,然后執(zhí)行數(shù)據(jù)輸入輸出。CH375接收到上位機(jī)發(fā)送的數(shù)據(jù)或者發(fā)送完給上位機(jī)的數(shù)據(jù)后,以中斷方式通知單片機(jī)。

    將CH375芯片的驅(qū)動(dòng)程序、動(dòng)態(tài)鏈接庫(kù)拷貝到上位機(jī)中,利用CH375動(dòng)態(tài)鏈接庫(kù)DLL提供的API函數(shù)對(duì)其進(jìn)行操作,對(duì)USB設(shè)備的通信就幾乎和訪問(wèn)本地硬盤中的文件差不多了。

2 具有多個(gè)USB接口的多通道數(shù)據(jù)采集系統(tǒng)

    圖1是加速器的核輻射監(jiān)測(cè)系統(tǒng)。是個(gè)具有多個(gè)USB接口的多通道數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)可安裝連接多個(gè)探測(cè)端(最多128個(gè))。監(jiān)測(cè)不同的放射性輻射時(shí),裝配相應(yīng)的探測(cè)器。每個(gè)探測(cè)通道的工作原理及電子線路都相同,分別連接到USB擴(kuò)展卡上。多道分析器采用高性能AVR單片機(jī)ATmega128作為控制器。ATmega128運(yùn)用Harvard結(jié)構(gòu)概念,具有預(yù)取指令功能,機(jī)器周期為1個(gè)時(shí)鐘周期,絕大多數(shù)指令為單周期指令,工作頻率為16MHz時(shí)可達(dá)到16MIPS的性能[5]。用其控制高速模數(shù)轉(zhuǎn)換電路,把探測(cè)器輸出的模擬量轉(zhuǎn)換成計(jì)算機(jī)可接收的數(shù)字量,進(jìn)行存儲(chǔ),等待上位機(jī)的讀取。

圖1加速器多通道核輻射監(jiān)測(cè)系統(tǒng)結(jié)構(gòu)圖

    單一探測(cè)通道,用CH375構(gòu)成的USB接口電路原理如圖2所示。各通道接收到上位機(jī)發(fā)出讀取數(shù)據(jù)命令后,由ATmega128控制將所有探測(cè)數(shù)據(jù)通過(guò)USB接口電路傳輸給上位機(jī)。

圖2  CH375構(gòu)成的USB接口電路原理圖

3 多個(gè)通道USB接口的軟件設(shè)計(jì)

    各通道的USB模塊CH375在計(jì)算機(jī)應(yīng)用層與其本地端單片機(jī)ATmega128之間提供了端對(duì)端的連接。統(tǒng)一采用數(shù)據(jù)加應(yīng)答方式進(jìn)行通信,所有的通信都由計(jì)算機(jī)應(yīng)用層發(fā)起,然后以接收到單片機(jī)的應(yīng)答結(jié)束。單一通道完整的通信過(guò)程包括:

① 計(jì)算機(jī)應(yīng)用層按事先約定的格式將數(shù)據(jù)請(qǐng)求發(fā)送給CH375;

② CH375以中斷方式通知單片機(jī)。

③ 單片機(jī)進(jìn)入中斷服務(wù)程序,獲取CH375的中斷狀態(tài)并分析;

④ 如果是上傳(上傳緩沖區(qū)的數(shù)據(jù)被計(jì)算機(jī)成功讀?。瑒t釋放當(dāng)前USB緩沖區(qū),然后退出中斷程序;

⑤ 如果是下傳(下傳緩沖區(qū)成功接收到計(jì)算機(jī)發(fā)送的數(shù)據(jù)),則從數(shù)據(jù)下傳緩沖區(qū)讀取數(shù)據(jù)塊;

⑥ 分析接收到的數(shù)據(jù)塊,如果是數(shù)據(jù)請(qǐng)求上傳命令,準(zhǔn)備應(yīng)答數(shù)據(jù)(采集數(shù)據(jù));

⑦ 單片機(jī)將采集數(shù)據(jù)寫入數(shù)據(jù)上傳緩沖區(qū)中,然后退出中斷程序;

⑧ CH375將采集數(shù)據(jù)返回給計(jì)算機(jī);

⑨ 計(jì)算機(jī)應(yīng)用層接收到應(yīng)答數(shù)據(jù),傳輸結(jié)束;

    該通訊方式具有數(shù)據(jù)自動(dòng)同步、程序設(shè)計(jì)簡(jiǎn)單、較好的交互性和可控性等優(yōu)點(diǎn)。計(jì)算機(jī)定時(shí)以此方式順次訪問(wèn)各通道,獲取各通道采集到的數(shù)據(jù)。

3.1 單片機(jī)端的程序設(shè)計(jì)

   各通道單片機(jī)端程序設(shè)計(jì)相同。ATmega128中斷1(INT1)作為USB的中斷入口(參考圖2),采用數(shù)據(jù)加應(yīng)答方式,其中斷1服務(wù)處理程序設(shè)計(jì)流程圖如圖3所示。

圖3 單片機(jī)端ATmega128中斷服務(wù)處理程序流程圖

    采用C語(yǔ)言編程,編寫單片機(jī)端ATmega128中斷1服務(wù)處理程序的基本框架如下所示:

void int1_isr (void)         //USB中斷入口程序

{

CH375_WR_CMD_PORT(CMD_GET_STATUS); //向CH375發(fā)送中斷狀態(tài)獲取命令

InterruptStatus = CH375_RD_DAT_PORT();//獲取中斷狀態(tài),并通知CH375取消中斷請(qǐng)求

// 分析中斷狀態(tài),并做相應(yīng)處理               

if ( InterruptStatus= =USB_INT_EP2_OUT) // 數(shù)據(jù)下傳

{

CH375_WR_CMD_PORT( CMD_RD_USB_DATA );// 向CH375發(fā)送讀數(shù)據(jù)命令

RD_Data =CH375_RD_DAT_PORT( );//從CH375下傳緩沖區(qū)讀取數(shù)據(jù)塊

……… //分析接收到的數(shù)據(jù)塊

CH375_WR_CMD_PORT(CMD_WR_USB_DATA7); // 向CH375發(fā)送寫數(shù)據(jù)命令

CH375_WR_DAT_PORT( DATA);// 將采集數(shù)據(jù)DATA寫入CH375數(shù)據(jù)上傳緩沖區(qū)

return;

}

If(InterruptStatus= = USB_INT_EP2_IN) // 數(shù)據(jù)上傳

{

CH375_WR_CMD_PORT( CMD_UNLOCK_USB );// 釋放當(dāng)前USB緩沖區(qū)

    return;

}

}

3.2 計(jì)算機(jī)端的程序設(shè)計(jì)

    采用Visual C++作為計(jì)算機(jī)端應(yīng)用軟件的開發(fā)平臺(tái),以實(shí)現(xiàn)兩通道USB數(shù)據(jù)傳輸為例,計(jì)算機(jī)端程序設(shè)計(jì)流程圖如圖4所示。USB設(shè)備1即指通道1;USB設(shè)備2即指通道2。

圖4 計(jì)算機(jī)端兩通道USB數(shù)據(jù)傳輸程序設(shè)計(jì)流程圖

    利用MFC(微軟基礎(chǔ)類)定時(shí)器函數(shù)[6],計(jì)算機(jī)定時(shí)順序訪問(wèn)兩通道,獲取采集數(shù)據(jù)。編寫計(jì)算機(jī)端定時(shí)中斷處理程序的基本框架如下所示:

OnTimer(UINT nIDEvent)  //定時(shí)函數(shù)入口

{

if (CH375OpenDevice(0 )= =INVALID_HANDLE_VALUE) // 打開USB設(shè)備1(通道1 USB模塊CH375),返回句柄,出錯(cuò)無(wú)效

………

if (CH375OpenDevice(1 )= =INVALID_HANDLE_VALUE) //打開USB設(shè)備2

………

if ( CH375WriteData( 0, WriteBuf, &length) ) //發(fā)送數(shù)據(jù)請(qǐng)求命令給USB設(shè)備1,成功發(fā)送后返回真。WriteBuf指向放置準(zhǔn)備寫出數(shù)據(jù)的緩沖區(qū)。Length指向長(zhǎng)度單元,輸入時(shí)為準(zhǔn)備寫出的長(zhǎng)度,返回后為實(shí)際寫出的長(zhǎng)度。

………

if ( CH375ReadData( 0, ReadBuf, & length) ) //從USB設(shè)備1讀取采集數(shù)據(jù),成功讀取后返回真。ReadBuf為指向用于保存讀取數(shù)據(jù)的緩沖區(qū)。Length指向長(zhǎng)度單元,輸入時(shí)為準(zhǔn)備讀取得長(zhǎng)度,返回后為實(shí)際讀取得長(zhǎng)度。

………

CH375CloseDevice( 0 ); //關(guān)閉USB設(shè)備1

if ( CH375WriteData( 1, WriteBuf, &length) ) //發(fā)送數(shù)據(jù)請(qǐng)求命令給USB設(shè)備2

………

if ( CH375ReadData( 1, ReadBuf, & length) ) //從USB設(shè)備2讀取采集數(shù)據(jù)

………

CH375CloseDevice( 1 ); //關(guān)閉USB設(shè)備2

}

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

    采用CH375進(jìn)行USB數(shù)據(jù)傳輸速率高,達(dá)到1Mbit/s以上。而且無(wú)需編寫復(fù)雜的USB驅(qū)動(dòng)程序,利用其動(dòng)態(tài)鏈接庫(kù)即可實(shí)現(xiàn)多通道USB接口與PC機(jī)通信。研發(fā)簡(jiǎn)單,易于實(shí)現(xiàn),可以使數(shù)據(jù)傳輸系統(tǒng)非常方便的從RS232總線轉(zhuǎn)向USB總線,彌補(bǔ)其速度慢的缺點(diǎn),進(jìn)行系統(tǒng)升級(jí)。并且USB所具有的各種優(yōu)越性能,也必將使這種接口電路在數(shù)據(jù)傳輸中得到更廣泛的應(yīng)用。

參考文獻(xiàn)
[1]謝一岡,陳昌,王曼,等. 粒子探測(cè)器與數(shù)據(jù)獲取[M]. 北京:科學(xué)出版社, 2003. 529-532.
[2]周建斌,黃錦華. USB接口技術(shù)在核譜測(cè)量系統(tǒng)中的應(yīng)用研究[J]. 核電子學(xué)與探測(cè)技術(shù). 2004, 24(5). -506 -510
[3]胡榮強(qiáng),郝艷杰. USB接口在數(shù)據(jù)采集系統(tǒng)中的應(yīng)用[J]. 微計(jì)算機(jī)信息. 2005,21(1).-51-52
[4]南京沁恒電子有限公司. USB總線接口芯片CH375. http://www.Winchiphead.com, 2005
[5]宋建國(guó). AVR單片機(jī)原理及應(yīng)用[M]. 北京:北京航空航天大學(xué)出版社, 2000. 22-26
[6]David Simon, 周瑜萍,等. Visual C++ 6編程寶典[M].電子工業(yè)出版社, 2005.314-317

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

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

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

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

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

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(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ì)開幕式在貴陽(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ā)表演講稱,數(shù)字世界的話語(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)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

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