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

📄 demo2.lst

📁 用SST89C58,对微型打印机和液晶的显示
💻 LST
📖 第 1 页 / 共 3 页
字号:
C51 COMPILER V8.05a   DEMO2                                                                06/13/2008 08:47:36 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE DEMO2
OBJECT MODULE PLACED IN demo2.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE demo2.c BROWSE

line level    source

   1          #include <reg51.h>
   2          #include <math.h>
   3          #include <stdio.h>
   4          #include <absacc.h>
   5          #include <intrins.h>
   6          #include <string.h>
   7          #include <stdlib.h>
   8          // 直接访问方式地址定义,根据用户平台接口修改 
   9          // CWADD1   EQU     0FEFFH   写指令代码地址
  10          // DWADD1   EQU     0FCFFH   写参数及显示数据地址
  11          // DRADD1   EQU     0FEFFH   读参数及显示数据地址
  12          // CRADD1   EQU     0FCFFH   读忙状态地址
  13          // PARA1    EQU     20H      应用于DMF682(256*128)
  14          // PARA1        EQU     28H          应用于DMF50081/50174(320*240)
  15          // PARA1    EQU     50H      应用于DMF50036(640*200)
  16          #define  timeadd1 XBYTE[0xFB00]  // 时钟地址秒
  17          #define  timeadd2 XBYTE[0xFB09]  // 时钟年
  18          #define  timeadd3 XBYTE[0xFB0B]  // 停时钟
  19          #define  flash_ad XBYTE[0xF000]
  20          #define  wcadd1   XBYTE[0xBF00]  // #define  wcadd1 XBYTE[0xfe00]   写指令代码地址 
  21          #define  wdadd1   XBYTE[0x3F00]  // #define  wdadd1 XBYTE[0xfc00]   写参数及显示数据地址 
  22          #define  rdadd1   XBYTE[0xBF00]  // 读参数及显示数据地址 
  23          #define  rbadd1   XBYTE[0x3C00]  // 读忙状态地址 
  24          #define  Io8155   XBYTE[0xEF00]
  25          #define  M8155    XBYTE[0xCF00]
  26          #define  M8155_1  XBYTE[0xCF10]
  27          #define  Io8155_A XBYTE[0xEF01]
  28          #define  Io8155_B XBYTE[0xEF02]
  29          #define  Io8155_c XBYTE[0xEF03]
  30          #define  PARA     0x28;          // 程序参数定义,根据用户选择的LCM型号修改 32K(7FFFH)
  31          #define  TRUE     1
  32          #define  FALSE    0
  33          typedef unsigned char uchar;
  34          typedef unsigned int  uint;
  35          
  36          //sfr16 DPTR = 0x82;
  37          sfr16 flash = 0xb3;
  38          
  39          sfr  SFCF=0xb1;
  40          sfr  SFCM=0xb2;
  41          sfr  SFAL=0xb3;
  42          sfr  SFAH=0xb4;
  43          sfr  SFDT=0xb5;
  44          sfr  SFST=0xb6;
  45          
  46          sbit Input_1=P1^0;
  47          sbit Input_2=P1^1;
  48          sbit Input_3=P1^2;
  49          sbit Input_4=P1^3;
  50          sbit Master =P1^4;
  51          sbit Second =P1^5;
  52          sbit out = P1^6;   /* 给副CPU的中断信号 */
  53          sbit Time_out=P1^7;
  54          sbit P24=P2^4;
  55          sbit P25=P2^5;
C51 COMPILER V8.05a   DEMO2                                                                06/13/2008 08:47:36 PAGE 2   

  56          sbit io_clock=P3^2;  //sbit io_clock =  P2^7        //MAX192
  57          sbit io_cs=P3^3;     //sbit io_cs    =  P2^6
  58          sbit data_in=P2^0;   //sbit data_in  =  P3^3
  59          sbit data_out=P2^1;  //sbit data_out =  P1^7
  60          sbit PC_start=P3^2;
  61          sbit STB   =P2^3;    //sbit MC_start=P3^3; sbit Busy =P3^3;
  62          sbit Bad   =P3^4;
  63          sbit Paus =P1^7;
  64          sbit Back  =P3^5;
  65          
  66          /* 定义调用子程序 */
  67          void delay4(uint Tm_count);
  68          void sound(bit f,uchar i);
  69          void del_old(uchar id);
  70          void disp_old(uchar i);
  71          void del_sector(uchar k,bit choose);
  72          void save();
  73          bit  save_data(uchar code *p,uchar i);
  74          void D_40(uchar cos);
  75          void MP_40(uchar *p);
  76          void Print_40(uchar id,bit old_data);
  77          void disp_3(uchar O_X,uchar O_Y,uchar h_ox,uchar l_oy,uchar *p);
  78          void set_xy(uchar o_x,o_y);
  79          void read_time(uchar o_x,uchar o_y,bit open);
  80          void write_time(uchar o_x,uchar o_y);
  81          bit TXD_pc(uchar i);
  82          void KG();
  83          void GL();
  84          void Disp_2(uchar ad);
  85          void CW_PR1(uint O_X,uint O_Y,uchar p);
  86          void Disp_msg(uint o_x,uchar o_y,uchar n);
  87          void Link(uint o_x,uint o_y,uint n,bit c);
  88          void Reset(bit c);
  89          void Max192(uchar i,uchar o_x,uchar o_y,bit set);
  90          void delay_2();
  91          void ZD();
  92          void ZL();
  93          uchar RXD_c();
  94          void Display(uchar o_x,uchar o_y,uchar id,uchar id1,uint x,bit open);
  95          void DOT_s(uint o_x1,uint o_y1,uint o_x2,uint o_y2,bit c);
  96          void TXD_c(uchar i);
  97          uchar choose(uchar O_X,uchar O_Y,uchar h_ox,uchar l_oy,uchar *p); 
  98          void TXT_S(uchar O_X,uchar O_Y,bit c,uchar *disp);      // 显示16*16字符串
  99          void CCW2_PR24(uchar O_X,uchar O_Y,uchar code_l);       // 显示24*24字符
 100          void CCW1_PR(uchar O_X,uchar O_Y,uchar code_l);         // 汉字写入子程序(文本方式) 
 101          void CCW2_PR(uchar O_X,uchar O_Y,uchar code_l);         // 汉字写入子程序(图形方式)
 102          void W_DOT(uint O_X,uint O_Y );                         // 绘点子程序
 103          void CW_PR(uint O_X,uint O_Y,uchar *p);                 // 西文写入子程序 
 104          void CLEAR();
 105          void INT_1();
 106          void CGRAM();
 107          void delay(void);
 108          
 109          // -------------- DMF-50081/50174 的SYSTEM SET 参数 --------------
 110          // SYSTAB:      DB 30H,87H,07H,27H,42H,0F0H,28H,00H       ; P1-P8参数
 111          // SCRTAB:      DB 00H,00H,0F0H,00H,30H,0F0H,00H,60H,00H,00H ; P1-P10参数
 112          // -------------------240128的SYSTEM SET 参数-------------------------------
 113          // code uchar SYSTAB[8]={0x30,0x87,0x07,0x1e,0x21,0x80,0x1f,0x00};
 114          // code uchar SCRTAB[10]={0x00,0x00,0x80,0xf0,0x01,0x80,0x00,0x00,0x00,0x00};
 115          // -------------------320240的SYSTEM SET 参数-------------------------------
 116          
 117          code uchar SYSTAB[8]={0x30,0x87,0x07,0x27,0x42,0xf0,0x28,0x00};
C51 COMPILER V8.05a   DEMO2                                                                06/13/2008 08:47:36 PAGE 3   

 118          code uchar SCRTAB[10]={0x00,0x00,0xf0,0x00,0x30,0xf0,0x00,0x60,0x00,0x00};
 119          // code uchar SCRTAB[10]={0x00,0x00,0xf0,0xce,0x04,0xf0,0x80,0x00,0x00,0x00};
 120          // 在此可以观察文本方式下的字符及光标的显示效果(写入内容为"Sevicer tel:") 
 121          code uchar DRAG_1[6][5]={0,1,2,3,0xfe,0,1,4,5,0xfe,6,7,8,9,0xfe,10,8,4,5,0xfe,11,12,13,14,0xfe,53,54,55,56
             -,0xff};
 122          // code uchar DRAG_2[]={0,1,4,5,0xff};
 123          // code uchar DRAG_3[]={6,7,8,9,0xff};
 124          // code uchar DRAG_4[]={10,8,4,5,0xff};

⌨️ 快捷键说明

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