国产精品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>

      冰箱的上位機、冰箱的下位機、冰箱的通信方法及系統(tǒng)與流程

      文檔序號:11199145閱讀:663來源:國知局
      冰箱的上位機、冰箱的下位機、冰箱的通信方法及系統(tǒng)與流程

      本發(fā)明涉及電子技術領域,特別涉及冰箱的上位機、冰箱的下位機、冰箱的通信方法及系統(tǒng)。



      背景技術:

      冰箱作為應用較為普及的家用電器,人們對冰箱的控制功能要求越來越高,這對冰箱控制器提出了更高的要求。隨著人機交互概念的興起,用戶可以通過對冰箱的上位機(顯示板)的操作設定自己想達到的冰箱工作狀態(tài),這使得冰箱的上位機與下位機(電控板)的數(shù)據(jù)交互變得必不可少。

      現(xiàn)有技術采用基于單片機的控制系統(tǒng),通過單片機上的通信模塊來實現(xiàn)上位機與下位機的交互。

      由于通信模塊用于上位機與下位機的交互,影響到單片機的其他功能的實現(xiàn),比如無線傳輸功能。因此,現(xiàn)有技術利用通信模塊實現(xiàn)上位機與下位機交互時,會影響到單片機的其他功能的實現(xiàn)。



      技術實現(xiàn)要素:

      本發(fā)明實施例提供了一種冰箱的上位機、冰箱的下位機、冰箱的通信方法及系統(tǒng),能夠不通過單片機的通信模塊而實現(xiàn)上位機與下位機的交互。

      本發(fā)明實施例提供了一種冰箱的上位機,包括:

      上位機處理單元、上位機定時器、第一i/o口和第二i/o口;其中,

      所述上位機定時器分別與所述第一i/o口和所述第二i/o口相連;

      所述上位機處理單元,用于接收外部輸入的當前指令,生成所述當前指令對應的通信命令,將所述通信命令發(fā)送給所述上位機定時器;

      所述上位機定時器,用于執(zhí)行:

      a1:獲取所述上位機處理單元生成的所述通信命令;

      a2:通過所述第一i/o口將所述通信命令發(fā)送至冰箱的下位機;

      a3:通過所述第二i/o口接收所述冰箱的下位機發(fā)送的針對所述通信命令的回復信號;其中,所述回復信號包括:引導碼、通信頭碼、狀態(tài)數(shù)據(jù)、校驗碼和結束電平;

      a4:依次判斷所述回復信號中的所述引導碼、所述通信頭碼、所述狀態(tài)數(shù)據(jù),所述校驗碼和所述結束電平是否均符合對應的冰箱的上位機預設規(guī)則,如果是,則確定所述回復信號為有效回復信號,并提取所述狀態(tài)數(shù)據(jù),否則,執(zhí)行a2。

      優(yōu)選地,所述上位機定時器,進一步用于判斷所述上位機定時器是否在預設等待時間內接收到所述回復信號,如果否,執(zhí)行a2。

      優(yōu)選地,所述上位機定時器,進一步用于執(zhí)行:

      在所述提取所述狀態(tài)數(shù)據(jù)之后,進一步包括:

      等待預設間隔時間,返回a1。

      優(yōu)選地,所述上位機定時器,用于執(zhí)行:

      所述a4,包括:

      b1:判斷所述引導碼是否滿足:所述引導碼的值與上位機引導碼預設值相同,如果是執(zhí)行b2,否則,執(zhí)行a2;

      b2:判斷所述通信頭碼是否滿足:所述通信頭碼的值在上位機頭碼預設范圍內,且所述通信頭碼的值與上位機頭碼預設值相同,如果是,執(zhí)行b3,否則,執(zhí)行a2;

      b3:判斷所述狀態(tài)數(shù)據(jù)是否滿足:所述狀態(tài)數(shù)據(jù)的值在上位機狀態(tài)預設范圍內,且所述狀態(tài)數(shù)據(jù)的字節(jié)數(shù)與冰箱的上位機預設字節(jié)數(shù)相同,如果是,則執(zhí)行b4,否則,執(zhí)行a2;

      b4:判斷所述校驗碼是否正確,如果是,則執(zhí)行b5,否則執(zhí)行a2;

      b5:判斷所述結束電平是否滿足:所述結束電平的持續(xù)時間與上位機預設持續(xù)時間相同,如果是,則確定所述回復信號為有效回復信號,并提取所述狀態(tài)數(shù)據(jù),否則,執(zhí)行a2。

      第二方明本發(fā)明實施例提供了一種冰箱的下位機,包括:下位機處理單元、下位機定時器、第三i/o口和第四i/o口;其中,

      所述下位機定時器分別與所述第三i/o口和所述第四i/o口相連;

      所述下位機定時器,用于執(zhí)行:

      通過所述第三i/o口接收所述冰箱的上位機發(fā)送的通信命令;其中,所述通信命令包括:引導碼、通信頭碼、控制命令、校驗碼和結束電平;

      依次判斷所述通信命令中的所述引導碼、所述通信頭碼、所述控制命令、所述校驗碼和所述結束電平是否均符合對應的下位機預設規(guī)則,如果是,則確定所述通信命令為有效通信命令,觸發(fā)所述下位機處理單元,獲取所述下位機處理單元生成的所述控制命令對應的回復信號,通過所述第四i/o口向所述冰箱的上位機發(fā)送所述回復信號;

      所述下位機處理單元,用于執(zhí)行所述控制命令,生成所述控制命令對應的所述回復信號,并將所述回復信號發(fā)送給所述下位機定時器。

      優(yōu)選地,所述下位機定時器,用于執(zhí)行:

      所述依次判斷所述通信命令中的所述引導碼、所述通信頭碼、所述控制命令、所述校驗碼和所述結束電平是否均符合對應的下位機預設規(guī)則,如果是,則確定所述通信命令為有效通信命令,包括:

      c1:判斷所述引導碼是否滿足:所述引導碼的值與下位機引導碼預設值相同,如果是執(zhí)行c2,否則,返回所述通過所述第三i/o口接收所述冰箱的上位機發(fā)送的通信命令;

      c2:判斷所述通信頭碼是否滿足:所述通信頭碼的值在下位機頭碼預設范圍內,且所述通信頭碼的值與下位機頭碼預設值相同,如果是,執(zhí)行c3,否則,返回所述通過所述第三i/o口接收所述冰箱的上位機發(fā)送的通信命令;

      c3:判斷所述控制命令是否滿足:所述控制命令的值在下位機命令預設范圍內,且所述控制命令的字節(jié)數(shù)與下位機預設字節(jié)數(shù)相同,如果是,則執(zhí)行c4,否則,返回所述通過所述第三i/o口接收所述冰箱的上位機發(fā)送的通信命令;

      c4:判斷所述校驗碼數(shù)據(jù)位是否正確,如果是,則執(zhí)行c5,否則,返回所述通過所述第三i/o口接收所述冰箱的上位機發(fā)送的通信命令;

      c5:判斷所述結束電平是否滿足:所述結束電平的持續(xù)時間與下位機預設持續(xù)時間相同,如果是,則確定所述通信命令為有效通信命令,否則,返回所述通過所述第三i/o口接收所述冰箱的上位機發(fā)送的通信命令。

      第三方面本發(fā)明實施例提供了一種冰箱的通信方法,應用于冰箱的上位機,包括:

      a0:接收外部輸入的當前指令,生成所述當前指令對應的通信命令;

      a1:獲取所述通信命令;

      a2:通過所述冰箱的上位機的第一i/o口將所述通信命令發(fā)送至冰箱的下位機;

      a3:通過所述冰箱的上位機的第二i/o口接收所述冰箱的下位機發(fā)送的針對所述通信命令的回復信號;其中,所述回復信號包括:引導碼、通信頭碼、狀態(tài)數(shù)據(jù)、校驗碼和結束電平;

      a4:依次判斷所述回復信號中的所述引導碼、所述通信頭碼、所述狀態(tài)數(shù)據(jù),所述校驗碼和所述結束電平是否均符合對應的冰箱的上位機預設規(guī)則,如果是,則確定所述回復信號為有效回復信號,并提取所述狀態(tài)數(shù)據(jù),否則,執(zhí)行a2。

      優(yōu)選地,所述a4,包括:

      b1:判斷所述引導碼是否滿足:所述引導碼的值與上位機引導碼預設值相同,如果是執(zhí)行b2,否則,執(zhí)行a2;

      b2:判斷所述通信頭碼是否滿足:所述通信頭碼的值在上位機頭碼預設范圍內,且所述通信頭碼的值與上位機頭碼預設值相同,如果是,執(zhí)行b3,否則,執(zhí)行a2;

      b3:判斷所述狀態(tài)數(shù)據(jù)是否滿足:所述狀態(tài)數(shù)據(jù)的值在上位機狀態(tài)預設范圍內,且所述狀態(tài)數(shù)據(jù)的字節(jié)數(shù)與冰箱的上位機預設字節(jié)數(shù)相同,如果是,則執(zhí)行b4,否則,執(zhí)行a2;

      b4:判斷所述校驗碼是否正確,如果是,則執(zhí)行b5,否則執(zhí)行a2;

      b5:判斷所述結束電平是否滿足:所述結束電平的持續(xù)時間與上位機預設持續(xù)時間相同,如果是,則確定所述回復信號為有效回復信號,并提取所述狀態(tài)數(shù)據(jù),否則,執(zhí)行a2。

      優(yōu)選地,在所述提取所述狀態(tài)數(shù)據(jù)之后,進一步包括:

      等待預設間隔時間,返回a1。

      第四方面,本發(fā)明實施例提供了一種冰箱的通信方法,應用于冰箱的下位機,包括:

      通過所述冰箱的下位機的第三i/o口接收冰箱的上位機發(fā)送的通信命令;其中,所述通信命令包括:引導碼、通信頭碼、控制命令、校驗碼和結束電平;

      依次判斷所述通信命令中的所述引導碼、所述通信頭碼、所述控制命令、所述校驗碼和所述結束電平是否均符合對應的下位機預設規(guī)則,如果是,則確定所述通信命令為有效通信命令,執(zhí)行所述控制命令,生成所述控制命令對應的所述回復信號,通過所述冰箱的下位機的第四i/o口向所述冰箱的上位機發(fā)送所述控制命令對應的回復信號。

      第五方面,本發(fā)明實施例提供了一種冰箱的通信系統(tǒng),包括:第一方面中任一所述的冰箱的上位機和第二方面中任一所述冰箱的下位機。

      本發(fā)明實施例提供了一種冰箱的上位機、冰箱的下位機、冰箱的通信方法及系統(tǒng),通過冰箱的上位機的定時器和兩路i/o口實現(xiàn)向冰箱的下位機發(fā)送上位機處理單元生成的通信命令以及接受下位機針對通信命令的回復信號,能夠實現(xiàn)不通過單片機的通信模塊而實現(xiàn)上位機與下位機的交互。

      附圖說明

      為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

      圖1是本發(fā)明一個實施例提供的一種冰箱的上位機的裝置示意圖;

      圖2是本發(fā)明一個實施例提供的一種冰箱的下位機的裝置示意圖;

      圖3是本發(fā)明一個實施例提供的一種應用于冰箱的上位機的通信方法的流程圖;

      圖4是本發(fā)明一個實施例提供的另一種應用于冰箱的上位機的通信方法的流程圖;

      圖5是本發(fā)明一個實施例提供的一種應用于冰箱的下位機的冰箱的通信方法的流程圖;

      圖6是本發(fā)明一個實施例提供的另一種應用于冰箱的下位機的冰箱的通信方法的流程圖;

      圖7是本發(fā)明實施提供的一種冰箱的通信系統(tǒng)的裝置示意圖;

      圖8是本發(fā)明實施提供的另一種冰箱的通信系統(tǒng)的裝置示意圖;

      圖9是本發(fā)明實施提供的一種應用于冰箱的通信系統(tǒng)的冰箱的通信方法的流程圖。

      具體實施方式

      為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例,基于本發(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

      如圖1所示,本發(fā)明實施例提供了一種冰箱的上位機,包括:上位機定時器101、第一i/o口102、第二i/o口103和上位機處理單元104;其中,

      上位機定時器101分別與第一i/o口102和第二i/o口103相連;

      上位機處理單元104,用于接收外部輸入的當前指令,生成所述當前指令對應的通信命令,將所述通信命令發(fā)送給所述上位機定時器;

      上位機定時器101,用于執(zhí)行:

      a1:獲取所述上位機處理單元104生成的所述通信命令;

      a2:通過第一i/o口102將所述通信命令發(fā)送至冰箱的下位機;

      a3:通過第二i/o口103接收所述冰箱的下位機發(fā)送的針對所述通信命令的回復信號;其中,所述回復信號包括:引導碼、通信頭碼、狀態(tài)數(shù)據(jù)、校驗碼和結束電平;

      a4:依次判斷所述回復信號中的所述引導碼、所述通信頭碼、所述狀態(tài)數(shù)據(jù),所述校驗碼和所述結束電平是否均符合對應的冰箱的上位機預設規(guī)則,如果是,則確定所述回復信號為有效回復信號,并提取所述狀態(tài)數(shù)據(jù),否則,執(zhí)行a2。

      本發(fā)明實施例提供了一種冰箱的上位機,通過冰箱的上位機的定時器和兩路i/o口實現(xiàn)向冰箱的下位機發(fā)送上位機處理單元生成的通信命令以及接收下位機針對通信命令的回復信號,能夠不通過單片機的通信模塊而實現(xiàn)上位機與下位機的交互。

      在本發(fā)明的一個實施例中,所述上位機定時器,進一步用于判斷所述上位機定時器是否在預設等待時間內接收到所述回復信號,如果否,執(zhí)行a2。

      為了提高冰箱的上位機的交互效率,通過在上位機定時器設置預設等待時間,使得上位機定時器可以判斷是否在預設等待時間內接收到回復信號,如果沒有接收到回復信號,則上位機定時器重新獲取通信命令。

      例如,預設等待時間為1s,冰箱的上位機a發(fā)送通信命令的時間大于1s或者冰箱的上位機a發(fā)送的命令與冰箱的下位機不匹配,導致1s內冰箱的上位機a沒有接收到回復信號,則冰箱的上位機a重新發(fā)送通信命令。

      在本發(fā)明一個實施例中,所述上位機定時器,進一步用于執(zhí)行:

      在所述提取所述狀態(tài)數(shù)據(jù)之后,進一步包括:

      等待預設間隔時間,返回a1。

      冰箱的上位機與冰箱的下位機交互時,為了能實時并有效地獲取冰箱的參數(shù),在提取到有效回復信號中的狀態(tài)數(shù)據(jù)之后,等待預設間隔時間后,重新接收外部輸入的指令,并對應地生成通信命令,以進行再次交互。

      例如,用戶需要監(jiān)控冰箱的溫度,則先發(fā)送通信命令并在提取到有效回復信號中的狀態(tài)數(shù)據(jù),之后在等待預設間隔時間后,重新接收外部輸入的指令,并對應地生成通信命令,以再次獲取冰箱的參數(shù)。

      為了能夠提高冰箱的上位機的交互效率,在本發(fā)明一個實施例中,所述上位機定時器,用于執(zhí)行:

      所述a4,包括:

      b1:判斷所述引導碼是否滿足:所述引導碼的值與上位機引導碼預設值相同,如果是執(zhí)行b2,否則,執(zhí)行a2;

      b2:判斷所述通信頭碼是否滿足:所述通信頭碼的值在上位機頭碼預設范圍內,且所述通信頭碼的值與上位機頭碼預設值相同,如果是,執(zhí)行b3,否則,執(zhí)行a2;

      b3:判斷所述狀態(tài)數(shù)據(jù)是否滿足:所述狀態(tài)數(shù)據(jù)的值在上位機狀態(tài)預設范圍內,且所述狀態(tài)數(shù)據(jù)的字節(jié)數(shù)與冰箱的上位機預設字節(jié)數(shù)相同,如果是,則執(zhí)行b4,否則,執(zhí)行a2;

      b4:判斷所述校驗碼是否正確,如果是,則執(zhí)行b5,否則執(zhí)行a2;

      b5:判斷所述結束電平是否滿足:所述結束電平的持續(xù)時間與上位機預設持續(xù)時間相同,如果是,則確定所述回復信號為有效回復信號,并提取所述狀態(tài)數(shù)據(jù),否則,執(zhí)行a2。

      上位機定時器先判斷引導碼,以判斷當前信號是否為回復信號,如果引導碼的值與上位機引導碼預設值不同,則程序返回到a2,如果引導碼的值與上位機引導碼預設值相同,則判斷通信頭碼。

      通信頭碼對應冰箱的型號,即通過通信頭碼冰箱的上位機可以判斷是哪個型號冰箱發(fā)來的數(shù)據(jù),如果通信頭碼的值不在上位機頭碼預設范圍內,或所述通信頭碼的值與上位機頭碼預設值不同,則程序返回到a2,如果通信頭碼的值在上位機頭碼預設范圍內,且通信頭碼的值與上位機頭碼預設值相同,判斷狀態(tài)數(shù)據(jù)。

      狀態(tài)數(shù)據(jù)就是冰箱的各個參數(shù),例如溫度。如果狀態(tài)數(shù)據(jù)的值不在上位機狀態(tài)預設范圍內,或狀態(tài)數(shù)據(jù)的字節(jié)數(shù)與冰箱的上位機預設字節(jié)數(shù)不同,則程序返回到a2,如果狀態(tài)數(shù)據(jù)的值在上位機狀態(tài)預設范圍內,且狀態(tài)數(shù)據(jù)的字節(jié)數(shù)與冰箱的上位機預設字節(jié)數(shù)相同,則判斷校驗碼。

      如果校驗碼不正確,則程序返回到a2,如果校驗碼正確,則判斷結束電平;如果束電平的持續(xù)時間與上位機預設持續(xù)時間相同,則確定回復信號為有效回復信號并提取狀態(tài)數(shù)據(jù),否則程序返回到a2。

      在本發(fā)明一個實施例中,當上位機定時器在20秒內沒有接到冰箱的下位機發(fā)送的有效回復信號時,會發(fā)出通信故障警報,直至才收到有效回復信號時解除通信故障警報。

      如圖2所示,本發(fā)明實施例提供了一種冰箱的下位機,包括:下位機定時器201、第三i/o口202、第四i/o口203和下位機處理單元204;其中,

      下位機定時器201分別與第三i/o口202和第四i/o口203相連;

      下位機定時器201,用于執(zhí)行:

      通過第三i/o口202接收冰箱的上位機發(fā)送的通信命令;其中,所述通信命令包括:引導碼、通信頭碼、控制命令、校驗碼和結束電平;

      依次判斷所述通信命令中的所述引導碼、所述通信頭碼、所述控制命令、所述校驗碼和所述結束電平是否均符合對應的下位機預設規(guī)則,如果是,則確定所述通信命令為有效通信命令,觸發(fā)所述下位機處理單元,獲取所述下位機處理單元生成的所述控制命令對應的回復信號,通過第四i/o口203所述冰箱的上位機發(fā)送所述控制命令對應的回復信號;

      下位機處理單元204,用于執(zhí)行所述控制命令,生成所述控制命令對應的所述回復信號,并將所述回復信號發(fā)送給所述下位機定時器。

      本發(fā)明實施例提供了一種冰箱的下位機,通過下位機的定時器和兩路i/o口實現(xiàn)向冰箱的上位機發(fā)送下位機處理單元針對通信命令生成的回復信號以及接受冰箱的上位機的通信命令,能夠實現(xiàn)不通過單片機的通信模塊而實現(xiàn)上位機與下位機的交互。

      為了能夠提高下位機的交互效率,在本發(fā)明的一個實施例中,所述下位機定時器,用于執(zhí)行:

      所述依次判斷所述通信命令中的所述引導碼、所述通信頭碼、所述控制命令、所述校驗碼和所述結束電平是否均符合對應的下位機預設規(guī)則,如果是,則確定所述通信命令為有效通信命令,包括:

      c1:判斷所述引導碼是否滿足:所述引導碼的值與下位機引導碼預設值相同,如果是執(zhí)行c2,否則,返回所述通過所述第三i/o口接收所述冰箱的上位機發(fā)送的通信命令;

      c2:判斷所述通信頭碼是否滿足:所述通信頭碼的值在下位機頭碼預設范圍內,且所述通信頭碼的值與下位機頭碼預設值相同,如果是,執(zhí)行c3,否則,返回所述通過所述第三i/o口接收所述冰箱的上位機發(fā)送的通信命令;

      c3:判斷所述控制命令是否滿足:所述控制命令的值在下位機命令預設范圍內,且所述控制命令的字節(jié)數(shù)與下位機預設字節(jié)數(shù)相同,如果是,則執(zhí)行c4,否則,返回所述通過所述第三i/o口接收所述冰箱的上位機發(fā)送的通信命令;

      c4:判斷所述校驗碼數(shù)據(jù)位是否正確,如果是,則執(zhí)行c5,否則,通過所述第三i/o口重新接收冰箱的上位機發(fā)送的通信命令;

      c5:判斷所述結束電平是否滿足:所述結束電平的持續(xù)時間與下位機預設持續(xù)時間相同,如果是,則確定所述通信命令為有效通信命令,否則,返回所述通過所述第三i/o口接收所述冰箱的上位機發(fā)送的通信命令。

      下位機定時器先判斷引導碼,以判斷當前信號是否為通信命令,如果引導碼的值與下位機引導碼預設值不同,則通過第三i/o口重新接收冰箱的上位機發(fā)送的通信命令,如果引導碼的值與下位機引導碼預設值相同,則判斷通信頭碼。

      通信頭碼對應著冰箱的型號,即通過通信頭碼冰箱的下位機可以判斷當前的通信命令是否由本機執(zhí)行,如果通信頭碼的值不在下位機頭碼預設范圍內,或所述通信頭碼的值與下位機頭碼預設值不同,則通過第三i/o口重新接收冰箱的上位機發(fā)送的通信命令,如果通信頭碼的值在下位機頭碼預設范圍內,且所述通信頭碼的值與下位機頭碼預設值相同,判斷控制命令。

      控制命令為冰箱的下位機具體要執(zhí)行的程序,例如提供數(shù)據(jù)、執(zhí)行操作。如果控制命令的值不在下位機命令預設范圍內,或控制命令的字節(jié)數(shù)與下位機預設字節(jié)數(shù)不同,則通過第三i/o口重新接收冰箱的上位機發(fā)送的通信命令,如果控制命令的值在下位機命令預設范圍內,且控制命令的字節(jié)數(shù)與下位機預設字節(jié)數(shù)相同,則判斷校驗碼。

      如果校驗碼不正確,則通過第三i/o口重新接收冰箱的上位機發(fā)送的通信命令,如果校驗碼正確,則判斷結束電平;如果束電平的持續(xù)時間與下位機預設持續(xù)時間相同,則確定通信命令為有效通信命令并執(zhí)行控制命令,向所述冰箱的上位機發(fā)送所述控制命令對應的回復信號,否則通過第三i/o口重新接收冰箱的上位機發(fā)送的通信命令。

      如圖3所示本發(fā)明實施例提供了一種冰箱的通信方法,應用于冰箱的上位機,包括以下步驟:

      步驟301,接收所述外部輸入的當前指令,生成所述當前指令對應的通信命令。

      步驟302,獲取通信命令,通過所述冰箱的上位機的第一i/o口將所述通信命令發(fā)送至冰箱的下位機。

      步驟303,通過所述冰箱的上位機的第二i/o口接收所述冰箱的下位機發(fā)送的針對所述通信命令的回復信號;其中,所述回復信號包括:引導碼、通信頭碼、狀態(tài)數(shù)據(jù)、校驗碼和結束電平。

      步驟304,依次判斷所述回復信號中的所述引導碼、所述通信頭碼、所述狀態(tài)數(shù)據(jù),所述校驗碼和所述結束電平是否均符合對應的冰箱的上位機預設規(guī)則,如果是,則執(zhí)行步驟305,否則,執(zhí)行步驟302。

      步驟305,確定所述回復信號為有效回復信號,并提取所述狀態(tài)數(shù)據(jù)。

      在本發(fā)明的一個實施例中,所述a4,包括:

      b1:判斷所述引導碼是否滿足:所述引導碼的值與上位機引導碼預設值相同,如果是執(zhí)行b2,否則,執(zhí)行a2;

      b2:判斷所述通信頭碼是否滿足:所述通信頭碼的值在上位機頭碼預設范圍內,且所述通信頭碼的值與上位機頭碼預設值相同,如果是,執(zhí)行b3,否則,執(zhí)行a2;

      b3:判斷所述狀態(tài)數(shù)據(jù)是否滿足:所述狀態(tài)數(shù)據(jù)的值在上位機狀態(tài)預設范圍內,且所述狀態(tài)數(shù)據(jù)的字節(jié)數(shù)與冰箱的上位機預設字節(jié)數(shù)相同,如果是,則執(zhí)行b4,否則,執(zhí)行a2;

      b4:判斷所述校驗碼是否正確,如果是,則執(zhí)行b5,否則執(zhí)行a2;

      b5:判斷所述結束電平是否滿足:所述結束電平的持續(xù)時間與上位機預設持續(xù)時間相同,如果是,則確定所述回復信號為有效回復信號,并提取所述狀態(tài)數(shù)據(jù),否則,執(zhí)行a2。

      本發(fā)明的一個實施例中,在所述提取所述狀態(tài)數(shù)據(jù)之后,進一步包括:

      等待預設間隔時間,返回a1。

      為了更好地說明本發(fā)明上述實施例,如圖4所示,本發(fā)明實施列提供了另一種冰箱的通信方法,應用于冰箱的上位機,包括以下步驟:

      步驟401,接收外部輸入的當前指令,生成當前指令對應的通信命令。

      步驟402,獲取通信命令,通過冰箱的上位機的第一i/o口將通信命令發(fā)送至冰箱的下位機。

      步驟403,通過冰箱的上位機的第二i/o口接收冰箱的下位機發(fā)送的針對通信命令的回復信號;回復信號包括:引導碼、通信頭碼、狀態(tài)數(shù)據(jù)、校驗碼和結束電平。

      步驟404,判斷引導碼是否滿足:引導碼的值與上位機引導碼預設值相同,如果是執(zhí)行步驟405,否則,執(zhí)行步驟402。

      在本發(fā)明實施例中,引導碼是固定不變的,為6ms高電平和2ms低電平,用于建立冰箱的上位機與冰箱的下位機的交互聯(lián)系。

      步驟405,判斷通信頭碼是否滿足:通信頭碼的值在上位機頭碼預設范圍內,且通信頭碼的值與上位機頭碼預設值相同,如果是,執(zhí)行步驟406,否則,執(zhí)行步驟402。

      在本發(fā)明實施例中,通信頭碼的數(shù)據(jù)格式為8位二進制編碼,冰箱的上位機進行校驗時,從最低位開始,依次對8位編碼進行校驗,如果有一位不符合預設規(guī)則,則執(zhí)行步驟402。

      步驟406,判斷狀態(tài)數(shù)據(jù)是否滿足:狀態(tài)數(shù)據(jù)的值在上位機狀態(tài)預設范圍內,且狀態(tài)數(shù)據(jù)的字節(jié)數(shù)與冰箱的上位機預設字節(jié)數(shù)相同,如果是,則執(zhí)行步驟407,否則,執(zhí)行步驟402。

      在本發(fā)明實施例中,狀態(tài)數(shù)據(jù)的數(shù)據(jù)格式為8位二進制編碼,冰箱的上位機進行校驗時,從最低位開始,依次對8位編碼進行校驗,如果有一位不符合預設規(guī)則,則執(zhí)行步驟402。

      步驟407,判斷校驗碼是否正確,如果是,則執(zhí)行步驟408,否則執(zhí)行步驟402。

      在本發(fā)明實例中,判斷校驗碼的過程如下:冰箱的上位機將通信頭碼與接收的狀態(tài)數(shù)據(jù)累加求和保留低位字節(jié)后,與接收的冰箱的下位機發(fā)送的校驗位相比較,驗證冰箱的下位機發(fā)送的信息與冰箱的上位機接收的信息是否一致。

      步驟408,判斷結束電平是否滿足:結束電平的持續(xù)時間與上位機預設持續(xù)時間相同,如果是,則執(zhí)行步驟409,否則,執(zhí)行步驟402。

      在本發(fā)明實例中,結束電平的預設持續(xù)時間為高電平2ms。

      步驟409,確定回復信號為有效回復信號,并提取狀態(tài)數(shù)據(jù)。

      步驟410,等待預設間隔時間,執(zhí)行步驟401。

      在本發(fā)明實例中,預設間隔時間為10ms。

      本發(fā)明實施例提供了一種冰箱的通信方法,應用于冰箱的下位機,包括:

      通過冰箱的下位機的第三i/o口接收冰箱的上位機發(fā)送的通信命令;通信命令包括:引導碼、通信頭碼、控制命令、校驗碼和結束電平;

      依次判斷所述通信命令中的所述引導碼、所述通信頭碼、所述控制命令、所述校驗碼和所述結束電平是否均符合對應的下位機預設規(guī)則,如果是,則確定所述通信命令為有效通信命令,執(zhí)行所述控制命令,生成所述控制命令對應的所述回復信號,通過所述冰箱的下位機的第四i/o口向所述冰箱的上位機發(fā)送所述控制命令對應的回復信號。

      如圖5所示,本發(fā)明實施例提供了一種冰箱的通信方法,應用于冰箱的下位機,包括以下步驟:

      步驟501,通過冰箱的下位機的第三i/o口接收冰箱的上位機發(fā)送的通信命令;通信命令包括:引導碼、通信頭碼、控制命令、校驗碼和結束電平;

      步驟502,依次判斷所述通信命令中的所述引導碼、所述通信頭碼、所述控制命令、所述校驗碼和所述結束電平是否均符合對應的下位機預設規(guī)則,如果是,則執(zhí)行步驟503,否則,執(zhí)行步驟501。

      步驟503,確定所述通信命令為有效通信命令,執(zhí)行所述控制命令,并生成所述控制命令對應的所述回復信號。

      步驟504,通過所述冰箱的下位機的第四i/o口向所述冰箱的上位機發(fā)送所述控制命令對應的回復信號。

      為更好地說明本發(fā)明上述實施例,如圖6所示,本發(fā)明實施例提供了另一種冰箱的通信方法,應用于冰箱的下位機,包括以下步驟:

      步驟601,通過冰箱的下位機的第三i/o口接收冰箱的上位機發(fā)送的通信命令。

      步驟602,判斷引導碼是否滿足:引導碼的值與下位機引導碼預設值相同,如果是執(zhí)行步驟603,否則,執(zhí)行步驟601。

      在本發(fā)明實施例中,引導碼是固定不變的,為6ms高電平和2ms低電平,用于建立冰箱的上位機與冰箱的下位機的交互聯(lián)系。

      步驟603,判斷通信頭碼是否滿足:通信頭碼的值在下位機頭碼預設范圍內,且所述通信頭碼的值與下位機頭碼預設值相同,如果是,執(zhí)行步驟604,否則,執(zhí)行步驟601。

      在本發(fā)明實施例中,通信頭碼的數(shù)據(jù)格式為8位二進制編碼,冰箱的下位機進行校驗時,從最低位開始,依次對8位編碼進行校驗,如果有一位不符合預設規(guī)則,則執(zhí)行步驟601。

      步驟604,判斷控制命令是否滿足:控制命令的值在下位機命令預設范圍內,且所述控制命令的字節(jié)數(shù)與下位機預設字節(jié)數(shù)相同,如果是,則執(zhí)行步驟605,否則,執(zhí)行步驟601。

      在本發(fā)明實施例中,控制命令的數(shù)據(jù)格式為8位二進制編碼,冰箱的下位機進行校驗時,從最低位開始,依次對8位編碼進行校驗,如果有一位不符合預設規(guī)則,則執(zhí)行步驟601。

      步驟605,判斷校驗碼是否正確,如果是,則執(zhí)行步驟606,否則執(zhí)行步驟601。

      在本發(fā)明實例中,判斷校驗碼的過程如下:冰箱的下位機將通信頭碼與接收的狀態(tài)數(shù)據(jù)累加求和保留低位字節(jié)后,與接收的冰箱的上位機發(fā)送的校驗位相比較,驗證冰箱的上位機發(fā)送的信息與冰箱的下位機接收的信息是否一致。

      步驟606,判斷結束電平是否滿足:結束電平的持續(xù)時間與下位機預設持續(xù)時間相同,如果是,則執(zhí)行步驟607,否則,執(zhí)行步驟601。

      在本發(fā)明實例中,結束電平的預設持續(xù)時間為高電平2ms。

      步驟607,確定所述通信命令為有效通信命令,執(zhí)行所述控制命令,并生成所述控制命令對應的所述回復信號。

      步驟608,通過所述冰箱的下位機的第四i/o口向所述冰箱的上位機發(fā)送所述控制命令對應的回復信號。

      如圖7所示,本發(fā)明實施提供了一種冰箱的通信系統(tǒng),包括:上述實例中任一所述的冰箱的上位機701和上述實例中任一所述的冰箱的下位機702。

      如圖8所示,本發(fā)明實施例提供了另一種冰箱的通信系統(tǒng),包括:冰箱的上位機801,冰箱的下位機802,通信總線803;其中,

      冰箱的上位機801包括:上位機定時器101、第一i/o口102、第二i/o口103和上位機處理單元104;

      上位機定時器101,用于初始工作模式設定為基本間隔定時功能,控制第一i/o口102的電平狀態(tài),使得上位機定時器101向冰箱的下位機802發(fā)送通信命令,發(fā)送完成后切換工作模式為捕捉功能,通過第二i/o口103接收冰箱的下位機802發(fā)送的回復信號。

      冰箱的下位機802包括:下位機定時器201、第三i/o口202、第四i/o口203和下位機處理單元204;

      下位機定時器201,用于初始工作模式設定為捕捉功能,通過第三i/o口202接收冰箱的上位機801發(fā)送的通信命令,接受到有效的通信命令后,切換工作模式為基本間隔定時功能,控制第四i/o口203的電平狀態(tài),使得冰箱的下位機定時器能夠向冰箱的上位機發(fā)送回復信號。

      通信總線803,用于傳遞冰箱的上位機801發(fā)送的通信命令以及冰箱的下位機802發(fā)送的回復信號。

      為了更好地說明,上述系統(tǒng)的交互關系,如圖9所示,本發(fā)明實例提供了一種冰箱的通信方法,應用于冰箱的通信系統(tǒng),包括以下步驟:

      步驟901,接收外部輸入的當前指令,生成當前指令對應的通信命令。

      步驟902,獲取通信命令,通過冰箱的上位機的第一i/o口將通信命令發(fā)送至冰箱的下位機。

      在本發(fā)明實施例中,通過設置上位機定時器的初始狀態(tài)為基本間隔定時功能,使得上位機定時器可以通過冰箱的上位機的第一i/o口將通信命令發(fā)送至冰箱的下位機。上位機定時器發(fā)送通信命令之后,上位機定時器工作狀態(tài)切換為下降沿捕捉功能。

      步驟903,通過冰箱的下位機的第三i/o口接收冰箱的上位機發(fā)送的通信命令;其中,通信命令包括:引導碼、通信頭碼、控制命令、校驗碼和結束電平。

      在本發(fā)明實施例中,通過設置下位機定時器的初始狀態(tài)為下降沿觸發(fā)捕捉功能,使得下位機定時器可以通過第三i/o口接收通信命令。

      步驟904,依次判斷所述通信命令中的引導碼、通信頭碼、控制命令、校驗碼和結束電平是否均符合對應的下位機預設規(guī)則,如果是,則執(zhí)行步驟905,否則執(zhí)行步驟903。

      步驟905,確定通信命令為有效通信命令,執(zhí)行控制命令,并生成控制命令對應的回復信號。

      步驟906,通過冰箱的下位機的第四i/o口向冰箱的上位機發(fā)送控制命令對應的回復信號。

      在本發(fā)明實施例中,下位機定時器每次接收到有效通信命令后,下位機定時器工作狀態(tài)切換為基本間隔定時功能,使得下位機定時器可以通過第四i/o口發(fā)送回復信號。下位機定時器發(fā)送回復信號后,下位機定時器工作狀態(tài)切換為下降沿觸發(fā)捕捉功能。

      步驟907,通過冰箱的上位機的第二i/o口接收冰箱的下位機發(fā)送的針對通信命令的回復信號;其中,回復信號包括:引導碼、通信頭碼、狀態(tài)數(shù)據(jù)、校驗碼和結束電平;

      步驟908,依次判斷所述回復信號中的所述引導碼、所述通信頭碼、所述狀態(tài)數(shù)據(jù),所述校驗碼和所述結束電平是否均符合對應的冰箱的上位機預設規(guī)則,如果是,則執(zhí)行步驟909,否則,執(zhí)行步驟907。

      步驟909,確定所述回復信號為有效回復信號,并提取所述狀態(tài)數(shù)據(jù)。

      在本發(fā)明實施例中,上位機定時器每次接收到有效回復信號之后,上位機定時器工作狀態(tài)切換為基本間隔定時功能,使得冰箱的上位機可以再次發(fā)送通信命令。

      步驟910,等待預設間隔時間,執(zhí)行步驟901。

      綜上所述,本發(fā)明各個實施例至少具有如下有益效果:

      1、本發(fā)明一個實施例中,通過冰箱的上位機的定時器和兩路i/o口實現(xiàn)向冰箱的下位機發(fā)送上位機處理單元生成的通信命令以及接受下位機針對通信命令的回復信號,能夠實現(xiàn)不通過單片機的通信模塊而實現(xiàn)上位機與下位機的交互。

      2、本發(fā)明一個實施例中,通過下位機的定時器和兩路i/o口實現(xiàn)向冰箱的上位機發(fā)送下位機處理單元針對通信命令生成的回復信號以及接受冰箱的上位機的通信命令,能夠實現(xiàn)不通過單片機的通信模塊而實現(xiàn)上位機與下位機的交互。

      3、本發(fā)明的一個實施例中,通過執(zhí)行針對交互過程自定義包括引導碼、通信頭碼、狀態(tài)數(shù)據(jù)、控制命令、校驗碼和結束電平的通信協(xié)議,使得交互過程準確、便捷。

      4、本發(fā)明的一個實施例中,通過配置上位機定時器,可以避免由于通信命令發(fā)送時間過長或長時間沒有收到回復而導致冰箱的上位機與冰箱的下位機交互中斷的問題。

      需要說明的是,在本文中,諸如第一和第二之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個······”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同因素。

      本領域普通技術人員可以理解:實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲在計算機可讀取的存儲介質中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質包括:rom、ram、磁碟或者光盤等各種可以存儲程序代碼的介質中。

      最后需要說明的是:以上所述僅為本發(fā)明的較佳實施例,僅用于說明本發(fā)明的技術方案,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內所做的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內。

      當前第1頁1 2 
      網友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1