《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于模擬BIOS的可穿戴設備固件在線升級實現
基于模擬BIOS的可穿戴設備固件在線升級實現
2017年電子技術應用第3期
何國鋒,李月婷,劉宇紅
貴州大學 大數據與信息工程學院,貴州 貴陽550025
摘要: 可穿戴設備需要不斷地進行系統升級以達到良好的用戶體驗度,產品升級方法和安全性是最為直觀的用戶體驗。針對以MSP430芯片為核心的可穿戴設備,通過研究芯片內部的程序啟動方式,借鑒了計算機中BIOS啟動加載系統的方法,將Flash劃分成不同空間,一塊內固化了BIOS程序,模擬計算機BIOS,另外兩塊空間模擬了C盤和光驅,實現了一種在線升級方案。
中圖分類號: TN609;TP368.1
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2017.03.015
中文引用格式: 何國鋒,李月婷,劉宇紅. 基于模擬BIOS的可穿戴設備固件在線升級實現[J].電子技術應用,2017,43(3):63-65,69.
英文引用格式: He Guofeng,Li Yueting,Liu Yuhong. Firmware online upgrade implementation for wearable devices based on simulating BIOS[J].Application of Electronic Technique,2017,43(3):63-65,69.
Firmware online upgrade implementation for wearable devices based on simulating BIOS
He Guofeng,Li Yueting,Liu Yuhong
College of Big Data and Information Engineering,Guizhou University,Guiyang 550025,China
Abstract: Wearable devices need to upgrade its system constantly in order to achieve a good user experience,and in this process,product update method and security make the most intuitive. Focusing on the wearable devices based on MSP430 MCU,though studying how the program start inside the chip and then referencing the step of how BIOS load system on computer,this paper diveded the Flash into different spaces,one for BIOS,and the other two were simulated to C drive and CD-ROM.At last,it released a scheme for online update.
Key words : wearable device;online upgrade;BIOS;embedded;Flash

0 引言

    據統計,2013年全球可穿戴設備出貨量在700萬件以上[1],2014年則達到了2 890萬件,國內市場規模更是達到了22億人民幣,年增長率在144%[2], 2015年全球可穿戴設備出貨量已達到7 610萬件,與2014年相比增長了163.6%,預計2016年年底,可穿戴設備的出貨量將達到1.1億。如此龐大數量的產品想要長期保持市場的占有量與使用性能,就要對產品進行周期性的優化與升級,使產品在使用過程中修正BUG,優化、增加新的功能。對產品進行固件升級有多種方式,如JTAG、BSL等,這些方式只適用于產品未出廠時使用,對于已經售出的產品,就需要通過互聯網、無線傳輸等方法,隨時控制更新產品中的固件,以發揮可穿戴設備的性能。這些對于固件的更新,將對用戶的體驗度產生很大的影響。本文以基于MSP430F1611為處理器的可穿戴設備為例,通過模擬BIOS程序,對Flash分塊操作來實現設備的固件升級。

1 在線升級總體架構

    可穿戴設備進行固件在線升級時,首先要接收服務器推送的最新固件包。圖1為升級包從服務器到達設備中的過程圖,對于能夠連接互聯網的設備,可以直接內嵌一個到服務器的接口,直接下載升級包,如圖中虛線所示;對于許多體積小無法連接網絡的設備,如常見的智能手環,可以如圖中實線所示,通過手機從網絡中接收升級包,然后通過藍牙等無線方式下載到設備中。

qrs5-t1.gif

2 固件升級原理

2.1 系統從Flash啟動過程

    MSP430F1611單片機[3]是德州儀器公司推出的一款具有10 KB片內RAM和48 KB+256 B片內Flash的16 bit超低功耗處理器,擁有豐富的外設資源,常被用在智能可穿戴設備中,以達到低功耗的目的。

    從MSP430F1611數據手冊上可以查找到內部資源空間地址表。其中0x4000~0xFFFF為Flash地址空間,共48 KB,這其中從0xFFE0~0xFFFF為中斷向量地址,其他空間都可以由用戶進行操作。當向芯片中燒寫程序時,程序代碼被寫入到Flash中,寫入的起始位置即程序的入口地址。系統上電后,PC指針指到中斷向量表的復位向量,從中讀取程序起始地址入口,然后跳轉到這個入口處執行程序。這個地址在代碼編譯過程中會自動生成,用戶可以修改,指定將固件燒寫到Flash中其他地址。

2.2 自動更新原理

    圖2為計算機中BIOS程序引導操作系統過程的簡化框圖。在計算機上電時,會啟用固化在主板空間內的一段BIOS引導程序進入POST階段,該階段主要工作為初始化和檢測相關的硬件資源。然后進入操作系統引導階段,首先根據BIOS設置來檢測光驅或U盤中有無引導系統,如果有則將引導系統加入到內存0000:7C00H中,執行引導系統;如果沒有,則搜索硬盤第一個扇區,將內容加載到內存0000:7C00H中,運行系統。

qrs5-t2.gif

    基于這種思想,本文模擬設計了一段BIOS引導程序,將Flash劃分區域,一塊相當于光驅,起始地址記為A,一塊相當于C盤,起始地址記為C。在系統上電時,檢測Flash上A地址后有無新版固件,如果有,則將該固件復制到Flash上地址C后的空間,完成從光驅安裝系統到C盤。復制完成后刪除A空間內容,相當于光驅彈出的動作,重啟系統;如果檢測到起始地址為A的空間內無文件存在,則通過匯編指令,將PC指針指到C地址,系統將從C盤啟動??傮w架構流程圖如圖3所示,其中用虛線圍起來的部分不屬于BIOS引導程序中的內容,而是操作系統,即用戶程序。這樣,單片機中相當于有2個程序:1個BIOS程序,1個用戶程序。在開機時進入BIOS,由BIOS決定是否將程序入口指針切換到用戶程序。切換到用戶程序需使用匯編指令將PC指針移到用戶程序的復位向量地址0xFFDE中指向的地址[4],即C盤起始地址:

    asm(“mov &0xFFDE”);

qrs5-t3.gif

    因為在Flash中重新為用戶程序分配了中斷向量表,需要使用匯編指令對15個中斷向量表進行映射[6]。如對第一個中斷向量映射的代碼如下:

    #pragma vector=0

    __interrupt void intec_0(void)

    {

        asm(“br &0xFFC0”);

    }

2.3 BIOS引導程序固化

    BIOS引導程序編寫完成后,需要修改工程中的xcl文件,將BIOS引導程序固化到指定位置,芯片的主Flash地址范圍為0x4000~0xFFFF,其中0xFFE0~0xFFF為中斷向量表,其余的為用戶空間。將用戶空間分成4部分,如圖4所示,整個灰色部分為原來的用戶空間。其中0x4000~0x5FFF為BIOS程序空間;0x6000~0xAFFF為用戶程序空間,類似電腦上的C盤; 0xB000~0xFFBF為存儲空間,類似電腦上的光驅,用來存儲接收到的新固件;0xFFC0~0xFFDF為用戶中斷向量表。修改xcl文件[4,5],將BIOS程序代碼段、常量的地址范圍改為0x6000~0xAFFF后編譯工程,將生成的BIOS文件通過下載器燒寫到單片機中,完成BIOS引導程序的固化。

qrs5-t4.gif

2.4 用戶程序實現

    用戶程序的實現需要通過藍牙連接手機或電腦App,當有新版本的固件包時,App會將固件包通過藍牙下發到設備中。用戶程序在接收固件包的同時,將固件包保存在0xB000~0xFFBF范圍內的Flash空間中,本設計因為用戶程序代碼量少,將程序保存在0xB000地址后,如果用戶程序過大,可以考慮通過擴展片外Flash解決。用戶程序流程圖如圖5所示。

qrs5-t5.gif

    用戶程序需要放在0x6000~0xAFFF范圍內,因此同樣需要修改工程文件中的xcl文件,修改代碼段、常量的地址范圍為0x6000~0xAFFF。另外因為原中斷向量地址被BIOS程序所占據,需要修改xcl文件中的中斷向量地址為0xFFC0~0xFFDF,重啟向量地址為0xFFDE。要將應用程序作為固件更新包推送到設備終端,因此要選擇生成txt格式的16進制Hex文件。圖6所示是一簡單的文件生成的txt文件內容,傳輸過程中可以考慮加密及錯誤驗證。

qrs5-t6.gif

    圖6中@6000代表程序的起始地址為6000,這段代碼會被放在以0x6000為起始地址的Flash內;@FFDE表示程序的復位向量地址為0xFFDE,其中保存子程序入口地址,即0x6000;q表示程序結束。

3 藍牙通信

3.1 藍牙技術簡介

    為了實現無線接收,本文在設備上使用了藍牙技術來進行數據傳送。藍牙技術[6]最初是在1994年時由電信巨頭愛立信公司推出,用來替代RS232標準的一種短距離(10 m~100 m)無線通信技術。藍牙通信工作在2.4 GHz ISM頻段上,可以連接多個設備,方便數據共享傳輸。藍牙通信無需取得執照許可,因此被廣泛用于工業、醫療、手機、平板等電子設備中。

3.2 藍牙模塊

    設計中采用了BLK-MD-HC-05藍牙模塊,該模塊采用了英國CSR公司的BlueCore4-Ext芯片,遵循V2.0+EDR藍牙規范[7],支持UART、USB、SPI、PCM、SPDIF等豐富的接口,支持AT指令集,簡化了操作。圖7為藍牙模塊架構與MCU之間通過UART口連接圖。

qrs5-t7.gif

3.3 AT指令配置藍牙模塊

    在使用藍牙模塊前需要通過串口通信對藍牙模塊初始化,BLK-MD-HC-05支持AT指令,藍牙模塊默認的波特率為9 600,因此串口需要調整到9 600后方能與藍牙模塊進行數據交互。表1為藍牙模塊初始化需要用到的AT指令。

qrs5-b1.gif

4 結語

    本文通過模擬BIOS來實現固件更新,經過不同大小的固件包反復推送測試,可以順利地完成在線升級。升級過程安全可靠,具有較好的可行性,在應用中,將推送的升級包進行加密和解密過程,會更加完善。同時,本文將Flash進行分割,其中一部分作為BIOS和光驅空間,雖然犧牲了Flash空間,但通常情況下Flash空間都會有剩余,不會造成對可靠性的影響。

參考文獻

[1] 耿怡,安暉,李揚,等.可穿戴設備發展現狀和前景探析[J].電子科學與技術,2014(2):238-245.

[2] 鄧俊杰,劉紅.可穿戴智能設備的現狀及未來發展趨勢展望[J].黑龍江科技信息,2015(28):135.

[3] Texas Instruments.MSP430x1xx family user's guide[EB/OL].[2006-02-28].http://www.ti.com.cn/cn/lit/ug/slau049f/slau049f.pdf.

[4] 喬海坤.微控論壇特約,DC,微控論壇版主.MSP430程序自升級的實現原理及過程[EB/OL][2008-12-08].http:www.microcontrol.cn.

[5] 張園,萬眾.MSP430單片機串口的程序升級方法[J].單片機與嵌入式系統應用,2011(10):23-24.

[6] 張群,楊絮.藍牙模塊串口通信的設計與實現[J].實驗室研究與探索,2012,319(3):79-82.

[7] 練杰,聶俊飛.基于MSP430單片機的多功能藍牙溫度檢測系統[J].儀表技術,2015(8):36-38. 



作者信息:

何國鋒,李月婷,劉宇紅

(貴州大學 大數據與信息工程學院,貴州 貴陽550025)

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          韩曰欧美视频免费观看| 亚洲精品国偷自产在线99热| 欧美一区二区精品| 欧美a级一区二区| 亚洲丰满少妇videoshd| 99国产精品久久| 亚洲欧洲三级| 国产三级欧美三级| 在线看视频不卡| 日韩亚洲国产欧美| 国产永久精品大片wwwapp| 蜜臀av在线播放一区二区三区| 久久综合九色综合久99| 亚洲一区二区三区国产| 欧美激情一区二区三区在线视频观看| 亚洲欧洲综合另类在线| 亚洲欧美国产制服动漫| 国产在线欧美日韩| 国一区二区在线观看| 亚洲欧美激情四射在线日| 在线成人av.com| 99re66热这里只有精品3直播| 久久久久国产精品一区二区| 亚洲精品一区中文| 午夜精品免费视频| 欧美国产日韩一区二区在线观看| 亚洲国产欧美久久| 亚洲综合日韩中文字幕v在线| 亚洲久久成人| 亚洲欧洲视频在线| 欧美制服第一页| 欧美亚洲日本一区| 亚洲性视频网址| 日韩写真在线| 亚洲黄网站在线观看| 一区二区三区在线免费视频| 久久综合亚洲社区| 久久久国产精品一区| 亚洲一区免费网站| 亚洲精品免费观看| 欧美xart系列在线观看| 国产精品久久久久久久久婷婷| 国产区精品视频| 亚洲一区三区电影在线观看| 欧美中日韩免费视频| 国产精品久久国产精麻豆99网站| 在线观看日韩www视频免费| 在线观看免费视频综合| 亚洲综合国产| 亚洲精品自在在线观看| 欧美日韩精品一区二区在线播放| 在线观看成人一级片| 91久久国产综合久久蜜月精品| 日韩视频一区二区三区在线播放免费观看| 久久久久久久网| 久久九九有精品国产23| 国产在线视频欧美一区二区三区| 国产日韩欧美视频| 久久国产精品免费一区| 亚洲图片欧洲图片av| 国产综合色在线视频区| 亚洲在线第一页| 99热免费精品| 欧美a级在线| 亚洲国产中文字幕在线观看| 欧美精品在线一区二区| 国产色产综合色产在线视频| 亚洲人成人一区二区在线观看| 国产欧美亚洲日本| 欧美日本一区二区高清播放视频| 玉米视频成人免费看| 国内欧美视频一区二区| 国产农村妇女毛片精品久久麻豆| 国产精品色午夜在线观看| 久久久水蜜桃av免费网站| 国产亚洲精品成人av久久ww| 国产亚洲a∨片在线观看| 欧美体内she精视频| 伊人色综合久久天天五月婷| 国产亚洲欧洲997久久综合| 久久久精品2019中文字幕神马| 亚洲午夜精品一区二区三区他趣| 可以免费看不卡的av网站| 久久中文精品| 亚洲欧美激情精品一区二区| 欧美视频福利| 国产精品免费电影| 久久精品视频免费| 欧美三区在线观看| 久久精品视频免费观看| 亚洲视频一区二区在线观看| 亚洲国产91色在线| 娇妻被交换粗又大又硬视频欧美| 欧美日韩第一区日日骚| 欧美精品18| 精品动漫3d一区二区三区免费| 在线精品高清中文字幕| 免费欧美日韩| 日韩午夜精品视频| 欧美高清视频www夜色资源网| 国产女主播一区二区三区| 亚洲女与黑人做爰| 国产精品国产三级国产a| 久久国产精品99久久久久久老狼| 欧美丝袜一区二区| 狠狠色伊人亚洲综合网站色| 香蕉久久久久久久av网站| 久久久亚洲国产天美传媒修理工| 亚洲国产成人午夜在线一区| 国产精品视频午夜| 欧美视频精品在线观看| 国产女主播在线一区二区| 亚洲无亚洲人成网站77777| 欧美天堂亚洲电影院在线播放| 国产精品久久99| 最新中文字幕一区二区三区| 巨胸喷奶水www久久久免费动漫| 久久久久久久成人| 国产婷婷成人久久av免费高清| 一区国产精品| 国产精品视频大全| 国产视频在线观看一区二区三区| 欧美午夜片欧美片在线观看| 久久综合色一综合色88| 欧美天堂亚洲电影院在线播放| 久久xxxx| 久久免费一区| 欧美综合国产精品久久丁香| 国产精品久久久久久超碰| 在线观看亚洲视频啊啊啊啊| 欧美亚洲综合另类| 国产精品一区二区三区久久| 欧美屁股在线| 国产精品国产自产拍高清av王其| 久久亚洲精品伦理| 亚洲一二三区在线观看| 久久阴道视频| 91久久精品国产91久久性色tv| 在线观看亚洲视频| 国产精品腿扒开做爽爽爽挤奶网站| 欧美福利在线| 嫩模写真一区二区三区三州| 蜜臀va亚洲va欧美va天堂| 亚洲在线国产日韩欧美| 一区二区三区免费看| 亚洲欧美日韩国产综合| 久久gogo国模啪啪人体图| 西西人体一区二区| 欧美日韩二区三区| 一本色道**综合亚洲精品蜜桃冫| 欧美激情第10页| 亚洲图片激情小说| 精品成人在线观看| 亚洲国产精品一区二区三区| 亚欧美中日韩视频| 狠狠色狠狠色综合日日tαg| 国产伦精品一区二区三区免费迷| 久久精品最新地址| 亚洲图片在线观看| 国产精品一级| 欧美日韩专区在线| 亚洲一二三区视频在线观看| 亚洲七七久久综合桃花剧情介绍| 久久精品日产第一区二区三区| 欧美影院精品一区| 在线看国产日韩| 一区二区视频免费完整版观看| 久久精品国产亚洲一区二区三区| 欧美成人午夜77777| 亚洲天堂成人在线视频| 国产精品v亚洲精品v日韩精品| 韩国在线一区| 久久精品一区蜜桃臀影院| 能在线观看的日韩av| 欧美精品久久久久久| 国产日韩欧美黄色| 免费在线看一区| 欧美成人一区二区三区片免费| 99视频超级精品| 在线播放日韩| 久久天天躁狠狠躁夜夜爽蜜月| 国产亚洲va综合人人澡精品| 亚洲欧美久久久久一区二区三区| 国产综合婷婷| 欧美高清视频一区| 一区二区三区在线观看视频| 国内欧美视频一区二区| 亚洲精品久久久久久下一站| 亚洲在线不卡| 中文精品99久久国产香蕉| 韩国欧美国产1区| 国产精品卡一卡二卡三| 欧美一区二区三区男人的天堂| 狠狠色丁香婷婷综合| 亚洲国产福利在线| 久久久久国产精品www| 久久精品中文字幕免费mv| 欧美一区二区三区的| 欧美午夜片在线观看| 国产欧美va欧美不卡在线| 久久精品国产999大香线蕉| 免费久久99精品国产| 欧美三级电影大全| 亚洲天堂网在线观看| 国产在线不卡| 久久精品在线| 欧美日韩在线综合| 国产精品一区一区三区| 欧美日韩国产三区| 在线观看福利一区| 亚洲欧洲中文日韩久久av乱码| 国产麻豆精品theporn| 亚洲老司机av| 欧美日韩亚洲一区二区三区在线| 久久综合狠狠综合久久综合88| 欧美日韩无遮挡| 亚洲天堂av高清| 小黄鸭精品密入口导航| 欧美日韩亚洲天堂| 欧美精品一区二区在线观看| 国产精品综合网站| 亚洲精品视频一区| 美日韩精品视频免费看| 国产精品久在线观看| 一区二区三区产品免费精品久久75| 久久影视三级福利片| 欧美在线观看视频一区二区三区| 欧美午夜激情在线| 欧美理论电影网| 一色屋精品视频在线看| 激情久久婷婷| 国产欧美一区二区三区在线老狼| 一本久久a久久免费精品不卡| 免费成人高清在线视频| 国产午夜亚洲精品不卡| 国产原创一区二区| 久久夜色精品一区| 精品动漫3d一区二区三区免费版| 欧美激情一区在线| 99国产精品久久久久老师| 欧美一级欧美一级在线播放| 国产综合第一页| 一本色道久久综合精品竹菊| 欧美激情视频在线免费观看 欧美视频免费一| 国产精品久久久一区麻豆最新章节| 欧美在线电影| 国产精品视频xxxx| 麻豆精品一区二区av白丝在线| 狠狠色综合色综合网络| 亚洲一区二区三区成人在线视频精品| 亚洲自拍偷拍麻豆| 极品尤物av久久免费看| 在线观看的日韩av| 亚洲欧美国产一区二区三区| 久久这里只有精品视频首页| 中国日韩欧美久久久久久久久| 亚洲一区日本| 亚洲黄色免费电影| 欧美日本乱大交xxxxx| 久久精品国产一区二区电影| 亚洲国产成人一区| 欧美一区二区三区在线看| 亚洲国产精品ⅴa在线观看| 久久精品中文字幕免费mv| 欧美成人一品| 中文欧美字幕免费| 一区二区三区在线免费播放| 欧美大片在线影院| 欧美一级电影久久| 久久久夜精品| 国产精品久久久久7777婷婷| 伊人狠狠色丁香综合尤物| 在线一区免费观看| 欧美成人高清视频| 亚洲一区日本| 亚洲级视频在线观看免费1级| 亚洲精品日本| 在线观看成人av电影| 亚洲激情国产精品| 久久人人超碰| 亚洲在线观看视频网站| 亚洲精选在线观看| 欧美高清视频www夜色资源网| 久久国产夜色精品鲁鲁99| 国产亚洲成人一区| 性欧美大战久久久久久久免费观看| 国产在线精品一区二区夜色| 午夜视频一区| 亚洲欧美色一区| 一区二区三区四区国产| 亚洲欧美日韩一区二区| 欧美日韩精品免费观看视频完整| 国内久久精品| 亚洲天堂av综合网| 欧美成人免费播放| 欧美激情按摩在线| 久久久久国色av免费看影院| 亚洲二区视频在线| 国产精品毛片| 国产视频综合在线| 亚洲精品国偷自产在线99热| 久久国产精品99久久久久久老狼| 99在线精品免费视频九九视| 亚洲视频导航| 久久久久久国产精品mv| 久久精品最新地址| 午夜精品一区二区在线观看| 夜夜爽www精品| 久久精品人人做人人综合| 亚洲福利av| 亚洲国产精品成人综合色在线婷婷| 销魂美女一区二区三区视频在线| 久久久久国产精品一区三寸| 亚洲视频图片小说| 国产一区99| 久久精品国产99| 亚洲精品乱码久久久久久日本蜜臀| 国产精品久久久久999| 欧美精品 国产精品| 欧美亚洲一区二区三区| 欧美日韩成人激情| 欧美α欧美αv大片| 国产日韩欧美一区二区三区在线观看| 国产精品久久久久久久久果冻传媒| 在线亚洲激情| 亚洲国产视频直播| 亚洲高清三级视频| 亚洲成人中文|