FLASH_BUSADDR

总览

本示例主要介绍获取flah "DATA"分区的的信息。

准备及使用步骤

  • 使用步骤:
  • 插入将板子的USB电源线,USB电源线默认连接UART0;
  • 编译 customer_app/periperal/demo_flash 工程并下载工程,编译命令: genromap <chip name>,<chip name>可选择 BL602 , BL702
  • 打开一个串口终端窗口(波特率为2000000,用于接收和发送uart消息);
  • 串口终端输入 demo_hosal_flash_busaddr ,表示启动 flash_busaddr的demo;
  • 此时会打印flash DATA分区的信息,表示该demo成功运行。

应用实例

  • 通过 hosal_flash_open 打开"DATA"分区。HOSAL_FLASH_FLAG_BUSADDR 表示打开该分区的方式为flash真实的BUS物理地址,而不是偏移量。
hosal_flash_dev_t *p_flash;

/* flash partition open use address 0 */
p_flash = hosal_flash_open("DATA", HOSAL_FLASH_FLAG_ADDR_0 | HOSAL_FLASH_FLAG_BUSADDR);
if (p_flash == NULL) {
    blog_error("no partition name DATA!\r\n");
    return;
}
  • 通过 hosal_flash_info_get 获取分区信息,并打印出来。
hosal_logic_partition_t part;

/* get flash partition info */
hosal_flash_info_get(p_flash, &part);
blog_info("partition name         : %s\r\n", part.partition_description);
blog_info("partition start address: 0x%08x\r\n", part.partition_start_addr);
blog_info("partition length       : %d\r\n", part.partition_length);
  • 通过 hosal_flash_close 接口关闭。
/* close the flash partition and free buf */
hosal_flash_close(p_flash);