跳到主要内容

内存管理实验

Memory Management

前言

这是一个内存管理的实验,在 STM32N647 开发板上实现了内存管理的功能。

本实验对应的工程文件夹为:<STM32N647 开发板软件包路径>/Projects/36_Memory_Management

实验准备

  1. 将 STM32N647 开发板软件包中提供的示例 FSBL 固件烧录到 STM32N647 开发板上。
FSBL 烧录说明

本实验使用的 FSBL 为 STM32N647 开发板软件包中的示例 FSBL,请根据 示例 FSBL介绍 中的说明烧录对应 fsbl.hex

不同的的实验中,若使用相同的 FSBL,则无需重复烧录。

  1. 将工程文件夹下 Binary 目录下的 appli.hex 依次烧录到 STM32N647 开发板上。
烧录说明

烧录顺序不影响烧录结果。

使用 STM32CubeProgrammer 烧录

  1. 将 LCD 通过 FPC 延长线接入 STM32N647 开发板核心板的 RGBLCD 接口。
LCD 适配说明

本实验例程仅支持 正点原子 RGB 触摸屏模块

  1. 将 STM32N647 开发板的 BOOT 模式配置为 Flash boot 模式
STM32N647 开发板 BOOT 模式配置说明

通过 STM32N647 开发板 P6 的跳线帽配置其 BOOT 模式:

Development boot:B1 接 3V3

Flash boot:B0、B1 都接 GND

  1. 将对应接口的电源线接入 STM32N647 开发板底板的 USB Type-C 接口或 DC 接口,为其进行供电,并将 K1 自锁开关切换到开启状态。

实验现象

DS0 灯以一定的频率闪烁。

LCD 上显示当前使用的内存区域,以及所有内存区域的使用情况。

每按下 KEY0 按键,可从当前使用的内存区域中申请一块内存,并往申请到的内存中写入示例数据,然后在 LCD 上显示申请到的内存地址以及内存中的数据。

每按下 KEY1 按键,可释放当前申请到的内存到原内存区域。

每按下 KEY_UP 按键,可切当前使用的内存区域。