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

📄 max7219.lst

📁 8051单片机对八位LED显示芯片以及温度传感器芯片DS1620的驱动程序。
💻 LST
字号:
C51 COMPILER V7.06   MAX7219                                                               08/04/2008 00:24:33 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE MAX7219
OBJECT MODULE PLACED IN MAX7219.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE MAX7219.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /**********************************************
   2          *   File: MAX7219.C
   3          *   Description: Tri-Angle  
   4          *   Created Date:  2007-10-01
   5          *   Last Modified: 2007-10-01
   6          *   Author: Jeffrey - Schicksal@126.com
   7          *   Notes: None
   8          **********************************************/
   9          //#include "Atmel/AT89X51.h"
  10          #include "SST89x5x4.H"
  11          #include "INTRINS.H"
  12          #include "DS1620.h"
  13          #include "MAX7219.h"
  14          
  15          /**********************************************
  16          *   Function: void write_7219(unsigned char a, unsigned char b)
  17          *   Input Variables: unsigned char a, unsigned char b
  18          *   Return Variables: None
  19          *   Usage: Write to 7219
  20          **********************************************/
  21          void write_7219( unsigned char addr, unsigned char dat )
  22          {
  23   1              bit t;
  24   1      
  25   1              _7219_CLK = 0;
  26   1              _7219_CS = SELECTED;
  27   1      
  28   1              ACC = addr;
  29   1              t = 1;
  30   1      
  31   1      WriteLoop:
  32   1              _7219_MOSI = ACC_7;
  33   1              _7219_CLK = 1;
  34   1              _7219_CLK = 0;
  35   1      
  36   1              _7219_MOSI = ACC_6;
  37   1              _7219_CLK = 1;
  38   1              _7219_CLK = 0;
  39   1      
  40   1              _7219_MOSI = ACC_5;
  41   1              _7219_CLK = 1;
  42   1              _7219_CLK = 0;
  43   1      
  44   1              _7219_MOSI = ACC_4;
  45   1              _7219_CLK = 1;
  46   1              _7219_CLK = 0;
  47   1      
  48   1              _7219_MOSI = ACC_3;
  49   1              _7219_CLK = 1;  
  50   1              _7219_CLK = 0;
  51   1      
  52   1              _7219_MOSI = ACC_2;
  53   1              _7219_CLK = 1;
  54   1              _7219_CLK = 0;
  55   1      
C51 COMPILER V7.06   MAX7219                                                               08/04/2008 00:24:33 PAGE 2   

  56   1              _7219_MOSI = ACC_1;
  57   1              _7219_CLK = 1;
  58   1              _7219_CLK = 0;
  59   1      
  60   1              _7219_MOSI = ACC_0;
  61   1              _7219_CLK = 1;
  62   1              
  63   1      
  64   1              if (t == 1) 
  65   1              {
  66   2                      t = 0;
  67   2                      ACC = dat;
  68   2                      _7219_CLK = 0;
  69   2                      goto WriteLoop;
  70   2              }
  71   1      
  72   1      //EndWriteLoop:
  73   1      
  74   1              _7219_CS = UNSELECTED;
  75   1              _7219_CLK = 0;
  76   1              _7219_CLK = 1;
  77   1              _7219_CLK = 0;
  78   1              
  79   1      }
  80          
  81          /**********************************************
  82          *   Function: Init7219()
  83          *   Input Variables:void
  84          *   Return Variables: None
  85          *   Usage: Init 7219
  86          **********************************************/
  87          void Init7219()
  88          {
  89   1        write_7219(0x0c,0x00);                        // 关闭MAX7219,对7219进行配置
  90   1        _nop_();                                                      // nop
  91   1        _nop_();                                                      // nop
  92   1        _nop_();                                                      // nop
  93   1        write_7219(0x0a,0x05);                        // 调整亮度
  94   1        write_7219(0x09,0xff);                        // 模式设置,全部解码操作
  95   1        write_7219(1,0x0f);                           // blank
  96   1        write_7219(2,0x0f);                           // blank
  97   1        write_7219(3,0x0f);                           // blank
  98   1        write_7219(4,0x0f);                           // blank
  99   1        write_7219(5,0x0f);                           // blank
 100   1        write_7219(6,0x0f);                           // 六位数码全部blank
 101   1        write_7219(0x0c,0x01);                        // 启动7219
 102   1        write_7219(0x0b,0x05);                        // 扫描位数 6位
 103   1      }
 104          
 105          /**********************************************
 106          *   Function:void Display_Temp()
 107          *   Input Variables:void
 108          *   Return Variables: None
 109          *   Usage: Display_Temp
 110          **********************************************/
 111          void Display_Temp()
 112          {
 113   1        unsigned char LS;
 114   1        LS=DS1620read();
 115   1        LS/=2;
 116   1        if (LS==0)
 117   1        {
C51 COMPILER V7.06   MAX7219                                                               08/04/2008 00:24:33 PAGE 3   

 118   2            write_7219(0x05,0x0a);
 119   2            write_7219(0x06,0x0a);
 120   2        }
 121   1        else
 122   1        {
 123   2          write_7219(0x05,LS/10);
 124   2          write_7219(0x06,LS%10);
 125   2          }
 126   1      }
 127          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    194    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----       1
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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