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

      一種基于MCU升級(jí)switch固件的方法、裝置、設(shè)備及介質(zhì)與流程

      文檔序號(hào):40398069發(fā)布日期:2024-12-20 12:21閱讀:6來(lái)源:國(guó)知局
      一種基于MCU升級(jí)switch固件的方法、裝置、設(shè)備及介質(zhì)與流程

      本技術(shù)涉及升級(jí)switch固件的,特別是涉及一種基于mcu升級(jí)switch固件的方法、裝置、設(shè)備及介質(zhì)。


      背景技術(shù):

      1、近年來(lái),隨著汽車行業(yè)的迅速發(fā)展,車輛系統(tǒng)的switch中的固件需要頻繁進(jìn)行升級(jí),以適應(yīng)用戶需求。但是目前固件升級(jí)的方法都是借助自身以外的物理設(shè)備以及匹配的上位機(jī),將固件刷進(jìn)switch的flash里面。也就是說(shuō),對(duì)于出售的車輛需要召回或者需要到指定地點(diǎn)才能進(jìn)行升級(jí),從而導(dǎo)致增加后期升級(jí)固件的成本,也影響了固件的升級(jí)效率。


      技術(shù)實(shí)現(xiàn)思路

      1、本技術(shù)提供了一種基于mcu升級(jí)switch固件的方法、裝置、設(shè)備及介質(zhì),通過(guò)串行外設(shè)接口spi通信協(xié)議直接訪問(wèn)switch,并將switch固件對(duì)應(yīng)的數(shù)據(jù)包寫(xiě)入switch的flash中完成固件的升級(jí),從而減少后期升級(jí)固件的成本,并且提高升級(jí)效率。

      2、第一方面,本技術(shù)提供了一種基于mcu升級(jí)switch固件的方法,該方法包括:

      3、獲取switch固件對(duì)應(yīng)的數(shù)據(jù)包,所述數(shù)據(jù)包為升級(jí)switch固件所需的最新版本數(shù)據(jù)包;

      4、通過(guò)串行外設(shè)接口spi通信協(xié)議訪問(wèn)switch,并獲得switch的信息,所述信息包括版本信息和硬件信息;

      5、若switch的版本信息與數(shù)據(jù)包的版本信息不一致,則對(duì)switch的硬件信息與數(shù)據(jù)包進(jìn)行匹配校驗(yàn);

      6、若匹配校驗(yàn)通過(guò),則將數(shù)據(jù)包寫(xiě)入switch的flash中,并將switch進(jìn)行復(fù)位。

      7、可選地,將數(shù)據(jù)包寫(xiě)入switch的flash中,包括:

      8、從switch的flash中的a區(qū)和b區(qū)中選擇出升級(jí)分區(qū);

      9、若選擇a區(qū)作為升級(jí)分區(qū),則擦除a區(qū)的數(shù)據(jù),并將數(shù)據(jù)包寫(xiě)入a區(qū)中;

      10、若選擇b區(qū)作為升級(jí)分區(qū),則擦除b區(qū)的數(shù)據(jù),并將數(shù)據(jù)包寫(xiě)入b區(qū)中。

      11、可選地,從switch的flash中的a區(qū)和b區(qū)中選擇出升級(jí)分區(qū),包括:

      12、分別讀取a區(qū)和b區(qū)中header區(qū)的數(shù)據(jù),作為a區(qū)數(shù)據(jù)和b區(qū)數(shù)據(jù);

      13、將a區(qū)數(shù)據(jù)和b區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)進(jìn)行對(duì)比;

      14、若a區(qū)數(shù)據(jù)和b區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)均一致,則選擇b區(qū)作為升級(jí)分區(qū);

      15、若a區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)一致,且b區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)不一致,則選擇b區(qū)作為升級(jí)分區(qū);

      16、若a區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)不一致,且b區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)一致,則選擇a區(qū)作為升級(jí)分區(qū);

      17、若a區(qū)數(shù)據(jù)和b區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)均不一致,則選擇b區(qū)作為升級(jí)分區(qū)。

      18、可選地,對(duì)switch的硬件信息與數(shù)據(jù)包進(jìn)行匹配校驗(yàn)之前,還包括:

      19、設(shè)置flash的配置信息;

      20、對(duì)flash中的cal區(qū)進(jìn)行校驗(yàn);

      21、若校驗(yàn)通過(guò),則繼續(xù)執(zhí)行升級(jí)流程;

      22、若校驗(yàn)未通過(guò),則結(jié)束升級(jí)流程。

      23、可選地,對(duì)flash中的cal區(qū)進(jìn)行校驗(yàn),包括:

      24、向flash中的cal區(qū)中寫(xiě)入校驗(yàn)碼;

      25、回讀cal區(qū)中的校驗(yàn)碼;

      26、若寫(xiě)入的校驗(yàn)碼與回讀的校驗(yàn)碼一致,則表示校驗(yàn)通過(guò);

      27、若寫(xiě)入的校驗(yàn)碼與回讀的校驗(yàn)碼不一致,則表示校驗(yàn)未通過(guò)。

      28、可選地,獲取switch固件對(duì)應(yīng)的數(shù)據(jù)包,包括:

      29、通過(guò)隊(duì)列串行外設(shè)接口qspi通信協(xié)議訪問(wèn)mcu中nor?flash,并讀取nor?flash中的switch固件對(duì)應(yīng)的數(shù)據(jù)包。

      30、可選地,switch處于復(fù)位后,還包括:

      31、判斷當(dāng)前是否處于ota過(guò)程;

      32、若處于ota過(guò)程,則根據(jù)sts狀態(tài)判斷mcu重啟完成或進(jìn)入回滾;

      33、若sts狀態(tài)指示mcu重啟完成,則比較mcu中switch固件的版本信息與switch固件的版本信息;

      34、若mcu中switch固件的版本信息與switch固件的版本信息一致,則指示mcu和switch均升級(jí)成功;

      35、若mcu中switch固件的版本信息與switch固件的版本信息不一致,則指示switch升級(jí)失敗,需進(jìn)入回滾;

      36、若sts狀態(tài)指示進(jìn)入回滾,則比較mcu中switch固件的版本信息與switch的固件版本信息;

      37、若mcu中switch固件的版本信息與switch固件的版本信息一致,則指示mcu和switch均升級(jí)失?。?/p>

      38、若mcu中switch固件的版本信息與switch固件的版本信息不一致,則指示switch升級(jí)成功且mcu升級(jí)失敗,并根據(jù)mcu中switch固件的版本信息將switch固件進(jìn)行升級(jí)。

      39、第二方面,本技術(shù)提供了一種基于mcu升級(jí)switch固件的裝置,該裝置包括:

      40、獲取單元,用于獲取switch固件對(duì)應(yīng)的數(shù)據(jù)包,所述數(shù)據(jù)包為升級(jí)switch固件所需的最新版本數(shù)據(jù)包;

      41、訪問(wèn)單元,用于通過(guò)串行外設(shè)接口訪問(wèn)switch,并獲得switch的信息,所述信息包括版本信息和硬件信息;

      42、校驗(yàn)單元,用于若switch的版本信息與數(shù)據(jù)包的版本信息不一致,則對(duì)switch的硬件信息與數(shù)據(jù)包進(jìn)行匹配校驗(yàn);

      43、寫(xiě)入單元,用于若匹配校驗(yàn)通過(guò),則將數(shù)據(jù)包寫(xiě)入switch的flash中,并將switch進(jìn)行復(fù)位。

      44、可選地,寫(xiě)入單元包括:

      45、選擇子單元,用于從switch的flash中的a區(qū)和b區(qū)中選擇出升級(jí)分區(qū);

      46、處理子單元,用于若選擇a區(qū)作為升級(jí)分區(qū),則擦除a區(qū)的數(shù)據(jù),并將數(shù)據(jù)包寫(xiě)入a區(qū)中;

      47、處理子單元,用于若選擇b區(qū)作為升級(jí)分區(qū),則擦除b區(qū)的數(shù)據(jù),并將數(shù)據(jù)包寫(xiě)入b區(qū)中。

      48、可選地,選擇子單元具體用于:

      49、分別讀取a區(qū)和b區(qū)中header區(qū)的數(shù)據(jù),作為a區(qū)數(shù)據(jù)和b區(qū)數(shù)據(jù);

      50、將a區(qū)數(shù)據(jù)和b區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)進(jìn)行對(duì)比;

      51、若a區(qū)數(shù)據(jù)和b區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)均一致,則選擇b區(qū)作為升級(jí)分區(qū);

      52、若a區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)一致,且b區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)不一致,則選擇b區(qū)作為升級(jí)分區(qū);

      53、若a區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)不一致,且b區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)一致,則選擇a區(qū)作為升級(jí)分區(qū);

      54、若a區(qū)數(shù)據(jù)和b區(qū)數(shù)據(jù)與標(biāo)準(zhǔn)校驗(yàn)數(shù)據(jù)均不一致,則選擇b區(qū)作為升級(jí)分區(qū)。

      55、可選地,該裝置還包括:

      56、設(shè)置單元,用于設(shè)置flash的配置信息;

      57、校驗(yàn)單元,用于對(duì)flash中的cal區(qū)進(jìn)行校驗(yàn);若校驗(yàn)通過(guò),則繼續(xù)執(zhí)行升級(jí)流程;若校驗(yàn)未通過(guò),則結(jié)束升級(jí)流程。

      58、可選地,校驗(yàn)單元具體用于:

      59、向flash中的cal區(qū)中寫(xiě)入校驗(yàn)碼;

      60、回讀cal區(qū)中的校驗(yàn)碼;

      61、若寫(xiě)入的校驗(yàn)碼與回讀的校驗(yàn)碼一致,則表示校驗(yàn)通過(guò);

      62、若寫(xiě)入的校驗(yàn)碼與回讀的校驗(yàn)碼不一致,則表示校驗(yàn)未通過(guò)。

      63、可選地,獲取單元具體用于:

      64、通過(guò)隊(duì)列串行外設(shè)接口qspi通信協(xié)議訪問(wèn)mcu中nor?flash,并讀取nor?flash中的switch固件對(duì)應(yīng)的數(shù)據(jù)包。

      65、可選地,該裝置還包括回滾單元,具體用于:

      66、判斷當(dāng)前是否處于ota過(guò)程;

      67、若處于ota過(guò)程,則根據(jù)sts狀態(tài)判斷mcu重啟完成或進(jìn)入回滾;

      68、若sts狀態(tài)指示mcu重啟完成,則比較mcu中switch固件的版本信息與switch固件的版本信息;

      69、若mcu中switch固件的版本信息與switch固件的版本信息一致,則指示mcu和switch均升級(jí)成功;

      70、若mcu中switch固件的版本信息與switch固件的版本信息不一致,則指示switch升級(jí)失敗,需進(jìn)入回滾;

      71、若sts狀態(tài)指示進(jìn)入回滾,則比較mcu中switch固件的版本信息與switch的固件版本信息;

      72、若mcu中switch固件的版本信息與switch固件的版本信息一致,則指示mcu和switch均升級(jí)失??;

      73、若mcu中switch固件的版本信息與switch固件的版本信息不一致,則指示switch升級(jí)成功且mcu升級(jí)失敗,并根據(jù)mcu中switch固件的版本信息將switch固件進(jìn)行升級(jí)。

      74、第三方面,本技術(shù)提供一種電子設(shè)備,設(shè)備包括存儲(chǔ)器和處理器:

      75、存儲(chǔ)器用于存儲(chǔ)計(jì)算機(jī)程序;

      76、處理器用于根據(jù)計(jì)算機(jī)程序執(zhí)行上述第一方面提供的方法。

      77、第四方面,本技術(shù)提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)用于存儲(chǔ)計(jì)算機(jī)程序,所述計(jì)算機(jī)程序用于執(zhí)行上述第一方面提供的方法。

      78、由此可見(jiàn),本技術(shù)具有如下有益效果:

      79、本技術(shù)提供了一種基于mcu升級(jí)switch固件的方法,mcu首先獲取switch固件對(duì)應(yīng)的數(shù)據(jù)包之后,通過(guò)串行外設(shè)接口spi通信協(xié)議訪問(wèn)switch,并獲得switch的信息,所述信息包括版本信息和硬件信息;若switch的版本信息與數(shù)據(jù)包的版本信息不一致,則對(duì)switch的硬件信息與數(shù)據(jù)包進(jìn)行匹配校驗(yàn);若匹配校驗(yàn)通過(guò),則將數(shù)據(jù)包寫(xiě)入switch的flash中,并將switch進(jìn)行復(fù)位。在此過(guò)程中,mcu通過(guò)spi通信協(xié)議可以直接訪問(wèn)switch,并且經(jīng)過(guò)數(shù)據(jù)校驗(yàn)通過(guò)以及匹配校驗(yàn)通過(guò)之后,可以直接將數(shù)據(jù)包寫(xiě)入switch中,以實(shí)現(xiàn)switch固件的升級(jí),減少了需要外部硬件設(shè)備的這一條件,減少了升級(jí)switch固件的成本,從而提高升級(jí)的便捷性和效率。

      當(dāng)前第1頁(yè)1 2 
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1