一、新建工程
1.2、配置时钟
1.3、修改main文件
#include <rtthread.h>
#include <rtdevice.h>
#include <board.h>
#define DBG_TAG "main"
#define DBG_LVL DBG_LOG
#include <rtdbg.h>
#define LED0 GET_PIN(C, 3)
int main(void)
{
int count = 1;
rt_pin_mode(LED0, PIN_MODE_OUTPUT);
while (count++)
{
rt_pin_write(LED0, !rt_pin_read(LED0));
rt_thread_mdelay(500);
}
return RT_EOK;
}
1.4、编译下载结果
打印RTT版本,运行灯闪烁。
二、FAL移植
2.1、fal分区管理
通过fal分区管理学习使用 fal 处理以下问题:
• 使用 fal 管理多个 Flash 设备
• 创建分区表
• 使用 fal 操作分区表
本例程使用到的硬件资源如下所示:
• UART1 (Tx: PA9; Rx: PA10)
• 片内 FLASH (1024KBytes = 8*128KBytes)
• 片外 Nor Flash (16MBytes)
内部FLASH分区
外部FLASH分区
2.2、添加内部FLASH
2.3、添加外部SPI
2.4、使用 FAL
使用 FAL 的基本步骤如下所示:
1、添加fal软件包。
2、FAL 移植:定义 flash 设备、定义 flash 设备表、定义 flash 分区表。以下主要对步骤 2 展开讲解。
3、调用 fal_init() 初始化该库:移植完成后,可在应用层调用,如在 main 函数中调用。
2.5、添加fal软件包
fal层作用