⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sch51.lst

📁 时间触发嵌入式系统设计模式:使用8051系列微控制器开发可靠应用
💻 LST
📖 第 1 页 / 共 2 页
字号:
 227            adapt, if required, to report errors over serial link, etc.
 228          
 229            Errors are only displayed for a limited period 
 230            (60000 ticks = 1 minute at 1ms tick interval).
 231            After this the the error code is reset to 0. 
 232          
 233            This code may be easily adapted to display the last
 234            error 'for ever': this may be appropriate in your
 235            application.
 236          
 237            See Chapter 10 for further information.
 238          
 239          -*------------------------------------------------------------------*/
 240          void SCH_Report_Status(void)
 241             {
C51 COMPILER V6.10  SCH51                                                                  04/18/2001 16:29:38 PAGE 5   

 242   1      #ifdef SCH_REPORT_ERRORS
 243   1         // ONLY APPLIES IF WE ARE REPORTING ERRORS
 244   1         // Check for a new error code
 245   1         if (Error_code_G != Last_error_code_G)
 246   1            {
 247   2            // Negative logic on LEDs assumed
 248   2            Error_port = 255 - Error_code_G;
 249   2            
 250   2            Last_error_code_G = Error_code_G;
 251   2      
 252   2            if (Error_code_G != 0)
 253   2               {
 254   3               Error_tick_count_G = 60000;
 255   3               }
 256   2            else
 257   2               {
 258   3               Error_tick_count_G = 0;
 259   3               }
 260   2            }
 261   1         else
 262   1            {
 263   2            if (Error_tick_count_G != 0)
 264   2               {
 265   3               if (--Error_tick_count_G == 0)
 266   3                  {
 267   4                  Error_code_G = 0; // Reset error code
 268   4                  }
 269   3               }
 270   2            }
 271   1      #endif
 272   1         }
 273          
 274          
 275          /*------------------------------------------------------------------*-
 276          
 277            SCH_Go_To_Sleep()
 278          
 279            This scheduler enters 'idle mode' between clock ticks
 280            to save power.  The next clock tick will return the processor
 281            to the normal operating state.
 282          
 283            Note: a slight performance improvement is possible if this
 284            function is implemented as a macro, or if the code here is simply 
 285            pasted into the 'dispatch' function.  
 286          
 287            However, by making this a function call, it becomes easier 
 288            - during development - to assess the performance of the 
 289            scheduler, using the 'performance analyser' in the Keil 
 290            hardware simulator. See Chapter 14 for examples for this. 
 291          
 292            *** May wish to disable this if using a watchdog ***
 293          
 294            *** ADAPT AS REQUIRED FOR YOUR HARDWARE ***
 295          
 296          -*------------------------------------------------------------------*/
 297          void SCH_Go_To_Sleep()
 298             {
 299   1         PCON |= 0x01;    // Enter idle mode (generic 8051 version)
 300   1      
 301   1         // Entering idle mode requires TWO consecutive instructions 
 302   1         // on 80c515 / 80c505 - to avoid accidental triggering
 303   1         //PCON |= 0x01;    // Enter idle mode (#1)
C51 COMPILER V6.10  SCH51                                                                  04/18/2001 16:29:38 PAGE 6   

 304   1         //PCON |= 0x20;    // Enter idle mode (#2)
 305   1         }
 306          
 307          /*------------------------------------------------------------------*-
 308            ---- END OF FILE -------------------------------------------------
 309          -*------------------------------------------------------------------*/
C51 COMPILER V6.10  SCH51                                                                  04/18/2001 16:29:38 PAGE 7   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


P1 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0090H  1
P3 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B0H  1
AC . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D6H  1
T0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B4H  1
T1 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B5H  1
EA . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AFH  1
T2 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0090H  1
tLong. . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_LONG   -----  4
sTask. . . . . . . . . . . . . . . . .  TYPEDEF  DATA   STRUCT   -----  7
  pTask. . . . . . . . . . . . . . . .  MEMBER   -----  PTR      0000H  2
  Delay. . . . . . . . . . . . . . . .  MEMBER   -----  U_INT    0002H  2
  Period . . . . . . . . . . . . . . .  MEMBER   -----  U_INT    0004H  2
  RunMe. . . . . . . . . . . . . . . .  MEMBER   -----  U_CHAR   0006H  1
tByte. . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
SCH_tasks_G. . . . . . . . . . . . . .  PUBLIC   DATA   ARRAY    0000H  14
P0_0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0080H  1
P1_0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0090H  1
P0_1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0081H  1
FL . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D1H  1
P2_0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A0H  1
P1_1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0091H  1
P0_2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0082H  1
tWord. . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
P3_0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B0H  1
P2_1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A1H  1
P1_2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0092H  1
P0_3 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0083H  1
P3_1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B1H  1
P2_2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A2H  1
P1_3 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0093H  1
P0_4 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0084H  1
P3_2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B2H  1
P2_3 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A3H  1
P1_4 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0094H  1
P0_5 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0085H  1
EXF2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CEH  1
RD . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B7H  1
P3_3 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B3H  1
P2_4 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A4H  1
P1_5 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0095H  1
P0_6 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0086H  1
P3_4 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B4H  1
P2_5 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A5H  1
P1_6 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0096H  1
P0_7 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0087H  1
P3_5 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B5H  1
ES . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ACH  1
P2_6 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A6H  1
P1_7 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0097H  1
P3_6 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B6H  1
P2_7 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A7H  1
P3_7 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B7H  1
RI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0098H  1
CY . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D7H  1
INT0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B2H  1
INT1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B3H  1
TI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0099H  1
C51 COMPILER V6.10  SCH51                                                                  04/18/2001 16:29:38 PAGE 8   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


_SCH_Add_Task. . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  pFunction. . . . . . . . . . . . . .  AUTO     DATA   PTR      0000H  2
  DELAY. . . . . . . . . . . . . . . .  AUTO     DATA   U_INT    0002H  2
  PERIOD . . . . . . . . . . . . . . .  * REG *  DATA   U_INT    0002H  2
  Index. . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0006H  1
PS . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BCH  1
T2EX . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0091H  1
OV . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D2H  1
SCH_Report_Status. . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
C_T2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C9H  1
WR . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B6H  1
LCD_D4 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B2H  1
LCD_D5 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B3H  1
RCLK . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CDH  1
LCD_D6 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B4H  1
LCD_D7 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B5H  1
TCLK . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CCH  1
PCON . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0087H  1
Error_code_G . . . . . . . . . . . . .  PUBLIC   DATA   U_CHAR   000EH  1
IE0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0089H  1
IE1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008BH  1
CP_RL2 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C8H  1
LCD_EN . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B7H  1
Last_error_code_G. . . . . . . . . . .  STATIC   DATA   U_CHAR   000FH  1
ET0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A9H  1
ET1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ABH  1
TF0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008DH  1
ET2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ADH  1
TF1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008FH  1
TF2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CFH  1
RB8. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009AH  1
EX0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A8H  1
IT0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0088H  1
EX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AAH  1
TB8. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009BH  1
IT1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008AH  1
Error_tick_count_G . . . . . . . . . .  STATIC   DATA   U_INT    0010H  2
P. . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D0H  1
SM0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009FH  1
SM1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009EH  1
SM2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009DH  1
PT0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B9H  1
RS0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D3H  1
PT1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BBH  1
RS1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D4H  1
PT2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BDH  1
TR0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008CH  1
TR1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008EH  1
TR2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CAH  1
PX0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B8H  1
LCD_RS . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B6H  1
PX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BAH  1
SCH_Dispatch_Tasks . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  Index. . . . . . . . . . . . . . . .  AUTO     DATA   U_CHAR   0000H  1
EXEN2. . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CBH  1
REN. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009CH  1
_SCH_Delete_Task . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
C51 COMPILER V6.10  SCH51                                                                  04/18/2001 16:29:38 PAGE 9   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


  TASK_INDEX . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0007H  1
  Return_code. . . . . . . . . . . . .  AUTO     DATA   BIT      0000H  1
RXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B0H  1
TXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B1H  1
F0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D5H  1
SCH_Go_To_Sleep. . . . . . . . . . . .  STATIC   CODE   PROC     0000H  -----


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    311    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     18       5
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----       1
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -