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

📄 task1.lst

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


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

line level    source

   1          /******************************************************************************/
   2          /*                                                                            */
   3          /*   Task 1:  Count up Every 2 ticks                                          */
   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 counter1;               /* counter for task 1                   */
C51 COMPILER V8.08   TASK1                                                                 03/23/2009 13:06:22 PAGE 2   

  10          
  11          /******************************************************************************/
  12          /*   Task 1 'job1':  RTX-51 tiny starts this task with os_create_task (1)     */
  13          /******************************************************************************/
  14          void job1 (void) _task_ 1  {
  15   1        while (1)  {                        /* endless loop                         */
  16   2          counter1++;                       /* increment counter 1                  */
  17   2          os_wait (K_TMO, 2, 0);            /* wait for timeout: 2 ticks            */
  18   2        }
  19   1      }
  20          
C51 COMPILER V8.08   TASK1                                                                 03/23/2009 13:06:22 PAGE 3   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION job1 (BEGIN)
                                           ; SOURCE LINE # 14
0000         ?C0001:
                                           ; SOURCE LINE # 15
                                           ; SOURCE LINE # 16
0000 E500        R     MOV     A,counter1+03H
0002 2401              ADD     A,#01H
0004 F500        R     MOV     counter1+03H,A
0006 E4                CLR     A
0007 3500        R     ADDC    A,counter1+02H
0009 F500        R     MOV     counter1+02H,A
000B E4                CLR     A
000C 3500        R     ADDC    A,counter1+01H
000E F500        R     MOV     counter1+01H,A
0010 E4                CLR     A
0011 3500        R     ADDC    A,counter1
0013 F500        R     MOV     counter1,A
                                           ; SOURCE LINE # 17
0015 E4                CLR     A
0016 FB                MOV     R3,A
0017 FA                MOV     R2,A
0018 7D02              MOV     R5,#02H
001A 7F02              MOV     R7,#02H
001C 120000      E     LCALL   _os_wait
                                           ; SOURCE LINE # 18
001F 80DF              SJMP    ?C0001
             ; FUNCTION job1 (END)

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

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


counter1 . . . . . . . . . . . . . . .  PUBLIC   DATA   U_LONG   0000H  4
job1 . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
_os_wait . . . . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     33    ----
   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 + -