<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 通用USB接口模塊設計之AVR單片機

通用USB接口模塊設計之AVR單片機

作者: 時(shí)間:2013-12-07 來(lái)源:網(wǎng)絡(luò ) 收藏

以下給出了前臺主程序的程序代碼:以下為后臺中斷服務(wù)程序:通用USB接口模塊設計之AVR單片機

當前臺主程序檢測到狀態(tài)變量收到SETUP包事件bEvent_flags.bits.setup_packet為1時(shí),該標志位清零,再調用標準設備請求模塊stdreq.c的control_handler()函數完成對USB設備的枚舉。

設計標準設備請求模塊,首先利用結構體定義USB枚舉所需的各種描述符,以供不同設備請求使用,其次編寫(xiě)11個(gè)標準的設備請求處理函數。本層請求模塊重要函數是協(xié)議控制子程序control han-dler(),它根據ControlData中標識的不同USB設備請求類(lèi)型調用11個(gè)函數中的任意一個(gè)。除此之外,本層請示求模塊還實(shí)現中斷服務(wù)程序調用的控制端點(diǎn)接收與發(fā)送中斷處理函數。上述各函數及ControlData變量間關(guān)系如圖4所示。通用USB接口模塊設計之AVR單片機

4 系統集成與應用

4.1 PC機驅動(dòng)程序與應用程序的設計

利用該系統模塊實(shí)現PC機通訊,需對PC機編寫(xiě)相關(guān)驅動(dòng)程序和應用程序,可利用DriverStudio軟件生成該系統模塊在Windows環(huán)境下的驅動(dòng)程序。應用程序的設計可使用諸如VB、VC、Delphi以及應用普遍的虛擬儀器軟件開(kāi)發(fā)工具LabVIEW等軟件開(kāi)發(fā)工具,直接調用驅動(dòng)程序生成的動(dòng)態(tài)鏈接庫中的API函數,可根據具體任務(wù)編寫(xiě)相關(guān)應用程序。

4.2 應用于其他系統

利用的多種外設接口特點(diǎn),例如UART、SPI、I2C接口等可以有效地實(shí)現與其他微處理器的通信,將該模塊嵌入各種系統,實(shí)現與其他器件的通訊。固件程序中預留有UART、SPI、I2C等接口程序,只需通

4.3 固件程序移植其他平臺

由于固件程序最大限度考慮到可移植性,所以將固件程序稍加修改即可應用于各種已擁有C語(yǔ)言編譯器的微處理器,實(shí)現PDIUSBD12直接與微處理器的通訊。

移植固件程序主要工作有:根據硬件連接關(guān)系,修改硬件抽象層中的3個(gè)讀寫(xiě)函數,實(shí)現CPU與器件之間的通信;通過(guò)調用PDIUSBD12命令接口層的讀取芯片ID函數返回值是否為0x1012,測試CPU與器件之間的通訊是否正常。

5 在數據采集器中的應用

由于A(yíng)Tmega8片內集成有逐次比較型ADC,具有6路的模擬輸入通道,所以只需要針對采集的物理量選用相應傳感器,并將輸出信號調整至0~Vcc的范圍內就可利用該模塊實(shí)現USB數據采集器。集成有ADC自帶采樣保持電路,具有內部參考電壓和基于睡眠模式的噪聲抑制器,從而大大提高ADC精度,實(shí)現高精度的數據采集。而設計只需在相應的固件程序巾增加獲取ADC結果的函數,并設置相應的狀態(tài)標志位即可完成USB數據采集器的設計。

6 結束語(yǔ)

以ATmega8和PDIUSBD12為核心,實(shí)現通用的,并應用于基于的數據采集器中。實(shí)驗結果表明,該模塊運行穩定可靠,通信速度快,易于修改移植,滿(mǎn)足嵌人式系統對USB接口的需求,并能快速為各種微處理器增加USB接口,具有廣泛的應用前景。

過(guò)簡(jiǎn)單的跳線(xiàn)連接就可選擇相應的接口,從而實(shí)現應用系統增加USB接口。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: USB接口 模塊設計 AVR單片機

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>