
ZET6芯片![]() 该芯片内部自带了64k字节的SRAM,以及512K的内部FLASH ![]() IROM1=0x80000=512K 和IRAM1=0X10000=64k的大小 同时开发板外置了1M字节外部SRAM芯片(IS62WV51216) ![]() 1M字节(即512K*16位)其中512K是由19根地址线决定,219=512K; 16位是由16根数据线决定的 64k字节内部SRAM程序相关
1M字节外部SRAM程序相关
分块式内存管理 ![]() 分块式内存管理由内存池和内存管理表两部分组成。内存池被等分为 n块,对应的内存管理表,大小也为 n,内存管理表的每一个项对应内存池的一块内存。 内存管理表的项值代表的意义为:当该项值为 0 的时候,代表对应的内存块未被占用,当该项值非零的时候,代表该项对应的内存块已经被占用,其数值则代表被连续占用的内存块数。比如某项值为 10,那么说明包括本项对应的内存块在内,总共分配了 10 个内存块给外部的某个指针。 内存分配方向是从顶->底的分配方向。即首先从最末端开始找空内存。当内存管理刚初始化的时候,内存表全部清零,表示没有任何内存块被占用 注: 当涉及到跑算法,GUI应用等内置的内存不够用时,就用外部的SRAM来扩充内存 程序数据的存储区域 下载到flash的有:Code: 代码 RO-data:程序定义的常量 RW-data:已初始化的非0全局变量,当程序初始化时会拷贝到RAM中去 下载到RAM的有:RW-data:已初始化的全局变量 ZI-data:未初始化的全局变量,以及初始化为0 的变量 STM32F103ZET6的flash资源详解 ZET6芯片内部内置了512K字节的flash,用于存放代码和数据常量,是主存储块,起始地址为0x08000000,这是程序执行的起始地址,此时的BOOT0和BOOT1都接GND.被划分为256页,每页2K字节 ![]() 同时开发板外置了16M字节的外部flash芯片,即为W25Q128 ![]() 采用spi通信传输,分成256个块(BLOCK),每块64k字节,每块又分成16个扇区(sector),每扇区4K字节 相当于stm32外接了一个硬盘,虽调用速度慢,但数据不分丢失,一般用于存放FATFS文件系统,字库,图像,日志等
———————————————— 版权声明:Psyduck_ing 如有侵权请联系删除 |
STM32 GUI LTDC 最大像素时钟评估方法
【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查
OpenBLT移植到STM32F405开发板
为什么要先开启STM32外设时钟?
【STM32MP157】从ST官方例程中分析RPMsg-TTY/SDB核间通信的使用方法
【经验分享】STM32实例-RTC实时时钟实验④-获取RTC时间函数与中断服务函数
STM32 以太网 MAC Loopback 的实现
STM32功能安全设计包,助力产品功能安全认证
基于STM32启动过程startup_xxxx.s文件经验分享
HRTIM 指南