chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

基于LPC11C24微控制器組成的CAN網(wǎng)絡,實現(xiàn)對節(jié)點MCU的軟件更新

電子設計 ? 作者:電子設計 ? 2018-09-05 09:20 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

0引言

分散型控制系統(tǒng)中的現(xiàn)場終端一般由控制器和各檢測模塊構成,它們之間通過一定的通信網(wǎng)絡建立數(shù)據(jù)的交換鏈路。這種系統(tǒng)具有高可靠、開放性、靈活性、協(xié)調(diào)性、易維護等優(yōu)點。然而,該分散型系統(tǒng)也具有終端數(shù)量多、分布范圍廣的特點。一旦終端系統(tǒng)軟件存在缺陷或用戶提出新的功能和指標要求時,其升級、維護的工作量和成本都非常大。本文針對上述情況,設計了一種方便、靈活、快速及穩(wěn)定地對MCU節(jié)點進行在線更新的機制?;?a href="http://www.brongaenegriffin.com/tags/lpc/" target="_blank">LPC11C24微控制器組成的CAN網(wǎng)絡,采用IAP編程技術(In Application Programming),實現(xiàn)了對目標節(jié)點MCU的軟件更新功能。

1 LPC11C24單片機和CAN總線

恩智浦半導體(NXP)推出業(yè)界首款內(nèi)嵌易用型片上CANopen驅(qū)動,集成高速CAN物理層收發(fā)器的微控制器LPC11C22和LPC11C24.作為一種獨特的系統(tǒng)級封裝解決方案,LPC11C22和LPC11C24集成了TJF1051CAN收發(fā)器,在低成本LQFP48封裝中實現(xiàn)了完整的CAN功能。

控制器局域網(wǎng)絡(Controller Area Network,CAN)是由研發(fā)和生產(chǎn)汽車電子產(chǎn)品著稱的德國BOSCH公司開發(fā)了的,并最終成為國際標準(ISO11898)。它是國際上應用最廣泛的現(xiàn)場總線之一。近年來,其所具有的高可靠性和良好的錯誤檢測能力受到重視,被廣泛應用于汽車計算機控制系統(tǒng)和環(huán)境溫度惡劣、電磁輻射強和振動大的工業(yè)環(huán)境。

2在線更新機制架構

系統(tǒng)架構主要由2部分組成:由各個MCU組成的CAN網(wǎng)絡;安裝在PC機上的USB-CAN通信卡,可以使PC機連上CAN網(wǎng)絡,進行數(shù)據(jù)通信,系統(tǒng)構架如圖1所示。軟件也包括2部分:運行在PC機的上位機軟件,提供用戶操作界面,將應用程序代碼通過CAN總線發(fā)送給節(jié)點;運行在節(jié)點的啟動程序,主要是響應下載命令,接受代碼,把代碼寫入FLASH,引導應用程序。

基于LPC11C24微控制器組成的CAN網(wǎng)絡,實現(xiàn)對節(jié)點MCU的軟件更新

圖1 系統(tǒng)架構

3在線更新機制的設計

3.1 IAP編程技術

IAP是應用在FLASH程序存儲器的一種編程模式,即在某段程序的控制下完成對FLASH的讀/寫操作,可以控制對某段、某頁、甚至某個字節(jié)的讀寫操作。

LPC11C24單片機支持并提供9條IAP命令:

①準備寫操作的扇區(qū);

②將RAM內(nèi)容復制到FLASH;

③擦除扇區(qū);

④扇區(qū)查空;

⑤讀器件ID;

⑥讀Boot代碼版本;

⑦比較;

⑧重新調(diào)用ISP;

⑨讀UID.

3.2 FLASH空間分配

LPC11C24有32KB的FLASH空間,共分為8個扇區(qū),每個扇區(qū)的大小為4KB.為了使程序更新和應用程序更加獨立,本文將FLASH空間分為3個區(qū),分別為啟動程序區(qū),應用程序區(qū),用戶數(shù)據(jù)區(qū)。

基于LPC11C24微控制器組成的CAN網(wǎng)絡,實現(xiàn)對節(jié)點MCU的軟件更新

其中①啟動程序是一段特定的駐留代碼,專門用于接收來自主機新的代碼,將其燒寫到相應的FLASH空間,完成后跳轉(zhuǎn)到應用代碼區(qū)去執(zhí)行新的程序,代碼比較少,編譯生成的映像文件小于4KB,每次系統(tǒng)上電或重啟后先執(zhí)行啟動程序。

②應用程序是真正實現(xiàn)用戶功能的代碼。

③用戶數(shù)據(jù)區(qū)是用于存儲應用程序的一些設置和數(shù)據(jù)。

3.3中斷向量表重映射與復制

LPC11C24支持32個向量中斷,中斷向量表默認位于FLASH的第一個4KB空間,地址從0x00000000~0x00000079.按照前面的設計,啟動程序占用第一個4KB的空間,當跳轉(zhuǎn)到應用程序時,實際的中斷向量表是位于0x00001000~0x00001079的空間。但LPC11C24系列的單片機不支持自定義中斷向量表的地址,只支持將中斷向量表從FLASH重映射到RAM.

為了能讓應用程序?qū)崿F(xiàn)正常的中斷處理,啟動程序在跳轉(zhuǎn)到應用程序之前還需要將應用程序的中斷向量表復制并映射到RAM[10].

代碼實例如下:

基于LPC11C24微控制器組成的CAN網(wǎng)絡,實現(xiàn)對節(jié)點MCU的軟件更新

3.4啟動程序和應用程序的設計與固化

程序都在Keil for ARM集成環(huán)境下編寫并編譯。

首先在Keil軟件下新建基于LPC11C24的工程,并配置FLASH和SRMA的起始地址和大小。具體如表2所示。

基于LPC11C24微控制器組成的CAN網(wǎng)絡,實現(xiàn)對節(jié)點MCU的軟件更新

3.5啟動程序與應用程序之前的跳轉(zhuǎn)

在啟動程序中定義應用程序的地址,#defineAPP_CODE_ADDR (0x00001000),程序跳轉(zhuǎn)的代碼采用匯編語言編寫,代碼實例如下:

基于LPC11C24微控制器組成的CAN網(wǎng)絡,實現(xiàn)對節(jié)點MCU的軟件更新

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    7947

    瀏覽量

    154849
  • 單片機
    +關注

    關注

    6067

    文章

    44976

    瀏覽量

    650189
  • 控制器
    +關注

    關注

    114

    文章

    17095

    瀏覽量

    184134
  • CAN總線
    +關注

    關注

    145

    文章

    1985

    瀏覽量

    132783
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    客車網(wǎng)絡控制CAN/CAN網(wǎng)橋設計

    客車網(wǎng)絡控制CAN/CAN網(wǎng)橋設計摘要: 本文以LPC2119 微控制器為核心設計了客車
    發(fā)表于 12-01 10:29

    求助lpc11c24開發(fā)板

    請問我的lpc11c24開發(fā)板接上u***轉(zhuǎn)串口線為什么在電腦看不到com口,之前裝了51的u***轉(zhuǎn)串口的驅(qū)動,這個開發(fā)板沒有附帶驅(qū)動。請問這個問題怎么解決???謝謝
    發(fā)表于 08-18 00:12

    利用XC2300系列微控制器實現(xiàn)CAN網(wǎng)絡安全

    全新的XC2300系列微控制器專為安全關鍵系統(tǒng)而設計,可支持多個并行的CAN網(wǎng)絡。網(wǎng)關功能實現(xiàn)了不同CAN
    發(fā)表于 12-07 10:09

    LPC2194CAN控制器和ARM微控制器相關資料分享

    LPC2194是飛利浦公司生產(chǎn)的一款CAN控制器和ARM微控制器。它為四面64腳封裝。自帶4路CAN控制
    發(fā)表于 04-22 07:37

    以8051微控制器和82527獨立CAN總線控制器為核心組成

    介紹一種以8051微控制器和82527獨立CAN總線控制器為核心組成CAN總線智能傳感
    發(fā)表于 07-17 08:41 ?26次下載

    恩智浦推出首款內(nèi)嵌易用型片上CANopen驅(qū)動微控制器

    恩智浦半導體近日宣布推出業(yè)界首款內(nèi)嵌易用型片上CANopen驅(qū)動,集成高速CAN物理層收發(fā)微控制器LPC11C22和LPC11C24。
    發(fā)表于 01-19 08:14 ?1000次閱讀

    NXP推出首款LPC11C22和LPC11C24整合式CAN收發(fā)微控制器解決方案

    恩智浦半導體(NXP Semiconductors N.V.)宣布推出業(yè)界首款內(nèi)嵌易用型on-chip CANopen驅(qū)動的整合式高速CAN實體層收發(fā)微控制器
    發(fā)表于 01-26 22:05 ?5128次閱讀

    基于LPC2294的CAN總線主節(jié)點設計

    為引入CAN總線技術以實現(xiàn)運動控制系統(tǒng)的網(wǎng)絡化,提出了基于LPC2294的CAN總線主
    發(fā)表于 06-21 15:17 ?61次下載
    基于<b class='flag-5'>LPC</b>2294的<b class='flag-5'>CAN</b>總線主<b class='flag-5'>節(jié)點</b>設計

    基于LPC2294的CAN總線智能節(jié)點設計

    CAN總線是一種應用廣泛的實時性現(xiàn)場總線。本文提出了一種基于具有ARM7DMI內(nèi)核的32位ARM微控制器LPC2294的CAN總線智能節(jié)點
    發(fā)表于 05-29 09:27 ?4233次閱讀
    基于<b class='flag-5'>LPC</b>2294的<b class='flag-5'>CAN</b>總線智能<b class='flag-5'>節(jié)點</b>設計

    LPC11CXX CAN ISP升級方法

    基于TinyM0-CAN和TinyM0-CAN-T開發(fā)套件講解LPC11C1x和LPC11C2x系列微控制器
    發(fā)表于 09-27 16:34 ?10次下載

    詳解LPC2000系列ARM微控制器CAN驗收濾波應用

     LPC2000 系列ARM微控制器是采用ARM7TDMI-S內(nèi)核的32位嵌入式微處理,內(nèi)嵌2路或4路CAN控制器和驗收濾波
    發(fā)表于 02-08 19:24 ?2600次閱讀
    詳解<b class='flag-5'>LPC</b>2000系列ARM<b class='flag-5'>微控制器</b>的<b class='flag-5'>CAN</b>驗收濾波<b class='flag-5'>器</b>應用

    LPC2131微控制器外部實現(xiàn)CAN總線通信設計

    Philips公司的LPC213l是基于ARM7TDMI-S的高性能32位RISC微控制器。它具有ARM處理的所有優(yōu)點——低功耗、高性能和較為豐富的片上資源,但LPC2131內(nèi)部沒有
    的頭像 發(fā)表于 04-18 08:08 ?3551次閱讀
    在<b class='flag-5'>LPC</b>2131<b class='flag-5'>微控制器</b>外部<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>CAN</b>總線通信設計

    微控制器(MCU)由什么組成

    微控制器MCU)由中央處理(CPU),非易失性存儲(ROM),易失性存儲(RAM),外圍設備和支持電路
    發(fā)表于 06-29 11:20 ?9920次閱讀

    基于LPC2292微控制器CAN控制器實現(xiàn)車輛行駛監(jiān)控系統(tǒng)的設計

    選用帶有ARM7TDMI-S內(nèi)核的LPC2292微控制器,可實現(xiàn)對車速、轉(zhuǎn)速信號、開關量信號以及水溫、剎車氣壓、輪胎壓力等模擬量信號的采集、處理以及數(shù)據(jù)的實時存儲和顯示,通過串口、USB接口可以
    的頭像 發(fā)表于 04-02 09:13 ?2936次閱讀
    基于<b class='flag-5'>LPC</b>2292<b class='flag-5'>微控制器</b>和<b class='flag-5'>CAN</b><b class='flag-5'>控制器</b><b class='flag-5'>實現(xiàn)</b>車輛行駛監(jiān)控系統(tǒng)的設計

    CAN控制器和收發(fā)

    SJA1000CAN控制器集成在微控制器中,如NXP半導體公司的Cortex-M0內(nèi)核LPC11Cxx系列微控制器、
    發(fā)表于 12-04 11:21 ?28次下載
    <b class='flag-5'>CAN</b><b class='flag-5'>控制器</b>和收發(fā)<b class='flag-5'>器</b>