国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

無線USB的設(shè)計(jì)與實(shí)現(xiàn)

發(fā)布時(shí)間:2010-7-1 14:24    發(fā)布者:vinda
關(guān)鍵詞: USB , 無線
1 引言
USB(Universal Serial Bus通用串行總線)是一種快速、靈活的總線接口。與其它通信接口比較,USB接口的最大特點(diǎn)是易于使用,支持熱插拔,并且所有的配置過程都由系統(tǒng)自動(dòng)完成,無需用戶干預(yù)。USB接口已成為現(xiàn)代微型計(jì)算機(jī)的標(biāo)準(zhǔn)配置。

短距離無線通信,具有抗干擾能力強(qiáng)、可靠性高、安全性好、受地理?xiàng)l件限制較少、安裝施工簡便靈活等特點(diǎn),應(yīng)用非常廣泛,如汽車遙控門鑰、無線抄表、飯店的無線點(diǎn)菜、遙控遙測(cè)、小區(qū)自動(dòng)化等等。

結(jié)合上述兩種技術(shù)的優(yōu)點(diǎn),本文提出了一種無線USB的實(shí)現(xiàn)方案,可進(jìn)行短距離數(shù)據(jù)的高速傳輸。以此為基礎(chǔ),可快速開發(fā)出相關(guān)的短距離無線通信產(chǎn)品。

2 應(yīng)用芯片

PDIUSBD12 是一款Philips公司生產(chǎn)的高性價(jià)比USB 器件,其內(nèi)部集成有320 bit的FIFO存儲(chǔ)器、時(shí)鐘發(fā)生器、串行接口引擎(SIE)、收發(fā)器和3.3 V電壓轉(zhuǎn)換器,完全符合USB1.1版的規(guī)范,可進(jìn)行12M bit/s的數(shù)據(jù)傳輸。它還提供與微控制器進(jìn)行通信的高速通用并行接口,并支持本地的DMA傳輸。
PDIUSBD12有三個(gè)端點(diǎn):控制端點(diǎn)、通用端點(diǎn)和主端點(diǎn),可配置成四種模式以滿足不同的需要。片上集成一個(gè)6~48 MHz的倍頻鎖相環(huán)(PLL),允許使用6 MHz的低頻晶振,從而使電磁干擾大大減小,給PCB布線帶來了極大方便。它所提供的GoodLink接口可接LED,根據(jù)通信的狀況間歇閃爍,指示USB的連接狀況。

PDIUSBD12所具有的低掛起功耗連同LazyClock輸出,可以滿足ACPI、OnNOW和USB 電源管理的要求。低的操作功耗可以應(yīng)用于使用總線供電的外設(shè)。此外,它還集成了 SoftConnetTM、可編程時(shí)鐘輸出和終止寄存器集合等多種特性,不僅為系統(tǒng)節(jié)約了成本,而且使USB 功能在外設(shè)上的應(yīng)用變得更加容易。

nRF401是挪威Nordic公司最新推出的數(shù)傳頻段 433MHz單片無線收發(fā)一體芯片。采用FSK調(diào)制解調(diào)技術(shù),最高數(shù)據(jù)傳輸率達(dá)20k bit/s,最大發(fā)射功率為+10dBm,接收靈敏度高達(dá)-105dBm,開闊地的使用距離最遠(yuǎn)可達(dá)1000m。天線接口設(shè)計(jì)為差分天線,可以采用低成本的PCB天線。該芯片為低功耗設(shè)計(jì)且支持待機(jī)模式,接受狀態(tài)下的功耗為250mA,發(fā)射狀態(tài)下的功耗為8mA,等待狀態(tài)功耗僅為8mA。它的工作電壓范圍很寬,可以從2. 7~5V。它的外圍元件很少,只包括一個(gè)基準(zhǔn)晶振和幾個(gè)無源器件,沒有調(diào)試部件,可以直接與單片機(jī)串口連接,給設(shè)計(jì)和生產(chǎn)帶來了極大的方便。

3 硬件設(shè)計(jì)

本文設(shè)計(jì)的無線USB方案的硬件結(jié)構(gòu)如圖1所示。


微控制器MCU采用PHILIPS的P89C58UBP,具有32k EEPROM、256 Byte RAM和三個(gè)定時(shí)/計(jì)數(shù)器,最高時(shí)鐘可達(dá)33MHz。MCU的串口與 nRF401的RX、TX直接相連,TXEN(發(fā)送接收控制)、PWR_UP(芯片掛起)、CS(發(fā)射頻率選擇)分別由MCU的I/O腳控制。 PDIUSBD12接在MCU的數(shù)據(jù)總線上,中斷引腳/INT接在MCU的中斷輸入上。PDIUSBD12會(huì)對(duì)USB總線上的數(shù)據(jù)自動(dòng)進(jìn)行處理,將事件寫入自身的中斷寄存器,并拉低/INT通知MCU。MCU響應(yīng)中斷,并讀取中斷寄存器的內(nèi)容進(jìn)行判斷處理。如果是要求數(shù)據(jù)發(fā)送,則將數(shù)據(jù)通過串口發(fā)往nRF401,由其發(fā)射出去。同樣nRF401接收到數(shù)據(jù)后觸發(fā)串口中斷, MCU響應(yīng)中斷將數(shù)據(jù)送入U(xiǎn)SB總線。整套系統(tǒng)使用USB總線供電。

4 軟件設(shè)計(jì)

該系統(tǒng)的軟件設(shè)計(jì)包括P89C58UBP中的固件設(shè)計(jì)和微機(jī)端的通信軟件設(shè)計(jì)。其中,固件部分的流程圖如圖2所示。


后臺(tái)D12中斷服務(wù)程序和nRF401中斷服務(wù)程序與前臺(tái)主循環(huán)程序之間的數(shù)據(jù)交換,通過事件標(biāo)志和數(shù)據(jù)緩沖區(qū)來實(shí)現(xiàn)。后臺(tái)中斷服務(wù)程序由中斷觸發(fā),通過標(biāo)志位與主模塊通信。主模塊循環(huán)掃描各標(biāo)志位,對(duì)相應(yīng)的標(biāo)志位做出處理。例如,nRF401 接受到有效數(shù)據(jù)后,送入串口觸發(fā)串口中斷,進(jìn)入nRF401中斷服務(wù)程序,將數(shù)據(jù)接收后放入數(shù)據(jù)緩沖區(qū),然后設(shè)置UART_DATA標(biāo)志,退出子模塊。主模塊查詢到UART_DATA被置位,則調(diào)用 writendpoint()程序?qū)?shù)據(jù)發(fā)往PC。

值得注意的是,nRF401在接受狀態(tài)下即使沒有數(shù)據(jù)接受,也會(huì)有隨機(jī)碼輸出。因此需要在所需傳輸?shù)臄?shù)據(jù)前加入標(biāo)識(shí)頭,如55AAH。當(dāng)檢測(cè)到從串口進(jìn)入的數(shù)據(jù)為55AAH時(shí),再開始有效數(shù)據(jù)的接受。

對(duì)PC而言,無線USB傳輸模塊是它的一個(gè)USB外設(shè),因此必須提供USB設(shè)備的驅(qū)動(dòng)程序。驅(qū)動(dòng)程序的設(shè)計(jì)采用WDM模型,使用DriverStudio 進(jìn)行開發(fā)。DriverStudio是一款優(yōu)秀的驅(qū)動(dòng)程序開發(fā)軟件。啟動(dòng)DriverStudio中DriverWizard,填寫USB設(shè)備的端點(diǎn)配置,便會(huì)自動(dòng)生成驅(qū)動(dòng)程序原代碼和相應(yīng)的測(cè)試程序原代碼,只需稍做改動(dòng)便可用VC6.0編譯運(yùn)行[5]。驅(qū)動(dòng)程序向用戶程序提供標(biāo)準(zhǔn)的IO接口:WriteFile ()、 ReadFile() 、DeviceIoControl ()。用戶程序調(diào)用相應(yīng)的函數(shù),即可實(shí)現(xiàn)對(duì)USB設(shè)備的訪問。下面的例子是實(shí)現(xiàn)向USB總線寫數(shù)據(jù)的功能。

hFile = open_file(threadParam->pipe_name); //打開需要使用的端點(diǎn)
……
bResult = WriteFile(hFile,
threadParam->pcIoBuffer,
//等待傳送的數(shù)據(jù)緩沖區(qū)地址
threadParam->uiLength, //數(shù)據(jù)長度
&nBytes,
NULL); //向該端點(diǎn)寫入數(shù)據(jù)

if (bResult != TRUE) { //出錯(cuò)處理 DeviceIoControl(hFile, //復(fù)位該端點(diǎn)
IOCTL_D12_RESET_PIPE,
0, 0, 0, 0,
&nBytes,
NULL);}

編程過程中要注意串口波特率要一致,否則會(huì)造成接受數(shù)據(jù)錯(cuò)誤。nRF401周圍的布線和天線的設(shè)計(jì)很有講究,一定要按照手冊(cè)的要求進(jìn)行設(shè)計(jì)。
本文地址:http://www.qingdxww.cn/thread-14266-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • 深度體驗(yàn)Microchip自動(dòng)輔助駕駛應(yīng)用方案——2025巡展開啟報(bào)名!
  • 想要避免發(fā)生災(zāi)難,就用MPLAB SiC電源仿真器!
  • 利用模擬開發(fā)工具生態(tài)系統(tǒng)進(jìn)行安全電路設(shè)計(jì)
  • 更佳設(shè)計(jì)的解決方案——Microchip模擬開發(fā)生態(tài)系統(tǒng)
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美视 | 国产精品国偷自产在线 | 色播久久| 狼人综合色 | 亚洲国产成人久久午夜 | 亚洲男人天堂2023 | 国产成人毛片毛片久久网 | 青青视频二区 | 一级福利片 | 窝窝午夜在线观看免费观看 | 不卡午夜 | 九九热re| 99视频全部看免费观 | 久久观看午夜精品 | 日韩在线欧美高清一区 | 欧美亚洲国产视频 | 明星换脸高清一区二区 | 我不卡手机影院 | 欧美日韩一区二区三区高清不卡 | www四虎| 羞羞人成午夜爽爽影院 | 日韩视频免费在线观看 | 四虎影院大全 | 男女免费网站 | 国产高清成人 | 久热福利视频 | 99久久精品免费看国产 | 精东影业果冻传媒蜜桃 | 免费特黄一区二区三区视频一 | 欧美成人中文字幕在线看 | 国产精品黄页网站在线播放免费 | 国产精久久一区二区三区 | 国产玖玖| 中文在线最新版天堂8 | 91久操| 同性恋搞鸡 | 国产一级毛片午夜福 | 欧美在线免费看 | 国产亚洲一区二区三区在线观看 | 亚洲精品九色在线网站 | 日韩第1页 |