<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 HID類(lèi)數據通信的直流電源監控設計

基于USB HID類(lèi)數據通信的直流電源監控設計

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

摘要:為了實(shí)現直流電源的監控,提出了一種具有數據通信功能的直流電源設計方案。詳細論述了基于 USB(USB-FS Device library V3.3)的自定義HID類(lèi)下位機的實(shí)現,介紹了如何在集成開(kāi)發(fā)環(huán)境中編寫(xiě)多線(xiàn)程上位機程序并運用PlotLab(一個(gè)快速信號繪圖和可視化的VCL組件)顯示實(shí)時(shí)波形,最后再以實(shí)驗開(kāi)發(fā)板和PC實(shí)現了HID數據通信,證明了此監控設計方案的可行性。
關(guān)鍵詞:;;;

USB的“即插即用”使其成為了現行十分流行的計算機應用接口,從最初的USB1.1到USB2.0及已經(jīng)出現的USB3.0協(xié)議,USB取得了很大的發(fā)展,并有取代RS232之趨勢,越來(lái)越多的電子設備開(kāi)始包含USB接口,當電子設備擁有了USB接口,設備將會(huì )更易實(shí)現數據通信方便設備的使用和功能的擴展。

1 類(lèi)簡(jiǎn)介
在眾多的USB設備類(lèi)型中,HID類(lèi)是Windows完全支持的第一批設備類(lèi)型,它是為一些人工的輸入輸出設備而設計的,連接到計算機的USB設備幾乎都包含HID類(lèi),用于信號控制。Windows系統自帶了HID類(lèi)的驅動(dòng)程序,所以使用HID類(lèi)來(lái)實(shí)現數據通信將無(wú)需為其開(kāi)發(fā)、安裝驅動(dòng),PC應用程序可以直接使用Windows API與之進(jìn)行通信,這樣將會(huì )大大的降低開(kāi)發(fā)難度,縮短開(kāi)發(fā)周期。

2 電源系統概述
直流電源基于F107VC設計,可以通過(guò)電源的LCD和鍵盤(pán)或者PC上位機監控電源,PC上位機可以設定電源的輸出并能以1 kHz或者100 kHz(只持續0.1 s)的采樣率觀(guān)察電源的輸入輸出波形。整個(gè)電源的系統簡(jiǎn)化框圖如圖1所示,市電經(jīng)PFC(功率補償)后經(jīng)過(guò)不可控整流電路變成直流,STM32F107X主控模塊通過(guò)電源面板或者USB接口連接PC上位機實(shí)現用戶(hù)交互,同時(shí)STM32F107X利用AD檢測電源的輸入輸出,運用數字PID產(chǎn)生PWM控制BUCK電路將整流后的直流變換成用戶(hù)想要的輸出,單端反激電路為主控模塊提供5 V電源,這些與平常的BUCK直流電源相比除了擁有USB接口其他并無(wú)太多差異。整個(gè)下位機軟件流程圖如圖2所示,下位機程序在開(kāi)始時(shí)初始化外設和定義全局變量,再開(kāi)啟USB、DMA和定時(shí)器等中斷,之后就循環(huán)等待本地面板的控制并刷新面板,DMA在將AD采樣電源輸入輸出得到的數值存入4個(gè)全局變量之后產(chǎn)生中斷將4個(gè)全局變量根據發(fā)送模式送入USB發(fā)送緩沖區,定時(shí)器定時(shí)利用這4個(gè)全局變量和PID算法控制電源的輸出,USB中斷將發(fā)送緩沖區的數據發(fā)送給上位機和將接收到的數據存入接受緩沖區并根據接收到的數據更改下位機的全局標志位。

本文引用地址:http://dyxdggzs.com/article/175749.htm

a.JPG

b.JPG


USB HID類(lèi)的速度有限,最大有效數據速度為64 kByte/s(最大1 kHz的傳輸頻率,每次最大傳輸64 Byte),本設計采用的速度是:16kBy te/s(1 kHz的傳輸頻率,每次傳輸16Byte);這樣在不使用緩存的情況下只能以1 kHz的采樣率顯示實(shí)時(shí)波形,為了顯示更高采樣率的波形本設計使用了12 k的緩沖區存儲100 kHz采樣率的數據,12 K的緩沖區可以存儲1 000次采樣的數據,在下位機采樣率為100 kHz的情況下1 000次采樣對于下位機是0.1 s鐘,但對于上位機卻是1秒鐘,所以上位機選擇100 kHz采樣率查看下位機輸入輸出的操作每秒鐘只能操作一次,這也能基本滿(mǎn)足諧波分析的需求。本設計中上下位機傳遞的16 Byte中每個(gè)字節的含義如圖3所示。

c.JPG


pid控制器相關(guān)文章:pid控制器原理



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

關(guān)鍵詞: STM32 USB HID VC2010 固件庫

評論


相關(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>