當前位置:首頁 » 硬碟大全 » stm32串口如何緩存數據
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

stm32串口如何緩存數據

發布時間: 2023-06-30 03:08:38

『壹』 stm32flash寫數據怎麼存儲

在實際的項目中,我們可能需要保存一些數據,希望下次啟動的時候數據還可以使用。在這里介紹使用STM32內部flash來保存數據的方法。
在這里我使用STM32F103C8T6這款晶元做介紹。flash大小64K。本例子0x0800 0000~0x800
3000作為bootloader使用,0x0800 3000~0x0800 C000作為程序存放地址,0x0800 C000~0x0800
FFFF作為本例子的數據存放區域。
程序:
#include "stm32f10x_flash.h"
#define PageSize 1024
u32 data[10] = {1,2,3,4,5,6,7,8,9,10};
u32 data_temp[10] = {0};
u8 flash_write(u32 StartAddr,u32 *p_data,u32 size);
int flash_read(u32 StartAddr,u32 *p_data,u32 size);

『貳』 STM32的DMA功能能夠實現串口接收數據直接存儲到Flash中嗎

串口接收數據是可以用DMA中斷方式的,這和存儲到哪裡沒有關系,接收數據和存儲到FLASH中關不矛盾,存儲到FLASH中需要寫FLASH,當DMA接收到數據後,你就把數據寫到FLASH就可以了,不過並不推薦你這么做,因為晶元的FLASH擦寫的次數有限,如果確實有數據需要斷電保存,可以使用EEPROM,數據存儲量大,成本低,編程也比較簡單,另外推薦你有問題去21IC電子工程師論壇,關於STM32可以詢問正點原子大神,不要說編程,就連方案都可以給你很好的建議,可以說關於STM32,沒有他不會的。