日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

flash写保护原理_老司机带路:LPC82x 存储器及读写保护 手到擒来!

發布時間:2025/3/20 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 flash写保护原理_老司机带路:LPC82x 存储器及读写保护 手到擒来! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

點擊上方“單片大師”可以訂閱哦

存儲器,顧名思義就是用來存放東西的地方,那么對于一款 MCU 而言,在性能描述的時候,我們都會說 SRAM,Flash 的容量大小有多少。對于初學者來說,可能不會去理會這些東西,拿到東西就只用。其實不然,一顆 MCU 的內存有多大是十分重要的,其主要是用來存放代碼和和數據的器件。代碼為什么可以運行,代碼量是多少,定義的 int、short 等等類型的變量究竟是怎么分配和存儲的,這些問題都和內存有關系。因此,在我們選擇 MCU 進行開發的時候就要去評估其內存是否滿足需求。今天,小編將帶領大家一起去學習 LPC82x 系列存儲器與讀寫保護。

首先,我們來看一下 LPC82x 系列的存儲器映射(Memory Map)。

存儲器映射(Memory Map)是指把芯片中或芯片外的 FLASH,RAM,ROM,Peripheral 外設等進行統一編址。即用地址來表示對象。這個地址絕大多數是由廠家規定好的,用戶只能用而不能改。用戶只能在掛外部 RAM 或 FLASH 的情況下可進行自定義。

LPC82x 的地址空間是 4GB, 指向 2^32=4G 的地址空間,也就是 0x0000_0000——0xFFFF_FFFF 這一大塊空間。

根據圖中描述,Cortex-M0+ 內核將 0x0000_0000——0xFFFF_FFFF 這塊 4G 大小的空間分成 6 大塊:Flash、SRAM、MTB、ROM、外部設備、專用外設總線、特定廠商等。

? 一、FLASH 控制器 ?

Flash 模塊包括:Flash 主存儲區(Main memory)、Flash 信息區(Information block),以及 Flash 存儲接口寄存器區(Flash memory interface)。

針對 Flash 部分技術 Support,經常有客戶會問如何控制 Flash 的訪問時間和如何獲得簽名?

1. 控制閃存(FLASH)訪問時間

? ? ? 當 ARM 時鐘速度調整前,需要調整閃存訪問時間

? ? ?? ① ARM 速度 20MHz 以上,閃存訪問需要 2 個系統時鐘

? ? ?? ② ARM 速度在 20MHz 及以下,閃存訪問需要 1 個系統時鐘

? ? ? 實例代碼

typedefenum{/*!< 1 CPU clocks Flash accesses for up to 20 MHz CPU */FLASHTIM_20MHZ_CPU = 0,/*!< 2 CPU clocks Flash accesses for up to 30 MHz CPU */FLASHTIM_30MHZ_CPU = 1,} FMC_FLASHTIM_T;voidChip_FMC_SetFLASHAccess(FMC_FLASHTIM_T clks);

?? ? 注意,不要在低功耗模式下調整閃存訪問時間

2. 獲得閃存(FLASH)內容簽名

? ? ?? ① 提供 16 字節對齊起始閃存 (FLASH) 地址

? ? ?? ② 提供 16 字節對齊結束閃存 (FLASH) 地址,并開始計算簽名

? ? ?? ③ 等待判斷簽名計算完成

? ? ?? ④ 獲得 32bits 閃存內容簽名

? ? ? 實例代碼(計算從 0x4000 地址到 0x8000 地址的簽名)

const static uint32_t FLASH_SIGNATURE_START_ADDR = 0x1000;const static uint32_t FLASH_SIGNATURE_END_ADDR = 0x4000;Chip_FMC_ComputeSignature(FLASH_SIGNATURE_START_ADDR,FLASH_SIGNATURE_END_ADDR);while(Chip_FMC_IsSignatureBusy());uint32_t flash_signature = Chip_FMC_GetSignature(0);

? 二、SRAM ?

以下是 LPC82x 參考手冊中的一段原話:

LPC824 起始地址是 0x1000 0000,終止地址是 0x1000 0050。

SRAM 的理解比較簡單,其作用是用來存取各種動態的輸入輸出數據、中間計算結果以及與外部存儲器交換的數據和暫存數據。設備斷電后,SRAM 中存儲的數據就會丟失。

? 三、ISP(In System Programming) ?

ISP 由英文 In-System Programming 三個首字母組成,譯成中文即:在系統編程。通過調用芯片內部固化的 Bootloader 軟件實現通過 UART 串口編程片內 Flash 的功能,實現小批量固件燒錄,也可以實現固件升級。

1. ISP 的通常用法 - 1

? ? ? 通過串口(USART)ISP 命令和 ISP 程序完成片上閃存(FLASH)的燒寫編程

? ? ? ? - ISP 程序運行在 ROM 中

? ? ? ? - 進入 ISP 模式的方法

? ? ? ? ?? ① 芯片啟動時拉低管腳 P0_12

? ? ? ? ?? ② IAP 命令“Reinvoke ISP”

? ? ? 通常用法

? ? ?? - 固件燒錄(小批量),固件升級

? ? ?? - LPC82X 應用程序進入低功耗狀態時,調試端口失效,無法從調試端口下載程序,而進入 ISP 模式可以通過調試端口下載用戶程序

2. ISP 的通常用法 - 2

? ? ? 在用戶應用代碼中或者用戶第二級引導程序使用 IAP 系統函數完成片上閃存(FLASH)的燒寫編程

? ? ?? - 用戶程序在 FLASH 或 RAM 中調用執行 IAP 系統函數

? ? ?? - 通常用法

? ? ? ? ? ① 應用程序保存外設配置數據,校準數據到 FLASH 上

? ? ? ? ? ② 應用程序保存用戶數據到 FLASH 上

? ? ? ? ? ③ 第二級引導程序對應用程序升級

? 四、引導程序(Bootloader) ?

看完上面的內容大家肯定會有疑問:ISP 功能都可以做固件升級了,為啥需要第二級引導程序?

? ? ? ISP 只可以完成 MCU 的固件升級,一般不能完成外圍器件的固件升級

? ? ? ISP 只可以通過串口 0(USART0)完成片上閃存(FLASH)的燒寫編程

? ? ? ISP 的命令是有限的,有時候不能完全滿足用戶的功能需求

? ? ?? ① 加密、校驗啟動

? ? ?? ② 故障現場分析(RAM 內存導出)

? ? ?? ③ 工廠測試

第二級引導程序(示例)

? ? ? 第二級引導程序實例完成基于 I2C 總線的主機從機通信

? ? ? 第二級引導程序等待主機指令,解析指令并處理主機指令

? ? ? 第二級引導程序響應主機啟動命令可以啟動用戶程序

? 五、代碼讀取保護 ?

? (Code Read Protection) ?

之前也看到有網友提出代碼保護的問題,辛苦寫的程序,怎么著也不想被別人拿去用!所以增加代碼的讀/寫保護功能,對保護知識產權異常重要!所以最后來談談如果添加代碼讀取保護功能。

1. 代碼讀取保護(CRP)

? ? ? 允許客戶設置不同安全級別的閃存訪問

? ? ? CRP 模式

2. CRP 模式配置

? ? ? 模式配置地址 0x000002FC

?

? ? ? CRP 模式的改變在 MCU 重新上電后生效

? ? ? CRP 不影響 IAP 命令

? ? ? 實例代碼

;// keil_startup_lpc82x.s;// Code Read Protection level (CRP),0x000002FC;// <0xFFFFFFFF=> Disabled;// <0x4E697370=> NO_ISP;// <0x12345678=> CRP1;// <0x87654321=> CRP2;// <0x43218765=> CRP3 (Are you sure?)CRP_Level EQU 0xFFFFFFFF

? ? End ??

點擊下方“”查看更多

↓↓↓ 與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的flash写保护原理_老司机带路:LPC82x 存储器及读写保护 手到擒来!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日噜| 久久狠狠婷婷 | 日韩成人av在线播放 | 影音先锋激情在线 | 久久在线电影 | h视频免费在线观看 | 中文字幕一区二区三区精华液 | 综合色吧 | 欧美91av| 少妇人妻偷人精品无码视频新浪 | 中文字幕第一页在线视频 | 精品久久久国产 | 中文字幕丰满孑伦无码专区 | 男人天堂影院 | 久久网伊人 | 菲律宾av| 老司机午夜在线 | 欧美专区在线视频 | 国产色a | 网站免费在线观看 | 色原网| 午夜大片在线观看 | 国产视色 | 大陆农村乡下av | 日韩欧美成人一区 | 香蕉福利| 三级在线观看 | 色综合久久久久 | 一区二区三区影院 | 激情吧 | 国产日韩中文 | 美腿丝袜亚洲综合 | 深夜国产视频 | 天天色影网 | 一区二区三区不卡视频 | 欧美精品动漫 | 人妻久久久一区二区三区 | 激情国产在线 | 欧美在线激情视频 | 国产一区二区三区四区五区在线 | 欧美激情一区二区三区蜜桃视频 | 精品一区三区 | 理论片毛片| 国产精品一区二区三区线羞羞网站 | av毛片在线看 | 可以看的av网站 | 筱田优av| 天堂最新资源在线 | 日韩日b视频 | 自拍偷拍激情视频 | 亚洲免费a | 国产人妖在线视频 | 青草视频免费在线观看 | 蜜桃麻豆视频 | 欧美 变态 另类 人妖 | 日韩视频在线观看一区二区三区 | 免费黄色小视频 | 国产精品无码一本二本三本色 | 国产www视频 | 久久不射网 | 无码人妻精品一区二区三区在线 | 欧美裸体精品 | 亚洲第一av网 | 五十路六十路七十路熟婆 | 亚洲人人爽 | 成年人91视频 | 亚洲欧洲视频在线观看 | 小罗莉极品一线天在线 | 久久毛片 | 97夜夜 | 黄片毛片在线看 | 女人脱了内裤趴开腿让男躁 | 99热这里只有精品在线 | 国产精品每日更新 | 国产偷人视频 | 色av色| 日韩精品一区二区三区久久 | 欧美在线v| 亚洲婷婷一区 | 在线免费观看日韩视频 | 免费人成在线观看 | 精品啪啪 | 久久久久免费观看 | 日韩淫视频 | 国产精品23p | 强伦轩人妻一区二区电影 | 麻豆蜜桃在线观看 | 国产精品成人av久久 | 综合五月网 | 健身教练巨大粗爽gay视频 | 日本不卡视频在线播放 | 国产视频一区在线播放 | 人与拘一级a毛片 | 男人天堂视频在线 | 嫩草在线播放 | 中国浓毛少妇毛茸茸 | 污污网站在线观看视频 | 在线天堂www在线国语对白 | 日本国产一级片 |