亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? tlight_b.lst

?? 時間觸發嵌入式系統設計模式源碼
?? LST
字號:
C51 COMPILER V6.10  TLIGHT_B                                                               04/19/2001 13:58:55 PAGE 1   


C51 COMPILER V6.10, COMPILATION OF MODULE TLIGHT_B
OBJECT MODULE PLACED IN .\TLIGHT_B.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE .\TLIGHT_B.C OPTIMIZE(SIZE) BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /*------------------------------------------------------------------*-
   2          
   3             TLight_B.C (v1.00)
   4          
   5            ------------------------------------------------------------------
   6             
   7             Traffic light control program 
   8          
   9             Duplex version 
  10             - has information about bulb status on other node.
  11          
  12          
  13             COPYRIGHT
  14             ---------
  15          
  16             This code is from the book:
  17          
  18             PATTERNS FOR TIME-TRIGGERED EMBEDDED SYSTEMS by Michael J. Pont 
  19             [Pearson Education, 2001; ISBN: 0-201-33138-1].
  20          
  21             This code is copyright (c) 2001 by Michael J. Pont.
  22           
  23             See book for copyright details and other information.
  24          
  25          -*------------------------------------------------------------------*/
  26          
  27          #include "Main.h"
  28          #include "TLight_B.h"
  29          #include "Port.h"
  30          
  31          // ------ Private constants ----------------------------------------
  32          
  33          // Easy to change logic here
  34          #define ON  0
  35          #define OFF 1
  36          
  37          // Times in each of the (four) possible light states
  38          // (Times are in seconds - must call the update task once per second)
  39          //
  40          #define RED_DURATION  (10)
  41          #define RED_AND_AMBER_DURATION  (10)
  42          
  43          // NOTE: 
  44          // GREEN_DURATION must equal RED_DURATION
  45          // AMBER_DURATION must equal RED_AND_AMBER_DURATION
  46          #define GREEN_DURATION RED_DURATION 
  47          #define AMBER_DURATION RED_AND_AMBER_DURATION
  48          
  49          // Must specify whether this is a MASTER or a SLAVE unit
  50          #define MASTER_SLAVE MASTER
  51          
  52          // ------ Public variable declarations -----------------------------
  53          
  54          extern tByte Tick_message_data_G;  
  55          extern tByte Ack_message_data_G;
C51 COMPILER V6.10  TLIGHT_B                                                               04/19/2001 13:58:55 PAGE 2   

  56          
  57          // ------ Private variables ----------------------------------------
  58          
  59          // The state of the system
  60          static eLight_State Light_state_G;
  61          
  62          // ------ Private function prototypes ------------------------------
  63          
  64          bit TRAFFIC_LIGHTS_Check_for_Hardware_Faults(void) reentrant;
  65          bit TRAFFIC_LIGHTS_Check_Local_Bulb(void);
  66          
  67          /*------------------------------------------------------------------*-
  68          
  69            TRAFFIC_LIGHTS_Init()
  70          
  71            Prepare for scheduling.
  72          
  73          -*-----------------------------------------------------------------*/
  74          void TRAFFIC_LIGHTS_Init(void)
  75             {
  76   1         // Master and slave must start in opposite states
  77   1         if (MASTER_SLAVE == MASTER)
  78   1            {
  79   2            Light_state_G = RED;
  80   2            }
  81   1         else
  82   1            {
  83   2            Light_state_G = GREEN;
  84   2            }
  85   1      
  86   1         // Display safe output until scheduler starts
  87   1         TRAFFIC_LIGHTS_Display_Safe_Output();
  88   1         }
  89          
  90          /*------------------------------------------------------------------*-
  91          
  92            TRAFFIC_LIGHTS_Update()
  93          
  94            Must be scheduled once per second.
  95          
  96          -*------------------------------------------------------------------*/
  97          void TRAFFIC_LIGHTS_Update(void)
  98             {
  99   1         static tWord Time_in_state;
 100   1      
 101   1         // Check for blown bulbs on master or slave
 102   1         TRAFFIC_LIGHTS_Check_for_Hardware_Faults();
 103   1      
 104   1         // This is the main update code
 105   1         switch (Light_state_G)
 106   1            {
 107   2            case RED: 
 108   2               {
 109   3               Red_light = ON;
 110   3               Amber_light = OFF;
 111   3               Green_light = OFF;
 112   3      
 113   3               if (++Time_in_state == RED_DURATION)
 114   3                  {
 115   4                  Light_state_G = RED_AMBER;
 116   4                  Time_in_state = 0;
 117   4                  }
C51 COMPILER V6.10  TLIGHT_B                                                               04/19/2001 13:58:55 PAGE 3   

 118   3      
 119   3               break;
 120   3               }
 121   2      
 122   2            case RED_AMBER: 
 123   2               {
 124   3               Red_light = ON;
 125   3               Amber_light = ON;
 126   3               Green_light = OFF;
 127   3      
 128   3               if (++Time_in_state == RED_AND_AMBER_DURATION)
 129   3                  {
 130   4                  Light_state_G = GREEN;
 131   4                  Time_in_state = 0;
 132   4                  }
 133   3      
 134   3               break;
 135   3               }
 136   2      
 137   2            case GREEN: 
 138   2               {
 139   3               Red_light = OFF;
 140   3               Amber_light = OFF;
 141   3               Green_light = ON;
 142   3      
 143   3               if (++Time_in_state == GREEN_DURATION)
 144   3                  {
 145   4                  Light_state_G = AMBER;
 146   4                  Time_in_state = 0;
 147   4                  }
 148   3      
 149   3               break;
 150   3               }
 151   2      
 152   2            case AMBER: 
 153   2               {
 154   3               Red_light = OFF;
 155   3               Amber_light = ON;
 156   3               Green_light = OFF;
 157   3      
 158   3               if (++Time_in_state == AMBER_DURATION)
 159   3                  {
 160   4                  Light_state_G = RED;
 161   4                  Time_in_state = 0;
 162   4                  }
 163   3      
 164   3               break;
 165   3               }
 166   2      
 167   2            case BULB_BLOWN: 
 168   2               {
 169   3               // Blown bulb detected
 170   3               // Switch all bulbs off
 171   3               // (Drivers won't be happy, but it will be clear
 172   3               //  that something is wrong)
 173   3               Red_light = OFF;
 174   3               Amber_light = OFF;
 175   3               Green_light = OFF;
 176   3      
 177   3               // We remain in this state until state
 178   3               // is changed manually, or system is reset
 179   3               break;
C51 COMPILER V6.10  TLIGHT_B                                                               04/19/2001 13:58:55 PAGE 4   

 180   3               }
 181   2            }
 182   1         }
 183          
 184          /*------------------------------------------------------------------*-
 185          
 186            TRAFFIC_LIGHTS_Check_for_Hardware_Faults()
 187          
 188            Tests for and reports errors.
 189          
 190          -*------------------------------------------------------------------*/
 191          bit TRAFFIC_LIGHTS_Check_for_Hardware_Faults(void) reentrant
 192             {
 193   1         tByte Return = RETURN_NORMAL;
 194   1      
 195   1         // Check the status of the other node
 196   1         if (MASTER_SLAVE == MASTER) 
 197   1            {
 198   2            // This is a master unit
 199   2            // - check the status of the slave unit
 200   2            if (Ack_message_data_G == RETURN_ERROR)
 201   2               {
 202   3               // A bulb has blown on the SLAVE unit
 203   3               Light_state_G = BULB_BLOWN;
 204   3               Return = RETURN_ERROR;
 205   3               }
 206   2            }
 207   1         else
 208   1            {
 209   2            // This is a slave unit
 210   2            // - check the status of the master unit
 211   2            if (Tick_message_data_G == RETURN_ERROR)
 212   2               {
 213   3               // A bulb has blown on the MASTER unit
 214   3               Light_state_G = BULB_BLOWN;
 215   3               Return = RETURN_ERROR;
 216   3               }
 217   2            }
 218   1      
 219   1         // We check the local bulb status every time
 220   1         if (TRAFFIC_LIGHTS_Check_Local_Bulb() == RETURN_ERROR)
 221   1            {
 222   2            Light_state_G = BULB_BLOWN;
 223   2      
 224   2            // Must report this to the other node!
 225   2            if (MASTER_SLAVE == MASTER)
 226   2               {
 227   3               Tick_message_data_G = RETURN_ERROR; 
 228   3               }
 229   2            else
 230   2               {
 231   3               Ack_message_data_G = RETURN_ERROR; 
 232   3               }
 233   2      
 234   2            Return = RETURN_ERROR;
 235   2            }
 236   1      
 237   1         return (bit) Return;
 238   1         }
 239          
 240          /*------------------------------------------------------------------*-
 241          
C51 COMPILER V6.10  TLIGHT_B                                                               04/19/2001 13:58:55 PAGE 5   

 242            TRAFFIC_LIGHTS_Check_Local_Bulb()
 243          
 244            Check the status of the local bulbs (DUMMY FUNCTION HERE)
 245          
 246          -*------------------------------------------------------------------*/
 247          bit TRAFFIC_LIGHTS_Check_Local_Bulb(void)
 248              {
 249   1          // This dummy function confirms the bulbs are OK
 250   1          //
 251   1          // - See Chapter 32 for complete version of this function.
 252   1          return RETURN_NORMAL;
 253   1          }
 254          
 255          /*------------------------------------------------------------------*-
 256          
 257            TRAFFIC_LIGHTS_Display_Safe_Output()
 258          
 259            Used in the event of system failure, etc.
 260          
 261          -*------------------------------------------------------------------*/
 262          void TRAFFIC_LIGHTS_Display_Safe_Output(void)
 263             {
 264   1         if (TRAFFIC_LIGHTS_Check_for_Hardware_Faults() == RETURN_NORMAL)
 265   1            {
 266   2            // Bulbs are OK on both nodes
 267   2            // - best thing to do is to display STOP
 268   2            Red_light = ON;
 269   2            Amber_light = OFF;
 270   2            Green_light = OFF;
 271   2            }
 272   1         else
 273   1            {
 274   2            // At least one bulb has blown 
 275   2            // - best thing we can do is extinguish all bulbs
 276   2            Red_light = OFF;
 277   2            Amber_light = OFF;
 278   2            Green_light = OFF;
 279   2            } 
 280   1         }
 281          
 282          /*------------------------------------------------------------------*-
 283            ---- END OF FILE -------------------------------------------------
 284          -*------------------------------------------------------------------*/


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    211    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      3    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩avvvv在线播放| 久久综合久久综合亚洲| 一区二区三区av电影 | 色丁香久综合在线久综合在线观看| 日本一区二区三区久久久久久久久不 | 91精品国产综合久久精品| 91久久精品网| 精品国产第一区二区三区观看体验| 91麻豆精品91久久久久久清纯| www.亚洲人| 欧美日韩一区在线| 欧美一区午夜精品| 26uuu国产一区二区三区| 国产真实精品久久二三区| 国产三级三级三级精品8ⅰ区| 国产成人精品影视| 亚洲精品菠萝久久久久久久| 欧美日韩中文字幕一区| 久久99久久久欧美国产| 国产精品另类一区| 欧美美女直播网站| 国产精品18久久久| 亚洲国产精品一区二区www| 日韩亚洲欧美一区二区三区| 国产精品一区二区视频| 综合激情成人伊人| 91久久精品国产91性色tv| 亚洲高清久久久| 久久只精品国产| 色屁屁一区二区| 黄色小说综合网站| 一区二区三国产精华液| 精品久久五月天| 欧美影院一区二区| 国产曰批免费观看久久久| 亚洲在线免费播放| 久久久久国产免费免费| 欧美日韩视频不卡| www.一区二区| 国产米奇在线777精品观看| 亚洲激情校园春色| 国产色爱av资源综合区| 欧美日本在线播放| 99久久国产综合精品女不卡| 蜜桃视频一区二区三区在线观看| 亚洲天堂av一区| 精品国产成人系列| 欧美日韩一区二区三区四区五区| 国产传媒日韩欧美成人| 日韩av不卡一区二区| 亚洲精选视频免费看| 久久久91精品国产一区二区精品| 欧美视频在线观看一区二区| 福利一区福利二区| 国产一区二区三区四区在线观看| 午夜视频在线观看一区二区| 国产精品日日摸夜夜摸av| 日韩美一区二区三区| 欧美三级韩国三级日本三斤| 成人av电影在线网| 国产精品一二一区| 久久精品国产久精国产| 天天色天天爱天天射综合| 亚洲五码中文字幕| 亚洲黄色免费网站| 综合久久久久久| 中文字幕视频一区二区三区久| 久久综合国产精品| 日韩欧美国产wwwww| 欧美三区在线视频| 91免费观看在线| 91在线视频官网| 国产成a人无v码亚洲福利| 日本成人在线看| 中文字幕av一区二区三区高| 日韩欧美一级片| 欧美日韩精品一区二区三区蜜桃| 成人h动漫精品一区二| 黄色精品一二区| 国产精品一区2区| 国产成人一区二区精品非洲| 国产美女娇喘av呻吟久久| 国产麻豆日韩欧美久久| 国产精品正在播放| 国产精品18久久久久久久久 | 日韩黄色免费网站| 午夜免费欧美电影| 蜜桃av一区二区三区| 国模无码大尺度一区二区三区| 国产最新精品免费| 成人精品免费看| 在线观看日韩av先锋影音电影院| 91搞黄在线观看| 欧美一区二区三级| 久久久不卡网国产精品一区| 中文无字幕一区二区三区| 国产精品国产三级国产普通话蜜臀| 中文字幕av免费专区久久| 亚洲婷婷综合久久一本伊一区| 亚洲在线视频一区| 久久精品国产一区二区三| 国产.欧美.日韩| 色噜噜狠狠色综合欧洲selulu| 欧美日韩一区 二区 三区 久久精品| 欧美三级蜜桃2在线观看| 日韩一区二区在线观看视频| 久久综合久久久久88| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 狠狠色综合日日| caoporm超碰国产精品| 欧美日韩精品一区二区三区| 日韩免费观看2025年上映的电影| 中文字幕+乱码+中文字幕一区| 一区二区欧美国产| 狠狠色狠狠色合久久伊人| 99久久精品国产麻豆演员表| 欧美久久久久久久久中文字幕| 精品国产人成亚洲区| 亚洲人吸女人奶水| 久草中文综合在线| 色天天综合久久久久综合片| 欧美一级在线视频| 亚洲欧美日韩一区二区| 美女免费视频一区二区| 91免费看视频| 久久久久久久综合狠狠综合| 亚洲专区一二三| 国产高清无密码一区二区三区| 色偷偷久久人人79超碰人人澡| 精品福利视频一区二区三区| 一级女性全黄久久生活片免费| 国产综合久久久久影院| 欧美日韩亚州综合| 国产精品福利一区| 麻豆精品久久精品色综合| 91亚洲精品久久久蜜桃| 日韩欧美在线网站| 一区二区久久久久久| 国产69精品久久777的优势| 日韩美女在线视频| 丝袜美腿高跟呻吟高潮一区| 91小视频在线| 久久久久久久电影| 美女视频黄 久久| 在线91免费看| 亚洲靠逼com| 成人福利视频在线看| 亚洲精品一线二线三线| 日韩av一区二| 欧美高清www午色夜在线视频| 一区二区中文视频| 国产一本一道久久香蕉| 日韩女同互慰一区二区| 日韩精品电影在线| 欧洲一区二区三区在线| 国产精品福利影院| 成人黄色av电影| 国产欧美日韩亚州综合| 麻豆视频一区二区| 欧美变态口味重另类| 午夜精品免费在线| 欧美日韩精品二区第二页| 一区二区三区精品在线观看| 色婷婷激情一区二区三区| 综合激情成人伊人| 色欧美日韩亚洲| 亚洲欧美视频一区| 在线亚洲精品福利网址导航| 18成人在线视频| 99re成人在线| 亚洲欧美色综合| 欧美性感一区二区三区| 亚洲一区二区三区爽爽爽爽爽| 一本到高清视频免费精品| 亚洲欧美激情在线| 色婷婷一区二区三区四区| 亚洲精品videosex极品| 欧美无砖砖区免费| 图片区小说区区亚洲影院| 欧美精品在线观看播放| 免费看精品久久片| 国产亚洲女人久久久久毛片| 国产成人免费av在线| 国产精品久久三区| 色综合视频在线观看| 尤物av一区二区| 欧美剧情电影在线观看完整版免费励志电影 | 亚洲男同性视频| 欧美最猛性xxxxx直播| 日韩精品一级二级 | 国产高清不卡二三区| 国产精品美女一区二区三区 | 久久国产人妖系列| 久久久一区二区三区| 成人久久视频在线观看| 亚洲精品视频在线| 日韩精品一区二区三区在线播放 | 性欧美大战久久久久久久久| 欧美一区二区视频在线观看| 久久成人精品无人区|