女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于ATmega128單片機和CH375模塊實現USB接口電路的設計

電子設計 ? 來源:微計算機信息 ? 作者:楊全玖;張大偉; ? 2020-06-30 07:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

若采用串口(RS232)實現多通道傳輸,各通道每次向上位機傳輸的數據容量大(16K),而串口傳輸速度慢,花費的時間長。在通信過程中,相應通道進入中斷服務程序后,不能夠再采集新的信號,更加嚴重地影響了系統的探測效率。于是就采用CH375構成的USB接口進行數據傳輸。速率可提高到1Mbit/s以上。同時USB所具有的即插即用、通用性強、易擴展、可靠性好等優點也極大地改善了接口的使用性能。

1、CH375模塊簡介

USB模塊CH375是一個USB總線的通用設備接口芯片,用戶無需編寫驅動程序,內置有USB通訊中的底層協議,完全滿足USB1.1標準。具有8位數據總線(D0~D7)、地址輸入(A0)、讀(RD#)、 寫(WR#)、片選控制線(CS#)以及中斷輸出(INT#),可以方便地掛接到單片機的數據總線上。當A0為低電平時選擇數據端口,單片機通過8位并口對CH375進行讀寫數據;為高電平時選擇命令端口,可以向其寫入命令。

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

將CH375芯片的驅動程序、動態鏈接庫拷貝到上位機中,利用CH375動態鏈接庫DLL提供的API函數對其進行操作,對USB設備的通信就幾乎和訪問本地硬盤中的文件差不多了。

2、具有多個USB接口的多通道數據采集系統

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

基于ATmega128單片機和CH375模塊實現USB接口電路的設計

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

3、多個通道USB接口的軟件設計

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

① 計算機應用層按事先約定的格式將數據請求發送給CH375;

② CH375以中斷方式通知單片機。

③ 單片機進入中斷服務程序,獲取CH375的中斷狀態并分析;

④ 如果是上傳(上傳緩沖區的數據被計算機成功讀取),則釋放當前USB緩沖區,然后退出中斷程序;

⑤ 如果是下傳(下傳緩沖區成功接收到計算機發送的數據),則從數據下傳緩沖區讀取數據塊;

⑥ 分析接收到的數據塊,如果是數據請求上傳命令,準備應答數據(采集數據);

⑦ 單片機將采集數據寫入數據上傳緩沖區中,然后退出中斷程序;

⑧ CH375將采集數據返回給計算機;

⑨ 計算機應用層接收到應答數據,傳輸結束;

該通訊方式具有數據自動同步、程序設計簡單、較好的交互性和可控性等優點。計算機定時以此方式順次訪問各通道,獲取各通道采集到的數據。

3.1 單片機端的程序設計

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

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

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

{

CH375_WR_CMD_PORT(CMD_GET_STATUS); //向CH375發送中斷狀態獲取命令

InterruptStatus = CH375_RD_DAT_PORT();//獲取中斷狀態,并通知CH375取消中斷請求

// 分析中斷狀態,并做相應處理

if ( InterruptStatus= =USB_INT_EP2_OUT) // 數據下傳

{

CH375_WR_CMD_PORT( CMD_RD_USB_DATA );// 向CH375發送讀數據命令

RD_Data =CH375_RD_DAT_PORT( );//從CH375下傳緩沖區讀取數據塊

……… //分析接收到的數據塊

CH375_WR_CMD_PORT(CMD_WR_USB_DATA7); // 向CH375發送寫數據命令

CH375_WR_DAT_PORT( DATA);// 將采集數據DATA寫入CH375數據上傳緩沖區

return;

}

If(InterruptStatus= = USB_INT_EP2_IN) // 數據上傳

{

CH375_WR_CMD_PORT( CMD_UNLOCK_USB );// 釋放當前USB緩沖區

return;

}

}

3.2 計算機端的程序設計

采用Visual C++作為計算機端應用軟件的開發平臺,以實現兩通道USB數據傳輸為例,計算機端程序設計流程圖如圖4所示。USB設備1即指通道1;USB設備2即指通道2。

圖4 計算機端兩通道USB數據傳輸程序設計流程圖

利用MFC(微軟基礎類)定時器函數,計算機定時順序訪問兩通道,獲取采集數據。編寫計算機端定時中斷處理程序的基本框架如下所示:

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

{

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

………

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

………

if ( CH375WriteData( 0, WriteBuf, length) ) //發送數據請求命令給USB設備1,成功發送后返回真。WriteBuf指向放置準備寫出數據的緩沖區。Length指向長度單元,輸入時為準備寫出的長度,返回后為實際寫出的長度。

………

if ( CH375ReadData( 0, ReadBuf, length) ) //從USB設備1讀取采集數據,成功讀取后返回真。ReadBuf為指向用于保存讀取數據的緩沖區。Length指向長度單元,輸入時為準備讀取得長度,返回后為實際讀取得長度。

………

CH375CloseDevice( 0 ); //關閉USB設備1

if ( CH375WriteData( 1, WriteBuf, length) ) //發送數據請求命令給USB設備2

………

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

………

CH375CloseDevice( 1 ); //關閉USB設備2

}

4 、結束語

采用CH375進行USB數據傳輸速率高,達到1Mbit/s以上。而且無需編寫復雜的USB驅動程序,利用其動態鏈接庫即可實現多通道USB接口與PC機通信。研發簡單,易于實現,可以使數據傳輸系統非常方便的從RS232總線轉向USB總線,彌補其速度慢的缺點,進行系統升級。并且USB所具有的各種優越性能,也必將使這種接口電路在數據傳輸中得到更廣泛的應用。

責任編輯:gt


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    459

    文章

    52481

    瀏覽量

    440591
  • 單片機
    +關注

    關注

    6067

    文章

    44982

    瀏覽量

    650298
  • usb
    usb
    +關注

    關注

    60

    文章

    8179

    瀏覽量

    272765
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    USB總線接口芯片CH375

    單片機/DSP/MCU/MPU等控制器的系統總線上。在USB主機方式下,CH375還提供了串行通訊方式,通過串行輸入、串行輸出和中斷輸出與單片機/DSP/MCU/MPU等相連接。
    發表于 03-08 14:28

    采用CH375多通道USB接口實現與PC的通信

    采用C語言編程,編寫單片機ATmega128中斷1服務處理程序的基本框架如下所示:void int1_isr (void)//USB中斷入口程序{CH375
    發表于 05-05 09:29

    采用CH375接口電路實現LPT-USB打印機驅動器設計

    單片機通過CH375控制USB打印機的硬件電路CH375通過被動并行接口
    發表于 06-18 05:00

    基于CH375多通道USB接口與PC通信的實現

    利用USB接口技術,采用USB模塊CH375,在加速器核輻射監測系統中實現了多個探測通道
    發表于 06-26 08:51 ?39次下載

    CH375中文資料,pdf datasheet(USB總線接口芯片)

    CH375 是一個USB總線的通用接口芯片,支持USB-HOST主機方式和USB-DEVICE/SLAVE設備方式。在本地端,
    發表于 07-22 11:07 ?300次下載

    USB接口芯片CH375的原理及應用

    USB接口芯片CH375的原理及應用:對USB 接口芯片CH375 的功能、原理做了較詳細的介紹
    發表于 09-20 18:07 ?133次下載

    基于CH375實現單片機讀寫U盤

    摘要:介紹了一種USB總線的通用接口芯片CH375,并在此基礎上提出了一種外部單片機讀寫U盤的基本方法及其硬件連接方法。單片機只要在原硬件系
    發表于 09-10 14:40 ?188次下載

    基于CH375USB文件加解密系統設計

    介紹了采用CH375單片機實現的基于USB HOST 技術的嵌入式文件加密解密系統,該系統采用基于隨機算子的輕量級加密算法對USB 移動
    發表于 05-17 15:43 ?32次下載
    基于<b class='flag-5'>CH375</b>的<b class='flag-5'>USB</b>文件加解密系統設計

    ATmega128CH374的USB接口設計

    ATmega128CH374的USB接口設計
    發表于 10-31 08:28 ?27次下載
    <b class='flag-5'>ATmega128</b>和<b class='flag-5'>CH</b>374的<b class='flag-5'>USB</b><b class='flag-5'>接口</b>設計

    CH375的MSP430讀寫U盤的設計與實現方案

    給出了一種基于CH375 實現MSP43OF44g 單片機讀寫U 盤的設計方案該方案以油井電量采集儀為應用背景, 利用 MSp43O 單片機CH3
    發表于 04-26 09:15 ?33次下載
    <b class='flag-5'>CH375</b>的MSP430讀寫U盤的設計與<b class='flag-5'>實現</b>方案

    USB總線通用接口芯片CH375對比色計儀器的設計

    常用的 USB全速設備,外部單片機可以通過 CH375按照相應的協議與 USB設備通訊。CH375支持 5V和 3.3V電源電壓和低功耗模式
    發表于 07-17 15:21 ?2710次閱讀
    <b class='flag-5'>USB</b>總線通用<b class='flag-5'>接口</b>芯片<b class='flag-5'>CH375</b>對比色計儀器的設計

    沁恒股份USB總線接口芯片:CH375概述

    方便地掛接到單片機/DSP/MCU/MPU等控制器的系統總線上。在USB 主機方式下,CH375還提供了串行通訊方式,通過串行輸入、串行輸出和中斷輸出與單片機/DSP/MCU/MPU
    的頭像 發表于 11-01 11:16 ?3035次閱讀
    沁恒股份<b class='flag-5'>USB</b>總線<b class='flag-5'>接口</b>芯片:<b class='flag-5'>CH375</b>概述

    DAC1230與單片機Atmega128接口技術

    DAC1230與單片機Atmega128接口技術(開關電源技術課程設計報告)-文檔為DAC1230與單片機Atmega128
    發表于 09-17 15:45 ?5次下載
    DAC1230與<b class='flag-5'>單片機</b><b class='flag-5'>Atmega128</b>的<b class='flag-5'>接口</b>技術

    用51單片機ch375實現鍵鼠功能

    。若真想實現鍵鼠功能,推薦使用32及類似的單片機做。簡單介紹:ch375CH375 是一個 USB 總線的通用
    發表于 11-20 14:06 ?19次下載
    用51<b class='flag-5'>單片機</b>和<b class='flag-5'>ch375</b><b class='flag-5'>實現</b>鍵鼠功能

    基于ATmega128CH374的USB接口設計

    電子發燒友網站提供《基于ATmega128CH374的USB接口設計.pdf》資料免費下載
    發表于 10-25 10:07 ?1次下載
    基于<b class='flag-5'>ATmega128</b>和<b class='flag-5'>CH</b>374的<b class='flag-5'>USB</b><b class='flag-5'>接口</b>設計