OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4068|回复: 3

FreeRTOS时钟节拍定时器使用

[复制链接]

77

主题

203

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1208
金钱
1208
注册时间
2017-8-25
在线时间
167 小时
发表于 2019-9-18 20:58:09 | 显示全部楼层 |阅读模式
3金钱
FreeRTOS在时钟节拍定时器中断处理任务是在  vApplicationTickHook()钩子函数里写么

最佳答案

查看完整内容[请看2#楼]

在嘀嗒定时器的中断里啊,会操作任务控制块TCB进行任务切换 void xPortSysTickHandler( void ) { /* The SysTick runs at the lowest interrupt priority, so when this interrupt executes all interrupts must be unmasked. There is therefore no need to save and then restore the interrupt mask value as its value is already known - therefore the slightly faster vPortRaiseBASEPRI() function is used ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

7

帖子

0

精华

新手上路

积分
31
金钱
31
注册时间
2019-5-6
在线时间
4 小时
发表于 2019-9-18 20:58:10 | 显示全部楼层
在嘀嗒定时器的中断里啊,会操作任务控制块TCB进行任务切换

void xPortSysTickHandler( void )
{
        /* The SysTick runs at the lowest interrupt priority, so when this interrupt
        executes all interrupts must be unmasked.  There is therefore no need to
        save and then restore the interrupt mask value as its value is already
        known - therefore the slightly faster vPortRaiseBASEPRI() function is used
        in place of portSET_INTERRUPT_MASK_FROM_ISR(). */
        vPortRaiseBASEPRI();
        {
                /* Increment the RTOS tick. */
                if( xTaskIncrementTick() != pdFALSE )
                {
                        /* A context switch is required.  Context switching is performed in
                        the PendSV interrupt.  Pend the PendSV interrupt. */
                        portNVIC_INT_CTRL_REG = portNVIC_PENDSVSET_BIT;
                }
        }
        vPortClearBASEPRIFromISR();
}
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2019-9-19 02:56:59 | 显示全部楼层
帮顶
回复

使用道具 举报

77

主题

203

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1208
金钱
1208
注册时间
2017-8-25
在线时间
167 小时
 楼主| 发表于 2019-9-21 21:33:58 | 显示全部楼层
yulanhao 发表于 2019-9-20 19:14
在嘀嗒定时器的中断里啊,会操作任务控制块TCB进行任务切换

void xPortSysTickHandler( void )

那vApplicationTickHook()钩子函数有什么用
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 22:29

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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