具有多個接收器/發送器的串行通信模塊的製作方法
2023-05-22 17:41:06
專利名稱:具有多個接收器/發送器的串行通信模塊的製作方法
技術領域:
本文描述的實施例大體上涉及串行通信,並且更具體地涉及通過多埠通信模塊 發送的串行通信。
背景技術:
至少一些已知的通信網絡使用9位串行通信協議以便於通過使用每個字節的第 九位作為指示符位而最小化在從模塊(slave module)上的負荷。例如,在一些已知的通信 網絡中對於命令字節將第九位設置成一,並且對於數據字節將其設置成零。然而,一些主模 塊包括不支持9位通信協議而要求使用8位通信協議的接收器/發送器。因此,至少一些已知的通信網絡使用8位串行通信協議,其中主模塊使用單個接 收器/發送器以與從模塊通信。對要發送給從模塊的每個字節,至少一些已知的主模塊設 置奇偶校驗位以指示字節是數據字節還是命令字節。在至少一些已知的主模塊中,這樣的 配置需要多個命令以配置和/或重新配置該單個接收器/發送器。
發明內容
在一個方面,提供用於實現通信網絡中的主模塊和至少一個從模塊之間的串行 通信的方法。該方法包括將主模塊的第一接收器/發送器初始化為空奇偶校驗(space parity),將主模塊的第二接收器/發送器初始化為標記奇偶校驗(mark parity),並且確 定消息的第一字節是命令字節還是數據字節。如果該第一字節是數據字節,該第一字節使 用該第一接收器/發送器發送到該至少一個從模塊。如果該第一字節是命令字節,該第一 字節使用該第二接收器/發送器發送到該至少一個從模塊。在另一個方面,提供串行通信系統。該串行通信系統包括多個從模塊和主模塊。該 主模塊包括第一埠和第二埠,其中該第一和第二埠中的每個耦合於該從模塊中的每 個。該主模塊配置成將該第一埠初始化為空奇偶校驗,將該第二埠初始化為標記奇偶 校驗,通過該第一埠發送至少一個數據字節到該從模塊中的至少一個,並且通過該第二 埠發送至少一個命令字節到該從模塊中的至少一個。在另一個方面,主裝置提供用於與串行通信系統一起使用。該主裝置包括多埠 通信模塊和微處理器。該多埠通信模塊包括通過網絡耦合於多個從模塊的第一通用異步 接收器/發送器(UART),通過網絡耦合於該從模塊的第二 UART。該微處理器通過總線耦合 於該第一和第二 UART,並且配置成將該第一 UART初始化為空奇偶校驗,將該第二 UART初始 化為標記奇偶校驗,通過該第一 UART發送消息內的至少一個數據字節到該從模塊中的至 少一個,並且通過該第二 UART發送該消息內的至少一個命令字節到該從模塊中的至少一 個。
本文描述的實施例可通過結合附圖參考下列說明更好地理解。
圖1是串行通信系統的示意框圖。圖2是圖示實現在圖1中示出的串行通信系統內的串行通信的示範性方法的流程 圖。
具體實施例方式在一些實施例中,術語「微處理器」 一般指任何可編程系統,包括系統和微控制器、 精簡指令集電路(RISC)、專用集成電路(ASIC)、可編程邏輯電路(PLC)和能夠執行本文描 述的功能的任何其他電路或處理器。上文的示例僅是示範性的,並且從而不意在採用任何 方式限制術語處理器的定義和/或含義。在一些實施例中,術語「模塊」一般指通過網絡實現串行通信的任何裝置。示範性 裝置包括計算機、微控制器、傳感器等。上文的示例僅是示範性的,並且從而不意在採用任 何方式限制術語模塊的定義和/或含義。此外,應該理解術語「模塊」可與術語「節點」可 交換地使用。在一些實施例中,術語「網絡」 一般指包括至少一個主設備和一個或多個從設備 (slave device)的任何多點網絡。示範性多點網絡包括但不限於僅包括RS-485網絡和 RS-232網絡。然而,在本文描述的實施例中可使用任何適合的網絡。在一些實施例中,術語「埠,,一般指通信埠,例如發送和/或接收數據的串行 埠等。示範性通信埠包括但不限於僅包括通用異步接收器/發送器(UART)和通用同 步接收器/發送器(USART)。然而,在本文描述的實施例中可使用任何適合的通信埠。本文詳細描述的是便於使用多埠通信模塊的兩個埠以使用8位UART在9位 網絡上發送數據的方法、系統和設備的示範性實施例。使用兩個埠便於減小每個字節從 主設備傳送到從設備之間的延遲。減小這樣的延遲便於使用多埠通信模塊減小在多點網 絡內消息的總傳送時間。本文描述的實施例的示範性技術效果包括下列中的至少一個(a)確定期望的從 模塊的網絡地址;(b)發送該網絡地址到通過網絡耦合於主模塊的多個從模塊;(C)將第一 主模塊UART初始化為空奇偶校驗;(d)將第二主模塊UART初始化為標記奇偶校驗;(e)確 定消息是否已經存儲用於發送到該期望的從模塊;(f)如果消息沒有存儲,周期性地重複 確定消息是否已經存儲用於發送,或如果消息存儲了,確定在該消息中的第一字節是數據 字節還是命令字節;(g)如果該第一字節是數據字節,通過該第一 UART發送該第一字節到 該從模塊,或如果該第一字節是命令字節,通過該第二 UART發送該第一字節到該從模塊; (h)確定該消息是否包括另外的字節;並且(i)如果該消息確實包括另外的字節,確定隨後 的字節是數據字節還是命令字節,或如果該消息不包括另外的字節,確定隨後的消息是否 已經存儲用於發送到相同的期望從模塊或到不同的期望從模塊。圖1是串行通信系統100的示意框圖,其可使用在例如高速通信網絡中以便於減 少通信時間並且最小化消息超時錯誤的可能性。在該示範性實施例中,系統100包括多個 每個包括通信埠 104的從模塊102。示範性從模塊102包括例如溫度和/或壓力傳感器 等傳感器,儘管任何適合的裝置可用作包括通信埠 104的從模塊102。在該示範性實施例 中,埠 104是通用異步接收器/發送器(UART),例如8位UART等。系統100還包括主模 塊106。示範性主模塊106包括計算機和自動控制器。然而,任何適合的裝置可用作主模塊106。在示範性實施例中,主模塊106包括微處理器108和通過總線112耦合於微處理 器108的存儲器110。在一些實施例中,主模塊106可包括多個微處理器108和/或多個存 儲器110。在示範性實施例中,主模塊106還包括多埠通信模塊114,其至少包括第一通 信埠 116和第二通信埠 118。在示範性實施例中,第一通信埠 116和第二通信埠 118是UART,例如8位UART等。此外,在示範性實施例中,系統100包括耦合(例如通信或操作地耦合)主模塊 106和每個從模塊102的網絡120。更具體地,網絡120將主模塊106的第一通信埠 116 和第二通信埠 118耦合於每個從模塊102的埠 104。示範性網絡120包括RS-485網 絡。然而,任何適合的多點網絡可用作網絡120。圖2是圖示實現在例如串行通信系統100(在圖1中示出)等系統內的串行通信 的示範性方法的流程圖200。參照圖1,並且在該示範性實施例中,主模塊106確定202期 望的從模塊102的網絡地址。更具體地,微處理器108在存儲器110中確定該期望的從模 塊102的網絡地址。例如,在一些實施例中,存儲器110包括查找表,其列出每個從模塊102 的標識符和網絡地址。在示範性實施例中,主模塊106通過網絡120發送204地址字節到每個從模塊 102,其中該地址字節包括與期望的從模塊102關聯的該網絡地址字節。主模塊106可使用 第一通信埠 116或第二通信埠 118發送該地址字節。每個從模塊102接收該地址字節 並且確定包括在該地址字節內的網絡地址是否匹配它自己的網絡地址。具有不匹配網絡 地址的從模塊102忽略任何將來的消息或字節直到另一個地址字節由主模塊106通過網絡 120發送。期望的從模塊102等待包括命令或數據的另外字節。在示範性實施例中,主模塊106將第一通信埠 116初始化206為空奇偶校驗,並 且將第二通信埠 118初始化208為標記奇偶校驗。具體地,微處理器108初始化第一通 信埠 116使得奇偶校驗位設置成零,並且初始化第二通信埠 118使得奇偶校驗位設置 成一。一旦第一通信埠 116和第二通信埠 118各自初始化為它的相應奇偶校驗,主模 塊106確定210是否存在要發送到期望的從裝置102的消息。在一些實施例中,消息基於 例如指派給每個消息和/或消息類型的優先級而在存儲器110中排隊。因此,微處理器108 確定存儲器110當前是否存儲要通過網絡120發送到期望的從模塊102的消息。如果沒有 消息存儲用於發送到期望的從模塊102,微處理器108周期性地重新確定是否已經存儲消 肩、ο當消息存儲用於發送時,主模塊106確定212消息的第一字節是命令字節或數據 字節。具體地,微處理器108檢測第一字節的最後位是零還是一。如果該最後位是零,微處 理器108檢測該第一字節是數據字節。如果該最後位是一,微處理器108檢測該第一字節 是命令字節。不同通信協議的使用實現不同的奇偶校驗設置。因此,在備選實施例中,每個 數據字節具有具有值1的最後位,並且每個命令字節具有具有零值的最後位。此外,在另一 個備選實施例中,主模塊106配置成使用任何適合的9位協議通過第一通信埠 116或第 二通信埠 118發送任何適合的8位消息。例如,第一通信埠 116可通過根據指派給第 一通信埠 116的奇偶校驗(例如空奇偶校驗等)添加第九位給消息而發送任何適合的8 位消息。相似地,第二通信埠 118可通過根據指派給第二通信埠 118的奇偶校驗(例如標記奇偶校驗等)添加第九位給消息而發送任何適合的8位消息。在示範性實施例中,並且當第一字節確定為數據字節時,主模塊106通過第一通 信埠 116和網絡120發送214第一字節到期望的從模塊102。具體地,微處理器108從 存儲器110檢索第一字節並且通過第一通信埠 116和網絡120發送第一字節到從模塊端 口 104。當第一字節確定為命令字節時,主模塊106通過第二通信埠 118和網絡120發送 216第一字節到期望的從模塊102。具體地,微處理器108從存儲器110檢索第一字節並且 通過第二通信埠 118和網絡120發送第一字節到從模塊埠 104。在系統110中剩餘的 從模塊102忽略第一字節。在發送第一字節後,主模塊106確定218消息是否結束。具體地,微處理器108確 定存儲器110當前是否存儲與要發送到期望的從模塊102的消息關聯的另外的字節。如果 沒有另外的字節存儲用於發送到期望的從模塊102,微處理器108重新確定210消息是否已 經存儲在存儲器110中。在備選實施例中,微處理器108重新確定202不同的期望從模塊 102的網絡地址。如果存儲器110確實具有存儲用於發送到期望的從模塊102的另外的字 節,微處理器108重新確定212下一個字節是數據字節還是命令字節。用於在串行通信系統中使用的方法、系統和設備的示範性實施例在上文詳細描 述。該方法、系統和設備不限於本文描述的具體實施例,而相反,方法的操作和/或系統或 設備的部件可獨立於並與本文描述的其他操作和/或部件分開使用。此外,描述的操作和/ 或部件也可在其他系統、方法和/或設備中限定,或與其結合使用,並且不限於僅用如本文 描述的方法、系統和存儲介質實踐。儘管實施例連同示範性串行通信環境描述,實施例與許多其他通用或專用串行通 信環境或配置是可操作的。該串行通信環境不意在提出關於本文描述的實施例的任何方面 的使用範圍或功能性的限制。此外,該串行通信環境不應該解釋為具有關於在該示範性操 作環境中說明的部件中任一個或組合的任何依賴性或要求。可適合與本文描述的實施例一 起使用的眾所周知的串行通信系統、環境和/或配置的示例包括但不限於個人計算機、服 務器計算機、手持或膝上型裝置、多處理器系統、基於微處理器的系統、機頂盒、可編程消費 電子、行動電話、網絡PC、小型計算機、大型計算機、包括上文的系統或裝置中的任何系統或 裝置的分布式計算環境等。在本文圖示和描述的實施例中的執行順序或操作表現不是必不可少的,除非另外 規定。即,操作可採用任何順序進行,除非另外規定,並且實施例可包括另外的或比本文公 開的那些更少的操作。例如,考慮了在另一個操作之前、與其同時或在其之後執行或進行特 定操作包含在描述的實施例的範圍內。當介紹本發明的方面或其實施例的元件時,冠詞「一」、「該」和「所述」意在表示存 在一個或多個該元件。術語「包括」、「包括」和「具有」意在為包括性的並且表示可存在除 列出的元件外的附加元件。該書面說明使用示例以公開本發明,其包括最佳模式,並且還使本領域內技術人 員能夠實踐本發明,包括製作和使用任何裝置或系統和執行任何包含的方法。本發明的專 利範圍由權利要求限定,並且可包括本領域內技術人員想到的其他示例。這樣的其他示例 如果它們具有不與權利要求的書面語言不同的結構元件,或者如果它們包括與權利要求的 書面語言無實質區別的等同結構元件則規定在權利要求的範圍內。
6
部件列表
權利要求
1.一種串行通信系統(100),其包括 多個從模塊(102);和主模塊(106),其包括第一埠(116)和第二埠(118),所述第一埠和所述第二端 口中的每個耦合於所述多個從模塊中的每個,所述主模塊配置成 將所述第一埠初始化為空奇偶校驗; 將所述第二埠初始化為標記奇偶校驗;通過所述第一埠發送至少一個數據字節到所述多個從模塊中的至少一個;以及 通過所述第二埠發送至少一個命令字節到所述多個從模塊中的至少一個。
2.如權利要求1所述的串行通信系統(100),其中所述主模塊(106)進一步包括配置 成存儲與每個從模塊(10 關聯的地址的存儲器(110)。
3.如權利要求2所述的串行通信系統(100),其中所述主模塊(106)進一步配置成確 定與所述多個從模塊中的指定從模塊(10 關聯的地址。
4.如權利要求3所述的串行通信系統(100),其中所述主模塊(106)進一步配置成發 送地址字節到所述多個從模塊(102),所述地址字節包括所述指定從模塊的地址。
5.如權利要求1所述的串行通信系統(100),其中所述主模塊(106)進一步配置成基 於每個字節的最後一位確定消息內的字節類型。
6.如權利要求1所述的串行通信系統(100),其中所述主模塊(106)進一步配置成 通過所述第一埠(116)和所述第二埠(118)中的一個發送消息的首字節到所述多個從模塊的指定從模塊(102);以及確定所述消息是否包括要發送到所述指定的從模塊的另外的字節。
7.一種用於與通信網絡(120) —起使用的主裝置,所述主裝置包括 多埠通信模塊(114),其包括通過網絡耦合於多個從模塊(102)的第一通用異步接收器/發送器(UART); 通過所述網絡耦合於所述多個從模塊的第二 UART ;以及微處理器(118),其通過總線(11 耦合於所述第一 UART和所述第二 UART,所述微處 理器配置成將所述第一 UART初始化為空奇偶校驗; 將所述第二 UART初始化為標記奇偶校驗;通過所述第一 UART發送消息內的至少一個數據字節到所述多個從模塊中的至少一 個;以及通過所述第二 UART發送所述消息內的至少一個命令字節到所述多個從模塊中的至少一個。
8.如權利要求7所述的主裝置,進一步包括配置成存儲與每個從模塊(10 關聯的地 址的存儲器(110)。
9.如權利要求8所述的主裝置,其中所述微處理器(108)進一步配置成確定與所述多 個從模塊中的指定從模塊(10 關聯的地址。
10.如權利要求9所述的主裝置,其中所述微處理器(108)進一步配置成發送地址字節 到所述多個從模塊(102),所述地址字節包括所述指定從模塊的地址。
全文摘要
一種串行通信系統(100)包括多個從模塊(102)和主模塊(106),其包括第一埠(116)和第二埠(118),該第一埠和該第二埠中的每個耦合於多個從模塊中的每個。該主模塊配置成將該第一埠初始化為空奇偶校驗,將該第二埠初始化為標記奇偶校驗,通過該第一埠發送至少一個數據字節到多個從模塊中的至少一個,以及通過該第二埠發送至少一個命令字節到多個從模塊中的至少一個。
文檔編號H04L1/00GK102118223SQ201010616058
公開日2011年7月6日 申請日期2010年12月16日 優先權日2009年12月16日
發明者W·H·呂肯巴赫 申請人:通用電氣智能平臺有限公司