硬汉嵌入式论坛

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

[有问必答] 按键压入FIFO函数bsp_PutKey不能在中断中调用吗

[复制链接]

14

主题

207

回帖

254

积分

高级会员

积分
254
发表于 2019-5-16 18:42:17 | 显示全部楼层 |阅读模式
安福莱bsp文件中按键压入FIFO缓冲区函数如下,在中断中使用会工作异常,去掉这个函数异常消失,请问大佬这个函数可以在中断中调用吗?
void bsp_PutKey(uint8_t _KeyCode)
{
        s_tKey.Buf[s_tKey.Write] = _KeyCode;

        if (++s_tKey.Write  >= KEY_FIFO_SIZE)
        {
                s_tKey.Write = 0;
        }
}

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107567
QQ
发表于 2019-5-16 19:29:27 | 显示全部楼层

回帖奖励 +5 个金币

可以的,裸机例子的这个函数都是在滴答中断里面做的扫描
回复

使用道具 举报

14

主题

207

回帖

254

积分

高级会员

积分
254
 楼主| 发表于 2019-5-17 09:25:00 | 显示全部楼层
eric2013 发表于 2019-5-16 19:29
可以的,裸机例子的这个函数都是在滴答中断里面做的扫描

那应该是我程序处理逻辑有些问题,有空再查查看
回复

使用道具 举报

14

主题

207

回帖

254

积分

高级会员

积分
254
 楼主| 发表于 2019-5-17 18:26:46 | 显示全部楼层
复查程序,是调用函数后程序逻辑处理出现混乱导致,结帖。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107567
QQ
发表于 2019-5-19 00:39:21 | 显示全部楼层
龙之谷 发表于 2019-5-17 18:26
复查程序,是调用函数后程序逻辑处理出现混乱导致,结帖。

谢谢告知最后原因。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-6 06:26 , Processed in 0.152407 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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