打印

系统状态判定,条件编译

[复制链接]
1712|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
先看热闹|  楼主 | 2011-5-11 15:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <REGX51.h>
#define LED_FLASH_T 10000

void LEDs_Move();
void LEDs_Error();
void LEDs_Snake();

void delay(unsigned int t)
{
  for(;t>0;t--);  // 延时循环
}

#ifndef true
#define true 1
#endif

#define TASK_1 1
#define TASK_2 2

  void main()
{
  unsigned char System_Status = true;
  unsigned char System_Task = TASK_2;
  
  while(1)
  {
    // 程序主任务区
    // ............
    // 程序主任务区
   if(System_Status == true)   // 当系统处于正常状态
    {
      if(System_Task == TASK_1) // 程序分支一
      {
        LEDs_Move();         // 跑马灯指示系统正常
      }
      else if(System_Task == TASK_2) // 程序分支二
      {
        LEDs_Snake();     // 跑马灯蛇形花样指示
      }
    }
    else             // 当系统发生错误
    {
      LEDs_Error();       // 跑马灯指示错误
    }
   
  }

这是跑马灯蛇形变样的部分代码。对系统当前状态的判定是通过检验变量System_status的值来实现的。蓝色的部分是对它的赋值,但不知以后它的值是如何改变并且检验出来的???System_status是系统变量??而且对红色部分也不太懂,条件编译吗?看不懂

}

相关帖子

沙发
先看热闹|  楼主 | 2011-5-11 17:24 | 只看该作者
则莫回事?我说的不清还是太简单?条件编译,这个我真看不懂,不清楚不好

使用特权

评论回复
板凳
先看热闹|  楼主 | 2011-5-11 22:11 | 只看该作者
还是不清楚

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:好好学习,天天向上 一天不学,自杀重来

2

主题

27

帖子

1

粉丝