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

📄 smg_buffwrite.lst

📁 EasyStudy51-II单片机开发系统的库函数源代码.包含了EasyStudy51-II硬件的全部驱动.
💻 LST
字号:
C51 COMPILER V7.06   SMG_BUFFWRITE                                                         11/06/2008 01:10:24 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE SMG_BUFFWRITE
OBJECT MODULE PLACED IN smg_BuffWrite.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE c51\smg_BuffWrite.c INCDIR(.\Target\INC\) DEBUG OBJECTEXTEND PRINT(.\smg_Bu
                    -ffWrite.lst) OBJECT(smg_BuffWrite.obj)

stmt level    source

   1          
   2          
   3          #include "AT89X52.h"
   4          #include "ES51_II.h"
   5          #include "ES51_II_LIB.h"
   6          
   7          
   8          
   9          //      数码管显示缓冲区;可直接操作此缓冲区控制数码管显示
  10          extern unsigned char SMG_BUFF[4];
  11          //      不带小数点
  12          extern unsigned char code SMG_TABLE[16];
  13          //      带小数点
  14          extern unsigned char code SMG_TABLE_DP[16];
  15          
  16          
  17          
  18          //      写数码管显示缓冲区,ASCII码,只允许写0~9;
  19          //      index:  修改缓冲区的起始地址,范围1~4;
  20          //      length: 修改的长度,范围1~4,根据索引值不同,取值范围不同;
  21          //      dp:             显示是否带小数点,0:不带小数点显示;1:带小数点显示;
  22          //      *dat:   为数据的首地址;
  23          void SMGBuffWrite(unsigned char index,unsigned char length,bit dp,unsigned char *dat)
  24          {
  25   1              unsigned char *psmgbuff;
  26   1              if( (index+length) < 6 )                //      判断是否会导致显示缓冲区溢出
  27   1                      {                                                       //      若不会导致显示缓冲区溢出,写缓冲区;否则,放弃
  28   2                      psmgbuff = &SMG_BUFF[0]+(index-1);
  29   2                      for( ; length>0; length--,psmgbuff++,dat++)
  30   2                              {
  31   3                              if( dp == 0 )                   //      不带小数点
  32   3                                      *psmgbuff = SMG_TABLE[*dat-0x30];
  33   3                              else                                    //      带小数点显示
  34   3                                      *psmgbuff = SMG_TABLE_DP[*dat-0x30];
  35   3                              }
  36   2                      }
  37   1      }
  38          
  39          


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