《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 一種嵌入式系統升級的設計和實現
一種嵌入式系統升級的設計和實現
中電網
摘要: 該設計方案以LPC2148為核心,通過SD卡驅動、FAT32文件系統、IAP功能和程序跳轉實現了系統升級的模塊設計,并用于實際開發中。該設計增強了系統維護,縮短了產品的開發周期。節約了大量的人力、財力,增加了與用戶的交流力度。與傳統設計相比。在開發時間、成本和靈活性等方面都占有優勢性。該設計已經調試成功,并作為一個功能模塊用于某電子產品上,在產品需要增加新功能和維護系統穩定方面起到了巨大的作用。要注意的是,該程序設計是在Keil下編譯通過的,生成的HEX文件不能直接放入SD卡中,因為該文件與通過ISP燒寫Flash的文件不一樣,要作一定的修改。另外,該方案不僅能用于系統升級,也能用于為程序補丁和寫入數據等,也可用于ARM9.因此該設計方案具有廣泛的應用前景。
Abstract:
Key words :

1、引言

隨著信息化,智能化,網絡化的發展,嵌入式系統技術也將獲得廣闊的發展空間。嵌入式技術全面展開,目前已成為通信和消費類產品的共同發展方向。在通信領域,數字技術正在全面取代模擬技術。在廣播電視領域,美國已開始由模擬電視向數字電視轉變,歐洲的DVB(數字電視廣播)技術已在全球大多數國家推廣。數字音頻廣播(DAB)也已進入商品化試播階段。而軟件、集成電路和新型元器件在產業發展中的作用日益重要。所有上述產品中,都離不開嵌入式系統技術。象前途無可計量的維納斯計劃生產機頂盒,核心技術就是采用32位以上芯片級的嵌入式技術。在個人領域中,嵌入式產品將主要是個人商用,作為個人移動的數據處理和通訊軟件。本文提出了利用LPC2148SD卡實現嵌入式系統升級的設計方案。

2、總體系統升級方案設計

廠家生產出產品后,用戶購買回去使用,當設備出現了系統漏洞或者用戶不滿足現有功能而提出更多需求時,就要對系統升級或者維護系統功能。廠家只需將SD卡取回,把更新后的程序放入SD卡中,然后發放給用戶,用戶只需把SD卡插入終端設備。即可達到系統升級的目的。圖1給出廠商與用戶之間的交流流程圖。圖2給出整個系統設計流程圖。

 


 

按圖1所示,廠商與用戶交流過程如下:

(1)廠商將一個類似Boot loader的程序通過ISP方式,將其下載到Flash中,如圖2所示的位置。

(2)將升級程序放入SD卡中,隨產品一起出廠。

(3)用戶拿到SD卡后,將其插入SD卡槽,終端設備開始工作。

(4)用戶使用一段時間后,若出現問題或者需要升級、維護時.只需將SD卡返回廠家即可。

(5)廠家將升級后的程序放入返回的SD卡中,再返回給用戶.或者廠家直接再發放SD卡給用戶,而無需用戶返回SD卡。

(6)用戶拿到SD卡后,將其直接插入終端設備卡后,則可達到升級的目的。

出廠前,通過ISP編程方式燒入一個類似于Boot loader的程序。該程序的實現大致分為3個步驟:

(1)SPI模式下的SD卡底層驅動;

(2)讀出SD卡中的系統程序,并放入指定的Flash地址段中:

(3)跳轉到指定的Flash地址段,執行升級后的系統。

在用戶插入SD卡前,程序不斷判斷SD卡是否插入。用戶插入SD卡后,程序首先驅動SD卡,使其能正常工作,然后讀取SD卡中的升級程序,并將其放入指定的Flash地址段中。最后,跳轉到指定段,開始工作。廠家可根據需要,任意安排升級程序放置的位置。

3、系統硬件設計

核心處理器采用PHILIPS公司的LPC2148。它是一個支持實時仿真和嵌入式跟蹤的32位ARM7微控制器。帶有32KB和512 KB嵌入的高速Flash存儲器。128位寬度的存儲器接口和獨特的加速結構,使32位代碼能夠在最大時鐘速率下運行,并帶有SPI總線。選用該處理器主要考慮其內部資源豐富,無需擴展存儲器和SPI總線,且性能優異,抗干擾能力強,價格低廉,具有極高的性價比。

該設計只是產品電路中的一部分。其硬件電路如圖3所示。LPC2148具有同步、全雙工串行接口(SPI),其最大數據位頻率為輸入時鐘頻率的1/8,可以設置為主機或從機工作方式。SD卡是通過SPI總線協議驅動的,數據傳輸中。主機總是向從機發送一個字節數據,而從機也總是向主機發送一個字節數據。圖3中左邊為LPC2148,右邊為SD卡插槽。SCKl為串行時鐘,用于LPC2148與SD卡之間的數據傳輸時鐘信號:MISOl是一個單向信號,用于將數據從SD卡傳輸至LPC2148;MOSll也是一個單向信號。用于將數據從LPC2148傳輸至SD卡;SSEL1為選通信號,用于選中SD卡。圖3中的引腳3和引腳6分別接地,引腳4接電源,引腳8用于檢測SD卡是否插入,并可根據實際要求選定。SD卡與LPC2148之間通過SPI協議和SD文件系統的組織形式.才能協調通訊。
 

4、系統軟件設計

系統軟件部分首先通過SPI協議對SD卡初始化,然后根據SD卡的FAF32文件系統組織形式讀取SD卡中的數據,將讀取數據通過IAP方式將其寫入Flash中,最后用一個跳轉程序跳轉到該段,以達到升級的目的。

4.1 SD卡的初始化

SD卡(Secure Digital Memory Card)中文翻譯為安全數碼卡,是一種基于半導體快閃記憶器的新一代記憶設備,它被廣泛地于便攜式裝置上使用,例如數碼相機、個人數碼助理(PDA)和多媒體播放器等。SD卡由日本松下、東芝及美國SanDisk公司于1999年8月共同開發研制。大小猶如一張郵票的SD記憶卡,重量只有2克,但卻擁有高記憶容量、快速數據傳輸率、極大的移動靈活性以及很好的安全性。

用戶應用程序通常以文件的形式訪問SD卡,并以文件的形式存取數據;文件系統層是通過調用SD卡物理層的有關函數來實現的,所以要想以文件系統的形式訪問SD卡,則必須先驅動SD。SD卡的讀寫操作都是基于命令的,通過向SD卡發送相應的命令并讀取相應的響應控制SD卡。在對SD卡讀寫前,首先要進行初始化操作。這是確保SD卡能在SPI模式下正常讀寫數據的前提。SD卡上電復位后,默認是SD模式。為了使SD卡進入SPI模式,必須將CS置低(至少延遲74個時鐘)并通過SPI總線發送CMDn,使SD卡復位,同時激活,并進行內部初始化處理,使SD卡退出空閑狀態。

SD卡初始化流程圖如圖4所示。


 

SD卡中SPI模塊的讀操作包括讀單塊和讀多塊兩種。該系統僅實現了讀單塊功能。初始化的長度為512字節。函數的實現分為4個步驟:①LPC2148向SD卡發送讀單塊命令(CMD17),SD卡響應(Rl格式);②等待SD卡發送讀起始令牌;③判斷收到的令牌是否為0xFE;④從SD卡中讀取數據。

4.2 SD卡文件系統

SD卡完成底層驅動后,可按照FAT32文件系統格式對SD卡上的數據進行操作,進而在SD卡上實現讀寫文件等操作。FAT32文件系統是微軟FAT類文件系統中的最高版本.是現今Windows下最常用的硬盤文件系統。

當讀取SD卡中的文件時,首先要根據文件名查找該文件的信息結構體。根據文件信息結構體中的起始簇號即可找到數據區第1簇的內容,也可在FAT表中找到第2個簇號。根據第2個簇號又能找到第2簇的內容和FAT表中的第3個簇號,直至遇到文件結束標志。這樣,就可根據FAT表中的簇號讀取到全部文件數據。以圖5為例,說明讀取SD卡文件的具體步驟:

(1)先在目錄項表中找到與文件名匹配的,如“Mvfile”,從“Myfile”所對應的目錄項中可以讀到該文件的首簇號0004:

(2)根據首簇號0004訪問FAT表,讀出首簇號對應的FAT表項內容0005,即第2個簇號。根據第2個簇號再訪問FAT表,讀出其對應的FAT表內容,即第3個簇號0006…等。依次做下去,直到最后一個表項內容為FFFF為止;

(3)由第(2)步可知,“Myfile"這個文件占用了4個簇,這4個簇號形成一個簇鏈000dH一0005H一0006H一0008H,根據這些簇號所形成的簇鏈訪問這4個簇號對應的4個數據存儲區域.文件“Myfile”就分成4個部分分別存放在這4個存儲區域中161。
 

4.3 IAP功能的實現

IAP:In Application Programming 是指在應用編程,即在程序運行中編程,就是片子提供一系列的機制(硬件/軟件上的)當片子在運行程序的時候可以提供一種改變flash數據的方法。通俗點講,也就是說程序自己可以往程序存儲器里寫數據或修改程序。這種方式的典型應用就是用一小段代碼來實現程序的下載,實際上單片機的ISP功能就是通過IAP技術來實現的,即片子在出廠前就已經有一段小的boot程序在里面,片子上電后,開始運行這段程序,當檢測到上位機有下載要求時,便和上位機通信,然后下載數據到存儲區。

LPC2148支持多種方式對Flash進行編程,用來寫入用戶代碼或數據。第一種方式是通過內置的串行JTAG接口進行編程:第二種方式是通過UART0進行在系統編程(ISP);第三種方式是通過在應用編程(IAP)。IAP程序是thumb代碼,地址為0x7FFFFFF0。在使用IAP擦除、編程操作過程中,片內Flash存儲器不可訪問。當用戶運行應用程序時,用戶Flash區域的中斷向量有效.所以在調用Flash擦除、寫IAP之前,用戶應當禁止中斷,確保用戶中斷向量在RAM中有效和中斷處理程序位于RAM中。IAP代碼不使用或禁止中斷??蓪D卡讀出的數據用C代碼燒入指定的Flash段中:

4.4 程序實現跳轉到任意行代碼段執行

現以下例來說明這段程序,如果程序跳轉到絕對地址為0xFFFF0執行,代碼如下:

typedef void(*run)();//定義一個無參數,無返回類型的函數指針類型

run address=(run)0xFFFFO;//定義一個函數指針,指向跳轉的位置

address()://調用函數

在上述應用程序中,根本沒有看到任何一個函數實體,但是卻執行了函數調用;實際上它起到了"軟重肩"的作用,跳轉到CPU啟動后第一條要執行的指令位置,即實現了程序的跳轉。

5、結語

該設計方案以LPC2148為核心,通過SD卡驅動、FAT32文件系統、IAP功能和程序跳轉實現了系統升級的模塊設計,并用于實際開發中。該設計增強了系統維護,縮短了產品的開發周期。節約了大量的人力、財力,增加了與用戶的交流力度。與傳統設計相比。在開發時間、成本和靈活性等方面都占有優勢性。該設計已經調試成功,并作為一個功能模塊用于某電子產品上,在產品需要增加新功能和維護系統穩定方面起到了巨大的作用。要注意的是,該程序設計是在Keil下編譯通過的,生成的HEX文件不能直接放入SD卡中,因為該文件與通過ISP燒寫Flash的文件不一樣,要作一定的修改。另外,該方案不僅能用于系統升級,也能用于為程序補丁和寫入數據等,也可用于ARM9.因此該設計方案具有廣泛的應用前景。

此內容為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爱精品视频| 欧美日韩一区二区免费视频| 久久国产加勒比精品无码| 欧美人成免费网站| 欧美色视频日本高清在线观看| 极品少妇一区二区三区精品视频| 亚洲欧美日韩在线播放| 国产精品一区二区三区免费观看| 欧美专区在线| 欧美日韩免费观看一区三区| 免费欧美高清视频| 伊人久久男人天堂| 亚洲私人黄色宅男| 欧美激情视频一区二区三区在线播放| 亚洲国产欧美一区二区三区同亚洲| 欧美美女bbbb| 夜夜狂射影院欧美极品| 极品尤物久久久av免费看| 国产亚洲欧美日韩精品| 欧美日韩亚洲一区在线观看| 伊人夜夜躁av伊人久久| 欧美不卡福利| 国产一区二区三区久久精品| 欧美久久久久| 亚洲欧美日本精品| 一本色道久久加勒比88综合| 欧美日韩高清在线观看| 亚洲人成在线观看网站高清| 亚洲欧美在线x视频| 欧美日本国产在线| 国产一区二区三区久久精品| 亚洲视频免费看| 欧美福利视频在线观看| 狠狠爱www人成狠狠爱综合网| 久久九九全国免费精品观看| 欧美天天视频| 欧美日韩日本网| 国产日韩欧美不卡在线| 榴莲视频成人在线观看| 午夜日韩在线观看| 亚洲精选久久| 玉米视频成人免费看| 国产综合欧美在线看| 久久综合九色综合欧美狠狠| 一区二区三区毛片| 欧美精品三级日韩久久| 国产欧美一区二区精品秋霞影院| 亚洲国产精品成人一区二区| 欧美日韩在线精品| 国产一区二区三区在线观看精品| 久久琪琪电影院| 亚洲国产精选| 在线电影欧美日韩一区二区私密| 国产美女精品视频| 亚洲高清网站| 久久香蕉国产线看观看网| 在线一区二区三区四区| 国产日韩精品久久| 久久久久久成人| 国产精品一区二区三区成人| 欧美区二区三区| 欧美性做爰毛片| 国产农村妇女毛片精品久久莱园子| 欧美乱妇高清无乱码| 欧美日韩国产综合视频在线| 久久不射中文字幕| 老鸭窝毛片一区二区三区| 亚洲最新视频在线播放| 欧美日韩国产免费| 久久免费国产精品1| 在线亚洲观看| 国产精品日韩一区二区三区| 欧美亚洲一区在线| 国产精品尤物| 国产欧美精品国产国产专区| 欧美午夜视频在线观看| 欧美一区二区成人| 精品成人国产| 久久久五月天| 欧美女激情福利| 99riav久久精品riav| 欧美日韩国产首页在线观看| 午夜精品免费| 国产精品久久久999| 亚洲欧美文学| 亚洲午夜电影在线观看| 国产麻豆精品在线观看| 国产精品videossex久久发布| 欧美天堂在线观看| 欧美日韩一区二区视频在线| 一区二区三区欧美视频| 国产精品热久久久久夜色精品三区| 伊人精品久久久久7777| 亚洲精品自在在线观看| 国产欧美一区二区三区在线老狼| 国产亚洲综合在线| 久久在线视频在线| 久久av一区二区三区亚洲| 一本一本久久a久久精品牛牛影视| 欧美日韩不卡| 国产亚洲a∨片在线观看| 亚洲嫩草精品久久| 欧美日韩精品不卡| 亚洲天堂网站在线观看视频| 欧美一区二区在线| 极品av少妇一区二区| 欧美精品成人一区二区在线观看| 欧美午夜www高清视频| 中日韩美女免费视频网址在线观看| 亚洲免费成人av电影| 国产精品亚洲人在线观看| 麻豆精品一区二区av白丝在线| 欧美日韩免费区域视频在线观看| 另类酷文…触手系列精品集v1小说| 亚洲国产精品va在看黑人| 午夜伦欧美伦电影理论片| 国产精品免费观看视频| 99精品99| 国产精品亚洲美女av网站| 欧美一区亚洲一区| 国产精品久久一区二区三区| 欧美日韩在线亚洲一区蜜芽| 欧美不卡三区| 亚洲国产欧美久久| 久久精品伊人| 国语精品一区| 欧美日韩国产探花| 欧美激情在线观看| 亚洲精品中文字| 一区二区在线视频观看| 国产亚洲一级高清| 久久精品123| 乱中年女人伦av一区二区| 久色婷婷小香蕉久久| 99精品国产一区二区青青牛奶| 香蕉精品999视频一区二区| 噜噜噜在线观看免费视频日韩| 国内视频一区| 久久久中精品2020中文| 国产欧美日韩视频在线观看| 午夜日韩福利| 久久经典综合| 欧美日韩一区免费| 午夜精品久久久久久久蜜桃app| 欧美精品乱人伦久久久久久| 精东粉嫩av免费一区二区三区| 国产一区在线看| 国产一区二区三区精品久久久| 亚洲午夜久久久久久久久电影网| 欧美丝袜第一区| 一本久道久久综合狠狠爱| 久久久久免费视频| 一本色道久久综合精品竹菊| 欧美伊人久久久久久午夜久久久久| 国产精品成人一区二区网站软件| 嫩草国产精品入口| 久久日韩粉嫩一区二区三区| 日韩视频在线一区二区| 在线综合欧美| 中日韩高清电影网| 欧美一区二区高清在线观看| 国产精品久久久久久久免费软件| 国产三级精品三级| 一本久久综合亚洲鲁鲁五月天| 国产精品久久午夜| 日韩午夜电影av| 欧美日韩成人在线播放| 欧美日韩亚洲一区二| 亚洲免费观看在线观看| 欧美日韩日本视频| 久久久久国产精品一区二区| 国产乱肥老妇国产一区二| 午夜精品视频在线观看| 欧美新色视频| 欧美日韩一级大片网址| 国产精一区二区三区| 国产精品家庭影院| 亚洲国产岛国毛片在线| 亚洲黄色有码视频| 久久本道综合色狠狠五月| 国产乱码精品一区二区三| 久久久999成人| 亚洲精品在线观看免费| 欧美综合国产精品久久丁香| 欧美freesex8一10精品| 久久精品一区二区国产| 亚洲精品免费看| 欧美视频日韩视频| 欧美日韩免费观看一区| 久久婷婷国产综合尤物精品| 国产精品女主播在线观看| 亚洲一区视频在线| 在线亚洲美日韩| 亚洲福利视频专区| 老司机午夜精品| 国产欧美一区二区三区在线看蜜臀| 久久精品视频免费| 性色av一区二区怡红| 久久精品国产视频| 美女久久一区| 欧美成人免费va影院高清| 久久国产精品久久久久久久久久| 久久久久久久久久久久久久一区| 午夜精品视频在线观看一区二区| 亚洲欧洲在线一区| 136国产福利精品导航网址| 亚洲欧美激情在线视频| 亚洲精品乱码久久久久久日本蜜臀| 一区二区视频免费完整版观看| 另类天堂视频在线观看| 国产精品一区二区久激情瑜伽| 国产精品毛片高清在线完整版| 99re66热这里只有精品4| 麻豆精品视频在线| 国产精品拍天天在线| 亚洲国产小视频在线观看| 欧美日韩一区二区视频在线观看| 国产午夜精品理论片a级大结局| 国产精品亚洲激情| 欧美精品一区二区三区在线播放| 国产精品无人区| 欧美久久久久中文字幕| 国产精品99久久99久久久二8| 国产精品一区二区久久久久| 性娇小13――14欧美| 亚洲欧美日韩国产成人| 久久夜色撩人精品| 久久婷婷成人综合色| 欧美在线日韩| 蜜臀av在线播放一区二区三区| 猫咪成人在线观看| 国内在线观看一区二区三区| 欧美主播一区二区三区美女 久久精品人| 欧美一区二区在线观看| 亚洲毛片一区| 好吊色欧美一区二区三区视频| 久久精品视频免费播放| 玖玖精品视频| 国产日产欧美精品| 久久久国际精品| 久久人人爽爽爽人久久久| 午夜精品一区二区三区电影天堂| 国产精品久久久久久福利一牛影视| 黄色欧美成人| 欧美在线观看一区二区三区| 国产精品女主播一区二区三区| 一本色道**综合亚洲精品蜜桃冫| 麻豆精品国产91久久久久久| 中日韩在线视频| 欧美一区二区三区四区在线观看地址| 亚洲伊人一本大道中文字幕| 影音先锋久久久| 久热精品视频在线观看| 欧美chengren| 久久先锋资源| 亚洲黄色有码视频| 欧美在线|欧美| 影音先锋欧美精品| 国产精品看片你懂得| 亚洲毛片在线看| 樱花yy私人影院亚洲| 国产欧美日韩一级| 在线看欧美视频| 国产精品久在线观看| 久久久国产精彩视频美女艺术照福利| 欧美理论电影在线观看| 欧美伦理影院| 欧美午夜三级| 国产精品毛片a∨一区二区三区| 国产亚洲a∨片在线观看| 国产精品成人一区二区三区夜夜夜| 久久九九99视频| 猛男gaygay欧美视频| 国产精品久久精品日日| 精品91在线| 老司机午夜精品视频在线观看| 国产精品三上| 欧美日韩国产在线看| 欧美精品亚洲一区二区在线播放| 欧美日韩mv| 99国产精品视频免费观看| 久久国产日韩欧美| 亚洲电影av| 欧美日韩一区二区在线观看| 欧美午夜精品一区二区三区| 亚洲精品乱码| 国产乱码精品1区2区3区| 久久久久久久综合日本| 国际精品欧美精品| 久久免费视频网| 亚洲欧洲日韩女同| 国产免费一区二区三区香蕉精| 久热成人在线视频| 久久亚洲视频| 国产精品久久久91| 一区二区三区四区国产| 亚洲自拍偷拍麻豆| 亚洲欧美视频一区| 国内精品久久久久伊人av| 老司机凹凸av亚洲导航| 欧美日韩综合在线免费观看| 久久精品国产亚洲一区二区三区| 国产一级一区二区| 国产精品视频福利| 国产一区美女| 欧美日韩一区二| 亚洲欧美影音先锋| 欧美一区二区三区四区在线| 日韩视频在线一区二区| 久久成人人人人精品欧| 欧美一级片久久久久久久| 狠狠干综合网| 亚洲国产精品久久人人爱蜜臀| 欧美日韩大片一区二区三区| 亚洲视频你懂的| 在线观看欧美|