野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11581|回复: 2

火哥,求救

[复制链接]
发表于 2016-10-2 17:29:08 | 显示全部楼层 |阅读模式
今天我在移植UCOSIII的时候,忘记添加这个函数:
BSP_Tick_Init();
结果系统一直跑步起来。后来看了你例程,用的是以下这个:
//获取 CPU 内核时钟频率(SysTick 工作时钟)
cpu_clk_freq = BSP_CPU_ClkFreq();                           /* Determine SysTick reference freq.                    */
//根据用户设定的时钟节拍频率计算 SysTick 定时器的计数值。用户自己定义了OSCfg_TickRate_Hz = 1000HZ       
#if (OS_VERSION >= 30000u)
    cnts  = cpu_clk_freq / (CPU_INT32U)OSCfg_TickRate_Hz;       /* Determine nbr SysTick increments.                    */
#else
    cnts  = cpu_clk_freq / (CPU_INT32U)OS_TICKS_PER_SEC;        /* Determine nbr SysTick increments.                    */
#endif
                //调用 SysTick 初始化函数,设置定时器计数值和启动定时器
    OS_CPU_SysTickInit(cnts);                                 /* 这里默认的是最高优先级,根据实际情况修改             */

不理解,火哥求解释解释。。

主题推荐

回复

使用道具 举报

 楼主| 发表于 2016-10-2 17:29:58 | 显示全部楼层
为什么不加这个函数就跑不起来,加了才能跑起来。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-10-2 18:08:01 | 显示全部楼层
解决了,火哥,跟踪函数,阅读以下,才发现原来这里就死配置一个系统滴答定时器,使得系统滴答定时器得以工作。
为ucosIII系统提供一个时钟节拍。
1.png
2.png
3.png
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-23 12:20 , Processed in 0.036275 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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