新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于AVR USB接口的溫度測量系統下位機設計

        基于AVR USB接口的溫度測量系統下位機設計

        作者: 時間:2009-03-25 來源:網絡 收藏
        DDRD=0x14;PORTD=0x00;
        通常可在程序其他部分初始化完成后再調用函數usbInit (),最后再調用sei ()函數允許中斷。在main.c文件中的實現代碼如下:
        (2)事件處理函數
        用戶程序的主循環中需要定期調用事件處理函數usbPoll ()。事件處理函數usbPoll ()在沒有事件需要處理時將直接返回,否則將調用內部函數來進行相應的事件處理,最后再將數據傳遞到用戶函數中。通常的方法是:
        一次USB通信的超時時間是50ms。所以,在編程時應注意其他事件不要占用太長的時間,以勉usbPoll ()函數不能及時執行。
        (3)事件函數
        在用戶程序中,需要編寫USB用戶事件函數,以完成USB通信。USB將用戶接口簡化為以下3個函數:
        上述三個函數需要用戶進行編程處理,它們將完成USB通信的數據處理。
        為了使代碼最優化,本只使用usbFunctionSetup函數,而屏蔽了usbFunctionWrite和usbFnctionRead函數,方法是在usbconfig.h中設置相應的位為0或1即可(參見表2)。

        函數usbFunctionSetup負責傳遞USB請求,其參數存放在一個8字節的數組中(uchar data [8]),其含義是:
        由于該功能只需要將測得的值傳送到PC端,因此,該函數中只需做數據傳送即可,而無須作不同指令的辨識,時使用如下代碼來實現上述功能:
        2.4編譯文件的配置
        在WIN軟件環境下,還需要配置MakeFile,以用于編譯編程文件:

        經過上述過程的配置和編程后,即可實現機的數據采樣和USB端口的數據傳輸。
        3 結束語
        USB技術的和顯示由于使用了一體的軟USB技術,其硬件電路更加小巧穩定。經使用和測試證明:該系統具有性能穩定、價格低廉等特點。重要的是,本系統提供了一種低成本的USB方案,同時較詳細的提供了機的設計流程和部分代碼,從而為中低成本的USB設備開發提供了一個較好的思路。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 乐亭县| 兰考县| 远安县| 富顺县| 大埔区| 屯留县| 桦川县| 东港市| 疏勒县| 漳浦县| 孟连| 巴南区| 旌德县| 司法| 巴东县| 石嘴山市| 桑日县| 安丘市| 沧源| 望城县| 米林县| 满城县| 汶上县| 丰都县| 佛教| 无锡市| 水城县| 合水县| 贺兰县| 浙江省| 合川市| 邛崃市| 沂南县| 始兴县| 砚山县| 中卫市| 开平市| 桃江县| 仪征市| 碌曲县| 湖南省|