SpringBoot jar运行时读取resources文件问题解决方案

需积分: 46 149 下载量 162 浏览量 更新于2024-08-05 收藏 20.95MB PDF 举报
本文档主要介绍了STM32F75xxx和STM32F74xxx系列基于ARM Cortex-M7内核的32位高级微控制器的内存管理与外围设备特性。首先,文档强调了它针对应用开发人员,提供了详细的信息,包括存储器与外设的使用、系统架构、存储器组织、以及嵌入式Flash的相关操作。 在系统架构部分,文档详细描述了多AHB总线矩阵,展示了微控制器如何通过AHB、APB总线桥以及多个子总线如CPUAXIM、ITCM、DTCM、CPUAHBS、DMA存储器总线等进行通信。每个总线及其子系统都用于不同功能,例如CPU与其他模块的数据交换、DMA(直接内存访问)控制和高速接口如以太网、USB和LCD-TFT控制器。 存储器组织重点关注嵌入式Flash,它是微控制器的重要组成部分。Flash具有不同的特性,如可编程/擦除操作、读访问延迟,以及对控制寄存器的管理,如解锁操作,这些都是确保代码存储和更新的关键。文档还提到了内部SRAM,这是处理短时间内的临时数据存储的关键区域。 值得注意的是,文档中提到了关于“边界页”和“Cellular RAM 1.5”的概念,这可能与嵌入式系统的内存管理有关,特别是针对像SpringBoot这样的应用程序,当将应用打包成jar并在资源目录下运行时,可能会遇到读取文件的问题。这里的“边界页”可能指的是在内存管理中,为了优化性能或内存利用率,避免突发访问跨越页边界的限制。解决这个问题通常需要对内存布局和访问策略有深入理解,并可能涉及调整配置参数如FMC_BCR1的CPSIZE位,以确保正确地处理存储器页的大小和访问方式。 此外,文档还提到了同步NOR Flash的等待管理机制,即在完成配置后的延迟周期内,会检查NWAIT信号的状态来决定是否进入等待状态,以确保数据的有效性和时序一致性。这个过程对于实现稳定且高效的内存访问至关重要。 本文档不仅是一份技术指南,还包含了解决实际开发中遇到问题的宝贵信息,特别是在处理STM32F7系列微控制器的内存管理和外围设备操作时,对于开发者来说,是不可或缺的参考资料。