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

📄 lcdx1.lst

📁 此程序主要测试50HZ~3KHZ音频范围幅频特性测试程序.程序包含主控程序和显示程序.
💻 LST
📖 第 1 页 / 共 5 页
字号:
C51 COMPILER V7.07   LCDX1                                                                 01/25/2005 13:50:05 PAGE 1   


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

stmt level    source

   1          #include<reg52.h>
   2          #include<absacc.h>
   3          #include<math.h>
   4          #include<stdio.h>
   5          
   6          #define uchar unsigned char
   7          #define uint unsigned int
   8          
   9          /*将字节A中的第B位置C,C为1或0 */
  10          #define SETBIT(A,B,C) ((C)?(A=A|(1<<B)):(A=A&(~(1<<B))))
  11          
  12          /*测试字节A中第B位,是1返回1,是0返回0*/
  13          #define GETBIT(A,B) ((A&(1<<B))?1:0)
  14          
  15          /*将A,B中较小的返回*/
  16          #define MIN(A,B) ((A<=B)?A:B)
  17          
  18          /*将A,B中较大的返回*/
  19          #define MAX(A,B) ((A>=B)?A:B)
  20          
  21          #define LEN 0x08        /*定义串口数据串的长度*/
  22          #define ASK 0xaa        /*定义串口请求命令*/
  23          #define RESP 0xbb       /*定义串口应答命令*/
  24          #define ERR     0xff    /*定义串口数据错误命令*/
  25          #define OK 0x00         /*定义串口数据正确命令*/
  26          
  27          typedef struct 
  28          {
  29                  uchar x;
  30                  uchar y;
  31          }point;
  32          
  33          void iwlr(uchar);               /*指令同时写入左右半屏*/
  34          void dwlr(uchar);               /*显示数据同时写入左右半屏*/
  35          void iwl(uchar);                /*指令写入左半屏*/
  36          void iwr(uchar);                /*指令写入右半屏*/
  37          void dwl(uchar);                /*显示数据写入左半屏*/
  38          void dwr(uchar);                /*显示数据写入右半屏*/
  39          uchar drl();                    /*显示数据从左半屏读入*/
  40          uchar drr();                    /*显示数据从右半屏读入*/
  41          void offlcd();                  /*关闭LCD*/
  42          void onlcd();                   /*打开LCD*/
  43          
  44          uchar pf;                               /*校验和*/
  45          point cursor;                   /*光标点全局变量*/
  46          bit zf_ovx;                             /*显示字符超出水平边界标志*/
  47          bit zf_ovy;                             /*显示字符超出垂直边界标志*/
  48          bit tx_ovx;                             /*显示图形超出垂直边界标志*/
  49          bit tx_ovy;                             /*显示图形超出垂直边界标志*/
  50          bit zf_fs;                              /*0为西文方式,1为中文方式*/
  51          bit sec;                                /*秒信号,由定时器周期取反*/
  52          
  53          uchar bdata flag=0;             /*显示状态字节*/
  54          sbit flash=flag^7;              /*闪烁标志,0为不闪烁,1为闪烁,只要以下任一有便为1*/
  55          sbit fref=flag^6;               /*频率闪烁标志,0为不闪烁,1为闪烁*/
C51 COMPILER V7.07   LCDX1                                                                 01/25/2005 13:50:05 PAGE 2   

  56          sbit batf=flag^5;               /*电量闪烁标志,0为不闪烁,1为闪烁*/
  57          sbit bandf=flag^4;              /*频带闪烁标志,0为不闪烁,1为闪烁*/
  58          sbit mutef=flag^3;              /*静音闪烁标志,0为不闪烁,1为闪烁*/
  59          sbit prof=flag^1;               /*提示闪烁标志,0为不闪烁,1为闪烁*/
  60          sbit bufov=flag^0;              /*命令缓冲区满标志,1为满*/     
  61          
  62          uchar ffpos=0;                  /*频率选种位置,从0到5*/
  63          
  64          uchar idata buf[LEN];                           /*串口接受命令缓冲区*/
  65          
  66          uchar lbarnum=0;                                        /*水平条形图宽度数据*/
  67          uchar batnum=0;                                         /*电池电量数据*/
  68          uchar counter=0x00;                                     /*计数器*/
  69          uchar vol_bar_num=0;                            /*音量条形图宽度数据*/
  70          
  71          
  72          /*小字体数字*/
  73          uchar code sntab[]={
  74          /*--  文字:  0  --*/
  75          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=5x10   --*/
  76          /*--  高度不是8的倍数,现调整为:宽度x高度=5x16  --*/
  77          0x00,0x78,0x84,0x84,0x78,0x00,0x00,0x00,0x00,0x00,
  78          
  79          /*--  文字:  1  --*/
  80          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=5x10   --*/
  81          /*--  高度不是8的倍数,现调整为:宽度x高度=5x16  --*/
  82          0x00,0x00,0x08,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,
  83          
  84          /*--  文字:  2  --*/
  85          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=5x10   --*/
  86          /*--  高度不是8的倍数,现调整为:宽度x高度=5x16  --*/
  87          0x00,0xC8,0xA4,0xA4,0x98,0x00,0x00,0x00,0x00,0x00,
  88          
  89          /*--  文字:  3  --*/
  90          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=5x10   --*/
  91          /*--  高度不是8的倍数,现调整为:宽度x高度=5x16  --*/
  92          0x00,0x48,0x84,0x94,0x68,0x00,0x00,0x00,0x00,0x00,
  93          
  94          /*--  文字:  4  --*/
  95          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=5x10   --*/
  96          /*--  高度不是8的倍数,现调整为:宽度x高度=5x16  --*/
  97          0x00,0x60,0x58,0xFC,0x40,0x00,0x00,0x00,0x00,0x00,
  98          
  99          /*--  文字:  5  --*/
 100          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=5x10   --*/
 101          /*--  高度不是8的倍数,现调整为:宽度x高度=5x16  --*/
 102          0x00,0x9C,0x94,0x94,0x64,0x00,0x00,0x00,0x00,0x00,
 103          
 104          /*--  文字:  6  --*/
 105          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=5x10   --*/
 106          /*--  高度不是8的倍数,现调整为:宽度x高度=5x16  --*/
 107          0x00,0x78,0x94,0x94,0x60,0x00,0x00,0x00,0x00,0x00,
 108          
 109          /*--  文字:  7  --*/
 110          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=5x10   --*/
 111          /*--  高度不是8的倍数,现调整为:宽度x高度=5x16  --*/
 112          0x00,0x04,0xE4,0x14,0x0C,0x00,0x00,0x00,0x00,0x00,
 113          
 114          /*--  文字:  8  --*/
 115          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=5x10   --*/
 116          /*--  高度不是8的倍数,现调整为:宽度x高度=5x16  --*/
 117          0x00,0x68,0x94,0x94,0x68,0x00,0x00,0x00,0x00,0x00,
C51 COMPILER V7.07   LCDX1                                                                 01/25/2005 13:50:05 PAGE 3   

 118          
 119          /*--  文字:  9  --*/
 120          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=5x10   --*/
 121          /*--  高度不是8的倍数,现调整为:宽度x高度=5x16  --*/
 122          0x00,0x18,0xA4,0xA4,0x78,0x00,0x00,0x00,0x00,0x00,
 123          
 124          /*--  调入了一幅图像:这是您新建的图像  --*/
 125          /*--  宽度x高度=5x16  --*/
 126          0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x01,0x00,0x00,
 127          };
 128          
 129          /*大写字母*/
 130          uchar code sutab[]={
 131          /*--  文字:  A  --*/
 132          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 133          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 134          0x00,0xC0,0x30,0x2C,0x30,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,
 135          
 136          /*--  文字:  B  --*/
 137          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 138          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 139          0x00,0xFC,0x94,0x94,0x94,0x68,0x00,0x00,0x00,0x00,0x00,0x00,
 140          
 141          /*--  文字:  C  --*/
 142          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 143          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 144          0x00,0x78,0x84,0x84,0x84,0x48,0x00,0x00,0x00,0x00,0x00,0x00,
 145          
 146          /*--  文字:  D  --*/
 147          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 148          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 149          0x00,0xFC,0x84,0x84,0x84,0x78,0x00,0x00,0x00,0x00,0x00,0x00,
 150          
 151          /*--  文字:  E  --*/
 152          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 153          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 154          0x00,0xFC,0x94,0x94,0x84,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 155          
 156          /*--  文字:  F  --*/
 157          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 158          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 159          0x00,0xFC,0x14,0x14,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 160          
 161          /*--  文字:  G  --*/
 162          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 163          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 164          0x00,0x78,0x84,0x84,0xA4,0xE8,0x00,0x00,0x00,0x00,0x00,0x00,
 165          
 166          /*--  文字:  H  --*/
 167          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 168          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 169          0x00,0xFC,0x10,0x10,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 170          
 171          /*--  文字:  I  --*/
 172          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 173          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 174          0x00,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 175          
 176          /*--  文字:  J  --*/
 177          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 178          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 179          0x00,0xC0,0x80,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
C51 COMPILER V7.07   LCDX1                                                                 01/25/2005 13:50:05 PAGE 4   

 180          
 181          /*--  文字:  K  --*/
 182          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 183          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 184          0x00,0xFC,0x30,0x48,0x84,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 185          
 186          /*--  文字:  L  --*/
 187          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 188          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 189          0x00,0xFC,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 190          
 191          /*--  文字:  M  --*/
 192          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 193          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 194          0x00,0xFC,0x0C,0x30,0xC0,0x30,0x00,0x00,0x00,0x00,0x00,0x00,
 195          
 196          /*--  文字:  N  --*/
 197          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 198          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 199          0x00,0xFC,0x0C,0x30,0xC0,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,
 200          
 201          /*--  文字:  O  --*/
 202          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 203          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 204          0x00,0x78,0x84,0x84,0x84,0x78,0x00,0x00,0x00,0x00,0x00,0x00,
 205          
 206          /*--  文字:  P  --*/
 207          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 208          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 209          0x00,0xFC,0x24,0x24,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 210          
 211          /*--  文字:  Q  --*/
 212          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 213          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 214          0x00,0x78,0x84,0xA4,0x44,0xB8,0x00,0x00,0x00,0x00,0x00,0x00,
 215          
 216          /*--  文字:  R  --*/
 217          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 218          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 219          0x00,0xFC,0x24,0x24,0x24,0xD8,0x00,0x00,0x00,0x00,0x00,0x00,
 220          
 221          /*--  文字:  S  --*/
 222          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 223          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 224          0x00,0x48,0x94,0xA4,0x48,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 225          
 226          /*--  文字:  T  --*/
 227          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 228          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 229          0x04,0x04,0xFC,0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 230          
 231          /*--  文字:  U  --*/
 232          /*--  Small Fonts6;  此字体下对应的点阵为:宽x高=6x10   --*/
 233          /*--  高度不是8的倍数,现调整为:宽度x高度=6x16  --*/
 234          0x00,0x7C,0x80,0x80,0x80,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,

⌨️ 快捷键说明

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