hur.cn - 华软网

 热门搜索

谁可以给我一个好的解决方案!

  作者:未知    来源:网络    更新时间:2011/5/15
从串口持续的前往一组字符串:7E 01 02 03 84  我现在以前往字符串的第二个字节作为判断条件去触发一个函数。
表达式以下:
  if(rxdata[1]==0x01)//如果前往的第二个字节为01
    {
      OnButton1();//去触发函数
    }

如果按上面的方式写程序,串口每前往一次字符串,只需条件合适,就会去触发一次函数。

我需要的是:如果前往字符串第二字节为01,去触发函数一次就够了,不用每次前往都去触发函数。

要完成这样的进程,应该怎么写程序?

自己照旧新手,还望高手们能写个示例代码并加以注释。

万分谢谢!!
---华软 网友回答---
增加一个静态变量或外部变量作为判断,以下
bool can_act(true);//外部变量
……
if(can_act & (0x01==rxdata[1]))
{
OnButton1();
can_act = false;
}
---华软网友回复---
引用 1 楼 melos 的回复:
增加一个静态变量或外部变量作为判断,以下
bool can_act(true);//外部变量
……
if(can_act & (0x01==rxdata[1]))
{
OnButton1();
can_act = false;
}

顶一个
---华软网友回复---
引用 1 楼 melos 的回复:
增加一个静态变量或外部变量作为判断,以下
bool can_act(true);//外部变量
……
if(can_act & (0x01==rxdata[1]))
{
OnButton1();
can_act = false;
}

这个做法看上去好像能够,但实际尝试时照旧不行,照旧持续的去触发函数。
---华软网友回复---
引用 3 楼 lawbt888 的回复:
引用 1 楼 melos 的回复:
增加一个静态变量或外部变量作为判断,以下
bool can_act(true);//外部变量
……
if(can_act & (0x01==rxdata[1]))
{
OnButton1();
can_act = false;
}

这个做法看上去好像能够,但实际尝试时照旧不行,照旧持续的去触发函数。

就应该用这类方法啊
除非你用错了
---华软网友回复---
问题已解决,就是用1楼的措施,谢谢1楼!      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。