日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 電源 > 數(shù)字電源
[導(dǎo)讀]討論通用串行總線(USB)技術(shù)應(yīng)用于便攜式電能表現(xiàn)場(chǎng)校驗(yàn)儀的可行性,并介紹了系統(tǒng)的硬件、固件、設(shè)備驅(qū)動(dòng)程序以及應(yīng)用程序的設(shè)計(jì)方法,最后給出了其性能測(cè)試結(jié)果?,F(xiàn)在市場(chǎng)上的同類產(chǎn)品多采用RS-232方式通訊,但這種產(chǎn)

討論通用串行總線(USB)技術(shù)應(yīng)用于便攜式電能表現(xiàn)場(chǎng)校驗(yàn)儀的可行性,并介紹了系統(tǒng)的硬件、固件、設(shè)備驅(qū)動(dòng)程序以及應(yīng)用程序的設(shè)計(jì)方法,最后給出了其性能測(cè)試結(jié)果。

現(xiàn)在市場(chǎng)上的同類產(chǎn)品多采用RS-232方式通訊,但這種產(chǎn)品已漸露弊端。首先,RS-232在當(dāng)前微機(jī)規(guī)范中逐漸隱退。第二,現(xiàn)場(chǎng)校驗(yàn)產(chǎn)品已經(jīng)朝著多功能的方向發(fā)展。已不單一的檢查表誤差,許多CT/PT負(fù)荷、二次壓降、諧波分析、波形圖、負(fù)荷曲線等功能都已經(jīng)整合到現(xiàn)場(chǎng)校驗(yàn)產(chǎn)品當(dāng)中。功能的增加意味著存儲(chǔ)數(shù)據(jù)的急劇膨脹,而RS-232低的傳輸速率和難以保證通訊可靠性的特點(diǎn)決定了它不再是一個(gè)合適的解決方案。第三,采用RS-232方式的現(xiàn)校儀在和PC通訊的時(shí)候必須外加電源。

經(jīng)過比較論證發(fā)現(xiàn),USB作為近年出現(xiàn)的一種代表微機(jī)接口發(fā)展方向的新型總線規(guī)范,其便捷易用、速度快、可靠性高等特點(diǎn),使之非常適合作為現(xiàn)校儀的接口。目前大多數(shù)臺(tái)式計(jì)算機(jī)都具有四個(gè)以上的USB端口,筆記本電腦也都有兩個(gè)以下的USB端口,USB規(guī)范規(guī)定每個(gè)端口提供5V、500mA的電量也恰好可以提供給現(xiàn)校儀而無須增加外接電源.

USB本身的控制協(xié)議較為復(fù)雜,需要使用相應(yīng)的USB接口芯片。本設(shè)計(jì)采用了Philips公司的PDIUSBD12(簡(jiǎn)稱D12),其優(yōu)點(diǎn)是可以選擇合適的微控制器及其開發(fā)系統(tǒng)進(jìn)行外設(shè)開發(fā)。

D12內(nèi)部集成了串行輸入引擎(SIE)、320字節(jié)的多結(jié)構(gòu)FIFO存儲(chǔ)器、收發(fā)器以及電壓調(diào)整器,支持DMA方式,采用雙緩沖區(qū)技術(shù),遵從USB1.1標(biāo)準(zhǔn)。芯片中串行輸入引擎(SIE)模塊起著至關(guān)重要的作用,完成所有USB協(xié)議層功能,如同步模式識(shí)別、并/串轉(zhuǎn)換、位填充/解填充、CRC檢驗(yàn)/產(chǎn)生、包PID產(chǎn)生/確認(rèn)、地址識(shí)別、握手信號(hào)包響應(yīng)產(chǎn)生等。另外,D12還集成了SoftConnect、GoodLink、可編程時(shí)鐘輸出、低頻晶振和終端電阻等特性,提高了系統(tǒng)的性價(jià)比。

1.1引腳功能

PDIUSBD12的引腳排列如圖1所示,功能如下:

VCC:接+5V電源;GND:接地;如要使器件工作在3.3V,則VCC、Vout3.3都為3.3V。DATA〈0〉~DATA〈7〉:雙向數(shù)據(jù)總線。ALE:地址鎖存使能。在多路地址數(shù)據(jù)總線中,下降沿關(guān)閉地址鎖存;在單地址/數(shù)據(jù)總線配置中接地。CSN:片選端,低電平有效。SUSPEND:器件處于掛起狀態(tài),高電平有效。CLKOUT:可編程時(shí)鐘輸出。INTN:中斷輸出,低電平有效。RDN、WRN:讀/寫使能。DMREQ:DMA請(qǐng)求。DMACKN:DMA應(yīng)答,低電平有效。EOTN:DMA傳輸結(jié)束,低電平有效;EOTN僅當(dāng)DMACKN和WRN或RDN一起激活時(shí)才有效。RESETN:復(fù)位端,低電平有效;使用片內(nèi)復(fù)位電路時(shí)接高電平。GLN:Goodlink LED指示器,低電平有效。XTAL1、XTAL2:晶振連接端,可采用外部時(shí)鐘信號(hào)代替晶振。D+、D-:USB數(shù)據(jù)線。A0:A0=1選擇命令指令,A0=0選擇數(shù)據(jù);該位在多路地址/數(shù)據(jù)總線配置時(shí)可接高電平。

1.2命令匯總

PDIUSBD12芯片中集成了串行輸入引擎(SIE)模塊,它完成所有USB協(xié)議層的功能、大大簡(jiǎn)化了USB的固件開發(fā),開發(fā)人員只需使用D12提供的命令即可。D12命令如1表所示。

思達(dá)公司生產(chǎn)的電能表現(xiàn)場(chǎng)校驗(yàn)儀中使用P89C51RD2作為主控制器。P89C51RD2是Philips公司生產(chǎn)的51增強(qiáng)型的CPU,它除具備標(biāo)準(zhǔn)51的功能外,在片內(nèi)集成了64KB FLASH和1KB RAM,可以在20MHz外頻下以每機(jī)器周期為6個(gè)時(shí)鐘周期的速度運(yùn)行。P89C51RD2與PDIUSBD12的接口方法見圖1。

由圖可知P89C51RD2通過IO口同D12的片選、地址位信號(hào)相連,外部中斷響應(yīng)來自D12的中斷請(qǐng)求,D12的操作地址可以任意指定。

所謂固件程序就是固化在程序存儲(chǔ)器中的程序代碼。本系統(tǒng)存儲(chǔ)在P89C51RD2的Flash存儲(chǔ)器中,固件開發(fā)使用Keil C51語(yǔ)言,開發(fā)平臺(tái)為μVision2集成開發(fā)環(huán)境。

本設(shè)計(jì)參考了Philips公司提供的D12固件程序范例,對(duì)USB協(xié)議操作的相關(guān)代碼直接移植使用,而數(shù)據(jù)采集、傳輸、存儲(chǔ)等部分則自主開發(fā)。

固件程序結(jié)構(gòu)如圖2所示。硬件抽象層對(duì)D12的數(shù)據(jù)讀、寫以及各種指令的寫入進(jìn)行函數(shù)封裝;D12命令接口層對(duì)D12的所有控制指令的函數(shù)進(jìn)行封裝;USB向量請(qǐng)求模塊完成USB上電配置、向量請(qǐng)求等各類事件的響應(yīng)處理;USB協(xié)議層包括對(duì)USB協(xié)議操作的封裝以及對(duì)USB標(biāo)準(zhǔn)請(qǐng)求的響應(yīng);中斷服務(wù)進(jìn)程包括USB中斷、ADC中斷等。

當(dāng)D12有事件需要處理時(shí),將觸發(fā)微控制器外部中斷0,微控制器讀取D12的中斷狀態(tài)寄存器,判斷中斷的來源并作出相應(yīng)的處理。若由數(shù)據(jù)端點(diǎn)觸發(fā),則相應(yīng)地讀取或?qū)懭霐?shù)據(jù);若由控制端點(diǎn)0觸發(fā),則判斷請(qǐng)求的類型。標(biāo)準(zhǔn)請(qǐng)求由USB協(xié)議處理模塊處理,用戶自定義向量請(qǐng)求由USB向量請(qǐng)求模塊處理。

在Windows環(huán)境下,USB設(shè)備驅(qū)動(dòng)程序遵循WDM(Win32 Driver Mode)方式。為了簡(jiǎn)化設(shè)計(jì),并兼顧驅(qū)動(dòng)程序的運(yùn)行效率,筆者選用了DriverStudio2.7工具軟件中的DriverWorks組件進(jìn)行USB設(shè)備驅(qū)動(dòng)程序的開發(fā)。DriverWorks為WDM設(shè)備驅(qū)動(dòng)程序的開發(fā)提供了完善的支持。其中包含一個(gè)非常完善的源代碼生成工具DriverWizard以及相應(yīng)的類庫(kù)和驅(qū)動(dòng)程序范例,它還支持在C++下進(jìn)行設(shè)備驅(qū)動(dòng)程序的開發(fā)。通過DriverWizard生成的代碼只需要進(jìn)行少量的修改就可以使用,這使得驅(qū)動(dòng)程序開發(fā)者可以將精力集中在驅(qū)動(dòng)功能的實(shí)現(xiàn)上,而不必理會(huì)太多的WDM開發(fā)細(xì)節(jié)。

本設(shè)計(jì)在DriverWizard的最后自定義了四個(gè)IOCTL接口對(duì)USB設(shè)備進(jìn)行控制,如表2所示。然后在自動(dòng)生成的驅(qū)動(dòng)程序代碼中向相應(yīng)的IOCTL函數(shù)添加代碼,用函數(shù)BuildVerdorRequest構(gòu)建USB協(xié)議的自定義向量請(qǐng)求(Vendor Request)。由編譯修改后的源代碼即可得到驅(qū)動(dòng)程序文件McaD12.SYS。

我們已成功地將USB技術(shù)應(yīng)用在一款現(xiàn)場(chǎng)校驗(yàn)產(chǎn)品上。測(cè)試儀器通過USB向PC傳輸?shù)乃俾蔬_(dá)到12~14kbyte/s。經(jīng)過長(zhǎng)期測(cè)試知,該通訊方式傳輸率高、容錯(cuò)性強(qiáng),方便使用,整個(gè)開發(fā)過程獲得了成功,并具有一定的創(chuàng)新性。對(duì)本系統(tǒng)編譯稍加修改便可應(yīng)用于其他基于微機(jī)的數(shù)據(jù)采集、自動(dòng)化測(cè)控系統(tǒng)中。

 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

《帶得走的智能制造》暑期課程圓滿落幕 北京2025年7月25日 /美通社/ -- 近日,由國(guó)際獨(dú)立第三方檢測(cè)、檢驗(yàn)和認(rèn)證機(jī)構(gòu)德國(guó)萊茵TÜV大中華區(qū)(以下簡(jiǎn)稱"TÜV萊茵")與北京...

關(guān)鍵字: 智能制造 BSP DMA 信息安全

在實(shí)時(shí)控制系統(tǒng)、高速通信協(xié)議處理及高精度數(shù)據(jù)采集等對(duì)時(shí)間敏感的應(yīng)用場(chǎng)景中,中斷響應(yīng)延遲的優(yōu)化直接決定了系統(tǒng)的可靠性與性能上限。STM32系列微控制器憑借其靈活的嵌套向量中斷控制器(NVIC)、多通道直接內(nèi)存訪問(DMA)...

關(guān)鍵字: STM32 DMA

在嵌入式系統(tǒng)、網(wǎng)絡(luò)通信等對(duì)數(shù)據(jù)傳輸效率要求極高的場(chǎng)景中,零拷貝技術(shù)能夠顯著減少數(shù)據(jù)在內(nèi)存中的拷貝次數(shù),降低CPU負(fù)載,提高系統(tǒng)性能。DMA(直接內(nèi)存訪問)環(huán)形緩沖區(qū)與內(nèi)存池相結(jié)合的雙重優(yōu)化策略,為實(shí)現(xiàn)高效的零拷貝數(shù)據(jù)傳輸...

關(guān)鍵字: 零拷貝 DMA 嵌入式系統(tǒng)

STM32單片機(jī)憑借其高性能、低功耗、豐富的外設(shè)資源等優(yōu)勢(shì),在工業(yè)控制、消費(fèi)電子、汽車電子等領(lǐng)域得到了廣泛應(yīng)用。在嵌入式系統(tǒng)開發(fā)中,高效的數(shù)據(jù)處理和傳輸至關(guān)重要。中斷技術(shù)和DMA技術(shù)作為STM32單片機(jī)中重要的數(shù)據(jù)處理和...

關(guān)鍵字: STM32 DMA

在嵌入式系統(tǒng)中,隨著數(shù)據(jù)量的不斷增加和實(shí)時(shí)性要求的提高,傳統(tǒng)的CPU直接控制數(shù)據(jù)傳輸?shù)姆绞街饾u暴露出效率低下的問題。為了應(yīng)對(duì)這一挑戰(zhàn),直接內(nèi)存訪問(Direct Memory Access,DMA)技術(shù)應(yīng)運(yùn)而生,成為實(shí)現(xiàn)...

關(guān)鍵字: DMA 嵌入式系統(tǒng) 高速數(shù)據(jù)傳輸

廣州2025年1月21日 /美通社/ -- 在數(shù)字營(yíng)銷領(lǐng)域快速發(fā)展的今天,每一場(chǎng)行業(yè)盛會(huì)都預(yù)示著新的轉(zhuǎn)折與機(jī)遇。2025年1月10日,由DMAA數(shù)字營(yíng)銷獎(jiǎng)主辦,廣州4A聯(lián)合主辦,廣州市廣告行業(yè)協(xié)會(huì)指導(dǎo)的第八屆DMAA國(guó)際...

關(guān)鍵字: DMA AI AI技術(shù) 創(chuàng)始人

在現(xiàn)代計(jì)算機(jī)系統(tǒng)中,直接內(nèi)存訪問(DMA)技術(shù)被廣泛應(yīng)用于高速數(shù)據(jù)傳輸,其核心理念在于讓數(shù)據(jù)傳輸不再依賴CPU的參與,從而釋放CPU資源以處理其他任務(wù)。然而,在DMA操作完成后,系統(tǒng)需要一種機(jī)制來檢測(cè)DMA傳輸是否已完成...

關(guān)鍵字: DMA CPU 輪詢檢測(cè)

之前有個(gè)同事因?yàn)橛么诓樵兎绞桨l(fā)送數(shù)據(jù),被我說了一頓,明明有DMA資源,竟然放著不用,對(duì)于魚鷹這種性能強(qiáng)迫癥來說,肯定無法忍受,所以當(dāng)時(shí)就和他說,有時(shí)間你把它改一下。誰(shuí)知道過了好幾個(gè)月他才有時(shí)間弄這個(gè),然后還是出了問題,...

關(guān)鍵字: DMA 串口

自舉電路(Bootstrap Circuit)是一種廣泛應(yīng)用于電子和電力系統(tǒng)中的重要電路,尤其在需要提高輸入信號(hào)電平以控制高側(cè)開關(guān)時(shí)扮演關(guān)鍵角色。

關(guān)鍵字: 信號(hào) 電平 Vcc隔離

UART(Universal Asynchronous Receiver/Transmitter,通用異步收發(fā)器)是一種常用的串行通信協(xié)議,廣泛應(yīng)用于單片機(jī)或各種嵌入式設(shè)備之間的通信。

關(guān)鍵字: UART DMA
關(guān)閉