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

📄 dyonoff.lst

📁 打印机控制程序
💻 LST
字号:
C51 COMPILER V7.20   DYONOFF                                                               06/25/2005 11:10:56 PAGE 1   


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

line level    source

   1          
   2          #include <REGX52.H>
   3          
   4          #include "config.h"
   5          #include"intrins.h"
   6          #include"key.h"
   7          #include"tupian.h"
   8          #define uchar unsigned char
   9          #define uint unsigned int
  10          
  11          
  12          bit     fXonXoff;
  13          
  14          uchar code print_hzinit[4]={0x1b,0x56,0x01,0x00};
  15          uchar code print_tui[4]={0x1b,0x6a,0xf0};
  16          uchar code print_jin[3]={0x1b,0x4a,0xf0};
  17          //永泰和电子
  18          
  19          
  20          
  21          
  22          
  23          
  24          /*
  25          code unsigned char print_da[24][3]={0x00,0x00,0x00,0x01,0x80,0x00,0x01,0xc0,0x00,0x01,0xc0,0x00,
  26          0x01,0xc0,0x00,0x01,0x80,0xfc,0x01,0x9f,0xfe,0x01,0xfe,0xc0,
  27          0x1f,0xc0,0xc0,0x0d,0x80,0xc0,0x01,0xe0,0xc0,0x01,0xc0,0xc0,
  28          0x01,0x80,0xc0,0x07,0x80,0xc0,0x1f,0x80,0xc0,0x79,0x80,0xc0,
  29          0x71,0x80,0xc0,0x01,0x86,0xc0,0x07,0x83,0xc0,0x03,0x81,0xc0,
  30          0x03,0x81,0xc0,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00};     //打
  31          
  32          code unsigned char print_yin[24][3]={0x00,0x00,0x00,0x00,0xc0,0x00,0x01,0xe0,0x00,0x01,0xe0,0x00,
  33          0x03,0x80,0xf8,0x3e,0x0f,0xf8,0x38,0x0c,0x38,0x18,0xcc,0x30,
  34          0x1b,0xcc,0x30,0x1f,0x0c,0x30,0x18,0x0c,0x30,0x08,0x6d,0xf0,
  35          0x09,0xcc,0xf0,0x1f,0x0c,0x60,0x1e,0x0c,0x00,0x1c,0x0c,0x00,
  36          0x18,0x0c,0x00,0x00,0x0c,0x00,0x00,0x0c,0x00,0x00,0x0c,0x00,
  37          0x00,0x0c,0x00,0x00,0x0c,0x00,0x00,0x04,0x00,0x00,0x00,0x00};  //印
  38          
  39          code unsigned char print_shi1[24][3]={0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x03,0x80,0x00,0x01,0x80,
  40          0x00,0x01,0x80,0x03,0x81,0x80,0x7f,0x81,0x80,0x31,0x81,0xbc,
  41          0x31,0xbf,0xfc,0x31,0xff,0x80,0x3f,0x81,0x80,0x3d,0xb1,0x80,
  42          0x31,0x99,0x80,0x31,0x9d,0x80,0x71,0x89,0x80,0x71,0x81,0x80,
  43          0x7f,0x81,0x80,0x63,0x81,0x80,0x01,0x01,0xc0,0x00,0x07,0xc0,
  44          0x00,0x03,0x80,0x00,0x03,0x80,0x00,0x00,0x00,0x00,0x00,0x00};      //时
  45          
  46          code unsigned char print_jian[24][3]={0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x01,0xe0,0x03,0x9f,0xf0,
  47          0x01,0x98,0x30,0x18,0x00,0x30,0x18,0x00,0x30,0x18,0x9e,0x30,
  48          0x18,0xff,0x30,0x18,0xc6,0x30,0x18,0xd6,0x30,0x18,0xfe,0x30,
  49          0x18,0xc6,0x30,0x18,0xc6,0x30,0x18,0xfe,0x30,0x18,0xce,0x30,
  50          0x38,0x84,0x30,0x38,0x00,0x30,0x38,0x01,0xf0,0x10,0x00,0xf0,
  51          0x00,0x00,0x60,0x00,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00};     //间
  52                                                                                          */
  53          
  54          
  55          
C51 COMPILER V7.20   DYONOFF                                                               06/25/2005 11:10:56 PAGE 2   

  56          
  57          
  58          void service_uart() interrupt 4
  59          {
  60   1              if(RI==1)
  61   1              {       //process recevice
  62   2                      if(SBUF == 0x13)
  63   2                      {       fXonXoff = 0;
  64   3                      //process over
  65   3                      }
  66   2                      else
  67   2                      {
  68   3                              fXonXoff=1;
  69   3                      }
  70   2              RI=0;
  71   2              }
  72   1      }
  73          
  74          //打印初始化
  75          void print_init()
  76          {
  77   1              SCON=0X50;    
  78   1              T2CON=0X34;   //波特率为115200
  79   1              RCAP2H=0XFF;
  80   1              RCAP2L=0XFD;
  81   1              REN=1;
  82   1      
  83   1      }
  84          
  85          //向串口发送一个字符 
  86          void psend_char_com(unsigned char ch)  
  87          {
  88   1              while(1)
  89   1              {       
  90   2                      if(fXonXoff==1)
  91   2                      {         SBUF=ch;
  92   3                                while(TI==0);
  93   3                                TI=0;
  94   3                        break;
  95   3                      }
  96   2              }
  97   1      
  98   1      }
  99          //向串口发送一个字符串,strlen为该字符串长度 
 100          void  psend_string_com(unsigned char *str,unsigned int strlen)
 101          {
 102   1          unsigned int k=0;
 103   1          do 
 104   1          {
 105   2              psend_char_com(*(str + k));
 106   2              k++;
 107   2          } while(k < strlen);
 108   1      }
 109          
 110          
 111          void print_pic(unsigned char *picture,unsigned char height)
 112          {
 113   1              unsigned char *pic_addr;
 114   1              unsigned char pic_temp;
 115   1              pic_addr=picture;
 116   1              for(pic_temp=0;pic_temp<height;pic_temp++)
 117   1              {
C51 COMPILER V7.20   DYONOFF                                                               06/25/2005 11:10:56 PAGE 3   

 118   2                      psend_string_com(print_hzinit,4);
 119   2                      psend_string_com(pic_addr,48);
 120   2                      pic_addr+=48;
 121   2              }       
 122   1      
 123   1      }
 124          
 125          
 126          void main()
 127          {
 128   1      //      unsigned char h,k,a;
 129   1              unsigned char key_num;
 130   1              fXonXoff = 1;
 131   1          delay1();
 132   1              print_init();
 133   1              IE=0x90;
 134   1              while(1)
 135   1              {
 136   2                      delay1();
 137   2                      key_num=wait_key();
 138   2                      {
 139   3                              switch(key_num)
 140   3                              {
 141   4                                      case KEY1:
 142   4                                              
 143   4                                      /*      for(a=0;a<20;a++)
 144   4                                              {       
 145   4                                                      for(h=0;h<24;h++)               //打印时间:
 146   4                                                      {
 147   4                                                              psend_string_com(print_hzinit,4);
 148   4                                                              psend_string_com(print_da[h],3);
 149   4                                                          psend_string_com(print_yin[h],3);
 150   4                                                              psend_string_com(print_shi1[h],3);
 151   4                                                              psend_string_com(print_jian[h],3);
 152   4                                                              for(k=0;k<45;k++)
 153   4                                                              {
 154   4                                                                      psend_char_com(0x00);
 155   4                                                              }               
 156   4                                                      }
 157   4                                              }*/
 158   4                                              psend_string_com(print_jin,3);delay1();
 159   4                                              break;
 160   4                                      case KEY2:
 161   4                                              psend_string_com(print_tui,3);delay1();
 162   4                                              break;
 163   4                                      case KEY3:
 164   4                                              print_pic(pic,162);
 165   4                                              break;
 166   4                                      default:
 167   4                                              break;
 168   4                              }
 169   3                      }
 170   2                                      
 171   2              }
 172   1              
 173   1      }
 174          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    221    ----
   CONSTANT SIZE    =   7787    ----
C51 COMPILER V7.20   DYONOFF                                                               06/25/2005 11:10:56 PAGE 4   

   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       9
   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 + -