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

正文內(nèi)容

usb接口芯片pdiusbd12與單片機(jī)at89c51通信系統(tǒng)(編輯修改稿)

2025-07-22 23:10 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 帶屏蔽或不是雙絞的線,但最長(zhǎng)不能超過(guò)30m。這主要是由于信號(hào)衰減的限制,為了提供信號(hào)電壓保證以及與終端負(fù)載相匹配,在電纜的每一端都使用了不平衡的終端負(fù)載,這種終端負(fù)載也保證了能夠檢測(cè)外設(shè)與端口的連接或分離,并且可以區(qū)分高速與低速設(shè)備。所有的設(shè)備都有上行的接口,上行和下行的接頭是不能互換的,這保證了不會(huì)有非法的連接出現(xiàn)。插頭與插座有兩個(gè)系列分別為A和B系列,A用于基本固定的外圍設(shè)備,而系列B用于經(jīng)常拔插的設(shè)備,這兩個(gè)系列是不能互換的。 USB 數(shù)據(jù)流從邏輯上講USB數(shù)據(jù)的傳輸是通過(guò)管道進(jìn)行的。圖26描述了USB數(shù)據(jù)傳輸?shù)倪^(guò)程。USB系統(tǒng)軟件通過(guò)缺省管道(與端點(diǎn)0相對(duì)應(yīng))管理設(shè)備,設(shè)備驅(qū)動(dòng)程序通過(guò)其它的管道來(lái)管理設(shè)備的功能接口。實(shí)際的數(shù)據(jù)傳輸過(guò)程是這樣的:設(shè)備驅(qū)動(dòng)程序通過(guò)對(duì)USBD接口(USB driver interface)的調(diào)用發(fā)出輸入輸出請(qǐng)求(IRP I/O Request Packet);USB驅(qū)動(dòng)程序接到請(qǐng)求后,調(diào)用HCD接口(host controller driver interface),將IRP轉(zhuǎn)化為USB的傳輸,一個(gè)IRP可以包含一個(gè)或多個(gè)USB傳輸;然后HCD將USB傳輸分解為總線操作,由主控制器以包的形式發(fā)出。需要注意的是所有的數(shù)據(jù)傳輸都是由主機(jī)開(kāi)始的,任何外設(shè)都無(wú)權(quán)開(kāi)始一個(gè)傳輸。IRP是由操作系統(tǒng)定義的,而USB傳輸與總線操作是USB規(guī)范定義的。為了進(jìn)一步說(shuō)明USB傳輸,我們引出幀(frame)的概念。幀:USB總線將1ms定義為一幀,每幀以一個(gè)SOF包為起始,在這1ms里,USB進(jìn)行一系列的總線操作。引入幀的概念主要是為了支持與時(shí)間有關(guān)的總線操作。為了滿足不同外設(shè)和用戶的要求,USB 提供了四種傳輸方式:控制傳輸、同步傳輸、中斷傳輸、批傳輸。它們?cè)跀?shù)據(jù)格式、傳輸方向、數(shù)據(jù)包容量限制、總線訪問(wèn)限制等方面有著各自不同的特征??刂苽鬏?Control Transfer)1. 通常用于配置/命令/狀態(tài)等情形;2. 其中的設(shè)置操作(setup)和狀態(tài)操作(status)的數(shù)據(jù)包,具有USB定義的結(jié)構(gòu),因此控制傳輸只能通過(guò)消息管道進(jìn)行;3. 支持雙向傳輸; 主機(jī) 連接 物理設(shè)備 接口X應(yīng)用接口的集合 Client SW管理一個(gè)接口 到一個(gè)接 口的通道 束 與接口 無(wú) 緩沖 沒(méi)有USB 有關(guān) USB格式 格式 端點(diǎn)0USB邏輯設(shè)備端點(diǎn)的集合USB System SW管理設(shè)備 到0號(hào)端點(diǎn)的 缺省通道USB設(shè)備(第9章) USB USB幀格式 接口 的數(shù)據(jù) 事務(wù) 主機(jī)控制器 事務(wù) USB幀格式 每個(gè)端 USB幀 SIEUSB總線接口 的數(shù)據(jù) 點(diǎn)的數(shù) 結(jié)構(gòu)的 據(jù) 數(shù)據(jù) USBSIE 主機(jī)(第10章) USB線路 機(jī)械的, 通道:兩個(gè)水平實(shí)體之間連接 電氣的, 的抽象。 數(shù)據(jù)傳遞機(jī)制 被傳遞的數(shù)據(jù)圖28 USB數(shù)據(jù)流4. 對(duì)于高速設(shè)備允許數(shù)據(jù)包最大容量為8,16,32或64字節(jié),對(duì)于低速設(shè)備只有8 字節(jié)一種選擇;5. 端點(diǎn)不能指定總線訪問(wèn)的頻率和占用總線的時(shí)間,USB系統(tǒng)軟件會(huì)做出限制;6. 具有數(shù)據(jù)傳輸保證,在必要時(shí)可以重試。同步傳輸(Isochronous Transfer)1. 是一種周期的連續(xù)的傳輸方式,通常用于與時(shí)間有密切關(guān)系的信息的傳輸;2. 數(shù)據(jù)沒(méi)有USB 定義的結(jié)構(gòu)數(shù)據(jù)流管道;3. 單向傳輸,如果一個(gè)外設(shè)需要雙向傳輸,則必須使用另一個(gè)端點(diǎn);4. 只能用于高速設(shè)備,數(shù)據(jù)包的最大容量可以從0到1023個(gè)字節(jié);5. 具有帶寬保證,并且保持?jǐn)?shù)據(jù)傳輸?shù)乃俾屎愣ǎ總€(gè)同步管道每幀傳輸一個(gè)數(shù)據(jù)包;6. 沒(méi)有數(shù)據(jù)重發(fā)機(jī)制要求,具有一定的容錯(cuò)性;7. 與中斷方式一起占用總線的時(shí)間不得超過(guò)一幀的90%。中斷傳輸(Interrupt Transfer)1. 用于非周期的自然發(fā)生的數(shù)據(jù)量很小的信息的傳輸,如鍵盤(pán)、鼠標(biāo)等;2. 數(shù)據(jù)沒(méi)有USB 定義的結(jié)構(gòu)數(shù)據(jù)流管道;3. 只有輸入這一種傳輸方式,即外設(shè)到主機(jī);4. 對(duì)于高速設(shè)備允許數(shù)據(jù)包,最大容量為小于或等于64字節(jié),對(duì)于低速設(shè)備只能小于或等于8字節(jié);5. 具有最大服務(wù)周期保證,即在規(guī)定時(shí)間內(nèi)保證有一次數(shù)據(jù)傳輸;6. 與同步方式一起占用總線的時(shí)間不得超過(guò)一幀的90%;7. 具有數(shù)據(jù)傳輸保證,在必要時(shí)可以重試。批傳輸(Bulk Transfer)1. 用于大量的對(duì)時(shí)間沒(méi)有要求的數(shù)據(jù)傳輸;2. 數(shù)據(jù)沒(méi)有USB 定義的結(jié)構(gòu)數(shù)據(jù)流管道;3. 單向傳輸,如果一個(gè)外設(shè)需要雙向傳輸,則必須使用另一個(gè)端點(diǎn);4. 只能用于高速設(shè)備,允許數(shù)據(jù)包最大容量為8,16,32或64字節(jié);5. 沒(méi)有帶寬的保證,只要有總線空閑就允許傳輸數(shù)據(jù),優(yōu)先級(jí)小,于控制傳輸;6. 具有數(shù)據(jù)傳輸保證,在必要時(shí)可以重試,以保證數(shù)據(jù)的準(zhǔn)確性。圖27 描述了輸入輸出請(qǐng)求IRP傳輸與操作之間的關(guān)系。一個(gè)同步傳送是一個(gè)或多個(gè)IN/OUT方向的數(shù)據(jù)事務(wù)。IRP數(shù)據(jù)流類型IRP事務(wù)事務(wù)事務(wù)所有的傳送都是由一個(gè)或多個(gè)事務(wù)組成。一個(gè)IRP又可由一個(gè)或多個(gè)傳送組成??刂苽魉虸RPSetup事務(wù)數(shù)據(jù)事務(wù)Status事務(wù)額外的控制傳送控制傳送首先是一個(gè)OUT方向的Setup事務(wù),然后是多個(gè)IN方向或OUT方向的數(shù)據(jù)事務(wù),最后是一個(gè)與數(shù)據(jù)反向的Status事務(wù)。中斷傳送IRP事務(wù)事務(wù)一個(gè)中斷傳送是一個(gè)或多個(gè)IN/OUT方向的數(shù)據(jù)事務(wù)。同步傳送IRP事務(wù)事務(wù)事務(wù)批傳送事務(wù)事務(wù)事務(wù)一個(gè)批傳送是一個(gè)或多個(gè)IN/OUT方向的數(shù)據(jù)事務(wù)。 圖27 USB 數(shù)據(jù)傳輸3 數(shù)據(jù)采集系統(tǒng)的固件設(shè)計(jì) 固件的開(kāi)發(fā)環(huán)境Keil C51是美國(guó)Keil Software公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。Keil C51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開(kāi)發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)。Keil C51的工具包中,uVision是C51 for Windows的集成開(kāi)發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開(kāi)發(fā)流程。開(kāi)發(fā)人員可用IDE本身或其它編輯器編輯C或匯編源文件。然后分別由C51及A51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)建生成庫(kù)文件,也可以與庫(kù)文件一起經(jīng)L51連接定位生成絕對(duì)目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,以供調(diào)試器dScope51或tScope51使用進(jìn)行源代碼級(jí)調(diào)試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫(xiě)入程序存貯器如EPROM中。 采用PDIUSBD12的固件設(shè)計(jì) 固件編程的主要工作固件是FIREWARE的對(duì)應(yīng)中文詞,它實(shí)際上是單片機(jī)的程序文件,包括USB設(shè)備的連接USB協(xié)議、中斷處理等,它不是單純的軟件,而是軟件和硬件的結(jié)合,開(kāi)發(fā)者需要對(duì)端口、中斷和硬件結(jié)構(gòu)非常熟悉。固件程序一般放入MCU中,當(dāng)把設(shè)備連接到主機(jī)上時(shí),上位機(jī)可以發(fā)現(xiàn)新設(shè)備,然后建立連接。因此,編寫(xiě)固件程序的一個(gè)最主要的目的就時(shí)讓W(xué)indows可以檢測(cè)和識(shí)別設(shè)備。USB固件程序程序由三部分組成:①初始化單片機(jī)和所有的外圍電路(包括PDIUSBD12);②主循環(huán)部分,其任務(wù)是可以中斷的;③中斷服務(wù)程序,其任務(wù)是對(duì)時(shí)間敏感的,必須馬上執(zhí)行。根據(jù)USB協(xié)議,任何傳輸都是由主機(jī)開(kāi)始的。單片機(jī)作它的前臺(tái)工作,等待中斷。主機(jī)首先要發(fā)令牌包給USB設(shè)備(這里是PDIUSBD12),PDIUSBD12接收到令牌包后就給單片機(jī)發(fā)中斷。單片機(jī)進(jìn)入中斷服務(wù)程序,首先讀PDIUSBD12的中斷寄存器,判斷USB令牌包的類型,然后執(zhí)行相應(yīng)的操作。在USB單片機(jī)程序中,要完成對(duì)各種令牌包的響應(yīng),其中比較難處理的是SETUP包,主要是端口0的編程。單片機(jī)與PDIUSBD12的通信主要是靠單片機(jī)給PDIUSBD12發(fā)命令和數(shù)據(jù)來(lái)實(shí)現(xiàn)的。PDIUSBD12的命令字分為三種:初始化命令字、數(shù)據(jù)流命令字和通用命令字。PDIUSBD12數(shù)據(jù)手冊(cè)給出了各種命令的代碼和地址。單片機(jī)先給PDIUSBD12的命令地址發(fā)命令,根據(jù)不同命令的要求再發(fā)送或讀出不同的數(shù)據(jù)。因此,可以將每種命令做成函數(shù),用函數(shù)實(shí)現(xiàn)各個(gè)命令,以后直接調(diào)用函數(shù)即可。 PDIUSBD12芯片特點(diǎn)PDIUSBD12是一個(gè)性能優(yōu)化的USB器件,通常用于基于微控制器的系統(tǒng),并通過(guò)高速通用并行接口與微控制器進(jìn)行通信,而且支持本地DMA傳輸。該器件采用模塊化的方法實(shí)現(xiàn)一個(gè)USB接口,允許在眾多可用的微控制器中選擇最合適的作為系統(tǒng)微控制器,允許使用現(xiàn)存的體系結(jié)構(gòu)使固件投資減到最小。這種靈活性減少了開(kāi)發(fā)時(shí)間、風(fēng)險(xiǎn)和成本。該器件使開(kāi)發(fā)成本低且高效的USB外圍設(shè)備的一種有效途徑。,也能適應(yīng)大多數(shù)設(shè)備類規(guī)范的設(shè)計(jì),如成像類、大容量存儲(chǔ)類、通信類、打印類和人工輸入設(shè)備等。因此,PDIUSBD12非常適合做很多外圍設(shè)備?,F(xiàn)在很多用SCSI實(shí)現(xiàn)的很多設(shè)備如果用USB來(lái)實(shí)現(xiàn)可以直接降低成本。PDIUSBD12還集成了SoftConnect、GoodLink、可編程時(shí)鐘輸出、低頻晶振和終端電阻等特性。所有這些特性都能在系統(tǒng)實(shí)現(xiàn)時(shí)節(jié)省成本,同時(shí)在外圍設(shè)備上很容易實(shí)現(xiàn)更高級(jí)的USB功能。 PDIUSBD12固件程序的編寫(xiě)USB設(shè)備啟動(dòng)流程如下:1. USB設(shè)備接入U(xiǎn)SB口,發(fā)出連接USB命令;2. 主機(jī)發(fā)出讀設(shè)備描述符兩次;3. 主機(jī)根據(jù)設(shè)備描述符—廠商ID、產(chǎn)品ID,啟動(dòng)相應(yīng)設(shè)備驅(qū)動(dòng)程序;4. 設(shè)備驅(qū)動(dòng)程序初始化USB設(shè)備;①讀設(shè)備描述符;②讀配置描述符;③選擇接口、端點(diǎn)(管道),確定傳輸方式。USB設(shè)備在正常使用以前,必須由主機(jī)配置設(shè)備。主機(jī)一般會(huì)從USB設(shè)備獲取配置信息后再確定此設(shè)備有哪些功能。作為配置操作的一部分,主機(jī)會(huì)設(shè)備設(shè)備的配置值,如果必要的話會(huì)選擇合適的接口備選設(shè)備。在發(fā)出連接USB命令后,主機(jī)先讀取設(shè)備描述符,然后發(fā)出設(shè)置USB地址SETUP包,設(shè)置USB地址后,進(jìn)行主機(jī)客戶驅(qū)動(dòng)與設(shè)備初始化。其余端點(diǎn)依此類推。在其頭文件里需定義USB規(guī)范中的各種描述符格式,包括設(shè)備描述表、配置描述表、接口描述表、端點(diǎn)描述表、字符串描述表以及描述表類型。這樣,在發(fā)送配置聯(lián)合描述表時(shí),主機(jī)USBD可以根據(jù)描述類型標(biāo)識(shí)區(qū)分各種分描述表。 固件的文件結(jié)構(gòu)本數(shù)據(jù)采集系統(tǒng)的固件有著如下的積木式結(jié)構(gòu):主循環(huán):發(fā)送USB請(qǐng)求、讀入數(shù)據(jù)、控制采集通道和處理USB總線事件等等標(biāo)準(zhǔn)請(qǐng)求 廠商請(qǐng)求中斷服務(wù)程序PDIUSBD12 命令接口硬件提取層圖31 數(shù)據(jù)采集系統(tǒng)固件的文件結(jié)構(gòu)固件設(shè)計(jì)的目標(biāo)就是使PDIUSBD12在USB上達(dá)到最大的傳輸速率。外圍設(shè)備可使用PDIUSBD12 在USB上傳輸數(shù)據(jù),這些設(shè)備的CPU要忙于處理許多設(shè)備控制和數(shù)據(jù)處理等任務(wù)。PDIUSBD12 的固件設(shè)計(jì)成完全的中斷驅(qū)動(dòng),當(dāng)CPU處理前臺(tái)任務(wù)時(shí),USB的傳輸可在后臺(tái)進(jìn)行,這就確保了最佳的傳輸速率和更好的軟件結(jié)構(gòu),同時(shí)簡(jiǎn)化了編程和調(diào)試。后臺(tái)ISR中斷服務(wù)程序和前臺(tái)主程序循環(huán)之間的數(shù)據(jù)交換通過(guò)事件標(biāo)志和數(shù)據(jù)緩沖區(qū)來(lái)實(shí)現(xiàn),例如PDIUSBD12的批量輸出端點(diǎn)可使用循環(huán)的數(shù)據(jù)緩沖區(qū),當(dāng)PDIUSBD12從USB收到一個(gè)數(shù)據(jù)包,那么就對(duì)CPU產(chǎn)生一個(gè)中斷請(qǐng)求,
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1