專利名稱:基于usb端口的多臺(tái)設(shè)備之間通信裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明設(shè)計(jì)到一種通信協(xié)議及通信設(shè)備。
背景技術(shù):
一般的PC機(jī)或者電子設(shè)備之間的數(shù)據(jù)傳輸使用網(wǎng)絡(luò)或串口等協(xié)議,而在某些研究或開發(fā)場(chǎng)合中,網(wǎng)卡和串口不能使用,只能使用USB端口,這時(shí)就需要一種將類似路由器的通訊設(shè)備,使多臺(tái)PC機(jī)或者電子設(shè)備之間連接起來并可以互相通信。
發(fā)明內(nèi)容
為了解決現(xiàn)有采用USB端口實(shí)現(xiàn)通信的過程中,不能夠?qū)崿F(xiàn)多臺(tái)設(shè)備之間的通信問題,本發(fā)明設(shè)計(jì)了基于USB端口的多臺(tái)設(shè)備之間通信裝置。本發(fā)明所述的基于USB端口的多臺(tái)設(shè)備之間通信裝置由一個(gè)CPLD電路、多個(gè) CY7C68013電路和多個(gè)USB通信端口組成,所述CPLD電路的多個(gè)通信端口分別與一個(gè) CY7C68013電路的通信端口相連接,每個(gè)CY7C68013電路的串行數(shù)據(jù)通信端口與一個(gè)USB通
信端口連接。所述CY7C68013電路用于數(shù)據(jù)轉(zhuǎn)發(fā),即將輸入數(shù)據(jù)存儲(chǔ)輸入緩沖區(qū),將輸出數(shù)據(jù)存儲(chǔ)輸出緩沖區(qū),并根據(jù)CPLD電路的控制信號(hào)輸入或輸出相應(yīng)地址的數(shù)據(jù)。本發(fā)明中,所述通信裝置發(fā)送或者接收數(shù)據(jù)的數(shù)據(jù)幀的格式為1位地址位,6位數(shù)據(jù)位,1位CRC校驗(yàn)位。所述CY7C68013電路采用狀態(tài)機(jī)的工作方式,所述狀態(tài)機(jī)包括下述狀態(tài)空閑狀態(tài)、狀態(tài)b、狀態(tài)C、狀態(tài)d、狀態(tài)e、狀態(tài)f,其中空閑狀態(tài),用于查收USB端口是否有數(shù)據(jù)進(jìn)入,還用于查收CPLD是否發(fā)送數(shù)據(jù),當(dāng) USB端口接收到數(shù)據(jù)時(shí),跳轉(zhuǎn)到狀態(tài)b ;當(dāng)接收到CPLD發(fā)送的數(shù)據(jù)時(shí),跳轉(zhuǎn)到狀態(tài)a ;狀態(tài)a,用于將接收到的數(shù)據(jù)存儲(chǔ)到輸入緩沖區(qū),同時(shí)向外部設(shè)備發(fā)送信號(hào)說明有數(shù)據(jù)到達(dá),然后跳到空閑狀態(tài);狀態(tài)b,用于將接收到的數(shù)據(jù)存儲(chǔ)到輸出緩沖區(qū)中,然后跳轉(zhuǎn)到狀態(tài)C ;狀態(tài)C,用于向CPLD電路申請(qǐng)發(fā)送數(shù)據(jù),然后跳到狀態(tài)d ;狀態(tài)d,用于延時(shí)1至2秒,然后跳到狀態(tài)e ;狀態(tài)e,用于查收CPLD電路發(fā)送的應(yīng)答信息,如果接收到應(yīng)答信息,則跳到狀態(tài)f, 否則跳到狀態(tài)d ;狀態(tài)f,用于將輸出緩沖區(qū)中的數(shù)據(jù)發(fā)送給CPLD電路,發(fā)送完跳到空閑狀態(tài)。本發(fā)明中的CPLD電路包括數(shù)據(jù)緩沖區(qū)、控制模塊和地址解析模塊,數(shù)據(jù)緩沖區(qū)用于存儲(chǔ)接收和待發(fā)送的數(shù)據(jù);地址解析模塊,用于在控制模塊的控制下解析接收到的數(shù)據(jù), 并獲得所述數(shù)據(jù)中的地址位;所述控制模塊采用狀態(tài)機(jī)的形式工作,所述狀態(tài)機(jī)包括空閑狀態(tài)、狀態(tài)b、狀態(tài)C、狀態(tài)d、狀態(tài)e、狀態(tài)f,其中空閑狀態(tài),用于查收CY7C68013電路發(fā)送的申請(qǐng)傳送數(shù)據(jù)的請(qǐng)求,并在接收到在所述請(qǐng)求時(shí),跳到狀態(tài)b;狀態(tài)b,判斷是否是CY7C68013電路發(fā)送的申請(qǐng),如果是則跳轉(zhuǎn)到狀態(tài)c,如果不是則跳到空閑狀態(tài);狀態(tài)c,向發(fā)送申請(qǐng)的CY7C68013電路發(fā)送應(yīng)答信息,然后跳到狀態(tài)d ;狀態(tài)d,將接收到的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)緩沖區(qū)內(nèi),同時(shí)控制地址解析模塊解析傳來的數(shù)據(jù)的地址位,并將所述數(shù)據(jù)發(fā)送至所述地址位所對(duì)應(yīng)的CY7C68013電路,完成后跳到狀態(tài)e ;狀態(tài)e,判斷是否有其它一個(gè)或多個(gè)CY7C68013電路2CY7C68013電路發(fā)出的申請(qǐng), 如果沒有,跳到空閑狀態(tài),如果有,則跳到狀態(tài)f ;狀態(tài)f,按照CY7C68013電路的優(yōu)先級(jí)原則,向已發(fā)出申請(qǐng)并且優(yōu)先級(jí)最高的 CY7C68013電路發(fā)出應(yīng)答信息,然后,跳到狀態(tài)d。本發(fā)明所述的基于USB端口的多臺(tái)設(shè)備之間通信裝置,能夠?qū)崿F(xiàn)多臺(tái)設(shè)備之間通過USB端口進(jìn)行數(shù)據(jù)傳輸,適用于服務(wù)器、PC機(jī)、掌上電腦、單片機(jī)系統(tǒng)、等具有USB串行通信端口的電子設(shè)備之間的通信連接。
圖1本發(fā)明所述的基于USB端口的多臺(tái)設(shè)備之間通信裝置的原理框圖;圖2是本發(fā)明所述的基于USB端口的多臺(tái)設(shè)備之間通信裝置應(yīng)用時(shí)與多臺(tái)設(shè)備之間的連接關(guān)系示意圖;圖3是本發(fā)明所述的基于USB端口的多臺(tái)設(shè)備之間通信裝置發(fā)送/接收數(shù)據(jù)的數(shù)據(jù)幀的格式;圖4是具體實(shí)施方式
三所述的控制模塊的原理框圖。
具體實(shí)施例方式具體實(shí)施方式
一、本實(shí)施方式所述的基于USB端口的多臺(tái)設(shè)備之間通信裝置由一個(gè)CPLD電路1、多個(gè)CY7C68013電路2和多個(gè)USB通信端口 3組成,所述CPLD電路1的多個(gè)通信端口分別與一個(gè)CY7C68013電路2的通信端口相連接,每個(gè)CY7C68013電路2的串行數(shù)據(jù)通信端口與一個(gè)USB通信端口 3連接。所述CY7C68013電路用于數(shù)據(jù)轉(zhuǎn)發(fā),即將輸入數(shù)據(jù)存儲(chǔ)輸入緩沖區(qū),將輸出數(shù)據(jù)存儲(chǔ)輸出緩沖區(qū),并根據(jù)CPLD電路的控制信號(hào)輸入或輸出相應(yīng)地址的數(shù)據(jù)。本實(shí)施方式中,所述通信裝置發(fā)送或者接收數(shù)據(jù)的數(shù)據(jù)幀的格式為1位地址位, 6位數(shù)據(jù)位,1位CRC校驗(yàn)位。參見圖3所示。
具體實(shí)施方式
二、本實(shí)施方式是對(duì)具體實(shí)施方式
一所述的基于USB端口的多臺(tái)設(shè)備之間通信裝置中的Cy7c68013芯片做進(jìn)一步限定,本實(shí)施方式中的CY7C68013電路2采用狀態(tài)機(jī)的工作方式,所述狀態(tài)機(jī)包括下述狀態(tài)空閑狀態(tài)、狀態(tài)b、狀態(tài)C、狀態(tài)d、狀態(tài)e、 狀態(tài)f,其中空閑狀態(tài),用于查收USB端口是否有數(shù)據(jù)進(jìn)入,還用于查收CPLD是否發(fā)送數(shù)據(jù),當(dāng) USB端口接收到數(shù)據(jù)時(shí),跳轉(zhuǎn)到狀態(tài)b ;當(dāng)接收到CPLD發(fā)送的數(shù)據(jù)時(shí),跳轉(zhuǎn)到狀態(tài)a ;狀態(tài)a,用于將接收到的數(shù)據(jù)存儲(chǔ)到輸入緩沖區(qū),同時(shí)向外部設(shè)備發(fā)送信號(hào)說明有數(shù)據(jù)到達(dá),然后跳到空閑狀態(tài);狀態(tài)b,用于將接收到的數(shù)據(jù)存儲(chǔ)到輸出緩沖區(qū)中,然后跳轉(zhuǎn)到狀態(tài)c ;
狀態(tài)c,用于向CPLD電路1申請(qǐng)發(fā)送數(shù)據(jù),然后跳到狀態(tài)d ;狀態(tài)d,用于延時(shí)1至2秒,然后跳到狀態(tài)e ;狀態(tài)e,用于查收CPLD電路1發(fā)送的應(yīng)答信息,如果接收到應(yīng)答信息,則跳到狀態(tài) f,否則跳到狀態(tài)d;狀態(tài)f,用于將輸出緩沖區(qū)中的數(shù)據(jù)發(fā)送給CPLD電路1,發(fā)送完跳到空閑狀態(tài)。
具體實(shí)施方式
三、本實(shí)施方式是對(duì)具體實(shí)施方式
一或二所述的基于USB端口的多臺(tái)設(shè)備之間通信裝置中的CPLD電路做進(jìn)一步限定,本實(shí)施方式中的CPLD電路1包括數(shù)據(jù)緩沖區(qū)12、控制模塊11和地址解析模塊13,數(shù)據(jù)緩沖區(qū)12用于存儲(chǔ)接收和待發(fā)送的數(shù)據(jù); 地址解析模塊13,用于在控制模塊11的控制下解析接收到的數(shù)據(jù),并獲得所述數(shù)據(jù)中的地址位;所述控制模塊11采用狀態(tài)機(jī)的形式工作,所述狀態(tài)機(jī)包括空閑狀態(tài)、狀態(tài)b、狀態(tài)C、 狀態(tài)d、狀態(tài)e、狀態(tài)f,其中空閑狀態(tài),用于查收CY7C68013電路2發(fā)送的申請(qǐng)傳送數(shù)據(jù)的請(qǐng)求,并在接收到在所述請(qǐng)求時(shí),跳到狀態(tài)b;狀態(tài)b,判斷是否是CY7C68013電路2發(fā)送的申請(qǐng),如果是則跳轉(zhuǎn)到狀態(tài)c,如果不是則跳到空閑狀態(tài);狀態(tài)c,向發(fā)送申請(qǐng)的CY7C68013電路2發(fā)送應(yīng)答信息,然后跳到狀態(tài)d ;狀態(tài)d,將接收到的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)緩沖區(qū)12內(nèi),同時(shí)控制地址解析模塊13解析傳來的數(shù)據(jù)的地址位,并將所述數(shù)據(jù)發(fā)送至所述地址位所對(duì)應(yīng)的CY7C68013電路2,完成后跳到狀態(tài)e ;狀態(tài)e,判斷是否有其它一個(gè)或多個(gè)CY7C68013電路2CY7C68013電路2發(fā)出的申請(qǐng),如果沒有,跳到空閑狀態(tài),如果有,則跳到狀態(tài)f ;狀態(tài)f,按照CY7C68013電路2的優(yōu)先級(jí)原則,向已發(fā)出申請(qǐng)并且優(yōu)先級(jí)最高的 CY7C68013電路2發(fā)出應(yīng)答信息,然后,跳到狀態(tài)d。
權(quán)利要求
1.基于USB端口的多臺(tái)設(shè)備之間通信裝置,其特征在在于,所述通信裝置由一個(gè)CPLD 電路(1)、多個(gè)CY7C68013電路( 和多個(gè)USB通信端口( 組成,所述CPLD電路(1)的多個(gè)通信端口分別與一個(gè)CY7C68013電路O)的通信端口相連接,每個(gè)CY7C68013電路(2) 的串行數(shù)據(jù)通信端口與一個(gè)USB通信端口( 連接。
2.根據(jù)權(quán)利要求1所述的基于USB端口的多臺(tái)設(shè)備之間通信裝置,其特征在于,所述通信裝置發(fā)送或者接收數(shù)據(jù)的數(shù)據(jù)幀的格式為1位地址位,6位數(shù)據(jù)位,1位CRC校驗(yàn)位。
3.根據(jù)權(quán)利要求1所述的基于USB端口的多臺(tái)設(shè)備之間通信裝置,其特征在于,所述 CY7C68013電路( 采用狀態(tài)機(jī)的工作方式,所述狀態(tài)機(jī)包括下述狀態(tài)空閑狀態(tài)、狀態(tài)b、 狀態(tài)C、狀態(tài)d、狀態(tài)e、狀態(tài)f,其中空閑狀態(tài),用于查收USB端口是否有數(shù)據(jù)進(jìn)入,還用于查收CPLD是否發(fā)送數(shù)據(jù),當(dāng)USB 端口接收到數(shù)據(jù)時(shí),跳轉(zhuǎn)到狀態(tài)b ;當(dāng)接收到CPLD發(fā)送的數(shù)據(jù)時(shí),跳轉(zhuǎn)到狀態(tài)a;狀態(tài)a,用于將接收到的數(shù)據(jù)存儲(chǔ)到輸入緩沖區(qū),同時(shí)向外部設(shè)備發(fā)送信號(hào)說明有數(shù)據(jù)到達(dá),然后跳到空閑狀態(tài);狀態(tài)b,用于將接收到的數(shù)據(jù)存儲(chǔ)到輸出緩沖區(qū)中,然后跳轉(zhuǎn)到狀態(tài)c ;狀態(tài)c,用于向CPLD電路(1)申請(qǐng)發(fā)送數(shù)據(jù),然后跳到狀態(tài)d;狀態(tài)d,用于延時(shí)1至2秒,然后跳到狀態(tài)e ;狀態(tài)e,用于查收CPLD電路(1)發(fā)送的應(yīng)答信息,如果接收到應(yīng)答信息,則跳到狀態(tài)f, 否則跳到狀態(tài)d ;狀態(tài)f,用于將輸出緩沖區(qū)中的數(shù)據(jù)發(fā)送給CPLD電路(1),發(fā)送完跳到空閑狀態(tài)。
4.根據(jù)權(quán)利要求1或2所述的基于USB端口的多臺(tái)設(shè)備之間通信裝置,其特征在于, 所述CPLD電路(1)包括數(shù)據(jù)緩沖區(qū)(12)、控制模塊(11)和地址解析模塊(13),數(shù)據(jù)緩沖區(qū)(1 用于存儲(chǔ)接收和待發(fā)送的數(shù)據(jù);地址解析模塊(13),用于在控制模塊(11)的控制下解析接收到的數(shù)據(jù),并獲得所述數(shù)據(jù)中的地址位;所述控制模塊(11)采用狀態(tài)機(jī)的形式工作,所述狀態(tài)機(jī)包括空閑狀態(tài)、狀態(tài)b、狀態(tài)c、狀態(tài)d、狀態(tài)e、狀態(tài)f,其中空閑狀態(tài),用于查收CY7C68013電路(2)發(fā)送的申請(qǐng)傳送數(shù)據(jù)的請(qǐng)求,并在接收到在所述請(qǐng)求時(shí),跳到狀態(tài)b;狀態(tài)b,判斷是否是CY7C68013電路(2)發(fā)送的申請(qǐng),如果是則跳轉(zhuǎn)到狀態(tài)c,如果不是則跳到空閑狀態(tài);狀態(tài)c,向發(fā)送申請(qǐng)的CY7C68013電路(2)發(fā)送應(yīng)答信息,然后跳到狀態(tài)d ;狀態(tài)d,將接收到的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)緩沖區(qū)(1 內(nèi),同時(shí)控制地址解析模塊(1 解析傳來的數(shù)據(jù)的地址位,并將所述數(shù)據(jù)發(fā)送至所述地址位所對(duì)應(yīng)的CY7C68013電路O),完成后跳到狀態(tài)e ;狀態(tài)e,判斷是否有其它一個(gè)或多個(gè)CY7C68013電路(2)CY7C68013電路(2)發(fā)出的申請(qǐng),如果沒有,跳到空閑狀態(tài),如果有,則跳到狀態(tài)f ;狀態(tài)f,按照CY7C68013電路O)的優(yōu)先級(jí)原則,向已發(fā)出申請(qǐng)并且優(yōu)先級(jí)最高的 CY7C68013電路(2)發(fā)出應(yīng)答信息,然后,跳到狀態(tài)d。
全文摘要
基于USB端口的多臺(tái)設(shè)備之間通信裝置,涉及一種通信設(shè)備。本發(fā)明解決了現(xiàn)有采用USB端口實(shí)現(xiàn)通信的過程中,不能夠?qū)崿F(xiàn)多臺(tái)設(shè)備之間的通信問題。本發(fā)明所述的通信裝置由一個(gè)CPLD電路、多個(gè)CY7C68013電路和多個(gè)USB通信端口組成,所述CPLD電路的多個(gè)通信端口分別與一個(gè)CY7C68013電路的通信端口相連接,每個(gè)CY7C68013電路的串行數(shù)據(jù)通信端口與一個(gè)USB通信端口連接。所述通信裝置發(fā)送或者接收數(shù)據(jù)的數(shù)據(jù)幀的格式為1位地址位,6位數(shù)據(jù)位,1位CRC校驗(yàn)位。本發(fā)明所述的基于USB端口的多臺(tái)設(shè)備之間通信裝置,能夠?qū)崿F(xiàn)多臺(tái)設(shè)備之間通過USB端口進(jìn)行數(shù)據(jù)傳輸,適用于服務(wù)器、PC機(jī)、掌上電腦、單片機(jī)系統(tǒng)、等具有USB串行通信端口的電子設(shè)備之間的通信連接。
文檔編號(hào)G06F13/38GK102253912SQ20111014148
公開日2011年11月23日 申請(qǐng)日期2011年5月27日 優(yōu)先權(quán)日2011年5月27日
發(fā)明者劉宏偉, 吳智博, 周海鷹, 左德承, 張展, 楊孝宗, 溫東新, 羅丹彥, 舒燕君, 苗百利, 董劍, 錢軍 申請(qǐng)人:哈爾濱工業(yè)大學(xué)