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

📄 lcdapi.lst

📁 单个18B20的测温程序,其单片机接口可以改为适合的即可将其嵌入系统程序中.
💻 LST
字号:
C51 COMPILER V7.08   LCDAPI                                                                02/11/2006 11:18:16 PAGE 1   


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

line level    source

   1          #include "lcdapi.h"
   2          #include "3310.h"
   3          #include "asclib.h"
   4          #include "hzlib.h"
   5          
   6          /*功能:发送ASCII点阵数据
   7           *性质:文件内部使用
   8           *参数:列地址,行地址,字符
   9           *返回:无
  10           */
  11          void DispAsc( uchar x, uchar y, uchar *asc )
  12          {
  13   1              uchar i,j,*ptr;
  14   1              ptr = &ASCII816[(*asc-0x20)*16];
  15   1              for( j=0; j<ASC_HEIGHT/8; j++ )
  16   1              {
  17   2                      for( i=0; i<ASC_WIDTH;i++ )
  18   2                      {
  19   3                              LCD_SetAddr( x+i,y+j );
  20   3                              LCD_WriteByte(*ptr, MODE_DATA);
  21   3                              ptr++;
  22   3                      }
  23   2              }
  24   1      }
  25          
  26          /*功能:发送汉字点阵数据
  27           *性质:文件外部使用
  28           *参数:列地址,行地址,汉字
  29           *返回:0没有找到汉字,1操作成功
  30           */
  31          uchar DispHz( uchar x, uchar y, uchar *hz )
  32          {
  33   1              uchar i,m,n,hznum;
  34   1              hznum = sizeof(GB_16)/sizeof(GB_16[0]);
  35   1              for(i=0;i<hznum;i++)
  36   1              {
  37   2                      if(*hz == GB_16[i].Index[0] && *(hz+1) == GB_16[i].Index[1])
  38   2                      break;
  39   2              }
  40   1              if( i==hznum )                  //没有找到需要的汉字
  41   1                      return 0;
  42   1              
  43   1              for( m=0; m<HZ_HEIGHT/8; m++ )
  44   1              {
  45   2                      for( n=0; n<HZ_WIDTH; n++ )
  46   2                      {
  47   3                              LCD_SetAddr( x+n,y+m );
  48   3                              LCD_WriteByte(GB_16[i].HzLib[m*16+n], MODE_DATA);
  49   3                      }
  50   2              }
  51   1              return 1;
  52   1      }
  53          
  54          /*功能:混合显示ASCII及汉字
  55           *性质:文件外部使用
C51 COMPILER V7.08   LCDAPI                                                                02/11/2006 11:18:16 PAGE 2   

  56           *参数:列地址,行地址,字符串
  57           *返回:无
  58           */
  59          void DispString( uchar x, uchar y, uchar *str )
  60          {
  61   1              while( *str )
  62   1              {
  63   2                      if( *str<128 )
  64   2                      {
  65   3                              DispAsc( x, y, str);
  66   3                              str++;
  67   3                              x += 8;
  68   3                      }
  69   2                      else
  70   2                      {
  71   3                              DispHz( x, y, str);
  72   3                              str+=2;
  73   3                              x+=16;
  74   3                      }
  75   2              }
  76   1      }
  77          
  78          /*功能:显示BMP位图
  79           *性质:文件外部使用
  80           *参数:列地址,行地址,宽度,高度,字符串
  81           *返回:无
  82           */
  83          void DrawBmp( uchar x, uchar y, uchar xsize, uchar ysize, uchar *bmpptr )
  84          {
  85   1              uchar i,j,ymax;
  86   1              ymax = ysize/8;
  87   1              if( ysize%8 )
  88   1                      ymax+=1;
  89   1              for( j=0; j<ymax; j++ )
  90   1              {
  91   2                      for( i=0; i<xsize; i++ )
  92   2                      {
  93   3                              LCD_SetAddr( x+i, y+j );
  94   3                              LCD_WriteByte(*bmpptr++, MODE_DATA);
  95   3                      }
  96   2              }
  97   1      }


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