讀寫乙個資料的例項:
國外老哥的程式:
直接貼**了,說明都在**裡:
下面是c檔案:
//下面這些include 檔案用的時候都包含進去;
#include "flash_read_write.h"
#include "stm32f1xx_hal.h"
#include "stdio.h"
#include "string.h"
//這個位址是stm32f103c8t6的最後一頁的首位址
uint32_t addr = 0x08007000;
/*flash寫入程式*/
uint32_t flash_write_data (uint32_t startpageaddress, uint32_t * data_32)
//乙個字乙個字的寫入flash
startpageaddress=0x08007000;
while (sofar//給flash上鎖
hal_flash_lock();
return 0;
}void flash_read_data (uint32_t startpageaddress, __io uint32_t *data_32)
startpageaddress += 4;
data_32++;}}
標頭檔案:
#ifndef __flash_read_write_h__
#define __flash_read_write_h__
#include "stm32f1xx_hal.h"
/*flash寫入程式*/
uint32_t flash_write_data (uint32_t startpageaddress, uint32_t * data_32);
/*flash讀取列印程式*/
void flash_read_data (uint32_t startpageaddress, __io uint32_t * data_32);
#endif
主函式應用檔案**示例:
下面這些是資料宣告:
//從flash裡面讀出的資料存在該陣列
uint32_t start_addr=0x08007000;
__io uint32_t data_read_fromflash[9];
uint32_t data_tobe_wrote[9] = ;
應用程式:
flash_write_data(start_addr,data_tobe_wrote);
hal_delay(100);
flash_read_data(start_addr,data_read_fromflash);
int i=0;
for(i=0;i<9;i++)
STM32CubeMX系列 待機喚醒
1.低功耗模式簡介 系統或電源復位後,微處理器處於執行狀態,執行狀態下hclk為cpu提供時鐘,核心執行程式 當cpu不需繼續執行時 例如等待某個外部事件 可以利用多個低功耗模式來節省功耗。使用者需要根據最低電源消耗 最快速啟動時間和可用的喚醒源等條件,選定乙個最佳的低功耗模式。stm32提供了3種...
STM32CubeMX系列 記憶體管理
1.記憶體管理簡介 stm32f103zet6內部有64kb的sram記憶體,加上外擴的128kb容量的sram後,可使用的記憶體還是比較多的。本例程將介紹一種簡單的記憶體管理方式 即分塊記憶體管理 來有效管理這些記憶體,類似於c語言中通過malloc函式和free函式來申請和釋放記憶體 記憶體管理...
用STM32CubeMX建立FreeRTOS專案
1.目標,pg13,pg14雙線程雙閃燈。2.測試平台 stm32f429i disco keil v5.13.0.0 cubemx 4.8.0 3.步驟 3.1 開啟cube,pg13,13設為輸出,rcc選外部晶振,點選freertos 3.2 時鐘配置介面 enable css,配置成系統主頻...