- 打卡等级:初来乍到
- 打卡总天数:5
- 最近打卡:2025-04-30 07:46:22
荣誉版主
- 积分
- 2319
|
发表于 2024-7-15 19:43:38
|
显示全部楼层
本帖最后由 tzz1983 于 2024-7-15 19:45 编辑
你的编思路也很奇怪, 读个键盘代码很复杂吗, 或者说很耗时吗, 为什么要单独搞个任务去读按键?
本来一个任务就可以做的事情, 分了好几个任务, 然后还搞不懂任务之间的关系.... 很难点透你啊
void Task_xxx(void *p_arg)
{
if(p_arg);
while (1)
{
static int js=0; //用一个静态变量计数, 来记录当前状态已持续的时间.
int key;
key = ReadKeyboard(); //读键盘的值;
{
根据 key 和 js 的值做出决策, 改变或保持灯和声间. 或复位/改变 js 的值,
整个代码就这么完成了, 没必要读个键盘搞个任务, 一会挂起, 一会解除挂起. 有这个切换时间, 几次键盘都读出来了
}
js++;
OSTimeDly(5); // 5毫秒查询一次已经很快了, 你可以自己设定查询频率
}
}
|
|