精品国产成人一区二区三区-女子十八毛片-欧洲性猛交-无码不卡一区二区三区在线观看-www.四虎在线-伊人网国产-国精产品自偷自偷综合下载-不卡av网站-俄罗斯黄色大片-一本久久知道综合久久-国产精品日韩一区二区-日韩精品色-免费人成网ww555kkk在线-黄色在线观看免费-日韩在线免费-久久久久99人妻一区二区三区-十八禁真人啪啪免费网站

機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
基于CH375多通道USB接口與PC機(jī)通信的實(shí)現(xiàn)
基于CH375多通道USB接口與PC機(jī)通信的實(shí)現(xiàn)
 更新時間:2008-8-19 13:35:26  點(diǎn)擊數(shù):64
【字體: 字體顏色
摘要:利用USB接口技術(shù),采用USB模塊CH375,在加速器核輻射監(jiān)測系統(tǒng)中實(shí)現(xiàn)了多個探測通道USB接口與計算機(jī)通信。給出了CH375與單片機(jī)接口電路的原理簡圖,并詳細(xì)介紹了實(shí)現(xiàn)多通道USB數(shù)據(jù)傳輸?shù)纳、下位機(jī)的程序設(shè)計。

關(guān)鍵詞:USB接口,加速器,核輻射監(jiān)測系統(tǒng),多通道

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

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

1 CH375模塊[4]簡介

  USB模塊CH375是一個USB總線的通用設(shè)備接口芯片,用戶無需編寫驅(qū)動程序,內(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ù)據(jù)端口,單片機(jī)通過8位并口對CH375進(jìn)行讀寫數(shù)據(jù);為高電平時選擇命令端口,可以向其寫入命令。

  在本地端,單片機(jī)對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ū)動程序、動態(tài)鏈接庫拷貝到上位機(jī)中,利用CH375動態(tài)鏈接庫DLL提供的API函數(shù)對其進(jìn)行操作,對USB設(shè)備的通信就幾乎和訪問本地硬盤中的文件差不多了。

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

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


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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

  采用C語言編程,編寫單片機(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取消中斷請求

// 分析中斷狀態(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ī)端的程序設(shè)計

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

[1] [2]  下一頁
  • 上一篇: 用ST72141實(shí)現(xiàn)無刷直流電機(jī)的控制
  • 下一篇: 基于nRF24E1的無線點(diǎn)菜系統(tǒng)架構(gòu)
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請聯(lián)系機(jī)電之家,機(jī)電之家將及時作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1
    兴城市| 鄯善县| 常山县| 崇阳县| 盘锦市| 辉南县| 昌江| 建阳市| 玉树县| 阜南县| 西安市| 大田县| 浪卡子县| 溧阳市| 封开县| 孟连| 宝山区| 仁怀市| 健康| 宜兴市| 沅江市| 昭苏县| 唐海县| 太仓市| 黎川县| 五华县| 大方县| 鄯善县| 鸡西市| 寿宁县| 东平县| 平舆县| 桂林市| 宁陕县| 龙里县| 绿春县| 都兰县| 五家渠市| 西丰县| 阿尔山市| 穆棱市|