新聞中心

        EEPW首頁 > 電源與新能源 > 設計應用 > 基于手機通信的心電圖機設計方案

        基于手機通信的心電圖機設計方案

        作者: 時間:2012-10-18 來源:網絡 收藏


        2 系統軟件

        軟件包括下位機和上位機2部分。下位機主要負責接收上位機的設置電壓值,并經過轉換后輸入到MAX522,從而輸出設置電壓。上位機則通過VUSB與下位機連接,并通過模擬的USB協議向下位機寫入數據。

        2.1 下位機軟件

        下位機軟件流程圖如圖5所示。其中設備初始化包括單片機端口初始化、DAC初始化及VUSB端口初始化。在初始化之后,程序進入主循環,在其中加入了USB輪詢函數usbPoll(),用來偵測USB事件。一旦偵測到上位機有USB請求時,usbdrv就會調用usbFunctionSetup()函數來處理請求。在此請求函數中接收上位機傳來的數據并將此數據轉換后寫入MAX522數據端口,啟動DAC輸出電壓。







        圖5 下位機軟件流程。

        中需注意以下幾點:

        1)單片機方面的VUSB 底層驅動函數使用AVRUSB,最新版本的AVR-USB為C語言編寫并有詳細的注釋。開發平臺為WinAVR.GCC項目文件夾中需包含驅動文件(usbdrv文件夾),并對usbconfig.h中的部分宏定義做一些修改。

        #define USB_CFG_IOPORTNAME D//這個接口連接USB總線。當配置為D時,寄存器PORTD,PIND and DDRD將有效。

        #define USB_CFG_DMINUS_BIT 1//位配置,是在USB_CFG_IOPORT 中連接USB D-的線。可以配置為接口的任何位。

        #define USB_CFG_DPLUS_BIT 2//位配置,是在USB_CFG_IOPORT 中連接USB D+的線。也可以連接到任意口,但是注意D+一定要連接都中斷口INT0

        2)單片機在接收到讀取數據命令時會自動調用usbFunctionSetup(uchar data[8]),在函數內把全局指針*usbMsgPtr指向所要發送的數據首地址,然后返回(函數返回值)所發送數據的長度就可以了。由于采用的是命令包方式傳輸數據,每次只能接收4個字節的有效數據,存儲在data[2]~data[4]中。

        3)初始化時需要將MAX522的輸出置為關閉狀態。

        寫入MAX522時首先寫入8位控制字,然后寫入8位DAC數據。

        2.2 上位機軟件

        上位機用C# 語言進行編寫,驅動采用一款名為LibUsbDotNet的開源USB上位機驅動庫文件。此驅動庫文件還提供了供。NET平臺調用的USB接口函數。使用時需包含相應的動態鏈接庫文件。

        上位機軟件主要包括顯示設備連接狀態、寫入電壓值及讀取當前電壓值等功能。上位機軟件流程圖如圖6所示。







        圖6 上位機軟件流程。

        只有在總線請求為用戶自定義類型(Vendor)時單片機才會調用usbFunctionSetup(uchar data[8])這個函數,所以傳輸數據是通過發送用戶自定義類型的Setup數據包來實現的。讀數據時設置此數據包為IN,同時寫入需要讀取的字節數。寫入數據時設置數據包為OUT,4字節的有效數據則包含在所建立的8字節Setup數據包的data[2]~data[4]之中。

        3 實驗驗證與分析

        本數控直流穩壓電源在使用之前需進行校零。在初始狀態下,調節集成運放μA741的外接調零電阻使集成運放輸出為0,調節射極輸出器偏置電阻R13使輸出電壓為0.

        在輸出最大的情況下,調節輸出集成運放的比例放大電阻R14,使得輸出電壓為12V.

        校零之后將上位機設置電壓值與實際輸出電壓進行對比實驗,實驗數據如表1所示。







        表1 電壓輸出對比實驗結果

        所設計電壓源實際輸出值與設定值偏差較小,能夠滿足0~12V連續可調輸出,步進值為0.1V的使用要求。

        4 結 論

        設計了一種以單片機為主,VUSB技術進行數據傳輸控制的數控直流穩壓電源。輸出電壓值由單片機控制,步進調節方便,輸出穩定。既可以作為單獨的電源使用,也可以嵌入到其他需要步進電壓模塊的測試系統之中。

        本文引用地址:http://www.104case.com/article/176088.htm

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 张家港市| 平阳县| 安平县| 铜川市| 曲松县| 枞阳县| 卫辉市| 天津市| 正蓝旗| 松原市| 交城县| 武汉市| 饶平县| 增城市| 岑溪市| 龙井市| 桦南县| 翼城县| 崇州市| 奉新县| 若羌县| 延庆县| 云梦县| 松桃| 都匀市| 巴彦淖尔市| 古丈县| 瓦房店市| 伊宁市| 卓资县| 新乡县| 饶平县| 西畴县| 顺平县| 龙游县| 鞍山市| 和顺县| 长子县| 宽城| 永仁县| 玛沁县|