• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 測試測量 > 設計應用 > 基于雙模式USB接口的多處理器數據采集系統

    基于雙模式USB接口的多處理器數據采集系統

    作者: 時間:2010-08-26 來源:網絡 收藏

      3.2 從機模式

      此模式下,單片機通過CH375與PC機進行通訊,完成采集方案下載與數據上傳,程序流程圖如圖5所示。

      單片機重新初始化CH375并設置為設備工作模式。測試芯片正常連接后,系統可接收PC機發送的數據。主控單片機根據下載的采集方案進行采集測試,并將結果數據存入采集緩沖區,待緩沖區滿,則向PC機請求上傳。采集結束,數據全部上傳,系統完成一個從機模式采集工作過程。從機模式單片機程序基本框架如下:

      CH375Init(); //初始化CH375

      DelaymS(50); //延時

      CH375_WR_CMD_PORT(CMD_SET_USB_MODE);

      //設置USB工作模式

      CH375_WR_DAT_PORT(2);

      //模式代碼,已啟用的內置固件USB設備模式 DelayuS(20);

      //延時

      CH375_WR_CMD_PORT(CMD_CHECK_EXIST);

      //測試工作狀態

      CH375_WR_DAT_PORT(0x57); //寫入測試數據 DelayuS(10);

      //延時

      If(CH375_RD_DAT_PORT( )==0xA8);

      //讀出測試數據是否按位取反,判斷工作狀態

      ……

      CH375_WR_CMD_PORT(CMD_GET_STATUS);

      //中斷子程序中,讀取中斷狀態命令

      int_sn=CH375_RD_DAT_PORT( ); //讀中斷號 ……

      if (int_sn ==USB_INT_USB_EP2_OUT)

      CH375_WR_CMD_PORT(CMD_RD_USB_DATA);

      //讀取上位機測試方案數據并釋放緩沖區

      ……

      test_all( ); //按下載方案測試采集數據

      ……

      While (flag_upload == 0) //數據上傳未結束

      {

      ……

      CH375_WR_CMD_PORT(CMD_WR_USB_DATA 7);

      //批量上傳采集數據

      CH375_WR_DAT_PORT(n); //寫入上傳字節數

      for (i=0;in;i++) //每次上傳n字節

      CH375_WR_DAT_PORT(*test_buf ++);

      //上傳采集結果,指針自動加1

      ……

      }

      ……

      if (int_sn ==USB_INT_USB_EP2_IN)

      //中斷子程序中,中斷號為端點2發送數據完畢

      CH375_WR_CMD_PORT(CMD_UNLOCK_USB);

      //釋放緩沖區

      基于CH375接口芯片,設計完成了主/從雙模式的測試系統。充分利用接口即插即用、便攜式的特點,解決了特殊環境下的測試困難問題。同時,系統具有雙模式、多單片機的優勢,能夠滿足高標準的測試需求,具有廣闊的應用前景。



    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 常山县| 高阳县| 安泽县| 延庆县| 左贡县| 德江县| 济宁市| 门源| 额尔古纳市| 绥江县| 肥乡县| 平和县| 乐清市| 伊宁市| 台东县| 丹东市| 平度市| 体育| 新干县| 屯留县| 连平县| 西畴县| 于田县| 宽城| 河西区| 沙湾县| 余庆县| 武功县| 丰顺县| 吴江市| 台东县| 沅江市| 正蓝旗| 平顶山市| 高邮市| 历史| 锡林浩特市| 丹寨县| 台南县| 喀喇| 中山市|