华芯微特开发论坛

 找回密码
 立即注册
搜索
热搜: SWM341 资料
查看: 1505|回复: 0

SWM341系列SFC(SPI- -Flash )专用高速接口

[复制链接]

32

主题

78

帖子

9万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
90759
发表于 2024-1-4 13:54:42 | 显示全部楼层 |阅读模式
SPI-Flash-Control 模块 作为 AMBA slave,可以接收 CPU、Cache、DMA 三类 AHB master 的访问,实现对 SPI-Flash 的高速访问,简化了用户适配不同型号的 SPI-Flash 步骤,特点有:支持 4 线快速读操作,Dummy clock 个数可配置,读命令可配置,读写操作仅支持 WORD。

SFC 可以将片外的 SPI-Flash 初始化挂载至总线上, 将其映射至 MCU 内部, 如此一来, 读取数据 可以直接访问 MCU 内部 4G 地址空间( 0x70000000 ~ 0x7FFFFFFF)即可, 读取速度超乎你想象!
但需要特别强调 : 写入数据仍需要调用 SFC_Write() 来完成,且仅支持 4 字节 访问, 即 读 和 写 都必须
遵循 32 bit 地址对齐 & 数据量对齐.


对于如何导入 UI 素材至 SPI-Flash,按 Scatter File 分为 2 种方式:
1、No SFC :用户使用 TF-SD 卡、 U 盘、 个人 PC 等工具 ,借助 SDIO / USB / UART 等外设通讯接口,在芯
片通电工作后,通过运行用户自行编写的程序,完成 UI 素材数据的导入,对于本例程而言,UI 素材 以 FAT32 文件
系统 的文件格式,拷贝到 SpiFlash 中,此方式限制较少,有利于素材经常动态更新替换的场合;

66779659647dc37817.png


2、 SFC : 在 Keil 下进行程序下载的同时下载导入 UI 素材至 SPI-Flash,需要提前将 UI 素材 通过 PC 端
工具转换为 C 数组的形式以嵌入 Keil 工程中,并对 C 数组添加 __attribute__((section(".SDRAM2"))) 关键
字,经过编译、链接后放置在 LR_SPIFLASH (section),此方式需要在 KEIL 环境下的”FLASH DOWNLOAD" 下载算法
中加载 外挂 SpiFlash 的 下载算法,并将 SystemInit / sfc_init / sdram_init 函数调用放在 Reset_Handler
的 __main 前,原因是 C 库__main()内完成 RW-Data(.data 段初始化)的加载。

5921659648036ef85.png
1640065964811b18ed.png




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|华芯微特开发论坛

GMT+8, 2025-1-10 06:59 , Processed in 0.034166 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表