欧美经典成人在观看线视频_嫩草成人影院_国产在线精品一区二区中文_国产欧美日韩综合二区三区

當前位置:首頁 > 編程技術 > 正文

數據如何保存到flash lpc1754

數據如何保存到flash lpc1754

將數據保存到基于NXP LPC1754微控制器的Flash存儲器中,通常涉及以下步驟: 1. 硬件準備確保你的LPC1754微控制器已經正確配置,并且你的開發環境(如K...

將數據保存到基于NXP LPC1754微控制器的Flash存儲器中,通常涉及以下步驟:

1. 硬件準備

確保你的LPC1754微控制器已經正確配置,并且你的開發環境(如Keil uVision)已經安裝并配置了相應的硬件支持包。

2. 硬件特性了解

LPC1754的Flash存儲器通常具有以下特性:

可編程的存儲空間。

需要特定的命令序列來擦除和寫入。

3. 開發環境配置

在Keil uVision中,你需要確保你的項目設置正確,包括:

選擇正確的芯片型號。

設置正確的時鐘頻率。

選擇正確的Flash配置。

4. 編寫代碼

以下是一個簡單的示例,展示了如何在LPC1754上寫入和讀取Flash:

寫入Flash

```c

include "LPC17xx.h"

void FlashProgramWord(uint32_t FlashAddress, uint32_t Data) {

// 確保Flash地址是4字節對齊的

FlashAddress &= ~0x3;

// 禁用Flash訪問

LPC_SC->PCONP = (1 << 6);

// 等待Flash準備好

while (!(LPC_FMC->FMSTAT & (1 << 0)));

// 清除寫保護

LPC_FMC->FWPKEY = 0x5A5A5AUL;

LPC_FMC->FWPKEY = 0xA5A5A5UL;

// 禁用寫保護

LPC_FMC->FWPEN = 0x1;

// 等待寫保護被清除

while (LPC_FMC->FWPEN);

// 禁用中斷

__disable_irq();

// 寫入數據

LPC_FMC->FPROT = 0x0; // 設置保護位為0,表示整個Flash

LPC_FMC->FWADD = FlashAddress; // 設置Flash地址

LPC_FMC->FWDATA = Data; // 設置要寫入的數據

LPC_FMC->FWKEY = 0x5A5A5AUL;

LPC_FMC->FWKEY = 0xA5A5A5UL;

// 等待寫入完成

while (!(LPC_FMC->FMSTAT & (1 << 1)));

// 重新啟用中斷

__enable_irq();

// 重新啟用Flash訪問

LPC_SC->PCONP &= ~(1 << 6);