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

📄 ziku.lst

📁 51单片机的GSM收发短信C程序
💻 LST
字号:
C51 COMPILER V8.06   ZIKU                                                                  12/25/2007 08:55:46 PAGE 1   


C51 COMPILER V8.06, COMPILATION OF MODULE ZIKU
OBJECT MODULE PLACED IN ziku.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE ziku.c BROWSE MODDP2 DEBUG OBJECTEXTEND

line level    source

   1          /*************************************
   2          文件名:ziku.c
   3          功  能:处理编码转换和与字库相关的操作
   4          *************************************/
   5          #include <W77C32.h>
   6          #include <absacc.h>
   7          #include "hal.h"
   8          #include "ziku.h"
   9          #include "unicode.h"
  10          
  11          //把unicode码转换为其在GB2312字库中的地址
  12          ulong UNI2CBSP(uint hanzi)
  13          {ulong abspad;
  14   1       uchar x,y;
  15   1       for(y=0;y<72;y++)
  16   1        {for(x=0;x<96;x++)
  17   2          {if(hanzi==Unicode[y][x])
  18   3             {break;}
  19   3           }
  20   2           if(hanzi==Unicode[y][x])
  21   2                  break;
  22   2          }
  23   1        abspad=((ulong)(((y+0x0f)*94)+(x-1)))*32;
  24   1        return(abspad);
  25   1       }
  26          
  27          //两个ASCII码转为单字节
  28          uchar DoubleAscii2Byte(uchar ValH,uchar ValL)
  29          {
  30   1              uchar cHigh,cLow;
  31   1              if(ValH >= '0' && ValH <= '9')
  32   1              {
  33   2                      cHigh = (ValH-'0')<<4;
  34   2              }
  35   1              else if(ValH >= 'A' && ValH <= 'F')
  36   1              {
  37   2                      cHigh = (ValH-'A'+10)<<4;
  38   2              }
  39   1              else if(ValH >= 'a' && ValH <= 'f')
  40   1              {
  41   2                      cHigh = (ValH-'a'+10)<<4;
  42   2              }
  43   1              else
  44   1                      cHigh = 0;
  45   1      
  46   1              if(ValL >= '0' && ValL <= '9')
  47   1              {
  48   2                      cLow = (ValL-'0');
  49   2              }
  50   1              else if(ValL >= 'A' && ValL <= 'F')
  51   1              {
  52   2                      cLow = (ValL-'A'+10);
  53   2              }
  54   1              else if(ValL >= 'a' && ValL <= 'f')
  55   1              {
C51 COMPILER V8.06   ZIKU                                                                  12/25/2007 08:55:46 PAGE 2   

  56   2                      cLow = (ValL-'a'+10);
  57   2              }
  58   1              else
  59   1                      cLow = 0;
  60   1      
  61   1              return ((cHigh & 0xf0)+(cLow & 0x0f));
  62   1      }
  63          
  64          //设置分页,获取总线地址
  65          uint DEAL_BANK(ulong zkad)
  66          {PAGE0 = zkad&0x008000;
  67   1       PAGE1 = zkad&0x010000;
  68   1       PAGE2 = zkad&0x020000;
  69   1       return((uint)zkad&0x7f);
  70   1       }
  71          
  72          //计算出最终的显示数据
  73          void GET_DISDATA(void)
  74          {uint i;
  75   1       uchar j;
  76   1       for(i=0;i<datalen;i+=2)
  77   1         {databuff[i/2]=DoubleAscii2Byte(databuff[i],databuff[i+1]);}
  78   1       for(i=0;i<datalen/2;i+=2)
  79   1         {for(j=0;j<32;j++)
  80   2          disdata[i*16+j]=XBYTE[DEAL_BANK(UNI2CBSP((uint *)(&databuff)[i]))+j];
  81   2              }
  82   1       }
  83          


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