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

📄 main.lst

📁 在示模拟波器上显示汉字程序 51单片机 DAC0832 PS2键盘输入 汉字移动
💻 LST
字号:
C51 COMPILER V8.02   MAIN                                                                  08/08/2008 10:07:06 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*************************************************************
   2          程序名称:示波器OSC
   3          功    能:示波器上显示汉字字符(可移动)  PS2  串口调试
   4          日    期:2008.7.19
   5          *************************************************************/
   6          #include <at89x51.h>
   7          //#include<reg52.h>        //这里调用reg52.h文件PS2无法用 ????
   8          #include"zifu.h"
   9          #include"PS2.h"
  10          //#include"chuankou.h"
  11          
  12          #define uint  unsigned int 
  13          #define uchar unsigned char
  14          
  15          #define XDATALINE  P1  //0832输出
  16          #define YDATALINE  P2
  17          
  18          sbit ZLocation = P3^5;
  19          unsigned char Key_code;
  20          //void put_date(unsigned dat);
  21           
  22          unsigned char tabx[10];
  23          unsigned char taby[10];
  24          unsigned char Scale = 2;
  25          unsigned char XOffset =0;
  26          unsigned char YOffset =0;
  27          char XAdd=0;
  28          char YAdd=0;
  29          
  30          /*********************************************************** 
  31          函数名称: 
  32          函数功能:确定x坐标 
  33          入口参数: 
  34          出口参数: 
  35          备 注:  120x120
  36          ***********************************************************/
  37          void XLocation( unsigned char X )
  38          {
  39   1              XDATALINE = X;
  40   1      }
  41          /***********************************************************
  42          函数名称: 
  43          函数功能:确定y坐标 
  44          入口参数: 
  45          出口参数: 
  46          备 注:  120x120
  47          ***********************************************************/
  48          void YLocation( unsigned char Y )
  49          {
  50   1              
  51   1              YDATALINE = Y;
  52   1      }
  53          
  54          /*********************************************************** 
  55          函数名称: 
C51 COMPILER V8.02   MAIN                                                                  08/08/2008 10:07:06 PAGE 2   

  56          函数功能: 延时
  57          入口参数: 
  58          出口参数: 
  59          备 注: 
  60          ***********************************************************/
  61          /*void Delay( unsigned int t )
  62          {
  63                  while(t--);
  64          }       
  65           */
  66          /*********************************************************** 
  67          函数名称: 
  68          函数功能:绘一个点 
  69          入口参数: 
  70          出口参数: 
  71          备 注: 
  72          ***********************************************************/
  73          void DisPoint(unsigned char x,unsigned char y)
  74          {
  75   1                      ZLocation = 1;  
  76   1                      XLocation(x);            
  77   1                      YLocation(y);   
  78   1                      ZLocation = 0;
  79   1      }
  80          
  81          /*********************************************************** 
  82          函数名称: 
  83          函数功能: 显示一个8x16的字符
  84          入口参数: 
  85          出口参数: 
  86          备 注: 
  87          ***********************************************************/
  88          void Dis8x16Char (unsigned x, unsigned y,unsigned m)
  89          {
  90   1              unsigned char i,j,k;
  91   1              switch(flag)
  92   1               {
  93   2                 case 1:
  94   2                   YAdd=YAdd-4;               //上移四个单位
  95   2                 break;
  96   2                 case 2:
  97   2                   YAdd=YAdd+4;               //下移四个单位
  98   2                 break;
  99   2                 case 3:
 100   2                   XAdd=XAdd-4;          //左移
 101   2                      break;
 102   2                 case 4:
 103   2                   XAdd=XAdd+4;         //右移
 104   2                 break;
 105   2               }
 106   1              for(k=0;k<2;k++)           //K=0  显示在上8列   K=1  显示在下8列
 107   1                      for(i=0;i<8;i++)
 108   1                              for(j=0;j<8;j++)
 109   1                              {
 110   2                                      if((ZIMU[m+j+8*k]>>i)&0x01)
 111   2                                      {
 112   3                                              DisPoint(x+(j*Scale)+XOffset,(y+(8*k+i)*Scale)+YOffset);
 113   3                                      }
 114   2                                      else 
 115   2                                      {
 116   3                                              ZLocation = 1;
 117   3                                      }                       
C51 COMPILER V8.02   MAIN                                                                  08/08/2008 10:07:06 PAGE 3   

 118   2                              }
 119   1      
 120   1              flag=0;
 121   1      }
 122          
 123          /*********************************************************** 
 124          函数名称: 
 125          函数功能: 显示一个16x16的字符
 126          入口参数: 
 127          出口参数: 
 128          备 注: 
 129          ***********************************************************/
 130          void Dis16x16Char(unsigned x,unsigned y,unsigned char *zifu)
 131          {
 132   1              unsigned char i,j,k;
 133   1              for(k=0;k<2;k++)
 134   1                      for(i=0;i<8;i++)
 135   1                              for(j=0;j<16;j++)
 136   1                              {
 137   2                                      if((zifu[j+16*k]>>i)&0x01)
 138   2                                      {
 139   3                                              DisPoint(x+(j*Scale)+XOffset,(y+(8*k+i)*Scale)+YOffset);
 140   3                                      }
 141   2                                      else 
 142   2                                      {
 143   3                                              ZLocation = 1;
 144   3                                      }                       
 145   2                              }
 146   1      }
 147          
 148          /*********************************************************** 
 149          函数名称: 
 150          函数功能:主函数 
 151          入口参数: 
 152          出口参数: 
 153          备 注: 
 154          ***********************************************************/
 155          void main( void )
 156          {
 157   1         //  uart_rest();
 158   1               IT0 = 0;       //设外部中断0为低电平触发
 159   1               EA = 1;
 160   1               EX0 = 1;       //开中断
 161   1              
 162   1                while(1)
 163   1                {
 164   2                 Dis8x16Char(192+XAdd,128+YAdd,Key_code);
 165   2                 Dis16x16Char(0+64, 128,huan);
 166   2                 Dis16x16Char(32+64,128,ying);
 167   2                 Dis16x16Char(64+64,128,luo);
 168   2                 Dis16x16Char(96+64,128,tao);
 169   2                 Dis8x16Char(192+XAdd,128+YAdd,Key_code);
 170   2      
 171   2            if (BF)
 172   2                       {
 173   3                        Decode(KeyV);
 174   3                              
 175   3                        }
 176   2                   else
 177   2                         EA = 1; //开中断
 178   2              
 179   2                }
C51 COMPILER V8.02   MAIN                                                                  08/08/2008 10:07:06 PAGE 4   

 180   1                        
 181   1               
 182   1       }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    672    ----
   CONSTANT SIZE    =    871    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     32      17
   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 + -