一種基于USB的視頻傳輸系統(tǒng)設(shè)計(jì)_第1頁(yè)
一種基于USB的視頻傳輸系統(tǒng)設(shè)計(jì)_第2頁(yè)
一種基于USB的視頻傳輸系統(tǒng)設(shè)計(jì)_第3頁(yè)
一種基于USB的視頻傳輸系統(tǒng)設(shè)計(jì)_第4頁(yè)
一種基于USB的視頻傳輸系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、    一種基于usb的視頻傳輸系統(tǒng)設(shè)計(jì)    范超趙琳李真摘要:該文設(shè)計(jì)一種基于usb的視頻傳輸系統(tǒng)。首先對(duì)usb接口的工作原理進(jìn)行簡(jiǎn)要介紹,在此基礎(chǔ)上進(jìn)行基于pdiusbd12芯片的usb總線(xiàn)設(shè)計(jì),并使用fpga進(jìn)行系統(tǒng)控制實(shí)現(xiàn)與pc機(jī)的信息交互。關(guān)鍵詞:視頻傳輸;fpga;usb:tp311 :a :1009-3044(2017)14-0216-021系統(tǒng)硬件總體架構(gòu)本系統(tǒng)采用p89c52控制芯片和pdiusbd12接口芯片完成fpga與pc之間的數(shù)據(jù)傳輸,數(shù)據(jù)傳輸部分主要包括fpga與usb之間的數(shù)據(jù)交換和usb與pc之間的數(shù)據(jù)交換,系統(tǒng)總體通信

2、結(jié)構(gòu)如圖1所示。如圖1所示,fpga通過(guò)usb接口與pc進(jìn)行通信,usb接口由微控制器p89c52和pdiusbd12接口芯片組成,p89c52通過(guò)p2口與fpga做并行數(shù)據(jù)通路。fpga通過(guò)寫(xiě)選通信號(hào)控制p89c52讀取數(shù)據(jù),需要讀取數(shù)據(jù)時(shí)fpga給p89c52寫(xiě)選通信號(hào)有效,p89c52讀取fpga內(nèi)部fifo中的數(shù)據(jù),數(shù)據(jù)讀取完成后fpga寫(xiě)選通信號(hào)變?yōu)闊o(wú)效。usb接口為主從模式,usb與主機(jī)的數(shù)據(jù)傳輸均需由主機(jī)端發(fā)起。接口控制芯片響應(yīng)主機(jī)的讀數(shù)請(qǐng)求,一旦收到主機(jī)的讀數(shù)請(qǐng)求,接口控制芯片將數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)寫(xiě)入pdi-subd12接口芯片的端口1。pdisubd12和89c52單片機(jī)之間

3、的連接如圖1所示(圖中部分信號(hào)未列出)。2系統(tǒng)軟件總體設(shè)計(jì)系統(tǒng)軟件主要由固件程序,驅(qū)動(dòng)程序,和pc端應(yīng)用程序組成,其中固件程序是完成數(shù)據(jù)傳輸功能的核心,固件程序運(yùn)行于p89c52支持usb協(xié)議。固件程序主要由以下三部分組成:1)初始化單片機(jī)和所有的外圍電路;2)主循環(huán);3)中斷服務(wù)程序。圖2為主程序流程圖,如圖所示,系統(tǒng)上電后接口控制器(p89c52)首先進(jìn)行初始化,然后向主機(jī)發(fā)出連接usb命令,主機(jī)收到接口控制器發(fā)送的連接請(qǐng)求后讀取設(shè)備描述符,并根據(jù)設(shè)備描述符,啟動(dòng)相應(yīng)的設(shè)備驅(qū)動(dòng)程序,完成usb總線(xiàn)連接。然后主程序進(jìn)入循環(huán),運(yùn)行控制子程序,數(shù)據(jù)傳輸功能由中斷服務(wù)程序完成。根據(jù)usb協(xié)議,us

4、b數(shù)據(jù)傳輸均由主機(jī)發(fā)起,主機(jī)首先向pdiusbd12發(fā)送令牌包,pdiusbd12接收到主機(jī)發(fā)送的令牌包后向接口控制器發(fā)中斷,接口控制器響應(yīng)中斷進(jìn)入中斷服務(wù)程序后,首先讀pdiusbd12的中斷寄存器,判斷usb令牌包的類(lèi)型,然后執(zhí)行相應(yīng)的操作。中斷服務(wù)程序在整個(gè)程序體中非常重要,主要負(fù)責(zé)修改中斷變量聯(lián)合體和填充控制結(jié)構(gòu)體的值,以便主循環(huán)能根據(jù)標(biāo)志變量聯(lián)合體中的標(biāo)志變量的變化來(lái)執(zhí)行具體的程序。對(duì)于總線(xiàn)復(fù)位和掛起改變,程序只修改其對(duì)應(yīng)的標(biāo)志位,但對(duì)于其它標(biāo)志變化,如控制輸入輸出、端點(diǎn)輸a/輸出還需要執(zhí)行相應(yīng)的程序,以完成數(shù)據(jù)傳輸。pdiusbd12收到數(shù)據(jù)包后向接口控制器發(fā)送中斷請(qǐng)求,接口控制器

5、響應(yīng)中斷,在中斷服務(wù)程序中讀取pdiusbd12內(nèi)部緩沖區(qū)的數(shù)據(jù),同時(shí)清空pdiusbd12的內(nèi)部緩沖區(qū),并修改相應(yīng)的標(biāo)志位。圖3為中斷服務(wù)程序的框圖。接口控制器通過(guò)向pdiusbd12發(fā)送命令和數(shù)據(jù)實(shí)現(xiàn)與pdiusbd12的通信。pdiusbd12有初始化命令字、數(shù)據(jù)流命令字和通用命令字三種命令字。接口控制器首先向pdi-usbd12發(fā)送命令字,根據(jù)不同命令字的要求再發(fā)送或讀出數(shù)據(jù)。本系統(tǒng)將每種命令字設(shè)計(jì)為命令函數(shù),通過(guò)函數(shù)調(diào)用實(shí)現(xiàn)各個(gè)命令字的發(fā)送。當(dāng)接口控制器給pdiusbd12的端點(diǎn)緩沖區(qū)發(fā)數(shù)據(jù)時(shí)應(yīng)首先判斷緩沖區(qū)是否為空,否則如果主機(jī)還沒(méi)有將上一個(gè)包的數(shù)據(jù)從pdiusbd12讀走,接口控制器又將另一個(gè)包寫(xiě)進(jìn)pdi-usbd12的緩沖區(qū)時(shí)會(huì)覆蓋掉以前的數(shù)據(jù)。判斷緩沖區(qū)是否為空的程序如下。3結(jié)論本設(shè)計(jì)方案已經(jīng)經(jīng)過(guò)了硬件驗(yàn)證,達(dá)到了預(yù)定的設(shè)計(jì)要求,實(shí)現(xiàn)了大數(shù)據(jù)量的實(shí)時(shí)傳輸且具有良好的靈活性和擴(kuò)展性。 電腦知識(shí)與技術(shù)2017年14期電腦知識(shí)與技術(shù)的其它文章基于ds18820與at89s51的溫度測(cè)量?jī)x設(shè)計(jì)基于android平臺(tái)校園眾包app的設(shè)計(jì)與實(shí)現(xiàn)基于快速開(kāi)發(fā)技術(shù)的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論