新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于AT89C52和USB接口的數(shù)據(jù)采集系統(tǒng)設計

        基于AT89C52和USB接口的數(shù)據(jù)采集系統(tǒng)設計

        作者: 時間:2011-12-16 來源:網(wǎng)絡 收藏

        應用程序中有兩個線程,輔助線程為采樣線程,采樣線程的流程如圖2所示。

        采樣線程負責從設備讀取數(shù)據(jù),并通過消息傳送機制與主線程通信;主線程負責采樣數(shù)據(jù)的顯示、存盤,向設備發(fā)送命令數(shù)據(jù)包,以及啟動/停止采樣線程。當執(zhí)行啟動采樣命令時,主線程先向設備發(fā)送啟動命令數(shù)據(jù)包,然后啟動采樣線程準備接收數(shù)據(jù);當執(zhí)行停止采樣命令時,主線程先向設備發(fā)送停止命令數(shù)據(jù)包,然后停止采樣線程結束數(shù)據(jù)的接收。命令數(shù)據(jù)包大小為4 B.包含有命令字和采樣間隔時間參數(shù)等信息。
        2.3 單片機程序
        如上所述,單片機的INTO中斷一旦觸發(fā),表示主機有命令數(shù)據(jù)包傳送到。在INTO的中斷處理程序中,單片機讀取EP2端點的數(shù)據(jù)直到EP2端點為空(FLAGB為低電平),獲得上位機發(fā)送的命令數(shù)據(jù)包。若接收到啟動命令,則根據(jù)命令數(shù)據(jù)包的采樣間隔時間參數(shù)來設置計數(shù)變量和定時器T0的初值并啟動T0;若接收到的命令為停止命令,則停止定時器TO。在TO的中斷處理程序中若相應的計數(shù)變量達到設定值,則完成A/D轉換、讀取數(shù)據(jù)以及將數(shù)據(jù)寫入EP6端點的操作。計數(shù)變量和TO的初值均根據(jù)命令數(shù)據(jù)包的參數(shù)進行設置,因此設備的采樣間隔時間可以由主機程序進行調整。

        3 結 語
        工作于Slave FIFo方式下的FX2相當于在外部控制和主機之間構造了一個的數(shù)據(jù)管道。通過對FX2的FIFO標志引腳FLAGA,F(xiàn)ALGB,F(xiàn)LAGc的配置,使該芯片可以方便地與單片機進行連接,單片機通過外部中斷獲知主機數(shù)據(jù)的到達,通過其他標志引腳獲得端點FIFO的信息,單片機和主機通信時,感覺不到FX2的存在。基于單片機和Fx2的擴展方便、編程簡單、無需外接電源、采樣間隔時間由主機調整,實現(xiàn)了的小型化和便攜化,在現(xiàn)場信號采集,教學實驗,儀器儀表等領域具有一定的應用前景。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 靖宇县| 新安县| 丁青县| 清水县| 揭东县| 江口县| 吴旗县| 余江县| 师宗县| 阿瓦提县| 太湖县| 项城市| 乐平市| 宁津县| 双牌县| 阳新县| 宁都县| 宜宾县| 永泰县| 本溪市| 麦盖提县| 云阳县| 涡阳县| 张家川| 石首市| 唐山市| 布拖县| 东丰县| 肇庆市| 赤城县| 化州市| 张掖市| 齐齐哈尔市| 多伦县| 榕江县| 陇南市| 扎赉特旗| 永吉县| 启东市| 哈尔滨市| 临湘市|