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

📄 displaycontrol.lst

📁 基于FPGA 的直接数字频率合成信号发生器(DDS)设计
💻 LST
字号:
C51 COMPILER V6.02  DISPLAYCONTROL                                                         09/11/2005 06:36:51 PAGE 1   


C51 COMPILER V6.02, COMPILATION OF MODULE DISPLAYCONTROL
OBJECT MODULE PLACED IN .\DisplayControl.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE .\DisplayControl.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #define _DISPLAYCONTROL_C_Def
   2          
   3          #include "hd7279.h"
   4          #include "DisplayControl.h"
   5          
   6          void InitialDisplayControl(void){
   7   1        unsigned char i;
   8   1        SendInstructTo7279(CMD_RESET); //
   9   1        for( i=0;i<DIG_NUMs;i++ ){
  10   2            DisplayV.DisplayBakBuffer[i] = 0xFF;
  11   2            DisplayV.DisplayBuffer[i] = 0x98;//DP , transMode 1, data 8
  12   2        }
  13   1        DisplayV.FlashC = 0xFF;
  14   1        DisplayV.HideC = 0xFF;
  15   1        DisplayV.BakFlashC = 0x00;
  16   1        DisplayV.BakHideC = 0x00;
  17   1        DisplayV.ControlMark = 1;
  18   1        
  19   1        return;
  20   1      }
  21          
  22          //disBit:0~7
  23          //mark:1 显示小数点;0:不显示小数点
  24          void SetupDPForLED(unsigned char disBit, unsigned char mark)
  25          {
  26   1        if(mark)
  27   1          DisplayV.DisplayBuffer[disBit] |= 0x80;
  28   1        else
  29   1          DisplayV.DisplayBuffer[disBit] &= 0x7F;
  30   1      }
  31          //返回显示缓冲器中的数据,0x00~0x0f
  32          unsigned char ReturnLedBufData(unsigned char disBit)
  33          {
  34   1        return DisplayV.DisplayBuffer[disBit] & 0x0F; 
  35   1      }
  36          
  37          //让所有的LED无显示, 注意:不是隐藏
  38          void GoOutAllLED(void)
  39          {
  40   1        unsigned char i;
  41   1      
  42   1        for ( i=0;i<DIG_NUMs;i++ )
  43   1          DisplayV.DisplayBuffer[i] = 0x0F;
  44   1      }
  45          
  46          //DisBit:0~7
  47          //Data: 0x00~0x0F
  48          //DP: 0 or 1
  49          //transMode:0 or 1 or 2
  50          unsigned char SetupDisBuffer(unsigned char DisBit, unsigned char Dp, unsigned char Data, unsigned char tra
             -nsMode){
  51   1        unsigned char i;
  52   1        if( DisBit>7 ) return 0;
  53   1        
  54   1        i = Data & 0x0F;
C51 COMPILER V6.02  DISPLAYCONTROL                                                         09/11/2005 06:36:51 PAGE 2   

  55   1        if( Dp!=0 ) i += 0x80;
  56   1        i += ((transMode & 0x03) << 4);
  57   1        
  58   1        DisplayV.DisplayBuffer[DisBit] = i;
  59   1        
  60   1        return 1;
  61   1      }
  62          //DisBit:0~7, other all bit
  63          //mark:1-闪烁; 0-不闪烁
  64          void SetupFlashBit(unsigned char DisBit, unsigned char mark){
  65   1        if( DisBit>7 ){
  66   2          if( mark!=0 )//闪烁
  67   2            DisplayV.FlashC = 0x00;
  68   2          else//不闪烁
  69   2            DisplayV.FlashC = 0xFF;
  70   2        }
  71   1        else{
  72   2          if( mark!=0 )//闪烁
  73   2            DisplayV.FlashC &= ~(1 << (7-DisBit));
  74   2          else//不闪烁
  75   2            DisplayV.FlashC |= (1 << (7-DisBit));
  76   2        }
  77   1        
  78   1        return;
  79   1      }
  80          //DisBit:0~7, other all bit
  81          //mark: 1-消隐; 0-不消隐
  82          void SetupHideBit(unsigned char DisBit, unsigned char mark){
  83   1        if( DisBit>7 ){
  84   2          if( mark!=0 )//消隐
  85   2            DisplayV.HideC = 0x00;
  86   2          else//不消隐
  87   2            DisplayV.HideC = 0xFF;
  88   2        }
  89   1        else{
  90   2          if( mark!=0 )//消隐
  91   2            DisplayV.HideC &= ~(1 << (7-DisBit));
  92   2          else//不消隐
  93   2            DisplayV.HideC |= (1 << (7-DisBit));
  94   2        }
  95   1      
  96   1        return ;
  97   1      }
  98          
  99          //-------------------------------------------------------------------------------
 100          void Display(void)
 101          {
 102   1        unsigned char i;
 103   1      
 104   1        if( DisplayV.ControlMark==0 )
 105   1          return;
 106   1          
 107   1        for( i=0;i<DIG_NUMs;i++ ){
 108   2          if( DisplayV.DisplayBuffer[i]!=DisplayV.DisplayBakBuffer[i] ){
 109   3            SetupLedData(7-i, DisplayV.DisplayBuffer[i]&0x8F, (DisplayV.DisplayBuffer[i]&0x70)>>4 );
 110   3            DisplayV.DisplayBakBuffer[i] = DisplayV.DisplayBuffer[i];
 111   3          }
 112   2        }
 113   1      
 114   1        if( DisplayV.FlashC!=DisplayV.BakFlashC ){
 115   2          Flash7279(DisplayV.FlashC);
 116   2          DisplayV.BakFlashC = DisplayV.FlashC;
C51 COMPILER V6.02  DISPLAYCONTROL                                                         09/11/2005 06:36:51 PAGE 3   

 117   2        }
 118   1        if( DisplayV.HideC!=DisplayV.BakHideC ){
 119   2          Hide7279(DisplayV.HideC);
 120   2          DisplayV.BakHideC = DisplayV.HideC;
 121   2        }
 122   1        
 123   1        return;
 124   1      }
 125          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    358    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       5
   IDATA SIZE       =     21    ----
   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 + -