stm32d103c8t6存储区存储的C代码示例
时间: 2024-12-08 14:15:10 浏览: 12
STM32F103C8T6是一款基于ARM Cortex-M3内核的微控制器,它包含闪存(Flash)、SRAM(静态随机存取内存)以及其他一些内部存储区域。这里是一个简单的C代码示例,说明如何在不同存储区中操作:
```c
#include "stm32f10x.h" // 引入STM32的头文件
// Flash 存储区
void storeInFlash(uint32_t data) {
HAL_FLASHrase(FLASH_TYPEPROGRAM); // 清除一块Flash区域
HAL_FLASH_Program(FLASH_TYPEPROGRAM, 0x08000000, &data, sizeof(data)); // 写入数据
}
// SRAM 存储区
void storeInRAM(uint32_t* data, uint16_t size) {
uint32_t *ramAddress = (uint32_t*) 0x20000000; // SRAM起始地址
memcpy(ramAddress, data, size * sizeof(uint32_t)); // 复制数据到RAM
}
int main(void) {
uint32_t testData = 0xabcdef12;
// 存储到Flash
storeInFlash(testData);
// 存储到RAM
uint32_t ramArray[4] = {0};
storeInRAM(&ramArray[0], sizeof(ramArray));
return 0;
}
```
阅读全文