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

📄 scheduler.lst

📁 本人at89c51snd1c主控IC增加了128*32点阵驱动显示
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.20   SCHEDULER                                                             03/24/2007 10:02:35 PAGE 1   


C51 COMPILER V7.20, COMPILATION OF MODULE SCHEDULER
OBJECT MODULE PLACED IN .\Output\scheduler.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE scheduler.c OPTIMIZE(7,SPEED) BROWSE INCDIR(.\modules\system;.\;.\;.\lib_re
                    -fd) DEFINE(KEIL) DEBUG OBJECTEXTEND PRINT(.\Output\scheduler.lst) OBJECT(.\Output\scheduler.obj)

line level    source

   1          /*C**************************************************************************
   2          * NAME:         scheduler.c
   3          *----------------------------------------------------------------------------
   4          * Copyright (c) 2003 Atmel.
   5          *----------------------------------------------------------------------------
   6          * RELEASE:      snd1c-refd-nf-4_0_3      
   7          * REVISION:     1.8     
   8          *----------------------------------------------------------------------------
   9          * PURPOSE:
  10          * This file contains the scheduler routines
  11          *
  12          * NOTES:
  13          * Configuration:
  14          *   - SCH_TYPE in scheduler.h header file
  15          *   - SCH_TIMER in scheduler.h header file
  16          * Global Variables:
  17          *   - gl_cpt_tick: byte in data space
  18          *   - gl_kbd_tick: byte in data space
  19          *   - gl_mem_tick: byte in data space
  20          *
  21          *****************************************************************************/
  22          
  23          /*_____ I N C L U D E S ____________________________________________________*/
  24          
  25          #include "config.h"                         /* system definition */
  26          #include "lib_mcu\timer\timer_drv.h"        /* timer definition */
  27          #include "scheduler.h"                      /* scheduler definition */
  28          
  29          extern void LCDDisplayInit();
  30          extern void prints(unsigned char * temp);
  31          /*_____ M A C R O S ________________________________________________________*/
  32          
  33          
  34          /*_____ D E F I N I T I O N ________________________________________________*/
  35          
  36          extern  data    Byte    gl_cpt_tick;        /* general tick counter */
  37          extern  data    Byte    gl_kbd_tick;        /* keypad tick counter */
  38          extern  data    Byte    gl_mem_tick;        /* memory tick counter */
  39          extern  data    Byte    gl_led_tick;        /* led tick counter */
  40          extern  idata   Uint16  gl_act_tick;        /* led tick counter */
  41          
  42          #if (SCH_TYPE != SCH_FREE)
                bit   sch_tick_flag;
              #endif
  45          
  46          
  47          /*_____ D E C L A R A T I O N ______________________________________________*/
  48          
  49          static  void sch_time_init (void);
  50          
  51          
  52          /*F**************************************************************************
  53          * NAME:     sch_scheduler_init
  54          *----------------------------------------------------------------------------
C51 COMPILER V7.20   SCHEDULER                                                             03/24/2007 10:02:35 PAGE 2   

  55          * PARAMS:
  56          *
  57          * return:
  58          *----------------------------------------------------------------------------
  59          * PURPOSE: 
  60          *   Scheduler initialization
  61          *----------------------------------------------------------------------------
  62          * EXAMPLE:
  63          *----------------------------------------------------------------------------
  64          * NOTE:
  65          *   Task_x_init() and Task_x_fct() are defined in scheduler.h
  66          *----------------------------------------------------------------------------
  67          * REQUIREMENTS:
  68          *****************************************************************************/
  69          void sch_scheduler_init (void)
  70          {
  71   1        disp_task_init();  
  72   1        mode_task_init();
  73   1        mem_task_init();
  74   1        kbd_task_init();
  75   1      #if (SCH_TYPE != SCH_FREE)
                sch_tick_flag = FALSE;
              #endif
  78   1        sch_time_init();                /* start time base */
  79   1      }
  80          
  81          
  82          /*F**************************************************************************
  83          * NAME:     sch_scheduler
  84          *----------------------------------------------------------------------------
  85          * PARAMS:
  86          *
  87          * return:
  88          *----------------------------------------------------------------------------
  89          * PURPOSE:
  90          *   Task execution scheduler 
  91          *----------------------------------------------------------------------------
  92          * EXAMPLE:
  93          *----------------------------------------------------------------------------
  94          * NOTE:
  95          *----------------------------------------------------------------------------
  96          * REQUIREMENTS:
  97          *****************************************************************************/
  98          void sch_scheduler (void)
  99          {
 100   1        while (1)
 101   1        {
 102   2              mode_task();
 103   2          Sch_call_next_task();
 104   2      
 105   2      if (connected) usb_task();
 106   2          Sch_call_next_task();
 107   2      
 108   2              mem_task();
 109   2          Sch_call_next_task();
 110   2        
 111   2              disp_task();
 112   2          Sch_call_next_task();
 113   2        
 114   2         
 115   2              kbd_task();
 116   2          Sch_call_next_task();
C51 COMPILER V7.20   SCHEDULER                                                             03/24/2007 10:02:35 PAGE 3   

 117   2        }
 118   1      }
 119          
 120          
 121          /*F**************************************************************************
 122          * NAME:    sch_default_fct
 123          *----------------------------------------------------------------------------
 124          * PARAMS:
 125          *
 126          * return:
 127          *----------------------------------------------------------------------------
 128          * PURPOSE:
 129          *   This function does nothing 
 130          *----------------------------------------------------------------------------
 131          * EXAMPLE:
 132          *----------------------------------------------------------------------------
 133          * NOTE:
 134          *----------------------------------------------------------------------------
 135          * REQUIREMENTS:
 136          *****************************************************************************/
 137          void sch_default_fct (void)
 138          {
 139   1      }
 140          
 141          
 142          #if (SCH_TIMER == SCH_TIMER0)
 143          /*F**************************************************************************
 144          * NAME:     sch_time_init
 145          *----------------------------------------------------------------------------
 146          * PARAMS:
 147          *
 148          * return:
 149          *----------------------------------------------------------------------------
 150          * PURPOSE:
 151          *   Scheduler time base (timer 0) initialization
 152          *----------------------------------------------------------------------------
 153          * EXAMPLE:
 154          *----------------------------------------------------------------------------
 155          * NOTE:
 156          *   mode 16-bit Timer, Time counter
 157          *   T0_PRIO to be defined in config.h
 158          *   TIM_LOW & TIM_HIGH defined in scheduler.h
 159          *----------------------------------------------------------------------------
 160          * REQUIREMENTS:
 161          *****************************************************************************/
 162          void sch_time_init (void)
 163          {
 164   1        T0_init(T0_NOT_GATED, T0_TIMER, T0_MODE_1);
 165   1        TL0 = TIM_LOW;
 166   1        TH0 = TIM_HIGH;
 167   1        t0_set_prio(T0_PRIO);         /* set-up priority */
 168   1        T0_enable_int();              /* enable interrupt */
 169   1        T0_start();                   /* start time base */

⌨️ 快捷键说明

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