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

📄 task3.lst

📁 A rtx51 tiny example program
💻 LST
字号:
C51 COMPILER V8.08   TASK3                                                                 03/23/2009 13:06:22 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE TASK3
OBJECT MODULE PLACED IN Task3.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE Task3.c BROWSE DEBUG OBJECTEXTEND CODE LISTINCLUDE SYMBOLS PREPRINT

line level    source

   1          /******************************************************************************/
   2          /*                                                                            */
   3          /*   Task 3:  Process Overflow from Task 2                                    */
   4          /*                                                                            */
   5          /******************************************************************************/
   6          
   7          #include <rtx51tny.h>                 /* RTX-51 tiny functions & defines      */
   1      =1  /*--------------------------------------------------------------------------
   2      =1  RTX51TNY.H
   3      =1  
   4      =1  Prototypes for RTX51 Tiny Real-Time Operating System Version 2.02
   5      =1  Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.
   6      =1  All rights reserved.
   7      =1  --------------------------------------------------------------------------*/
   8      =1  
   9      =1  #ifndef __RTX51TNY_H__
  10      =1  #define __RTX51TNY_H__
  11      =1  
  12      =1  
  13      =1  /* constants for os_wait function */
  14      =1  #define K_SIG      0x01              /* Wait for Signal   */
  15      =1  #define K_TMO      0x02              /* Wait for Timeout  */
  16      =1  #define K_IVL      0x80              /* Wait for Interval */
  17      =1  
  18      =1  /* function return values */
  19      =1  #define NOT_OK     0xFF              /* Parameter Error */
  20      =1  #define TMO_EVENT  0x08              /* Timeout Event   */
  21      =1  #define SIG_EVENT  0x04              /* Signal  Event   */
  22      =1  #define RDY_EVENT  0x80              /* Ready   Event   */
  23      =1  
  24      =1  extern unsigned char os_create_task     (unsigned char task_id);
  25      =1  extern unsigned char os_delete_task     (unsigned char task_id);
  26      =1  
  27      =1  extern unsigned char os_wait            (unsigned char typ, 
  28      =1                                           unsigned char ticks,
  29      =1                                           unsigned int dummy);
  30      =1  extern unsigned char os_wait1           (unsigned char typ);
  31      =1  extern unsigned char os_wait2           (unsigned char typ,
  32      =1                                           unsigned char ticks);
  33      =1  
  34      =1  extern unsigned char os_send_signal     (unsigned char task_id);
  35      =1  extern unsigned char os_clear_signal    (unsigned char task_id);
  36      =1  extern unsigned char isr_send_signal    (unsigned char task_id);
  37      =1  
  38      =1  extern void          os_set_ready       (unsigned char task_id);
  39      =1  extern void          isr_set_ready      (unsigned char task_id);
  40      =1  
  41      =1  extern unsigned char os_running_task_id (void);
  42      =1  extern unsigned char os_switch_task     (void); 
  43      =1  
  44      =1  extern void          os_reset_interval  (unsigned char ticks);
  45      =1  
  46      =1  #endif
   8          
   9          unsigned long counter3;               /* counter for task 3                   */
C51 COMPILER V8.08   TASK3                                                                 03/23/2009 13:06:22 PAGE 2   

  10          
  11          
  12          /******************************************************************************/
  13          /*    Task 3 'job3':  RTX-51 tiny starts this task with os_create_task (3)    */
  14          /******************************************************************************/
  15          void job3 (void) _task_ 3  {
  16   1        while (1)  {                        /* endless loop                         */
  17   2          os_wait1 (0);                     /* wait for RDY                         */
  18   2          counter3++;                       /* process overflow from counter 2      */
  19   2        }
  20   1      }
C51 COMPILER V8.08   TASK3                                                                 03/23/2009 13:06:22 PAGE 3   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION job3 (BEGIN)
                                           ; SOURCE LINE # 15
0000         ?C0001:
                                           ; SOURCE LINE # 16
                                           ; SOURCE LINE # 17
0000 E4                CLR     A
0001 FF                MOV     R7,A
0002 120000      E     LCALL   _os_wait1
                                           ; SOURCE LINE # 18
0005 E500        R     MOV     A,counter3+03H
0007 2401              ADD     A,#01H
0009 F500        R     MOV     counter3+03H,A
000B E4                CLR     A
000C 3500        R     ADDC    A,counter3+02H
000E F500        R     MOV     counter3+02H,A
0010 E4                CLR     A
0011 3500        R     ADDC    A,counter3+01H
0013 F500        R     MOV     counter3+01H,A
0015 E4                CLR     A
0016 3500        R     ADDC    A,counter3
0018 F500        R     MOV     counter3,A
                                           ; SOURCE LINE # 19
001A 80E4              SJMP    ?C0001
             ; FUNCTION job3 (END)

C51 COMPILER V8.08   TASK3                                                                 03/23/2009 13:06:22 PAGE 4   

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


_os_wait1. . . . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
counter3 . . . . . . . . . . . . . . .  PUBLIC   DATA   U_LONG   0000H  4
job3 . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     28    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      4    ----
   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 + -