国产精品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è)備應(yīng)用程序的自恢復(fù)方法與流程

      文檔序號(hào):11620413閱讀:279來(lái)源:國(guó)知局

      本發(fā)明屬于具體涉及一種嵌入式設(shè)備應(yīng)用程序的自恢復(fù)方法。



      背景技術(shù):

      隨著經(jīng)濟(jì)技術(shù)的發(fā)展和人們生活水平的提高,嵌入式設(shè)備的應(yīng)用越來(lái)越廣泛,嵌入式設(shè)備也在人們的生產(chǎn)和生活之中發(fā)揮了無(wú)以倫比的巨大作用。

      嵌入式設(shè)備因?yàn)榇嬖谇度胧叫酒?,因此一般都具有自控控制、智能算法等功能。而嵌入式芯片的控制功能的發(fā)揮,則完全依賴(lài)于嵌入式芯片的控制程序。目前嵌入式系統(tǒng)的應(yīng)用程序是放在片外flash上,當(dāng)對(duì)應(yīng)用程序進(jìn)行升級(jí)時(shí),嵌入式芯片將采用flashboot模式。但是,由于意外的斷電或者其它故障,導(dǎo)致在燒錄flash時(shí)突然中斷,因而程序沒(méi)有燒錄完成。然而,目前的嵌入式芯片一般都不具備linux系統(tǒng)的u-boot自恢復(fù)功能,因此其后果是導(dǎo)致程序無(wú)法正常運(yùn)行,需要返廠后用仿真器完成程序的燒錄。



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

      本發(fā)明的目的在于提供一種能夠穩(wěn)定提供備用程序和保證嵌入式芯片程序自動(dòng)恢復(fù)的嵌入式設(shè)備應(yīng)用程序的自恢復(fù)方法。

      本發(fā)明提供的這種嵌入式設(shè)備應(yīng)用程序的自恢復(fù)方法,包括如下步驟:

      s1.根據(jù)控制芯片的指令集,開(kāi)發(fā)控制芯片的二級(jí)bootload程序,所述二級(jí)bootload程序能夠?qū)lash進(jìn)行讀寫(xiě)、boot模式切換和讀取控制芯片i/o引腳電平信號(hào);

      s2.根據(jù)控制芯片的指令集,開(kāi)發(fā)嵌入式芯片的工廠程序,所述工廠程序能夠?qū)lash進(jìn)行讀寫(xiě)、讀取嵌入式設(shè)備通信接口數(shù)據(jù)和對(duì)嵌入式芯片的應(yīng)用程序進(jìn)行升級(jí);

      s3.將步驟s1開(kāi)發(fā)的二級(jí)bootload程序和步驟s2開(kāi)發(fā)的工廠程序分別就進(jìn)行編譯得到編譯文件,并分別燒錄到flash的不同區(qū)域;

      s4.若控制芯片的應(yīng)用程序無(wú)法正常啟動(dòng),則控制芯片自動(dòng)重啟,此時(shí)控制芯片的一級(jí)bootload程序自動(dòng)加載并從flash中完成二級(jí)bootload程序的加載;

      s5.二級(jí)bootload程序控制控制芯片檢測(cè)i/o引腳電平信號(hào),并在i/o引腳電平信號(hào)發(fā)生變化時(shí)從flash中加載工廠程序;

      s6.工廠程序讀取嵌入式設(shè)備通信接口數(shù)據(jù),完成應(yīng)用程序的讀取并燒錄到flash中;

      s7.控制芯片再次重啟,此時(shí)控制芯片的一級(jí)bootload程序自動(dòng)加載并從flash中完成二級(jí)bootload程序的加載,二級(jí)bootload程序控制控制芯片檢測(cè)i/o引腳電平信號(hào),并在i/o引腳電平信號(hào)未發(fā)生變化時(shí)從flash中加載步驟s6存儲(chǔ)的應(yīng)用程序,完成嵌入式設(shè)備控制芯片程序的自恢復(fù)。

      所述的控制芯片為固化了一級(jí)bootload的嵌入式芯片。

      所述的控制芯片為dsp。

      所述的flash為nandflash或norflash。

      所述的嵌入式設(shè)備通信接口為以太網(wǎng)通信接口或sd卡數(shù)據(jù)接口。

      所述的二級(jí)bootload程序在flash中的存儲(chǔ)為二級(jí)bootload程序從flash中的第一個(gè)blocks開(kāi)始進(jìn)行存儲(chǔ)。

      本發(fā)明提供的這種嵌入式設(shè)備應(yīng)用程序的自恢復(fù)方法,通過(guò)二級(jí)bootload程序和工廠程序的兩級(jí)程序加載,使得嵌入式設(shè)備的控制芯片能夠在flash存儲(chǔ)的應(yīng)用程序受損的情況下從設(shè)備外部獲取應(yīng)用程序數(shù)據(jù),從而使得嵌入式設(shè)備的控制芯片應(yīng)用程序的自行恢復(fù)功能更加可靠和穩(wěn)定;而且采用二級(jí)bootload程序代碼,代碼更為簡(jiǎn)單可靠,因此啟動(dòng)速度更快,響應(yīng)更加迅速。

      附圖說(shuō)明

      圖1為本發(fā)明的方法流程圖。

      具體實(shí)施方式

      如圖1所示為本發(fā)明的方法流程圖,以下以ti公司的dsp芯片為例,說(shuō)明本發(fā)明的具體方法:

      本發(fā)明提供的這種嵌入式設(shè)備應(yīng)用程序的自恢復(fù)方法,包括如下步驟:

      s1.根據(jù)控制芯片的指令集,開(kāi)發(fā)控制芯片的二級(jí)bootload程序,所述二級(jí)bootload程序能夠?qū)lash進(jìn)行讀寫(xiě)、boot模式切換和讀取控制芯片i/o引腳電平信號(hào);

      具體為開(kāi)發(fā)一套二級(jí)bootload程序,該程序功能包括:通過(guò)gpio檢測(cè)按鍵狀態(tài),來(lái)決定二級(jí)bootload程序是從flash的30blocks開(kāi)始加載工廠程序,還是從flash的200blocks開(kāi)始加載應(yīng)用程序;讀取flash程序內(nèi)容時(shí),根據(jù)ti的ais格式說(shuō)明,找到sectionload(0×58535901)標(biāo)識(shí),將數(shù)據(jù)導(dǎo)入指定的存儲(chǔ)空間(片內(nèi)ram或者片外sdram)。同時(shí)找到j(luò)ump(0×58535905)標(biāo)識(shí),通過(guò)匯編代碼完成跳轉(zhuǎn)到c入口c_int00的操作;

      s2.根據(jù)控制芯片的指令集,開(kāi)發(fā)嵌入式芯片的工廠程序,所述工廠程序能夠?qū)lash進(jìn)行讀寫(xiě)、讀取嵌入式設(shè)備通信接口數(shù)據(jù)和對(duì)嵌入式芯片的應(yīng)用程序進(jìn)行升級(jí);

      具體為開(kāi)發(fā)一套工廠程序,該程序功能包括:通過(guò)以太網(wǎng)或者sd卡實(shí)現(xiàn)對(duì)應(yīng)用程序的升級(jí);對(duì)升級(jí)是否成功也液晶顯示的方式告知;flash的讀寫(xiě)功能;

      s3.將步驟s1開(kāi)發(fā)的二級(jí)bootload程序和步驟s2開(kāi)發(fā)的工廠程序分別就進(jìn)行編譯得到編譯文件,并分別燒錄到控制芯片的flash的不同區(qū)域;

      具體為將二級(jí)bootload程序、工廠程序、應(yīng)用程序分別編譯,運(yùn)用ti提供的aisgen.exe工具生成ais格式的bin文件,將二級(jí)bootload程序的bin文件通過(guò)仿真器從flash的第1blocks開(kāi)始往后燒寫(xiě);將工廠程序的bin文件通過(guò)仿真器從flash的第30blocks開(kāi)始往后燒寫(xiě);應(yīng)用程序的bin文件通過(guò)仿真器從flash的第200blocks開(kāi)始往后燒寫(xiě);

      s4.若控制芯片的應(yīng)用程序無(wú)法正常啟動(dòng),則控制芯片自動(dòng)重啟,此時(shí)控制芯片的一級(jí)bootload程序自動(dòng)加載并從flash中完成二級(jí)bootload程序的加載;

      s5.二級(jí)bootload程序控制控制芯片檢測(cè)i/o引腳電平信號(hào),并在i/o引腳電平信號(hào)發(fā)生變化時(shí)(比如按鍵按下,使得i/o引腳電平信號(hào)發(fā)生變化)從flash中的30blocks開(kāi)始加載工廠程序,并完成工廠程序的c入口跳轉(zhuǎn)并運(yùn)行;

      s6.工廠程序讀取嵌入式設(shè)備通信接口數(shù)據(jù)(比如通過(guò)外部通過(guò)連接以太網(wǎng)口的網(wǎng)絡(luò)傳輸應(yīng)用程序數(shù)據(jù),或者從sd卡通信接口傳輸數(shù)據(jù)),完成應(yīng)用程序的讀取,并從flash中的第200blocks開(kāi)始燒錄;

      s7.控制芯片再次重啟,此時(shí)控制芯片的一級(jí)bootload程序自動(dòng)加載并從flash中完成二級(jí)bootload程序的加載,二級(jí)bootload程序控制控制芯片檢測(cè)i/o引腳電平信號(hào),并在i/o引腳電平信號(hào)未發(fā)生變化時(shí)從flash中的200blocks開(kāi)始加載步驟s6存儲(chǔ)的應(yīng)用程序,完成應(yīng)用程序的c入口跳轉(zhuǎn)并運(yùn)行,完成嵌入式設(shè)備控制芯片程序的自恢復(fù)。



      技術(shù)特征:

      技術(shù)總結(jié)
      本發(fā)明公開(kāi)了一種嵌入式設(shè)備應(yīng)用程序的自恢復(fù)方法,包括開(kāi)發(fā)控制芯片的二級(jí)bootload程序和工廠程序,得到編譯文件,并燒錄到Flash中;若控制芯片的應(yīng)用程序無(wú)法正常啟動(dòng),則控制芯片重啟,一級(jí)bootload程序自動(dòng)加載并加載二級(jí)bootload程序;檢測(cè)I/O引腳電平信號(hào)變化,從Flash中加載工廠程序;工廠程序讀取嵌入式設(shè)備通信接口數(shù)據(jù),完成應(yīng)用程序的讀取并存儲(chǔ)到Flash中;控制芯片再次重啟,一級(jí)bootload程序自動(dòng)加載并加載二級(jí)bootload程序,從Flash中加載存儲(chǔ)的應(yīng)用程序,完成控制芯片程序的自恢復(fù)。本發(fā)明使得控制芯片應(yīng)用程序的自行恢復(fù)功能更加可靠、穩(wěn)定、速度快。

      技術(shù)研發(fā)人員:田豐
      受保護(hù)的技術(shù)使用者:湖南威勝信息技術(shù)有限公司
      技術(shù)研發(fā)日:2017.04.14
      技術(shù)公布日:2017.08.04
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1