新聞中心

EEPW首頁 > 汽車電子 > 設(shè)計(jì)應(yīng)用 > 56F8013程序Flash的在線可編程特性及應(yīng)用

56F8013程序Flash的在線可編程特性及應(yīng)用

作者:卓晴 時(shí)間:2012-07-24 來源:電子產(chǎn)品世界 收藏

  假設(shè)IntFlash組件名稱是IFsh1,PE將自動(dòng)生成的文件IFsh1.c中,其中提供了接口函數(shù)完成對(duì)Flash的訪問,用戶調(diào)用函數(shù)包括:

本文引用地址:http://m.butianyuan.cn/article/134970.htm

  (1)byte IFsh1_SetWordFlash(Addr, Data):將字Data寫入Flash中Addr單元;
  (2)word readflash(Addr):返回Flash中地址為Addr處的內(nèi)容;

  IFsh1_SetWordFlash函數(shù)將58F8013的Flash編程細(xì)節(jié)都已經(jīng)封裝好,編程流程圖如下圖所示。程序自動(dòng)將Flash編程指令放在RAM中進(jìn)行執(zhí)行。由于對(duì)Flash擦除只能對(duì)整頁Flash進(jìn)行擦除,該函數(shù)在對(duì)需要擦除再寫的情況時(shí),對(duì)于整頁的內(nèi)容都進(jìn)行了備份,擦除頁之后再進(jìn)行恢復(fù)。所以該函數(shù)可以對(duì)于Flash中的任意地址中的字按照任意順序進(jìn)行修改?! ?/p>

 

  利用上面Flash編程函數(shù),可以用于保存單片機(jī)程序的參數(shù)。在車??刂瞥绦蜷_發(fā)過程中,對(duì)于需要整定的參數(shù)保存在特定的Flash參數(shù)區(qū)域,這部分區(qū)域地址與用戶程序不重疊。這樣便可以將程序更新和參數(shù)更新分開。由于參數(shù)的數(shù)量相對(duì)較少,所以更改起來非常方便,甚至可以通過速率比較慢的無線通信的方式進(jìn)行現(xiàn)場(chǎng)更改,這可以大大提高程序開發(fā)和調(diào)試的速度。

  自舉程序(Bootloader)設(shè)計(jì)

  實(shí)現(xiàn)IAP過程中,一般將更新程序功能的代碼設(shè)計(jì)成獨(dú)立的自舉程序(Bootloader)模塊。將它燒寫在單片機(jī)內(nèi)部特定的位置。下面通過UART串口實(shí)現(xiàn)IAP功能為例,說明Bootloader設(shè)計(jì)方法,通過其它通訊方式實(shí)現(xiàn)IAP與此類似。

  通過自舉程序下載單片機(jī)程序的系統(tǒng)硬件連接如下圖所示:  

c語言相關(guān)文章:c語言教程


單片機(jī)相關(guān)文章:單片機(jī)教程


單片機(jī)相關(guān)文章:單片機(jī)視頻教程


單片機(jī)相關(guān)文章:單片機(jī)工作原理




關(guān)鍵詞: 飛思卡爾 智能汽車

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉