STM32F446RC运行在180MHz下,SysTick能配置成100ms一次吗?
STM32F446RC运行在180MHz下,SysTick能配置成100ms一次吗?那如果配置成1s一次呢?
415826092
建议不要改systick。如果需要自定义时基可以考虑使用timer6和timer7 我的意思也是楼上!!配置任意时间都可以,但是作为滴答时钟,还是配置1ms一次,比较好,如果需要其他时间计算,可以加一个变量解决!!!!:D:D 斜阳__ 发表于 2017-7-14 09:20
建议不要改systick。如果需要自定义时基可以考虑使用timer6和timer7
感谢回复!原因是什么? MrJiu 发表于 2017-7-14 09:26
我的意思也是楼上!!配置任意时间都可以,但是作为滴答时钟,还是配置1ms一次,比较好,如果需要其他时间 ...
感谢回复!原因是什么? liangliangwa 发表于 2017-7-22 09:12
感谢回复!原因是什么?
在无rtos的时候,HAL库用SysTick作为1ms时间基准。当有rtos的时候,rtos占用systick,同时要为HAL库指定另一个时钟。所以,一般不要修改Systick的配置 斜阳__ 发表于 2017-7-22 09:17
在无rtos的时候,HAL库用SysTick作为1ms时间基准。当有rtos的时候,rtos占用systick,同时要为HAL库指定 ...
时间基准不用1ms的行不?我现在有RTOS,我只是想让系统运行慢一点,如果修改成10ms的systick会怎么样? 修改rtos的配置 斜阳__ 发表于 2017-7-22 09:27
修改rtos的配置
你的意思是修改RTOS调度时间,也不能修改systick配置的时间?systick常规做法都是配置为1ms,但是也有配置1us的,那么我就想到配置成10ms了,还是不太理解你所说的尽量不要修改systick配置背后的深意,望详释! liangliangwa 发表于 2017-7-22 09:32
你的意思是修改RTOS调度时间,也不能修改systick配置的时间?systick常规做法都是配置为1ms,但是也有配 ...
因为rtos已经接管了Systick的相关配置工作,所以不要自己去修改相应的寄存器。你只需要修改相应的配置参数就好
一下代码存在于freertos的文件中。
#define portSTACK_GROWTH ( -1 )
#define portTICK_PERIOD_MS ( ( TickType_t ) 1000 / configTICK_RATE_HZ )
#define portBYTE_ALIGNMENT 8
页:
[1]
2