flash有寫保護所以要先解鎖
flash_unlock();
只能對已經擦除的flash空間進行寫操作,所以寫之前必須擦除。並且flash只能頁擦除或片擦除。擦除位址為頁的首位址就行
flash_erasepage(0x0807f800);
庫函式本生有等待完成的操作,所以後面while迴圈等待不用也可以
flash_programhalfword(addr,date);
while(flash_getstatus()!=flash_complete);
沒有相關庫函式,直接以指標方式讀取就行
date=*(vu16*)fadd//fadd為位址
flash_lock();
STM32F103使用內部Flash儲存引數
在我們應用開發時,經常會有一些程式執行引數需要儲存,如一些修正係數。這些資料的特點是 數量少而且不需要經常修改,但又不能定義為常量,因為每台裝置可能不一樣而且在以後還有修改的可能。將這類資料存在指定的位置,需要修改時直接修改儲存位置的數值,需要使用時則直接讀取,會是一種方便的做法。考慮到這些資料量比...
STM32F103內部FLASH及位址表
在我們應用開發時,經常會有一些程式執行引數需要儲存,如一些修正係數。這些資料的特點是 數量少而且不需要經常修改,但又不能定義為常量,因為每台裝置可能不一樣而且在以後還有修改的可能。將這類資料存在指定的位置,需要修改時直接修改儲存位置的數值,需要使用時則直接讀取,會是一種方便的做法。考慮到這些資料量比...
STM32F103C8T6 內部 FLASH讀寫
u16 people id 50 假設公司最多50人 u16 people clock t 50 每個人簽到次數 u16 people num 2 人數 define debug define flash size 64 所選mcu的flash容量大小 單位為k if flash size 256 ...