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

📄 main.lst

📁 时间触发嵌入式系统设计模式:使用8051系列微控制器开发可靠应用
💻 LST
字号:
C51 COMPILER V6.10  MAIN                                                                   04/18/2001 16:29:36 PAGE 1   


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

stmt level    source

   1          /*------------------------------------------------------------------*-
   2          
   3             Main.c (v1.00)
   4          
   5            ------------------------------------------------------------------
   6             
   7             TEST PROGRAM FOR LCD LIBRARY CODE
   8          
   9             * Designed for 2-line x 20-character HD44780-based display 
  10             * '4-BIT' INTERFACE (uses 6 pins...) 
  11             * Requires T0 (for delays and timeouts) 
  12          
  13             Required linker options (see Chapter 14 for details):
  14          
  15             OVERLAY (main ~ (Elapsed_Time_LCD_Update,LCD_Update), 
  16             Sch_Dispatch_Tasks ! (Elapsed_Time_LCD_Update,LCD_Update))
  17          
  18          
  19             COPYRIGHT
  20             ---------
  21          
  22             This code is from the book:
  23          
  24             PATTERNS FOR TIME-TRIGGERED EMBEDDED SYSTEMS by Michael J. Pont 
  25             [Pearson Education, 2001; ISBN: 0-201-33138-1].
  26          
  27             This code is copyright (c) 2001 by Michael J. Pont.
  28           
  29             See book for copyright details and other information.
  30          
  31          -*------------------------------------------------------------------*/
  32          
  33          #include "Main.h"
  34          #include "LCD_A.h"
  35          #include "2_01_12g.h"
  36          #include "Elap_LCD.h"
  37          
  38          /* ............................................................... */
  39          void main(void)
  40             {
  41   1         // Initialisation can be problematic with some display / supply
  42   1         // combinations.  You may get away with calling this function
  43   1         // twice (or once) but - for maximum reliability under a very wide range 
  44   1         // of conditions - it is called three times here.
  45   1         LCD_Init(0);
  46   1         LCD_Init(0);
  47   1         LCD_Init(1);
  48   1      
  49   1         // Prepare the elapsed time library
  50   1         Elapsed_Time_LCD_Init();
  51   1      
  52   1         // Prepare the scheduler
  53   1         SCH_Init_T2();
  54   1      
  55   1         // Add tasks to the scheduler
C51 COMPILER V6.10  MAIN                                                                   04/18/2001 16:29:36 PAGE 2   

  56   1         //
  57   1         // Update the time every second (*** 1ms sched ticks ***)
  58   1         SCH_Add_Task(Elapsed_Time_LCD_Update, 100, 1000);
  59   1      
  60   1         // Update the whole display ~ every second 
  61   1         // - do this by updating a character once every 24 ms
  62   1         // (assumes a 40 character display)
  63   1         SCH_Add_Task(LCD_Update, 1000, 24);
  64   1      
  65   1         // All tasks added: start running the scheduler
  66   1         SCH_Start();   
  67   1      
  68   1         while(1)
  69   1            {
  70   2            SCH_Dispatch_Tasks();
  71   2            }
  72   1         }
  73          
  74          /*------------------------------------------------------------------*-
  75            ---- END OF FILE -------------------------------------------------
  76          -*------------------------------------------------------------------*/
  77          
C51 COMPILER V6.10  MAIN                                                                   04/18/2001 16:29:36 PAGE 3   

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


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
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
LCD_Update . . . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
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
_SCH_Add_Task. . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
PS . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BCH  1
C51 COMPILER V6.10  MAIN                                                                   04/18/2001 16:29:36 PAGE 4   

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


T2EX . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0091H  1
OV . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D2H  1
main . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
C_T2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C9H  1
WR . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B6H  1
RCLK . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CDH  1
TCLK . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CCH  1
Elapsed_Time_LCD_Update. . . . . . . .  EXTERN   CODE   PROC     -----  -----
SCH_Init_T2. . . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
IE0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0089H  1
IE1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008BH  1
CP_RL2 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C8H  1
ET0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A9H  1
LCD_Init . . . . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
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
P. . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D0H  1
SCH_Start. . . . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
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
PX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BAH  1
SCH_Dispatch_Tasks . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
Elapsed_Time_LCD_Init. . . . . . . . .  EXTERN   CODE   PROC     -----  -----
EXEN2. . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CBH  1
REN. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009CH  1
RXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B0H  1
TXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B1H  1
F0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D5H  1


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

C51 COMPILER V6.10  MAIN                                                                   04/18/2001 16:29:36 PAGE 5   


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

⌨️ 快捷键说明

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