完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
[C] 纯文本查看 复制代码
/** * @brief Configures the Systick clock source. * @param SysTick_CLKSource: specifies the SysTick clock source. * This parameter can be one of the following values: * @arg SysTick_CLKSource_HCLK_Div8: AHB clock divided 3yòÔ by 8 selectedèëÑ¡ as SysTick clock source.à′Ô′ * @arg SysTick_CLKSource_HCLK: AHB clock selected as SysTick clock source. * @retval None */void SysTick_CLKSourceConfig(uint32_t SysTick_CLKSource){ /* Check the parameters */ assert_param(IS_SYSTICK_CLK_SOURCE(SysTick_CLKSource)); if (SysTick_CLKSource == SysTick_CLKSource_HCLK) { SysTick->CTRL |= SysTick_CLKSource_HCLK; } else { SysTick->CTRL &= SysTick_CLKSource_HCLK_Div8; }} 从注释和源代码上分析,FreeRTOS的抵达定时器时钟可以设置成 HCLK 或者 HCLK/8 为什么还把原来的HCLK/8 改成了HCLK ??? 是哪里我没有考虑到? |
|
相关推荐
6个回答
|
|
因为FreeRTOS内部使用的是HCLK的!
|
|
|
|
使用哪个时钟不是自己设定的吗? 你说的内部使用HCLK 从哪里体现出来的?是FreeTROS强行规定的吗?
|
|
|
|
看FreeRTOS源码,FreeRTOS也会自己初始化systick,初始化的时候就是HCLK。
|
|
|
|
FreeRtos在哪里初始化systick?
|
|
|
|
额,原子例程在进入FreeRTOS之前,就用delay_init(180)来初始化滴答定时器,我如果用1/8HCLK,那不是相应的把180改为180/8就可以啦(但它由于不是整数,所以感觉还是用HCLK比较方便),除此之外还有其他别的原因吗 ?
|
|
|
|
看”第29.1讲 FreeRTOS任务调度器开启(上)”里面讲到了任务调度器开启的过程中,配置系统滴答定时器的时候选择了内核时钟做为时钟源,并且使用 (SystemCoreClock) 做为时基,对F103 就是72M。现在明白为什么左工让看RTOS源码里用的就是系统HLK而不是HLK/8!
|
|
|
|
只有小组成员才能发言,加入小组>>
798 浏览 0 评论
1155 浏览 1 评论
2531 浏览 5 评论
2863 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2713 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1088浏览 3评论
195浏览 2评论
461浏览 2评论
374浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
456浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 15:52 , Processed in 1.226853 second(s), Total 88, Slave 69 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号