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

📄 led6show.lst

📁 51的计算器很好的啊
💻 LST
字号:
C51 COMPILER V8.05a   LED6SHOW                                                             07/29/2007 09:35:52 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE LED6SHOW
OBJECT MODULE PLACED IN LED6Show.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE sources\LED6Show.c BROWSE INCDIR(.\include) DEBUG OBJECTEXTEND PRINT(.\LED6
                    -Show.lst) OBJECT(LED6Show.obj)

line level    source

   1          //*************************************************************************************************
   2          //*************************************************************************************************
   3          //**<程序名>:LED动态扫描子函数。                                                                                                                                **
   4          //**<功能>:    unsigned char * pucLedNum(unsigned long ulNumber);                                                       **
   5          //**                    计算一个在000000到999999之间的数的每位数字并存储在数组中.并返回数组的首地址              **
   6          //**                    void vShowOneNum(unsigned char ucOneNum,unsigned char ucOrder);                                  **
   7          //**                    输入一个数字以及所要显示的位置,在LED相应位置上显示相应数字.                                              **      
   8          //*************************************************************************************************
   9          //*************************************************************************************************
  10          
  11          
  12          //*************************************************************************************************
  13          //*                                                                                                                                                                                               *
  14          //*                      ******************************头文件及宏定义**************************                           *
  15          //*                                                                                                                                                                                               *
  16          //*************************************************************************************************
  17          #include <at89x51.h>
  18          #define LEDCHAR P1                      //LED 字符I/O 口,P1.0~7对应A~DP
  19          #define LEDSELECT P0            //LED 选择I/O口.   P2.0~5对应LED的1~6
  20          
  21          
  22          //*************************************************************************************************
  23          //*                                                                                                                                                                                               *
  24          //*                       ********************************全局变量******************************                          *
  25          //*                                                                                                                                                                                               *
  26          //*************************************************************************************************
  27          unsigned  char code uca_LEDCode[]=
  28                                  {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,     //0,1,2,3,4,5,6,7,8,9
  29                                   0x88,0x83,0xC6,0xA1,0x86,0x84,0xFF,0x8C};              //A,B,C,D,E,F,空格,P
  30          
  31          unsigned char code uca_LEDSelect[]={0x01,0x02,0x04,0x08,0x10,0x20};     
  32                                                  //分别点亮第6,5,4,3,2,1号灯.
  33          
  34          unsigned char uca_LedNum[6];                    
  35                                                  //存放数字的各个位
  36          
  37          
  38          //*************************************************************************************************
  39          //*                                                                                                                                                                                               *
  40          //*                       ********************************函数实现******************************                          *
  41          //*                                                                                                                                                                                               *
  42          //*************************************************************************************************
  43          unsigned char * pucLedNum(unsigned long ulNumber)
  44          {
  45   1              if(ulNumber>999999)
  46   1                      ulNumber=999999;
  47   1              if(ulNumber<0)
  48   1                      ulNumber=0;
  49   1              uca_LedNum[5] = ulNumber/100000;
  50   1      
  51   1              uca_LedNum[4] = (ulNumber-100000*(long)uca_LedNum[5])/10000;
  52   1      
  53   1              uca_LedNum[3] = (ulNumber-100000*(long)uca_LedNum[5]-10000*(long)uca_LedNum[4])/1000;
  54   1      
C51 COMPILER V8.05a   LED6SHOW                                                             07/29/2007 09:35:52 PAGE 2   

  55   1              uca_LedNum[2] = (ulNumber-100000*(long)uca_LedNum[5]-10000*(long)uca_LedNum[4]
  56   1                                              -1000*(long)uca_LedNum[3])/100;
  57   1      
  58   1              uca_LedNum[1] = (ulNumber-100000*(long)uca_LedNum[5]-10000*(long)uca_LedNum[4]
  59   1                                              -1000*(long)uca_LedNum[3]-100*(long)uca_LedNum[2])/10;
  60   1      
  61   1              uca_LedNum[0] = (ulNumber-100000*(long)uca_LedNum[5]-10000*(long)uca_LedNum[4]
  62   1                                              -1000*(long)uca_LedNum[3]-100*(long)uca_LedNum[2]-10*(long)uca_LedNum[1]);
  63   1      
  64   1              return uca_LedNum;
  65   1      }
  66          
  67          
  68          
  69          void vShowOneNum(unsigned char ucOneNum,unsigned char ucOrder)
  70          {
  71   1              LEDSELECT=0;
  72   1              LEDCHAR=uca_LEDCode[ucOneNum];
  73   1              LEDSELECT=uca_LEDSelect[ucOrder-1];
  74   1      }
  75          
  76          


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