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

📄 led_mx4.lst

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


C51 COMPILER V6.10, COMPILATION OF MODULE LED_MX4
OBJECT MODULE PLACED IN .\LED_Mx4.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE .\LED_Mx4.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /*------------------------------------------------------------------*-
   2          
   3             LED_Mx4.C (v1.00)
   4          
   5            ------------------------------------------------------------------
   6          
   7             Simple library function for displaying data on four multiplexed,
   8             eight-segment LED displays
   9          
  10          
  11             COPYRIGHT
  12             ---------
  13          
  14             This code is from the book:
  15          
  16             PATTERNS FOR TIME-TRIGGERED EMBEDDED SYSTEMS by Michael J. Pont 
  17             [Pearson Education, 2001; ISBN: 0-201-33138-1].
  18          
  19             This code is copyright (c) 2001 by Michael J. Pont.
  20           
  21             See book for copyright details and other information.
  22          
  23          -*------------------------------------------------------------------*/
  24          
  25          #include "Main.h" 
  26          #include "Port.h"
  27          
  28          #include "LED_Mx4.h"
  29          
  30          // ------ Public variable definitions ------------------------------
  31          
  32          // Lookup table - stored in code area
  33          // See Port.H for connections and code details
  34          
  35          tByte code LED_Table_G[20] = 
  36          // 0     1     2     3     4     5     6     7     8     9
  37          {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F,
  38          // 0.    1.    2.    3.    4.    5.    6.    7.    8.    9.
  39           0xBF, 0x86, 0xDB, 0xCF, 0xE6, 0xED, 0xFD, 0x87, 0xFF, 0xEF};
  40          
  41          // Global data formatted for display (initially 0,0,0,0)
  42          tByte LED_Mx4_Data_G[4] = {0x3F,0x3F,0x3F,0x3F};
  43          
  44          
  45          // ------ Private variable definitions------------------------------
  46          
  47          static tByte Digit_G;
  48          
  49          /*------------------------------------------------------------------*-
  50          
  51            LED_MX4_Display_Update()
  52          
  53            Updates (four) multiplexed 8-segment LED displays.
  54          
  55            Usually aim to scheduled at around 3ms intervals: typically
C51 COMPILER V6.10  LED_MX4                                                                04/09/2001 15:01:29 PAGE 2   

  56            around a 1% CPU load on standard 8051.  
  57          
  58          -*------------------------------------------------------------------*/
  59          void LED_MX4_Display_Update(void)
  60             {
  61   1         // Increment the digit to be displayed
  62   1         if (++Digit_G == LED_NUM_DIGITS)
  63   1            {
  64   2            Digit_G = 0;
  65   2            }
  66   1      
  67   1         // Allows any pins to be used
  68   1         switch (Digit_G)
  69   1            {
  70   2            case 0:
  71   2               {      
  72   3               LED_DIGIT_0 = 0;
  73   3               LED_DIGIT_1 = 0;
  74   3               LED_DIGIT_2 = 0;
  75   3               LED_DIGIT_3 = 1;
  76   3               break;
  77   3               }
  78   2      
  79   2            case 1:
  80   2               {      
  81   3               LED_DIGIT_0 = 0;
  82   3               LED_DIGIT_1 = 0;
  83   3               LED_DIGIT_2 = 1;
  84   3               LED_DIGIT_3 = 0;
  85   3               break;
  86   3               }
  87   2      
  88   2            case 2:
  89   2               {      
  90   3               LED_DIGIT_0 = 0;
  91   3               LED_DIGIT_1 = 1;
  92   3               LED_DIGIT_2 = 0;
  93   3               LED_DIGIT_3 = 0;
  94   3               break;
  95   3               }
  96   2      
  97   2            case 3:
  98   2               {      
  99   3               LED_DIGIT_0 = 1;
 100   3               LED_DIGIT_1 = 0;
 101   3               LED_DIGIT_2 = 0;
 102   3               LED_DIGIT_3 = 0;
 103   3               }
 104   2            }
 105   1      
 106   1         LED_DATA_PORT = 255 - LED_Mx4_Data_G[Digit_G];
 107   1         }
 108          
 109          /*------------------------------------------------------------------*-
 110            ---- END OF FILE -------------------------------------------------
 111          -*------------------------------------------------------------------*/
 112          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     77    ----
   CONSTANT SIZE    =     20    ----
C51 COMPILER V6.10  LED_MX4                                                                04/09/2001 15:01:29 PAGE 3   

   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      5    ----
   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 + -