STM32F7系列定时器TIM1/TIM8详解及资源读取问题
需积分: 46 160 浏览量
更新于2024-08-05
收藏 20.95MB PDF 举报
"STM32F7系列微控制器的TIM1/TIM8高级控制定时器功能详解及SpringBoot项目资源读取问题"
STM32F7系列微控制器中的TIM1和TIM8是可编程高级控制定时器,它们包含了重要的时基单元,用于执行精确的定时任务。这些定时器具有16位计数器,可以实现递增、递减或交替计数,并且计数器的时钟可以通过预分频器进行分频。计数器、预分频器和自动重载寄存器都可以在运行时通过软件进行读写操作。
时基单元主要包括以下部分:
1. 计数器寄存器(TIMx_CNT):记录当前计数值。
2. 预分频器寄存器(TIMx_PSC):设置预分频系数,范围从1到65536,用于调整计数器时钟频率。
3. 自动重载寄存器(TIMx_ARR):预装载值,当计数器达到这个值时触发更新事件。
4. 重复计数器寄存器(TIMx_RCR):允许设定在连续多次计数器上溢后才触发一次更新事件。
自动重载寄存器是预装载的,其内容可以立即或在更新事件时传递到影子寄存器,这取决于TIMx_CR1寄存器中的ARPE位。更新事件通常在计数器达到上溢或下溢条件时触发,也可以由软件生成。
计数器的启动和停止受控于TIMx_CR1寄存器的CEN位。当CEN置位时,计数器将在下一个时钟周期开始计数。预分频器的改变是实时的,新的预分频比会在下一个更新事件时生效。
关于SpringBoot项目运行时无法读取resources文件的问题,这通常是由于SpringBoot打包成jar文件后,类路径资源的访问方式发生了变化。在jar中,静态资源不再直接存在于文件系统路径下,而是被打包到jar内部。因此,要正确读取这些资源,需要使用`Class.getResource()`或`ClassLoader.getResource()`方法,配合`InputStream`来打开并读取文件。确保在代码中使用适当的相对路径,并考虑使用`ResourceUtils`等Spring工具类来简化操作。此外,配置SpringBoot的`spring.resources.static-locations`属性也可以帮助指定资源的位置。
点击了解资源详情
点击了解资源详情
点击了解资源详情
161 浏览量
2023-05-24 上传
2023-05-24 上传
168 浏览量
411 浏览量
207 浏览量
189 浏览量
杨_明
- 粉丝: 80
- 资源: 3862