国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      串行端口數(shù)據(jù)傳輸方法

      文檔序號(hào):6571868閱讀:531來(lái)源:國(guó)知局
      專(zhuān)利名稱(chēng):串行端口數(shù)據(jù)傳輸方法
      技術(shù)領(lǐng)域
      本發(fā)明是有關(guān)于一種串行端口數(shù)據(jù)傳輸方法,特別是有關(guān)于一種適用于具 有多個(gè)串行裝置的串行系統(tǒng)的串行端口數(shù)據(jù)傳輸方法。
      背景技術(shù)
      對(duì)于多數(shù)電子裝置而言,串行接口或串行端口例如異步式串行接口 (UART) 以及集成電路間聯(lián)機(jī)(I2C)總線接口為兩種最為常見(jiàn)的連接接口。透過(guò)此兩種接口,可使系統(tǒng)中不同的裝置進(jìn)行數(shù)據(jù)的傳輸。集成電路間聯(lián)機(jī)總線接口的應(yīng)用 中需要指定一個(gè)主裝置(master device),其它裝置則變?yōu)閺膶傺b置(slave device),且需滿(mǎn)足特定的同步數(shù)據(jù)傳輸方式。 一般的異步式串行接口并沒(méi)有這 類(lèi)的限制,然而,通常一個(gè)異步式串行接口只能連接兩個(gè)裝置。圖1顯示一習(xí) 知的異步式串行接口串行端口連接示意圖。其中,裝置1以及裝置2分別具有 一組串行端口,且此串行端口包括了一傳送端TX及一接收端RX。為了使裝置l 及裝置2間的數(shù)據(jù)能順利的互相傳輸,裝置1的串行端口傳送端TX以及接收端 RX被分別連接至裝置2的串行端口接收端RX以及傳送端TX。因此,當(dāng)裝置1 欲傳送數(shù)據(jù)給裝置2時(shí),可將數(shù)據(jù)透過(guò)其傳送端TX送給裝置2的接收端RX。同 樣地,'當(dāng)裝置2欲傳送數(shù)據(jù)給裝置1時(shí),可將數(shù)據(jù)透過(guò)其傳送端TX送給裝置1 的接收端RX。此時(shí),裝置l以及裝置2的串行端口己經(jīng)被用掉,若有一或多個(gè) 裝置要加入數(shù)據(jù)傳輸時(shí),無(wú)法直接連接,必須重新設(shè)計(jì)硬件,在某些裝置中增 加兩組以上的串行端口、增加一個(gè)額外串行端口切換裝置或者改采集成電路間 聯(lián)機(jī)總線接口。如此一來(lái),將使得硬件成本增加。此外,對(duì)于某些只有串行端 口的裝置而言,將無(wú)法在不更改硬件設(shè)計(jì)下進(jìn)行系統(tǒng)擴(kuò)充,造成設(shè)計(jì)及使用方 面的不便。發(fā)明內(nèi)容有鑒于此,本發(fā)明的目的之一即在于提供一種適用于具有多個(gè)串行裝置的 系統(tǒng)中的數(shù)據(jù)傳輸方法,利用特定的連接方式串接系統(tǒng)中每一裝置,并利用傳 送一特定數(shù)據(jù)格式以進(jìn)行裝置間的數(shù)據(jù)傳輸,可有效解決裝置數(shù)量變多時(shí)所造 成的硬件成本及設(shè)計(jì)問(wèn)題?;谏鲜瞿康?,本發(fā)明提供一種串行端口數(shù)據(jù)傳輸方法,適用于具有一串 行端口的若干串行裝置,其中串行端口具有一傳送端以及一接收端。此方法包 括下列步驟首先,由一第一串行裝置送出一封包,其中封包包括有一識(shí)別碼。接著,由丁中間串行裝置接收封包,并依據(jù)識(shí)別碼,判斷是否對(duì)封包內(nèi)的一數(shù) 據(jù)進(jìn)行處理。其中,中間串行裝置的串行端口的傳送端是連接至第一串行裝置 的串行端口的接收端,而中間串行裝置的串行端口的接收端是連接至一第二串 行裝置的串行端口的傳送端,以進(jìn)行數(shù)據(jù)傳輸。本發(fā)明尚提供另一種串行端口數(shù)據(jù)傳輸方法,適用于具有串行端口的若干 串行裝置。一種串行端口數(shù)據(jù)傳輸方法,適用于具有一串行端口的若干串行裝置,串 行端口具有一傳送端以及一接收端。此方法包括下列步驟首先,將一中間串 行裝置的串行端口的傳送端連接至一第一串行裝置的串行端口的接收端,而中 間串行裝置的串行端口的接收端是連接至一第二串行裝置的串行端口的傳送 端。其中,每一串行裝置有一對(duì)應(yīng)的裝置碼。接著,傳送一封包,封包具有一 來(lái)^l碼以及一目的碼。最后,每一串行裝置依據(jù)來(lái)源碼或目的碼,決定處理、 丟掉或轉(zhuǎn)送該封包。


      圖1是顯示一習(xí)知的異步式串行接口 (UART)串行端口連接示意圖。圖2是顯示一依據(jù)本發(fā)明實(shí)施例的串行系統(tǒng)示意圖。圖3是顯示一依據(jù)本發(fā)明實(shí)施例的封包格式示意圖。圖4是顯示一依據(jù)本發(fā)明實(shí)施例的串行端口數(shù)據(jù)傳輸方法示意圖。圖5是顯示另一依據(jù)本發(fā)明實(shí)施例的串行端口數(shù)據(jù)傳輸方法的流程圖。
      具體實(shí)施方式
      本發(fā)明提供一種用于串行端口的數(shù)據(jù)傳輸方法,適用于具有多個(gè)串行裝置 的系統(tǒng)中,尤其適用于三個(gè)以上串行裝置的系統(tǒng)。其中,每一串行裝置具有一 串行端口。請(qǐng)注意,于此實(shí)施例中,串行端口是指符合UART協(xié)議的串行端口, 其具有一傳送端以及一接收端,分別用于與另一UART串行端口進(jìn)行數(shù)據(jù)的傳送 以及接收。UART協(xié)議中定義了串行端口傳輸時(shí)的各種數(shù)據(jù)格式,例如設(shè)定傳輸 速率(即鮑率)以及數(shù)據(jù)大小等等,必須要設(shè)定相同才能達(dá)到正確的數(shù)據(jù)傳輸。 因此,符合UART協(xié)議的串行端口是指具有設(shè)定相同的傳輸速率以及數(shù)據(jù)格式的 串行端口,例如傳輸速率皆設(shè)為每秒57600位(bps)、沒(méi)有同位檢査位、數(shù)據(jù)為 8位時(shí),才能正確對(duì)接收到的數(shù)據(jù)作譯碼。以下簡(jiǎn)稱(chēng)符合UART協(xié)議的串行端口 為串行端口。依據(jù)本發(fā)明,將系統(tǒng)中每一串行裝置的串行端口 (傳送端以及接收端)利 用環(huán)狀連接方式連接,系統(tǒng)中至少有一第一串行裝置、 一中間裝置以及一第二 串行裝置,并且每一串行裝置皆有一具有一傳送端以及一接收端的串行端口。 其中,中間裝置的接收端是連接至第一串行裝置的傳送端,而中間裝置的傳送端是連接至第二串行裝置的接收端。每一裝置的傳送端以及接收端分別接到其它裝置的接收端以及傳送端,使 系統(tǒng)中的頭尾裝置相接,并利用傳送包括有不同識(shí)別碼以及特定格式的一封包 進(jìn)行裝置間的數(shù)據(jù)傳輸,以將數(shù)據(jù)傳輸于系統(tǒng)中的每一裝置間。當(dāng)系統(tǒng)中裝置 數(shù)量變多時(shí),依據(jù)本發(fā)明的方法,不需增加或更改硬件的設(shè)計(jì)即可將新增的裝 置加入數(shù)據(jù)傳輸?shù)男辛兄?,可有效解決裝置數(shù)量變多時(shí)所造成的硬件成本及設(shè) 計(jì)問(wèn)題,同時(shí)非常方便于實(shí)作且容易擴(kuò)充。圖2顯示一個(gè)依據(jù)本發(fā)明實(shí)施例的串行系統(tǒng)示意圖。如圖所示,此串行端 口系統(tǒng)中包括了 N個(gè)串行裝置(裝置1 210、裝置2 220、裝置3 230、裝置 N 240),其中每一個(gè)串行裝置都有一個(gè)傳送端TX以及一接收端RX且每一個(gè)裝 置都具有一特定的裝置碼250。舉例來(lái)說(shuō),裝置210的裝置碼250為1,裝置220 的裝置碼250為2,以此類(lèi)推。又,其中每一個(gè)串行裝置將以環(huán)狀方式連接,即 每一串行裝置的傳送端TX接到下一串行裝置的接收端RX,而其接收端則又接到 前一裝置的傳送端TX。請(qǐng)注意,為了將所有裝置連接,系統(tǒng)中的串行裝置具有 一特定的連接關(guān)是,且其關(guān)是可依據(jù)裝置碼來(lái)識(shí)別。以圖2為例,裝置220 (裝 置碼為2)的下一裝置為裝置230 (裝置碼為3),而其前一裝置為裝置210 (裝 置碼為1);裝置240 (裝置碼為N)為裝置中的最后一個(gè)串行裝置,表示其后面 沒(méi)有多余的串行,因此,裝置N (裝置碼為N)的下一裝置為裝置210 (裝置碼 為1),而其前一裝置(未繪示)的裝置碼為N-1。因此,依據(jù)本發(fā)明實(shí)施例,將 裝置210的傳送端TX連接到其下一裝置裝置220的接收端RX、裝置220的傳送 端TX連接到裝置230的接收端RX、…、以及裝置(N-1)(未繪示)的傳送端TX 連接到裝置210的接收端RX。因此,由于裝置220的接收端RX與裝置210的傳 送端連接,裝置210所傳送的數(shù)據(jù)將傳送至裝置220。同樣地,由于裝置N的傳 送端TX連接到裝置210的接收端,裝置N所傳送的數(shù)據(jù)將傳送至裝置210。此 外,每一串行裝置具有一傳送緩沖器(未繪示),這些串行裝置會(huì)將欲傳送的數(shù) 據(jù)先暫存到此傳送緩沖器中,接著再送到其傳送端TX以將數(shù)據(jù)傳送出去。于此實(shí)施例中,當(dāng)串行系統(tǒng)中一第一串行裝置欲傳送數(shù)據(jù)的一第二串行裝 置時(shí),第一串行裝置將傳送一至少包含識(shí)別此第二裝置以及欲傳送數(shù)據(jù)的封包 至其傳送緩沖器中,接著再送到其傳送端TX,此封包將透過(guò)其傳送端TX所連接 的第一中間裝置的接收端傳送至此第一中間裝置。圖3顯示一依據(jù)本發(fā)明實(shí)施 例的封包格式示意圖。其中,封包的格式是采一已知的固定格式,且系統(tǒng)中每 一串行裝置都依據(jù)此格式產(chǎn)生欲傳送的封包,當(dāng)然封包格式也可依據(jù)系統(tǒng)復(fù)雜 度以及傳輸效能的考慮進(jìn)行各種變形以獲得更佳的系統(tǒng)效能。如圖3所示,封 包P分成數(shù)種不同字段,以存放各種識(shí)別數(shù)據(jù)或識(shí)別碼。于此實(shí)施例中,封包P 中包括一標(biāo)頭碼HK、 一目的碼DN、 一來(lái)源碼SR、 一數(shù)據(jù)DATA以及一檢査碼字段CHECK。標(biāo)頭碼HR字段中有一標(biāo)頭碼,是放置于每--封包的最開(kāi)始位置,此標(biāo)頭碼為一默認(rèn)值(例如0x5A)且每個(gè)裝置所送出的標(biāo)頭碼都是一致的,可用 以識(shí)別一封包的起始位置。值得注意的是,于此實(shí)施例中,每一封包的標(biāo)頭碼為一相同默認(rèn)值(例如0x5A),或稱(chēng)固定碼,以識(shí)別一封包的起始位置,然而, 此標(biāo)頭碼于其它應(yīng)用中也可采用類(lèi)似但不完全相同的標(biāo)頭碼,例如只有數(shù)個(gè)位 的數(shù)據(jù)相同的非固定碼加以實(shí)現(xiàn),只要裝置能辨識(shí)出封包的起始位置即可。目的碼DN以及來(lái)源碼SR字段是分別用以識(shí)別預(yù)期接收此數(shù)據(jù)的一目的裝 置以及傳送此數(shù)據(jù)的一來(lái)源裝置,其是等于目的裝置以及來(lái)源裝置的裝置碼。 舉例來(lái)說(shuō),于圖2中,假設(shè)裝置210欲傳送數(shù)據(jù)至裝置230時(shí),此時(shí)來(lái)源碼SR 即為裝置210的裝置碼"1",而目的碼DN即為裝置230的裝置碼"3"。數(shù)據(jù) DATA,字段包括欲傳送的實(shí)際數(shù)據(jù),此數(shù)據(jù)符合一般的串行協(xié)議。檢杳碼CHECK 字段則包括一具有加總核對(duì)值(checksum)的檢査碼,其是等于前述標(biāo)頭碼HR、 目的碼DN、來(lái)源碼SR以及數(shù)據(jù)DATA的加總結(jié)果,用以輔助錯(cuò)誤檢查,檢查一 封包的正確性。于裝置接收到封包之后,當(dāng)發(fā)現(xiàn)檢查碼與實(shí)際計(jì)算出的結(jié)果不 同時(shí),表示數(shù)據(jù)可能損毀或不正確,因此可忽略此封包,并發(fā)出一訊息以進(jìn)行 錯(cuò)誤的處置(例如是否進(jìn)行重傳)。當(dāng)一串行裝置欲傳送數(shù)據(jù)至另一串行裝置時(shí),會(huì)先依據(jù)上述格式產(chǎn)生一封 包。接著,將此封包送到第一中間裝置,第一中間裝置再依據(jù)封包的內(nèi)容決定 后續(xù)的處理動(dòng)作。圖,4顯示一依據(jù)本發(fā)明實(shí)施例的串行端口數(shù)據(jù)傳輸方法示意 圖。請(qǐng)同時(shí)參照?qǐng)D2以及圖4。首先,由欲傳送數(shù)據(jù)的來(lái)源裝置傳送出如圖3所 示格式的一封包給第一中間裝置,其包括一來(lái)源碼SR以及一目的碼DN (步驟 S410)。此第一中間裝置即為來(lái)源裝置的傳送端TX所連接的裝置。接著,此第 一中間裝置透過(guò)其接收端RX接收由來(lái)源裝置所傳送的此封包,并依據(jù)封包內(nèi)的 各種識(shí)別碼如目的碼咖以及來(lái)源碼SR,決定對(duì)此封包的后續(xù)處置(步驟S420)。 這些后續(xù)處置包含了對(duì)收到的封包進(jìn)行處理、丟掉封包以及轉(zhuǎn)送此封包等處置, 其是依據(jù)識(shí)別碼來(lái)決定。假設(shè)第 -中間裝置的裝置碼等于封包內(nèi)的來(lái)源碼SR時(shí),表示封包已經(jīng)于傳 輸過(guò)程中于所有裝置中繞了一圈仍未找到目標(biāo)碼DN所對(duì)應(yīng)的目標(biāo)裝置,亦即目 標(biāo)碼為無(wú)效或者目標(biāo)裝置不存在,因此此第一中間裝置(來(lái)源裝置)便丟掉或 忽略此封包,并傳送一錯(cuò)誤信息至上層程序以進(jìn)行錯(cuò)誤的處置。若第一中間裝 置的裝置碼等于封包內(nèi)的目的碼DN時(shí),表示此第一中間裝置即為目的裝置,因 此其后續(xù)處置為對(duì)收到的封包進(jìn)行處理,將封包內(nèi)的數(shù)據(jù)取出,依據(jù)數(shù)據(jù)的內(nèi) 容進(jìn)行相關(guān)的運(yùn)算,并于運(yùn)算完成后傳送一確認(rèn)訊息給來(lái)源裝置,以告知數(shù)據(jù) 已送達(dá)。反之,若第一中間裝置的裝置碼不等于封包內(nèi)的目的碼DN時(shí),表示此 第一中間裝置并非目的裝置,因此第一中間裝置便將此封包的內(nèi)容原封不動(dòng), 整個(gè)暫存到其傳送緩沖器中,接著再將封包往下傳至其傳送端TX所連接的一第 二中間裝置,進(jìn)行轉(zhuǎn)送此封包的處置。圖5顯示另一依據(jù)本發(fā)明實(shí)施例的串行端口數(shù)據(jù)傳輸方法的流程圖500。流 程圖500用以表示當(dāng)一第一中間裝置接收到一封包時(shí)的詳細(xì)處理流程。首先, 先判斷封包內(nèi)的來(lái)源碼是否等于第一中間裝置本身的裝置碼(步驟S510)。若封 包內(nèi)的來(lái)源碼等于第一中間裝置本身的裝置碼時(shí)(步驟S510的是),表示此封 包為自己所傳送出的且目標(biāo)裝置并不存在,T是便丟掉此封包(步驟S530),并 且傳送出一錯(cuò)誤訊息(步驟S540)給上層管理程序以便進(jìn)行錯(cuò)誤處理。若封包 內(nèi)的來(lái)源碼不等于裝置本身的裝置碼時(shí)(步驟S510的否),表示第一中間裝置 并非來(lái)源裝置,接著判斷封包內(nèi)的目的碼是否等于第一中間裝置本身的裝置碼(步驟S520)。若目的碼等于第一中間裝置本身的裝置碼(步驟S520的是)時(shí), 表示自己為目的裝置,亦即封包內(nèi)的數(shù)據(jù)是給自己的,因此便將封包的數(shù)據(jù)域 位內(nèi)的數(shù)據(jù)取出,依據(jù)數(shù)據(jù)內(nèi)容處理'此數(shù)據(jù)(步驟S550)。當(dāng)數(shù)據(jù)處理完畢后, 此第一中間裝置接著發(fā)送一確認(rèn)訊息給來(lái)源碼所對(duì)應(yīng)的來(lái)源裝置,通知來(lái)源裝 置數(shù)據(jù)己正確送達(dá)(步驟S560)。若目的碼不等于本身的裝置碼(步驟S520的 否)時(shí),表示自己不是目的裝置,亦即封包內(nèi)的數(shù)據(jù)不是給自己的,因此便轉(zhuǎn) 送整個(gè)封包給傳送端TX所連接的第二屮間裝置(步驟S570)。舉例來(lái)說(shuō),請(qǐng)參照?qǐng)D2及圖5,假設(shè)串行系統(tǒng)中共有三個(gè)串行裝置,分別為 裝置210、裝置220以及裝置230,并且其裝置碼分別為1、 2以及3。裝置210、 裝置220以及裝置230的傳送端TX與接收端RX分別依序連接至第一中間裝置 的接收端RX與前一裝置的傳送端TX。舉例來(lái)說(shuō),裝置210的第一中間裝置為裝 置220而裝置210的前一裝置為裝置230,因此裝置210的傳送端TX便連接至 裝置220的接收端RX,.而裝置210的接收端RX則連接至裝置230的傳送端TX。 其中,系統(tǒng)中使用如圖3的封包格式。假設(shè)裝置210 (來(lái)源裝置)欲傳送數(shù)據(jù) Dl給裝置230 (目標(biāo)裝置)時(shí),由此裝置230的裝置碼為3而裝置210的裝置 碼為1,因此裝置210產(chǎn)生一包括目標(biāo)碼為3以及來(lái)源碼為1的封包Pl,且其 數(shù)據(jù)域位內(nèi)有數(shù)據(jù)D1。于是裝置210便將此封包P1傳送給裝置2 (第一中間裝 置)。當(dāng)裝置220接收到封包P2時(shí),先判斷封包P1內(nèi)的來(lái)源碼(1)是否等于 裝置本身的裝置碼(2)。由于兩者不相等,接著再判斷封包Pi內(nèi)的目的碼(3) 是否等于本身的裝置碼(2)。由于兩者不相等,于是裝置220轉(zhuǎn)送整個(gè)封包Pl 給傳送端TX所連接的裝置230 (第二中間裝置),此時(shí)目標(biāo)碼仍為3,來(lái)源碼仍 為1。當(dāng)裝置230接收到裝置220所轉(zhuǎn)送的封包P1時(shí), 一樣先判斷封包P1內(nèi)的 來(lái)源碼(1)是否等于裝置本身的裝置碼(3)。由于兩者不相等,接著再判斷封 包P1內(nèi)的目的碼(3)是否等于本身的裝置碼(3)。此時(shí),封包P1內(nèi)的目的碼(3)恰好等于裝置230的裝置碼(3),表示裝置230為目的裝置,因此裝置230 便將封包的數(shù)據(jù)域位內(nèi)的數(shù)據(jù)Dl取出,依據(jù)數(shù)據(jù)內(nèi)容處理此數(shù)據(jù)Dl。當(dāng)裝置 230將數(shù)據(jù)Dl處理完畢后,裝置230發(fā)送一確認(rèn)訊息給來(lái)源碼1所對(duì)應(yīng)的裝置 210 (來(lái)源裝置),通知裝置210,數(shù)據(jù)已正確送達(dá)。值得注意的是,于此實(shí)施例中僅將數(shù)據(jù)由一裝置傳至另一單一裝置,其它數(shù)據(jù)傳輸?shù)母鞣N應(yīng)用方式例如將 數(shù)據(jù)由一裝置傳至若干裝置,也可利用本發(fā)明輕易完成。舉例來(lái)說(shuō),假設(shè)裝置210欲將數(shù)據(jù)Dl同時(shí)傳送給裝置220以及裝置230時(shí),裝置210可于數(shù)據(jù)Dl中 包括一廣播指令,并將封包內(nèi)的目標(biāo)碼設(shè)為2。當(dāng)裝置220接收到此封包并解讀 其內(nèi)的數(shù)據(jù)時(shí),發(fā)現(xiàn)此一廣播指令,于是便備份一份封包內(nèi)容,并將封包的目 標(biāo)碼改為3后送至傳送緩沖器中,同時(shí)進(jìn)行封包處理以及將數(shù)據(jù)轉(zhuǎn)送的裝置230 的動(dòng)作。因此,裝置230也可接收到此數(shù)據(jù)D1。類(lèi)似地,假設(shè)裝置220欲傳送數(shù)據(jù)D2給裝置4,因此裝置220產(chǎn)生一包括 目標(biāo)碼為4以及來(lái)源碼為2的封包P2,且其數(shù)據(jù)域位內(nèi)有數(shù)據(jù)D2。于是裝置220 便將此封包P2傳送給其第一中間裝置-裝置230。當(dāng)裝置230接收到封包P2時(shí), 先判斷封包P2內(nèi)的來(lái)源碼(2)是否等于裝置本身的裝置碼(3)。由于兩者不 相等,接著再判斷封包P2內(nèi)的目的碼(4)是否等于本身的裝置碼(3)。由于 兩者不相等,于是裝置230轉(zhuǎn)送整個(gè)封包P2給傳送端TX所連接的第二中間裝 置-裝置210,此時(shí)目標(biāo)碼仍為4,來(lái)源碼仍為2。當(dāng)裝置210接收到裝置230所 轉(zhuǎn)送的封包P2時(shí), 一樣先判斷封包P2內(nèi)的來(lái)源碼(2)是否等于裝置本身的裝 置碼(1)。由于兩者不相等,接著再判斷封包Pl內(nèi)的目的碼(4)是否等于本 身的裝置碼(1)。此時(shí),封包P1內(nèi)的目的碼仍不等于本身的裝置碼,于是裝置 210再轉(zhuǎn)送整個(gè)封包P2給傳送端TX所連接的裝置220。當(dāng)裝置220接收到封包 P2時(shí),先判斷封包P2內(nèi)的來(lái)源碼(2)是否等于裝置本身的裝置碼(2)。此時(shí), 由于封包P2內(nèi)的來(lái)源碼等于裝置220的裝置碼,表示此封包P2為裝置220所 傳送出的且目標(biāo)裝置(4)并不存在,于是裝置220便丟掉或忽略此封包P2,并 且傳送出一錯(cuò)誤訊息給上層管理程序以便進(jìn)行錯(cuò)誤處理。此外,對(duì)于每個(gè)裝置的傳送端而言,其動(dòng)作皆為一致,只需檢査是否其傳 送緩沖器中有數(shù)據(jù)存在,若有,就將數(shù)據(jù)依序送至傳送端準(zhǔn)備傳送,直到傳送 緩沖器清空為止便停止動(dòng)作。此外,封包中的標(biāo)頭碼以及檢査碼可用以輔助封 包的起始點(diǎn)以及正確性判斷,其功用及作法為一般所熟知,因此細(xì)節(jié)不在此贅 述。值得注意的是,上述執(zhí)行步驟僅為輔助說(shuō)明,于其它實(shí)施例中,可依據(jù)使 用上的需求將上述執(zhí)行步驟進(jìn)行調(diào)整,以達(dá)到特殊的目的。舉例來(lái)說(shuō),為/進(jìn) 行自我測(cè)試,可將步驟S510以及S520的執(zhí)行順序可以交換,亦即先判斷封包 內(nèi)的目的碼是否等于第一中間裝置本身的裝置碼,然后傳送一封包再接收此封 包,判斷收到的封包是否正確就可以知道測(cè)試結(jié)果。再者,如上述,本發(fā)明實(shí) 施例中的串行端口是為符合UART協(xié)定的串行端口,然而,本發(fā)明亦可適用于其 它使用一傳送端以及一接收端,但使用不同協(xié)議進(jìn)行傳輸?shù)拇卸丝趥鬏斀怼Mㄟ^(guò)本發(fā)明的方法,串行系統(tǒng)中的所有串行裝置即便彼此硬件上并未直接 連接在一起,仍可以彼此進(jìn)行數(shù)據(jù)的傳輸。如上例,裝置210與裝置230雖然并未直接連接在一起, 一樣可以進(jìn)行數(shù)據(jù)的傳輸。即使裝置變多,也不需要額 外的硬件成本或重新設(shè)計(jì),只需用到串行端口原有的一傳送端及一接收端,非 常方便于實(shí)作且容易擴(kuò)充。
      權(quán)利要求
      1. 一種串行端口數(shù)據(jù)傳輸方法,適用于具有一串行端口的若干串行裝置,該串行端口具有一傳送端以及一接收端,該方法包括下列步驟由一第一串行裝置送出一封包,其中該封包包括有一識(shí)別碼;以及由一中間串行裝置接收該封包,并依據(jù)該識(shí)別碼,判斷是否對(duì)該封包內(nèi)的一數(shù)據(jù)進(jìn)行處理,其特征在于,該中間串行裝置的該串行端口的該傳送端是連接至該第一串行裝置的該串行端口的該接收端,而該中間串行裝置的該串行端口的該接收端是連接至一第二串行裝置的該串行端口的該傳送端,以進(jìn)行數(shù)據(jù)傳輸。
      2. 根據(jù)權(quán)利要求1所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,該判斷是 否對(duì)該封包內(nèi)的該數(shù)據(jù)進(jìn)行處理的步驟,更包括當(dāng)該識(shí)別碼等于該中間串行裝置的該裝置碼時(shí),該中間串行裝置對(duì)該封包內(nèi)的該數(shù)據(jù)進(jìn)行處理;以及傳送一確認(rèn)信息給該第 一 串行裝置。
      3. 根據(jù)權(quán)利要求2所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,更包括當(dāng)該識(shí)別碼不等于該中間串行裝置的該裝置碼時(shí),該中間串行裝置丟掉該 封包或轉(zhuǎn)送該封包至該第二串行裝置。
      4. 根據(jù)權(quán)利要求3所述的審行端口數(shù)據(jù)傳輸方法,其特征在于,該轉(zhuǎn)送該封包至該第三串行裝置的步驟更包括當(dāng)該第三串行裝置是等于該第一串行裝置時(shí),傳送一錯(cuò)誤信息。
      5. 根據(jù)權(quán)利要求1所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,該封包更包括一來(lái)源碼以及一標(biāo)頭碼,并且該來(lái)源碼是等于該第一串行裝置的該裝置碼。
      6. 根據(jù)權(quán)利要求5所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,該封包更包括一標(biāo)頭碼,且該標(biāo)頭碼是用以識(shí)別該封包的起始位置。
      7. 根據(jù)權(quán)利要求6所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,該標(biāo)頭碼是為一固定碼。
      8. 根據(jù)權(quán)利要求1所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,該封包更 包括一檢査碼,用以檢査該封包的正確性。
      9. 根據(jù)權(quán)利要求1所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,該串行端 口是為一符合異步式串行接口(UART)協(xié)議的串行端口。
      10. —種串行端口數(shù)據(jù)傳輸方法,適用于具有一串行端口的若干串行裝置,該串行端口具有一傳送端以及一接收端,其特征在于,該方法包括下列步驟將一中間串行裝置的該串行端口的該傳送端連接至一第一串行裝置的該串 行端口的該接收端,而該中間串行裝置的該串行端口的該接收端是連接至一第 二串行裝置的該串行端口的該傳送端,其中每一該等串行裝置有一對(duì)應(yīng)的裝置碼;傳送一封包,該封包具有一來(lái)源碼以及一目的碼;以及 每一該等串行裝置依據(jù)該來(lái)源碼或該目的碼,決定處理、丟掉或轉(zhuǎn)送該封包。
      11. 根據(jù)權(quán)利要求IO所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,更包括比較該來(lái)源碼以及一串行裝置的該裝置碼以決定處理、丟掉或轉(zhuǎn)送該封包。
      12. 根據(jù)權(quán)利要求11所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,更包括當(dāng)該串行裝置的該裝置碼是等于該來(lái)源碼時(shí),丟掉該封包;以及傳送一錯(cuò)誤信息。
      13. 根據(jù)權(quán)利要求11所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,更包括 當(dāng)該串行裝置的該裝置碼不等于該來(lái)源碼時(shí),比較該目的碼以及該串行裝置的該裝置碼s
      14. 根據(jù)權(quán)利要求13所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,更包括: 當(dāng)該串行裝置的該裝置碼不等于該目的碼時(shí),將該封包轉(zhuǎn)送至另一串行裝置。
      15. 根據(jù)權(quán)利要求13所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,更包括: 當(dāng)該串行裝置的該裝置碼等于該目的碼時(shí),對(duì)該封包內(nèi)的一數(shù)據(jù)進(jìn)行處理;以及傳送一確認(rèn)信息給該來(lái)源碼所對(duì)應(yīng)的一串行裝置。
      16.根據(jù)權(quán)利要求10所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,該來(lái)源 碼是為送出該封包的一串行裝置的該裝置碼。
      17. 根據(jù)權(quán)利要求10所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,該目的 碼是為該封包欲送至的一串行裝置的該裝置碼。
      18. 根據(jù)權(quán)利要求'10所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,該封包 更包括一標(biāo)頭碼,用以識(shí)別該封包的起始位置。
      19. 如申請(qǐng)專(zhuān)利范圍第18項(xiàng)所述的串行端口數(shù)據(jù)傳輸方法,其特征在于, 該標(biāo)頭碼是為一固定碼。
      20. 根據(jù)權(quán)利要求10所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,該封包 更包括一檢査碼,用以檢查該封包的正確性。
      21. 根據(jù)權(quán)利要求10所述的串行端口數(shù)據(jù)傳輸方法,其特征在于,該串行 端口是為一符合異步式串行接口 (UART)協(xié)議的串行端口 。
      全文摘要
      本發(fā)明提供一種串行端口數(shù)據(jù)傳輸方法,適用于具有一串行端口的若干串行裝置,其中串行端口具有一傳送端以及一接收端。此方法包括下列步驟首先,由一第一串行裝置送出一封包,其中封包包括有一識(shí)別碼。接著,由一中間串行裝置接收封包,并依據(jù)識(shí)別碼,判斷是否對(duì)封包內(nèi)的一數(shù)據(jù)進(jìn)行處理。其中,中間串行裝置的串行端口的傳送端是連接至第一串行裝置的串行端口的接收端,而中間串行裝置的串行端口的接收端是連接至一第二串行裝置的串行端口的傳送端,以進(jìn)行數(shù)據(jù)傳輸。
      文檔編號(hào)G06F13/42GK101241483SQ20071002681
      公開(kāi)日2008年8月13日 申請(qǐng)日期2007年2月8日 優(yōu)先權(quán)日2007年2月8日
      發(fā)明者鄒升龍 申請(qǐng)人:佛山市順德區(qū)順達(dá)電腦廠有限公司;神基科技股份有限公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1