一種電動車儀表的程序下載方法
【專利摘要】本發明公開了一種電動車儀表的程序下載方法。其中,該方法包括:接收從CAN網絡中傳輸來的標識數據;標識數據分別與人機交互設備的節點標識數據和支架設備的節點標識數據進行比對;當標識數據與人機交互設備的節點標識數據相同時,人機交互設備接收CAN網絡中傳輸的程序數據;當標識數據與支架設備的節點標識數據相同時,支架設備接收CAN網絡中傳輸的程序數據。本發明解決了現有技術中無法在同一網絡中有針對性的下載程序,且無法檢查下載的程序是否為應當下載程序的問題。
【專利說明】
_種電動車儀表的程序下載方法
技術領域
[0001]本發明涉及電動車儀表設計領域,具體而言,涉及一種電動車儀表的程序下載方法。
【背景技術】
[0002]—般情況下,對已開發完成的含有單片機的系統進行更新應用程序的操作時,通常需要通過拆解該封裝系統或者使用特殊的設備來實現。在下載單片機程序時,通常是通過單片機的ROM中已經固化的Boot loader (程序)來下載應用層程序。
[0003]然而,對一個系統程序的更新通常是一個全面的更新,通常涉及到大多數或是全部智能硬件部分。當一個系統中有多個設備包含類似于單片機這樣的需要燒寫程序的微控制器時,系統的更新通常需要對系統中包含的所有微控制器單獨進行適用于該微控制器的程序的下載;用多個下載工具給多個不同的設備下載多個程序,這些操作通常繁瑣且易錯。
【發明內容】
[0004]本發明的主要目的在于提供一種電動車儀表的程序下載方法,以解決無法在同一網絡中有針對性的下載程序,且無法檢查下載的軟件是否為應當下載軟件的問題。
[0005]為了實現上述目的,根據本發明實施例的一個方面,提供了一種電動車儀表的程序下載方法,電動車儀表包括支架設備和安裝于支架設備上的人機交互設備,其中,人機交互設備和支架設備均與同一 CAN網絡連接,下載方法包括:接收從CAN網絡中傳輸來的標識數據;標識數據分別與人機交互設備的節點標識數據和支架設備的節點標識數據進行比對;當標識數據與人機交互設備的節點標識數據相同時,人機交互設備接收CAN網絡中傳輸的程序數據;當標識數據與支架設備的節點標識數據相同時,支架設備接收CAN網絡中傳輸的程序數據。
[0006]根據發明實施例,通過使用同一個CAN網絡,對連接于該CAN網絡上的兩個設備進行程序下載,且通過設定標識,選擇性的對連接于該CAN網絡的其一設備進行程序下載。解決了選擇性的對某一設備進行程序下載的問題和確保程序在下載時準確性的問題,達到了更便捷的操作性和更高的下載準確性的效果。
【附圖說明】
[0007]構成本申請的一部分的附圖用來提供對本發明的進一步理解,本發明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中:
[0008]圖1是根據本發明實施例的電動車儀表的程序下載方法的流程圖;
[0009]圖2是根據本發明實施例的電動車儀表的結構及通信示意圖;以及
[0010]圖3是根據本發明實施例的電動車儀表的程序下載流程等效示意圖。
【具體實施方式】
[0011 ] 需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。下面將參考附圖并結合實施例來詳細說明本發明。
[0012]為了使本技術領域的人員更好地理解本發明方案,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分的實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬于本發明保護的范圍。
[0013]需要說明的是,本發明的說明書和權利要求書及上述附圖中的術語“第一”、“第二”等是用于區別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數據在適當情況下可以互換,以便這里描述的本發明的實施例。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統、產品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對于這些過程、方法、產品或設備固有的其它步驟或單元。
[0014]本發明實施例提供了一種電動車儀表的程序下載方法。為了使本領域的人員更好的理解本發明方案,下面首先對電動車儀表的設備結構進行描述,電動車儀表的設備包括支架設備和安裝于支架設備上的人機交互設備,其中,人機交互設備和支架設備均與CAN網絡連接,人機交互設備和支架設備中均有CAN通信芯片及其輔助功能電路,或帶有CAN通信功能的單片機;人機交互設備和支架設備中均有程序存儲器,需要實現程序更新的操作;人機交互設備和支架設備中均有固化的Boot loader。
[0015]圖1是根據本發明實施例的電動車儀表的程序下載方法的流程圖。如圖1所示,該電動車儀表的程序下載方法包括如下步驟:
[0016]步驟S102,接收從CAN網絡中傳輸來的標識數據;
[0017]具體的,上述步驟S102中,CAN網絡的一側分別與人機交互設備和支架設備連接,另一側與上位機連接。人機交互設備和支架設備分別通過CAN網絡與上位機建立通訊關系,實現人機交互設備、支架設備與上位機的數據交換。在上述步驟中,人機交互設備和支架設備首先從CAN網絡中接收標識數據。
[0018]步驟S104,標識數據分別與人機交互設備的節點標識數據和支架設備的節點標識數據進行比對;
[0019]具體的,上述步驟S104中,人機交互設備的節點標識數據和支架設備的節點標識數據存在于人機交互設備和支架設備中,人機交互設備的節點標識與支架設備的節點標識數據設定為不同的數據,以相互區分。當人機交互設備和支架設備接收到CAN網絡中傳輸的標識數據后,首先將該標識數據與自身存儲的節點標識數據進行比對,以確認該數據是不是發送給本節點設備的,并根據比對結果,確認下一步待執行的操作。
[0020]步驟S106,當標識數據與人機交互設備的節點標識數據相同時,人機交互設備接收CAN網絡中傳輸的程序數據;當標識數據與支架設備的節點標識數據相同時,支架設備接收CAN網絡中傳輸的程序數據。
[0021]具體的,在上述步驟S106中,如果CAN網絡中傳輸的標識數據與人機交互設備的節點標識數據相同,則人機交互設備可以得知,在標識數據之后發送的程序數據就是發送給人機交互設備的,那么人機交互設備接收程序數據,而此時支架設備節點標識與標識數據不同,支架設備得知該程序數據不是發送給支架設備的,那么支架設備不做任何的反饋。相應的,如果CAN網絡中傳輸的標識數據與支架設備的節點標識相同,則支架設備接收程序數據,人機交互設備不做反饋。因此,通過給支架設備和人機交互設備設定不同的節點標識數據,并約定在支架設備和人機交互設備下載程序之前,驗證先于程序數據傳輸的標識數據的正確性,能夠實現利用同一 CAN網絡,選擇性的對人機交互設備或支架設備進行程序下載。更進一步的,如果在人機交互設備和支架設備所組成的應用設備封裝前,預留出統一連接二者的CAN網絡接口,則可以實現在不拆開該應用設備的情況下,分別對人機交互設備和支架設備進行程序更新。
[0022]具體的,在上述步驟S106中,當CAN網絡中的標識數據既不與人機交互設備的節點標識數據相同,也不與支架設備的節點標識數據相同時,支架設備與人機交互設備均不做任何反饋,因此,在對該應用設備進行程序更新時,如果上位機不能向CAN網絡發送正確的、提前約定好的標識數據,那么,與CAN網絡連接的支架設備和人機交互設備有權拒絕接收CAN網絡中傳輸的程序數據,基于此,可以防止對該應用設備進行未授權的,甚至是惡意的更新程序的操作。
[0023]其中,人機交互設備完成標識數據與人機交互設備的節點標識數據的比對;支架設備完成標識數據與支架設備的節點標識數據的比對。
[0024]其中,人機交互設備和支架設備通過CAN網絡與上位機建立通訊關系;其中,在接收從CAN網絡中傳輸來的標識數據之前,該程序下載方法還包括:步驟SlOl:上位機向CAN網絡發送標識數據和程序數據。
[0025]其中,上述步驟SlOl還包括:步驟SlOll:提供用戶界面;步驟S1012:根據用戶在用戶界面上的操作確定待下載設備和待下載的程序;步驟S1013:將指定的待下載設備,解析為標識數據,步驟S1014:將指定的待下載的程序,并解析為程序數據;步驟S1015:將標識數據和程序數據傳輸至CAN網絡。
[0026]具體的,在上述步驟SlOl中,上位機提供用戶界面,以完成待下載程序的選定和待下載的設備的選定,并將待下載程序和待下載的設備的信息按照通信雙方認可的協議,轉換為可識別的標識數據和程序數據,傳輸至CAN網絡中。
[0027]具體的,在上述步驟S1014中,指定的待下載的程序可以為程序代碼,也可以為程序文件所在的地址;當指定的待下載程序為程序文件所在地址時,解析完成后的程序數據為程序代碼。
[0028]其中,上述步驟S1013還包括:步驟S10131:獲取上位機中存儲的集合列表,其中,集合列表中至少包含待下載設備的名稱,待下載設備的節點標識數據,及待下載設備的名稱與待下載設備的節點標識數據之間的關聯關系;步驟S10132:根據待下載設備的名稱,從集合列表中搜索對應的節點標識數據;步驟S10133:提取待下載設備對應的節點標識數據。
[0029]具體的,在上述步驟S10131之前,還包括如下步驟:在上位機中建立集合列表,其中,首先確定待下載設備群,并獲取待下載設備群中每一個設備對應的節點標識數據;然后,采用與設備節點標識數據一一對應的、且更具可讀性的設備名稱來區分設備;并在集合列表中建立設備名稱與節點標識數據的關聯關系。如此,通過更新上位機中的集合列表,就可以支持更多的待下載設備。
[0030]其中,人機交互設備及支架設備中均具有存儲器,人機交互設備及支架設備的節點標識數據預先存儲于存儲器中。
[0031 ] 其中,人機交互設備的節點標識數據為人機交互設備在CAN網絡中的地址數據;支架設備的節點標識數據為支架設備在CAN網絡中的地址數據。
[0032]其中,以人機交互設備為例,步驟S106中人機交互設備接收CAN網絡中傳輸的程序數據的步驟又包括:當人機交互設備的節點標識數據與CAN網絡中的標識數據相同時,人機交互設備中的CAN通信芯片接收CAN網絡中的后續數據并識別為程序數據;并將該程序數據被存儲于人機交互設備的單片機的程序存儲器中。上電復位后,人機交互設備單片機的Boot loader從程序存儲器中執行新下載的程序,由此實現應用程序的更新。支架設備的應用程序更新與人機交互設備相同。人機交互設備和支架設備的節點標識數據可通過網絡自動獲取,也可以人為設定。這種情況下,節點標識數據為11位或29位二進制數據。
[0033]本申請上述實施例提供的方案,通過使用標識數據,完成兩端通信設備的選定。只有節點標識數據與CAN網絡傳輸的標識數據相匹配的設備,才能接收從CAN網絡中傳輸的數據。通過本發明提供的方法,可以實現人機交互設備和支架設備獨立的更新下載程序,且能夠確保其下載的程序為用戶指定的程序。
[0034]下面結合具體的電動車儀表的結構對本申請實施例提供的方法進行詳細描述:
[0035]圖2是根據本發明實施例的電動車儀表的結構及通信示意圖,其中,電動車儀表I包含支架設備2和人機交互設備3。人機交互設備3安裝于支架設備2上,電動車儀表I安裝于電動車上。電動車儀表I通過CAN網絡與上位機4通信。
[0036]在電動車儀表I正常使用時,人機交互設備3、支架設備2、上位機4以及裝于電動車身的控制單元均連接至同一 CAN網絡中。支架設備2通過例如按鍵的方式接收輸入數據,并將輸入數據傳輸至車身控制單元,由車身控制單元對數據進行處理;人機交互設備3接收車身控制單元傳來的數據并進行顯示。可選的,支架設備2為人機交互設備3提供穩定電源,在這種情況下,人機交互設備3沒有獨立的電源接口,當對脫離支架設備2而單獨存在的人機交互設備3進行程序更新時,需要設計較為復雜的接口驅動電路,增加了程序更新的復雜性。
[0037]在對電動車儀表I進行應用程序下載更新時,根據圖2所述設備的程序下載流程的等效示意圖如圖3所示,具體的方法包括:
[0038]步驟A,在上位機中,對于人機交互設備和支架設備應用程序的更新共用一個下載用工具軟件,該工具軟件提供用戶界面,供用戶在界面上進行例如選擇待下載設備和待下載的程序的操作;
[0039]步驟B,上位機中的下載用工具軟件根據用戶的操作從存儲的集合列表,例如配置文件,中讀取與用戶選擇的設備相應的節點標識數據,以及根據用戶選擇的待下載程序獲取程序數據,并將標識數據和程序數據發送至CAN網絡;其中,設備的節點標識數據為該設備在CAN網絡中的地址。
[0040]例如,在需要更新電動車儀表中的人機交互設備的應用程序時,下載用工具軟件讀取配置文件中人機交互設備在CAN網絡中的地址,將人機交互設備在CAN網絡中的地址數據與程序數據一起發送至CAN網絡;在需要更新電動車儀表中的支架設備的應用程序時,下載用工具軟件讀取配置文件中支架設備在CAN網絡中的地址,將支架設備在CAN網絡中的地址數據與程序數據一起發送至CAN網絡。
[0041]步驟C,人機交互設備和支架設備接收CAN網絡中傳輸來的標識數據,并判斷該標識數據與設備自身的節點標識數據是否相同,判定相同的設備接收CAN網絡中的帶有節點標識的數據;
[0042]例如,在需要更新電動車儀表中的人機交互設備的應用程序時,CAN網絡中的標識數據為人機交互設備在CAN網絡中的地址,人機交互設備和支架設備接收CAN網絡中傳輸來的標識數據,此時人機交互設備判斷CAN網絡中的標識數據為自身在CAN網絡中的地址,則人機交互設備接收該帶有人機交互設備節點標識的數據;在需要更新電動車儀表中的支架設備的應用程序時,CAN網絡中的標識數據為支架設備在CAN網絡中的地址,人機交互設備和支架設備接收CAN網絡中傳輸來的標識數據,此時支架設備判斷CAN網絡中的標識數據為自身在CAN網絡中的地址,則支架設備接收該帶有支架設備節點標識的數據。
[0043]步驟D,人機交互設備或支架設備將接收到帶有設備節點標識的數據中的程序數據存入程序存儲器中,在下一次上電復位時,在Boot Loader的控制下按序執行程序存儲器中的程序信息。
[0044]例如,在人機交互設備接收該帶有人機交互設備節點標識的數據后,將該數據中的程序數據存入人機交互設備的程序存儲器中,完成人機交互設備應用程序的更新;在支架設備接收該帶有支架設備節點標識的數據后,將該數據中的程序數據存入支架設備的程序存儲器中,完成支架設備應用程序的更新。
[0045]需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發明并不受所描述的動作順序的限制,因為依據本發明,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優選實施例,所涉及的動作和模塊并不一定是本發明所必須的。
[0046]在上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。
[0047]以上所述僅為本發明的優選實施例而已,并不用于限制本發明,對于本領域的技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。
【主權項】
1.一種電動車儀表的程序下載方法,其特征在于,所述電動車儀表包括支架設備和安裝于所述支架設備上的人機交互設備,其中,所述人機交互設備和所述支架設備均與同一CAN網絡連接,所述下載方法包括: 接收從所述CAN網絡中傳輸來的標識數據; 所述標識數據分別與所述人機交互設備的節點標識數據和所述支架設備的節點標識數據進行比對; 當所述標識數據與所述人機交互設備的所述節點標識數據相同時,所述人機交互設備接收所述CAN網絡中傳輸的程序數據;當所述標識數據與所述支架設備的所述節點標識數據相同時,所述支架設備接收所述CAN網絡中傳輸的所述程序數據。2.根據權利要求1所述的方法,其特征在于,所述人機交互設備將所述標識數據與所述人機交互設備的節點標識數據進行比對;所述支架設備將所述標識數據與所述支架設備的節點標識數據進行比對。3.根據權利要求1所述的方法,其特征在于,所述人機交互設備和所述支架設備通過所述CAN網絡與上位機建立通訊關系,其中,在接收從所述CAN網絡中傳輸來的所述標識數據之前,所述方法還包括:所述上位機向所述CAN網絡發送標識數據和程序數據。4.根據權利要求3所述的方法,其特征在于,所述上位機向所述CAN網絡發送標識數據和程序數據的步驟包括: 提供用戶界面; 根據用戶在用戶界面上的操作確定待下載設備和待下載的程序; 將指定的待下載設備,解析為所述標識數據,將所述指定的待下載的程序,解析為所述程序數據; 將所述標識數據和所述程序數據傳輸至所述CAN網絡。5.根據權利要求4所述的方法,其特征在于,所述將指定的待下載設備,解析為標識數據的步驟包括: 獲取所述上位機中存儲的集合列表,其中,所述集合列表中至少包含待下載設備的名稱,待下載設備的節點標識數據,及所述待下載設備的名稱與所述待下載設備的節點標識數據之間的關聯關系; 根據待下載設備的名稱,從所述集合列表中搜索對應的所述節點標識數據; 提取待下載設備對應的節點標識數據。6.根據權利要求1所述的方法,其特征在于,所述人機交互設備及所述支架設備中均具有存儲器,所述人機交互設備及所述支架設備的節點標識數據預先存儲于存儲器中。7.根據權利要求1所述的方法,其特征在于,所述人機交互設備的節點標識數據為所述人機交互設備在所述CAN網絡中的地址數據;所述支架設備的節點標識數據為所述支架設備在所述CAN網絡中的地址數據。
【文檔編號】G06F9/445GK105824655SQ201510009744
【公開日】2016年8月3日
【申請日】2015年1月8日
【發明人】邰祥, 李海鵬, 蔣尚, 谷蕾, 張玉, 張玉一, 李峰, 張建華, 陳曉東, 劉園園
【申請人】大陸汽車電子(蕪湖)有限公司