硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2979|回复: 2
收起左侧

[FreeRTOS] 请教FreeRTOS移植的一些疑问?

[复制链接]

10

主题

46

回帖

76

积分

初级会员

专业做地暖控制器

积分
76
发表于 2020-12-11 11:21:19 | 显示全部楼层 |阅读模式
本帖最后由 chen84992805 于 2020-12-11 13:52 编辑

1.看了硬汉大哥的FreeRTOS教程,FreeRTOS移植那一章,FreeRTOS已经为开发这实现了SVC_Handler  PendSV_Handler SysTick_Handler这三个函数,看网上的一些其他的移植教程,还是把FreeRTOSConfig.h头文件中的#define xPortSysTickHandler SysTick_Handler注释掉,自己实现SysTick函数,并把
xPortSysTickHandler();函数放在systick中断服务函数里;
//systick中断服务函数void SysTick_Handler(void){            
     #if (INCLUDE_xTaskGetSchedulerState  == 1 )     
    if (xTaskGetSchedulerState() != taskSCHEDULER_NOT_STARTED)     
    {   
        #endif  /* INCLUDE_xTaskGetSchedulerState */          
       xPortSysTickHandler();   
       #if (INCLUDE_xTaskGetSchedulerState  == 1 )      
    }   
#endif  /* INCLUDE_xTaskGetSchedulerState */
}
这样如果改心跳频率时,还要改systick的配置函数;比不注释掉#define xPortSysTickHandler SysTick_Handler
不是麻烦多了吗?
2.在port.c文件中没看到类似systick的初始配置函数





回复

使用道具 举报

10

主题

46

回帖

76

积分

初级会员

专业做地暖控制器

积分
76
 楼主| 发表于 2020-12-14 14:41:56 | 显示全部楼层
硬汉大哥按照你的教程配置可正常运行,怎么还有好多人用上面的方式
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106749
QQ
发表于 2020-12-15 08:41:24 | 显示全部楼层
chen84992805 发表于 2020-12-14 14:41
硬汉大哥按照你的教程配置可正常运行,怎么还有好多人用上面的方式

1、直接修改早年uCOS时代遗留下来的方式,别人移植的不方便,容易忘记修改。

现在基本上统一采用#define xPortSysTickHandler SysTick_Handler

2、有
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-4 08:45 , Processed in 0.259597 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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