国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

編程sector0中的page0時候總是失敗問題

恩智浦MCU加油站 ? 來源:恩智浦MCU加油站 ? 作者:恩智浦MCU加油站 ? 2021-10-20 10:56 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本篇文章是《LPC技術小貼士-自動添加中斷向量校驗位》的番外篇。

最近在支持客戶的時候遇到這樣一個問題:客戶在做自己的二級boot loader,并且在使用LPC54608 IAP功能,編程sector0中的page0時候總是失敗(返回0x21錯誤碼),但是編程任何其他page的時候,都沒有問題(客戶的代碼在最后一個sector里,不編程)。

問題乍一看比較詭異,因為只有page0會出問題,對其他page的操作都是沒有問題的,并且擦除page/sector也沒有問題,只有編程操作會出錯。

經過了一段短暫的討論,最后把問題鎖定在了LPC中斷向量表的check sum校驗機制上:LPC(除比較新的LPC5500系列外)基本都需要在中斷向量表的第8個位置上填入前7個中斷向量的校驗和,關于校驗和的具體內容可以參考開篇提到的文章。

Keil編譯出來的.bin文件中,默認并沒有自動添加這個校驗和,所以每當調用IAP變成page0的時候,IAP程序內部都會檢查這個校驗和,一旦校驗和錯誤(比如全0) 就會返回失敗。

解決方法也很簡單,就是在每次編程page0的時候都計算下校驗和即可,這里直接給出計算校驗和的代碼:

213df384-30e7-11ec-82a8-dac502259ad0.png

adr為編程地址,當adr為0時既編程page0區域,紅框內的代碼就是計算校驗和,并且把校驗和填到中斷向量表的第8個位置上。

加上這段計算校驗和代碼后,問題迎刃而解。這個問題普遍存在于除LPC5500系列外幾乎所有老的LPC型號上,希望本文章對大家開發LPC MCU有所幫助!

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • plc
    plc
    +關注

    關注

    5051

    文章

    14595

    瀏覽量

    486980
  • 編程
    +關注

    關注

    90

    文章

    3716

    瀏覽量

    97192

原文標題:LPC工程小貼士:IAP編程page0返回失敗的問題

文章出處:【微信號:NXP_SMART_HARDWARE,微信公眾號:恩智浦MCU加油站】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    探索LMK61E0M:超低抖動可編程振蕩器的卓越性能與應用

    探索LMK61E0M:超低抖動可編程振蕩器的卓越性能與應用 在電子設計領域,時鐘振蕩器的性能對于整個系統的穩定性和數據處理能力起著至關重要的作用。今天,我們將深入探討一款高性能的時鐘振蕩器
    的頭像 發表于 02-08 13:50 ?489次閱讀

    為什么你的產品總是在EMC測試失敗?如何規避認證失敗

    “ ? 本文件總結了七個常見的 PCB 設計錯誤,這些錯誤可能導致產品在認證過程失敗,特別是在電磁兼容性(EMC)和射頻(RF)方面。 ? ” 強烈 推薦聽一下播客,播客內容比文字更詳細、更精
    的頭像 發表于 09-16 11:15 ?4924次閱讀
    為什么你的產品<b class='flag-5'>總是</b>在EMC測試<b class='flag-5'>中</b><b class='flag-5'>失敗</b>?如何規避認證<b class='flag-5'>失敗</b>?

    ?LMK61E0M可編程振蕩器技術文檔總結

    LMK61E0 系列超低抖動 PLLatinum^TM的^可編程振蕩器使用帶有集成VCO的小數N頻率合成器來生成常用的參考時鐘。該LMK61E0M支持3.3V LVCMOS輸出。該器件具有從片內
    的頭像 發表于 09-13 09:46 ?1287次閱讀
    ?LMK61E<b class='flag-5'>0</b>M可<b class='flag-5'>編程</b>振蕩器技術文檔總結

    uffs文件系統掛載nand0設備后,所有塊全變成壞塊了,是什么原因導致的?

    ; int sr2 = 0; rt_uint8_t page_data[4], column_data[4]; rt_uint16_t column_addr = 0; rt_uint8_t oob
    發表于 09-12 08:13

    LP-MSPM0G3507 LaunchPad?開發套件技術解析與應用指南

    Texas Instruments LP-MSPM0G3507 LaunchPad? 開發套件用于評估MSPM0G3507。TI LP-MSPM0G3507套件包含在MSPM0G350
    的頭像 發表于 08-19 14:27 ?1267次閱讀
    LP-MSPM<b class='flag-5'>0</b>G3507 LaunchPad?開發套件技術解析與應用指南

    求助,關于TLE9883 user_nvm_sector_erase的問題求解

    我正在嘗試測試用于擦除和寫入閃存不同部分的 NVM API 函數。我從 FLASH0 運行代碼。當我嘗試使用 user_nvm_page_erase 函數并傳入 0x12002000( FLASH1
    發表于 08-15 06:05

    上傳壓縮包的時候總是顯示上傳失敗,為什么?

    上傳壓縮包的時候總是顯示上傳失敗是說明原因
    發表于 07-23 08:17

    rtt only系統下程序運行失敗: [FATAL ERROR] Exception 13:Load Page Fault,怎么解決?

    Executable-only Pagesatp = 0x80000000000047d2Current Page Table(Physical) = 0x00000000047d2000Current ASID
    發表于 06-20 07:30

    FX3 RAM編程因定制板而失敗怎么解決?

    USBBulkSourceSink.img 寫入 RAM 時,控制中心顯示編程失敗。 ?我已確認該圖像在評估板上成功。 ?我已將 PMODE[2:0] 設置為 z11。 ?我確認時鐘是26MHz。 ?確認電源正常。 請查看以下
    發表于 05-15 08:22

    瑞薩RA0系列MCU喜添新成員RA0E2

    RA家族2024年推出全新的RA0超低功耗系列,繼RA0E1產品后,新添成員RA0E2。RA0E2具有出色的成本效益和超低功耗。此外,RA0
    的頭像 發表于 05-06 09:29 ?1257次閱讀
    瑞薩RA<b class='flag-5'>0</b>系列MCU喜添新成員RA<b class='flag-5'>0</b>E2

    I2C EEPROM編程失敗的原因?

    我嘗試使用 Cy Control Center 實用程序將固件下載到我的 EVM , 第一天,我嘗試了很多次,但都失敗了,比如下面的錯誤, I2C EEPROM 編程失敗。 我搜索
    發表于 05-06 07:25

    新品 | RA0系列MCU喜添新成員RA0E2,0.25uA超低功耗待機,支持5v、125c

    RA家族2024年推出全新的RA0超低功耗系列,繼RA0E1產品后,新添成員RA0E2。RA0E2具有出色的成本效益和超低功耗。此外,RA0
    的頭像 發表于 05-01 08:15 ?1441次閱讀
    新品 | RA<b class='flag-5'>0</b>系列MCU喜添新成員RA<b class='flag-5'>0</b>E2,0.25uA超低功耗待機,支持5v、125c

    用STM32F407讀取ADS8353的結果總是0

    在調試ADS8353電路遇到一些問題,不管配置完CFR寄存器回讀還是讀取數據結果總是0,芯片手冊也看過感覺電路設計焊接這些也沒問題,代碼自認為也沒出錯,但結果總是0,希望有人能解答
    發表于 04-24 17:33

    MSPM0L1227 32MHz Arm? Cortex-M0?+ MCU數據手冊

    MSPM0Lx22x 微控制器 (MCU) 屬于基于 Arm Cortex-M0+ 32 位內核平臺的高度集成、超低功耗 32 位 MSPM0 MCU 系列,工作頻率高達 32MHz。這些 MCU
    的頭像 發表于 04-14 15:55 ?1146次閱讀
    MSPM<b class='flag-5'>0</b>L1227 32MHz Arm? Cortex-M<b class='flag-5'>0</b>?+ MCU數據手冊

    0STM32的SysTick是個啥?咋用?(可下載)

    Cortex-Mx內核內部包含了一個SysTick定時器,SysTick是一個24位的倒計數定時器,當計到0時,將從RELOAD寄存器自動重裝載定時初值。只要不把它在SysTick控制及狀態寄存器
    發表于 04-01 14:52 ?0次下載