freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于usb的電力諧波數(shù)據(jù)采集系統(tǒng)-資料下載頁(yè)

2025-06-24 03:57本頁(yè)面
  

【正文】 載有多種類型的設(shè)備驅(qū)動(dòng)程序,如果木系統(tǒng)的開發(fā)使用的驅(qū)動(dòng)程序Windows操作系統(tǒng)己經(jīng)有的,就沒有必要自己重新開發(fā)了,只需要根據(jù)這個(gè)驅(qū)動(dòng)程序和構(gòu)建的系統(tǒng)規(guī)范來進(jìn)行硬件和相應(yīng)的固件開發(fā)就可以了。而本系統(tǒng)開發(fā)的USB數(shù)據(jù)采集系統(tǒng),并沒有在WindowS操作系統(tǒng)中有現(xiàn)成的驅(qū)動(dòng)程序,所以既要開發(fā)系統(tǒng)的固件程序也要開發(fā)主機(jī)上的設(shè)備驅(qū)動(dòng)程序。固件程序運(yùn)行在接口芯片上:,使主機(jī)能訪問控制USB端口,仁機(jī)由此來間接控制與該芯片連接的功能設(shè)備,完成相應(yīng)的工作。USB固件一般可以分為兩部分,即通用的列舉配置部分和類協(xié)議部分。通用列舉配置部分的主要作用是,在USB設(shè)備連接到主機(jī)后,使牡機(jī)能識(shí)別出設(shè)備的接入,了解設(shè)備的功能,并給設(shè)備分配資源。類協(xié)議部分是固件中根據(jù)硬件電路結(jié)構(gòu)具體完成設(shè)備數(shù)據(jù)傳輸功能的。當(dāng)設(shè)備進(jìn)行數(shù)據(jù)的收發(fā)時(shí),把USB功能設(shè)備連接到主機(jī)土,主機(jī)檢測(cè)到設(shè)備后,就進(jìn)行列舉,獲得外部設(shè)備的信息,根據(jù)固件程序中的VID和PID進(jìn)行配置。配置完成后就可以進(jìn)行數(shù)據(jù)傳輸了,數(shù)據(jù)以包的形式進(jìn)行傳輸,送入到器件的緩沖區(qū)(FIFO Buffer),(或者數(shù)據(jù)傳輸完畢),外部設(shè)備設(shè)置數(shù)據(jù)準(zhǔn)備完畢標(biāo)志,主機(jī)獲得這個(gè)標(biāo)志后,進(jìn)入到準(zhǔn)備接收數(shù)據(jù)的狀態(tài),并對(duì)外部功能設(shè)備發(fā)出讀令牌包,進(jìn)行端點(diǎn)類型的判斷,并等待設(shè)備發(fā)送數(shù)據(jù)響應(yīng)請(qǐng)求,完成數(shù)據(jù)的傳輸,之后由握手包完成整個(gè)通信過程。對(duì)USB設(shè)備列舉階段的程序開發(fā),要先了解USB設(shè)備的列舉過程,其具體過程大致如一下:(l)當(dāng)設(shè)備連接到HUB或根HUB的下行端口上時(shí),HUB會(huì)通知卞機(jī)有設(shè)備接入,主機(jī)會(huì)向相應(yīng)的端口提供電流,同時(shí)禁止該端口其他屬性,以利于主機(jī)要進(jìn)行的操作。(2)主機(jī)向HUB發(fā)出一系列查詢命令,以確定連接的細(xì)節(jié)情況。(3)在確定了設(shè)備接入的端口后,主機(jī)等待100ms,以便接入的設(shè)備達(dá)到穩(wěn)定的狀態(tài),隨后主機(jī)便激活該端口,發(fā)送復(fù)位命令。(4)HUB在接入的端口上保持10ms的復(fù)位命令后,設(shè)備進(jìn)入缺省狀態(tài),可以獲得最大100mA的電流,設(shè)備的寄存器均復(fù)位,并通過端點(diǎn)0與主機(jī)通信。(5)主機(jī)得到設(shè)備的描述符,獲取缺省管道的一系列信息。(6)主機(jī)給設(shè)備分配一個(gè)總線地址,在以后的通信中,該設(shè)備始終使用這個(gè)地址,直到其與主機(jī)斷開。(7)主機(jī)獲取設(shè)備的配置描述符。(8)主機(jī)得到描述符后,給設(shè)備分配配置值,這樣,所有端點(diǎn)和接口的屬性均得到了主機(jī)的確認(rèn),設(shè)備可以提出所需要的電流值,并開始完成自己的任務(wù)。 CYPRESS公司為了降低其生產(chǎn)芯片的開發(fā)難度,使設(shè)計(jì)人員在使用USB芯片時(shí)更加容易上手,隨USB芯片提供了開發(fā)固件編程的卞程序框架及相關(guān)的部分文件,使用戶固件編程的難度大大降低,只需要修改各增加部分代碼就可以完成固件編程。這是一種對(duì)提高開發(fā)效率是行之有效的。 CYPRESS公司隨芯片提供的部分文件如下: :8051頭文件,由KEIL提供 :庫(kù)函數(shù)申明,以及變量、宏定義,數(shù)據(jù)類型定義。 :FX2寄存器頭文件。 :固件框架源文件。 :用戶任務(wù)調(diào)度函數(shù)文件。 :USB描述符列表。 :EZUSB庫(kù)文件。 :中斷跳轉(zhuǎn)函數(shù)目標(biāo)文件。 幾個(gè)任務(wù)調(diào)度函數(shù),是需要用戶進(jìn)行改寫的,以針對(duì)所要開發(fā)的設(shè)備,設(shè)置好需要完成的功能。在開發(fā)中需要完成一系列的工作,對(duì)此分別進(jìn)行討論。 (l)設(shè)置初始狀態(tài)變量 主程序運(yùn)行時(shí),最先進(jìn)行狀態(tài)變量的初始設(shè)置,在固件程序中,這些狀態(tài)變量主要包括: Sleep:表示休眠模式。其值為真時(shí),USB進(jìn)入休眠狀態(tài),處理器不對(duì)usB設(shè)備進(jìn)行任何處理。在USB總線上3ms沒有檢測(cè)到傳輸事務(wù),就會(huì)產(chǎn)生中斷,置該標(biāo)志為真,進(jìn)入休眠模式。在這里設(shè)置其值為假。 Rwuen:表示遠(yuǎn)程喚醒。其值為真時(shí),允許遠(yuǎn)程喚醒,否則禁止遠(yuǎn)程喚醒。 Selfpwr:表示自供電情況。為真時(shí),采用自供電的模式。 GotSUD:表示端點(diǎn)0是否接收到設(shè)置數(shù)據(jù)。為真時(shí),表示收到了數(shù)據(jù),主機(jī)要進(jìn)行分析和處理。 (2)TDINIT() Void TD_Init(void):在列舉后最先調(diào)用,在USB上電的時(shí)候僅執(zhí)行一次,以便于進(jìn)行寄存器和全局變量的初始化工作。主要完成遠(yuǎn)程喚醒、設(shè)置CPU運(yùn)行頻率以及配置寄存器等任務(wù),隨后定向USB設(shè)備的描述符,完成初始化的整個(gè)過程。 (3)開中斷 使USB設(shè)備的各種中斷可以使用。 (4)重列舉 初始化后,中斷打開了,固件程序要檢測(cè)是否收到Setup包,若沒有收到就延遲一秒鐘,在延遲期間軟件模擬設(shè)備的斷開和重新接入,再進(jìn)行檢測(cè),如此下去,直到收到Setup包為止。如果固件程序是從EEPROM加載的,列舉位已經(jīng)設(shè)置好了,沒有必要再進(jìn)行重列舉了。 (5)任務(wù)調(diào)度 以上工作結(jié)束后,程序進(jìn)入主循環(huán),完成任務(wù)調(diào)度,Void TD_Poll(void)在主程序的主循環(huán)中,該函數(shù)會(huì)被反復(fù)調(diào)用,以便于添加執(zhí)行任務(wù)函數(shù)。BOOL TD_suspend(void):在USB設(shè)備進(jìn)入掛起前調(diào)用,在此函數(shù)中可添加進(jìn)入掛起前需要進(jìn)行的準(zhǔn)備工作,其返回值如果為真,則設(shè)備掛起,否則不會(huì)被掛起。A/D轉(zhuǎn)換控制子函數(shù)主要任務(wù)是完成一單次A/D轉(zhuǎn)換,同時(shí)將轉(zhuǎn)換后的數(shù)據(jù)通過USB接口送達(dá)給主機(jī)。在本程序中,是通過USB的端點(diǎn)0控制請(qǐng)求來實(shí)現(xiàn)的。在程序中,首先為MAX197寫入命令字節(jié),然后查詢MAX197的中斷輸出,判斷A/D轉(zhuǎn)換是否完成。如果完成A/D轉(zhuǎn)換,則讀取轉(zhuǎn)換后的結(jié)果,并通過EP0BUF(當(dāng)然也可以通過其它端點(diǎn)進(jìn)行數(shù)據(jù)的塊傳輸,以提高傳輸速率)把數(shù)據(jù)傳遞給主機(jī)。其程序代碼如下:BOOL DR_Single AD(void) //單次A/D轉(zhuǎn)換{OEB=0xFF。 //PB定義為輸出端口 WR=0。 IOB=0x40。 //寫入命令字節(jié)WR=l。OEB=0x00。 //PB定義為輸入端口While(ADINT!=0) //查詢MAX197的中斷輸出,判斷是否完成轉(zhuǎn)換{HBEN=0。 //首先置HBEN=0,即先讀低位}CHDataL=IOB。 //讀取A/D轉(zhuǎn)換結(jié)果的低位HBEN=l。 //設(shè)置HBEN=l,再讀高位CHDataH=IOB。 //讀取A/D轉(zhuǎn)換結(jié)果的高位HBEN=0。 //重置HBEN=0EP0BUF[0]=0xA1。EP0BuF[l]=cHDataL。 //返回低位數(shù)據(jù)EP0BuF[2]=cHDataH。 //返回高位數(shù)據(jù)EP0BCH=0。EP0BCL=3。 //長(zhǎng)度EP0CS=bmHSNAK: //握手Return(TRUE)。}Void TD_Resume(void):有喚醒事件時(shí),調(diào)用此函數(shù)。BOOL DR_Get Descriptor(void):在得到設(shè)備描述符的USB標(biāo)準(zhǔn)請(qǐng)求之前調(diào)用該函數(shù),若返回值為真,則執(zhí)行請(qǐng)求操作,否則不處理該操作。在windows操作系統(tǒng)中,有多種驅(qū)動(dòng)程序,如圖9所示。圖9 Windows設(shè)備驅(qū)動(dòng)程序的分類 其中,VDD即虛擬設(shè)備驅(qū)動(dòng)程序,是一個(gè)用戶模式的部件,可以使用DOS下的應(yīng)用程序來訪問硬件。 內(nèi)核模式驅(qū)動(dòng)程序,是windows中很大的一類驅(qū)動(dòng),它又分為如下幾類: (1)顯示驅(qū)動(dòng)程序,用于顯示類設(shè)備的驅(qū)動(dòng)程序,如顯示器和打印機(jī)等。 (2)到遺留設(shè)備驅(qū)動(dòng)程序,是早期版本的驅(qū)動(dòng)程序,可以不用修改直接在新的操作系統(tǒng)中使用。(3)PnP驅(qū)動(dòng)程序,是即插即用協(xié)議的內(nèi)核模式驅(qū)動(dòng)程序,WDM驅(qū)動(dòng)程序是其中重要的一個(gè),在WDM驅(qū)動(dòng)程序中又可以分為Class Driver(類驅(qū)動(dòng)程序)和Minidriver(微小驅(qū)動(dòng)程序)。 (4)文件系統(tǒng)驅(qū)動(dòng)程序,用于組織管理本地的文件系統(tǒng)模型。 WDM(windowsdrivermodel)是Microsoft主推的全新驅(qū)動(dòng)程序模式,這種模式提供了靈活的方式以簡(jiǎn)化驅(qū)動(dòng)程序的開發(fā),并提供了對(duì)新型硬件的支持,降低了所要開發(fā)的驅(qū)動(dòng)程序難度,減少了所要完成任務(wù)的工作量。 WDM驅(qū)動(dòng)程序?qū)儆趦?nèi)核模式,在主機(jī)應(yīng)用程序和物理設(shè)備之間采用了分層驅(qū)動(dòng)方式。不同層之間的驅(qū)動(dòng)程序完成不同的操作,不同層之間可以相互調(diào)用。分層方式又使WDM驅(qū)動(dòng)程序應(yīng)用范圍更加廣泛了??? 結(jié) 本文從電力諧波分析入手,提出了數(shù)據(jù)采集的需要,再對(duì)計(jì)算機(jī)數(shù)據(jù)采集常用的接口進(jìn)行分析后,選擇USB總線作為數(shù)據(jù)采集系統(tǒng)的傳輸通道。并據(jù)此設(shè)計(jì)了數(shù)據(jù)采集系統(tǒng),實(shí)現(xiàn)電力諧波數(shù)據(jù)采集的任務(wù)。在本課題中,完整的完成了數(shù)據(jù)采集系統(tǒng)從分析到實(shí)現(xiàn)的整個(gè)過程,主要完成的工作是: 對(duì)電力諧波的各項(xiàng)指標(biāo)進(jìn)行了深入的分析,獲得了研究電力諧波所需要的數(shù)據(jù)的要求,為后面的數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)做好了充分的準(zhǔn)備。 對(duì)數(shù)據(jù)采集處理技術(shù)進(jìn)行了更為深入的學(xué)習(xí),在掌握了數(shù)據(jù)采集的基木理論和概念的基礎(chǔ)上,進(jìn)一步掌握了系統(tǒng)誤差分配和估算的方法,進(jìn)行了數(shù)據(jù)采集系統(tǒng)的總體設(shè)計(jì),并根據(jù)系統(tǒng)要求,在電路設(shè)計(jì)中采用了能夠減小誤差的電中結(jié)構(gòu),為數(shù)據(jù)采集的準(zhǔn)確性打下了基礎(chǔ)。 分析了USB的體系結(jié)構(gòu)和特點(diǎn),并與傳統(tǒng)的計(jì)算機(jī)接口進(jìn)行了比較,在此基礎(chǔ)上研究設(shè)計(jì)了基于USB的電力諧波數(shù)據(jù)采集系統(tǒng),完成了硬件設(shè)計(jì)和軟件編程的工作,使系統(tǒng)達(dá)到了設(shè)計(jì)的功能。 在硬件設(shè)計(jì)中,對(duì)傳感器、A/D轉(zhuǎn)換電路和USB控制芯片進(jìn)行了分析選擇,在木課題中A/D轉(zhuǎn)換器選用了MAX197芯片,USB控制芯片選擇了CY7C68013系列的56引腳芯片,并根據(jù)芯片的需要進(jìn)行了外圍電路的設(shè)計(jì),以滿足硬件電路所要實(shí)現(xiàn)的功能。并對(duì)制作印刷電路板提出了工藝要求。 隨著USB技術(shù)的不斷進(jìn)步,USB的使用范圍越來越廣,USB自身的優(yōu)勢(shì)日益明顯,更使其應(yīng)用得到了更進(jìn)一步的推廣。然而,我們對(duì)USB的認(rèn)識(shí)還有很大的局限性,對(duì)USB協(xié)議的學(xué)習(xí)還很不夠,使USB技術(shù)還不能最大程度的發(fā)揮作用。通過木課題的實(shí)踐,感覺還有很多方面可以進(jìn)一步提高。 參考文獻(xiàn)[1][M].北京:中國(guó)電力出版社,1998[2][M].西安:西安交通大學(xué)出版社,2005[3]孫廣俊 [M].數(shù)據(jù)采集與處理,1999[4]胡曉軍 [M].西安:西安電子科技大學(xué)出版社,2005[5]周立功PDIUSBD12USB固件編程與驅(qū)動(dòng)開發(fā)[M],北京:北京航空航天大學(xué)出版社,2003致 謝 論文完成之際,回顧這兩年的學(xué)習(xí)與生活,不禁感慨萬千。在這里,有收獲的喜悅,有對(duì)校園的眷戀,有對(duì)未來的向往,更多的是對(duì)給予我無私幫助的老師和同學(xué)的無限感激之情。 在這里特別感謝我的導(dǎo)師鄭寬磊老師這兩年來,他從學(xué)業(yè)上和生活上都一直給予我悉心的指導(dǎo)和關(guān)心。在學(xué)習(xí)上,孜孜不倦的傳授理論和技術(shù)知識(shí),引導(dǎo)我獲取最新的信息,以及如何做更深的思考和探索。鄭老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、豐富的實(shí)踐經(jīng)驗(yàn)以及務(wù)實(shí)的工作作風(fēng),使我立身處世獲益良多。申老師為我的課題研究提供了良好的環(huán)境,在課題研究的每一個(gè)關(guān)鍵階段,申老師細(xì)心周到的指導(dǎo)給我極大鞭策和啟發(fā)。 感謝鄭老師在我的畢業(yè)設(shè)計(jì)期間對(duì)我的指導(dǎo)和不斷的督促,以及在論文的選題、寫作方面給予的指導(dǎo)和建議。我也將以此的結(jié)束為另一個(gè)新的開始,能在將來在自動(dòng)化的領(lǐng)域有更多自己的見解。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1