汕头网页网站制作,深圳入户,泉州免费网站制作,wordpress分类目录查不到文章首先对STM32中存储数据的地方有一个了解
一个是FLASH,一个是RAM RAM是易失存储器#xff0c;FLASH是非易失存储器#xff0c;这是最直观的解释。
主要记住以下几点#xff1a;
RAM#xff08;随机存储器#xff09;#xff1a;既可以从中读取数据#xff0c;也可以写…首先对STM32中存储数据的地方有一个了解
一个是FLASH,一个是RAM RAM是易失存储器FLASH是非易失存储器这是最直观的解释。
主要记住以下几点
RAM随机存储器既可以从中读取数据也可以写入数据但电源关闭时存于其中的数据就会丢失。 RAM的读写速度相对FLASH是很快的但是掉电丢失。 heap stack data(变量)都在RAM中存储
FLASH(闪存)不会掉电丢失数据。主要用来存储代码和cost data 其次对stm32中FLASH和RAM的内存地址的认识
stm32中的RAM一般是SRAM(静态随机存储器)起始地址为0x20000000
Flash的起始地址为0x80000000.
也可以在设置里边看到 然后对一个固定的地址写入一个值 int *p(int*)0x20003000;*p0xFCF; 这样就代表将值写入到了0x20000000这个地址了 对写入的值进行调试查看
点击memory窗口在address中输入地址就可以查看到 总共有8个数字变了颜色这是16进制的数相当于是一个是4位两个相当于8位即一个byte
可以看到显示的是CF 0F 00 00 在STM32微控制器中RAM的大小通常以字节byte为单位进行度量。
CPUSTM32F103RCT6LQFP64FLASH:64KBRAM:20KB
1、写入值的值的大小取决于RAM的总大小以及选择的数据类型 例如 stm32F103C8T6的RAM为20kb 20*102420480个字节
2、并且想在0x20003000写入一个值这个值的最大的大小为32的无符号整型 32位的无符号的整形占4个字节意味写入的最大值为0xFFFFFFFF
3、注意写入的值有大小端的问题