專利名稱:一種智能電器的固件模塊結構的制作方法
技術領域:
本實用新型涉及一種智能電器串行總線,具體涉及一種智能電器的固 件模塊結構。
背景技術:
現有技術中,將智能電器與計算機相連,具有多種方式。例如,采用
USB接口。該方式的不足在于,USB接口的數據傳輸距離為1-2米,無法滿 足實際應用的需求。同時,USB接口所可插接的USB設備個數往往只有幾個, 這影響了用戶的使用。
中國專利文獻公開號CN2566355公開了 一種應用于串行總線集群式網 絡管理系統中的串行管理總線接口模塊,它包括有一標準485芯片,在所 述標準485芯片的驅動端串接有兩個保護電阻。使用其串行管理總線接口 模塊,無論網絡最終端的負載類型如何、負載數目在不大于8的范圍內變 化的情況下,都可以保證系統設備間的通訊穩定、可靠。
所述現有技術未解決智能電器之間通過RS-485的接口規范進行數據通 信功能的技術難題。
實用新型內容
本實用新型所要解決的技術問題是提供一種能使智能電器之間通過 RS-4 8 5的接口規范進行數據通信的智能電器的固件模塊結構。
為解決上述技術問題,本實用新型提供了一種智能電器的固件模塊結 構,包括主模塊、數據包處理模塊、數據包發送模塊和字節發送模塊; 主模塊、數據包處理模塊、數據包發送模塊和字節發送模塊依次串聯構成 調用連接關系。
所述主模塊和數據包處理模塊之間還包括數據接收模塊,主模塊與數 據接收才莫塊之間為中斷調用連接關系,數據接收模塊與數據包處理模塊之 間為調用連"^妄關系。
3本實用新型具有積極的效果(i〕本實用新型的一種智能電器的固件 模塊結構中,主模塊、數據包處理模塊、數據包發送模塊和字節發送模塊 依次串聯構成調用連接關系,從而實現了智能電器之間通過RS-485的接口 規范進行數據通信。
圖1為本實用新型的智能電器的固件模塊結構的示意圖2為本實用新型的智能電器的固件才莫塊結構的主程序片匡圖。
具體實施方式(實施例1)
見圖l,本實施例的智能電器的固件模塊結構包括主模塊l、數據包 處理模塊3、數據包發送模塊4和字節發送模塊5;主模塊l、數據包處理 模塊3、數據包發送模塊4和字節發送模塊5依次串聯構成調用連接關系。 所述主模塊1和數據包處理模塊3之間還包括數據接收模塊2,主模塊1與 數據接收模塊2之間為中斷調用連接關系,數據接收模塊2與數據包處理 模塊3之間為調用連接關系。
見圖2,智能電器中的微處理器MCU上電后,首先屏蔽通信接口,始化 其所有端口、存儲區、定時器和中斷服務程序。之后,允許通信接口工作。 這個過程確保了 MCU正確響應數據通信產生的中斷。
數據接收采用中斷方式,該程序為中斷服務程序。
微處理器帶有串行接口 ,通過對接口初始化,可以設置接口的工作方 式。 一種工作方式是,當接收到的數據后面一位(第9位)為1時才產生 中斷;另一種工作方式是,不論第9位是0或1,只要有數據都產生中斷。
令牌包正是利用這個特點。首先設置接口,使得發送數據后面一位(第 9位)為1時,才產生中斷的工作方式。令牌包的第9位設置為1,當發送 令牌包時,所有端點上連接的微處理器均產生中斷。只有和自己地址相同 的端點改變接口的工作方式,形成不論第9位是0或1,只要有數據都產生 中斷功能,稱之為數據接口狀態。其它端點的工作方式不變。這樣以后主 機發送信息的第9位非1,因此,只有該端點可以接收。其它端點不響應。 這樣主機與端點之間形成了 一條數據管道。
當主才兒與端點之間的數據通信完成后,主機發送通^各:撤消包,該端點 上的微處理器改變接口的工作方式,撤消數據管道。當接口接收到信息時產生中斷,微處理器通過判斷接口的狀態,就可 以斷定是數據,還是包是令牌包,或是其它類型的包。如果是令牌包并與 端點地址相同,就將接口改變成為數據接口。如果本端點是數據接收接口, 通過判定接收包的第一個字節,就可以斷定包的類型確認包、不確認 包、通^^敎消包、數據包。
對不同的數據包有不同的處理方法,確認包、不確認包設置相應的標
志;當接收到通路撤消包時,微處理器改變接口狀態,成為非數據接口; 收到數據包時,當接收到131個字節時,設置收到數據包標志,和包處理 標志,主程序^r測到包處理標志時,調用包處理程序。
該程序主要實現接收到主機發送信息的處理程序。端點從主機接收到 的包共有三大類
1) 數據包類
數據包又分為8種格式,每種格式中各個字節有明確的定義(具體的 定義見IASB總線的數據規約)。接收到數據包后,首先進行CRC校驗,不 正確時,發送不確認包,請求主機重新發送;正確時,發送確認包,并根 據輸入、輸出的數據類型進行數據包的拆分,或是組包發送。
2) 握手包類
握手包分為確認握手包和不確認握手包。當端點向主機發送數據包后, 主機才向端點發送該種類型的包。確認握手包,說明端點發送的數據已被 主機正確接收。確認握手包已在數據接收程序中處理;不確認握手包,說 明端點發送的數據主機接收不正確,此時,端點應當重新發送數據。為了 避免反復發送數據,造成智能電器微處理器死機現象,在這里設置了重發 計數器,當重發次數超過某一極限時,端點停止重發操作。
3) 通iWL消包
通路撤消包是,主機與端點通信結束后,主機撤消通信數據管道的包。 通路撤消包已在數據接收程序中處理。
信息發送程序分為兩個層次,包發送程序和字節發送程序。前者實現 的是面向包的發送功能;后者實現的是將包按字節發送功能。
調用包發送程后,首先判別要發送的信息包的類型。信息包的類型決 定了要發送的字節數。根據IASB的通信協議,握手包為l個字節,數據包 為131個字節。此時,按照順序逐個發送即可。
有許多情況會產生端點發送超時的錯誤。為了簡化處理方法,當出現超時錯誤時,端點將改變通信端口的數據接收狀態,斷開與主機的連接。 如果是一般的錯誤,主機再次呼叫端點時,連接將再次建立。不會帶來嚴 重的后果。
字節發送程序,主要實現安照位方式向IASB總線發送數據的功能。在 發送數據前,判斷串行接口中發送緩沖器是否為空,為空則發送,否則等 待。
為了避免出錯造成死機現象,本程序中加入了等待超時判斷。實現的 方法是,每判斷一次發送緩沖器,給計時計數單元加l。當該單元數值超出 一定極限時,認為是超時出錯。
超時的原因很多,其中之一是因為端點與總線斷開,致使發送緩沖器 中無字符,如果不處理,會造成智能電器的微處理器死機。為了避免該現 象的產生,采用了端點主動與主機斷開通路的方法。如果不是因為總線故 障,而是偶然原因造成的超時,這樣處理方法會造成主機認為端點為空的 結果。但是,主機下一次尋呼端點時,即可以恢復連接,不會造成嚴重后 果。
權利要求1、一種智能電器的固件模塊結構,其特征在于包括主模塊(1)、數據包處理模塊(3)、數據包發送模塊(4)和字節發送模塊(5);主模塊(1)、數據包處理模塊(3)、數據包發送模塊(4)和字節發送模塊(5)依次串聯構成調用連接關系。
2、 根據權利要求1所述的一種智能電器的固件模塊結構,其特征在于 所述主模塊(1)和數據包處理模塊(3 )之間還包括數據接收模塊(2 ), 主模塊(1)與數據接收模塊(2)之間為中斷調用連接關系,數據接收模 塊(2)與數據包處理模塊(3)之間為調用連接關系。
專利摘要本實用新型涉及一種智能電器的固件模塊結構。其包括主模塊、數據包處理模塊、數據包發送模塊和字節發送模塊;主模塊、數據包處理模塊、數據包發送模塊和字節發送模塊依次串聯構成調用連接關系。還包括數據接收模塊,主模塊與數據接收模塊之間為中斷調用連接關系,數據接收模塊與數據包處理模塊之間為調用連接關系。本實用新型的一種智能電器的固件模塊結構能使智能電器之間通過RS-485的接口規范進行數據通信。
文檔編號H04L12/40GK201274489SQ200820121879
公開日2009年7月15日 申請日期2008年7月29日 優先權日2008年7月29日
發明者包志舟, 鄒啟友 申請人:人民電器集團有限公司