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

📄 lcdcon.lst

📁 proteus与keil仿真89c55控制18b20 ds1302 字符液晶
💻 LST
📖 第 1 页 / 共 3 页
字号:
             -x04,0x40,0x02,0x40,0x01,0x80,0x06,0x60,0x18,0x1C,0x60,0x08,
 145          "车",0x02,0x00,0x02,0x00,0x7F,0xFC,0x04,0x00,0x04,0x80,0x08,0x80,0x10,0x80,0x3F,0xFC,0x00,0x80,0x00,0x80,0
             -xFF,0xFE,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,
 146          "状",0x10,0xA0,0x10,0x90,0x10,0x98,0x90,0x88,0x50,0x80,0x5F,0xFE,0x10,0xA0,0x10,0xA0,0x31,0x20,0x51,0x20,0
             -x91,0x10,0x12,0x10,0x12,0x08,0x14,0x0E,0x18,0x04,0x10,0x00,
 147          "态",0x01,0x00,0x01,0x00,0x7F,0xFC,0x01,0x00,0x02,0x80,0x02,0x40,0x05,0x20,0x08,0x98,0x30,0x06,0x01,0x00,0
             -x04,0x88,0x24,0x84,0x24,0x12,0x64,0x12,0x43,0xF0,0x00,0x00,
 148          "待",0x10,0x40,0x18,0x40,0x13,0xFC,0x28,0x40,0x4C,0x40,0x88,0x40,0x17,0xFE,0x10,0x10,0x30,0x10,0x57,0xFE,0
             -x10,0x10,0x11,0x10,0x11,0x10,0x10,0x10,0x10,0x50,0x10,0x20,
C51 COMPILER V8.01   LCDCON                                                                10/03/2008 08:28:26 PAGE 4   

 149          "命",0x01,0x00,0x02,0x80,0x04,0x40,0x08,0x20,0x10,0x18,0x2F,0xEE,0xC0,0x04,0x3E,0xF8,0x22,0x88,0x22,0x88,0
             -x22,0x88,0x3E,0x88,0x22,0xB8,0x20,0x90,0x00,0x80,0x00,0x80,
 150          "确",0x00,0x80,0x00,0xFC,0x7C,0x88,0x11,0x10,0x13,0xFC,0x21,0x24,0x3D,0x24,0x65,0xFC,0xA5,0x24,0x25,0x24,0
             -x25,0xFC,0x3D,0x24,0x22,0x24,0x22,0x24,0x04,0x14,0x08,0x08,
 151          "定",0x02,0x00,0x01,0x00,0x3F,0xFE,0x20,0x04,0x40,0x08,0x1F,0xF0,0x01,0x00,0x11,0x00,0x11,0x00,0x11,0xF0,0
             -x11,0x00,0x29,0x00,0x25,0x00,0x43,0x00,0x81,0xFC,0x00,0x00,
 152          "返",0x00,0x08,0x43,0xFC,0x22,0x00,0x32,0x00,0x23,0xF8,0x02,0x08,0xE3,0x08,0x22,0x90,0x22,0x50,0x24,0x20,0
             -x24,0x50,0x28,0x88,0x23,0x04,0x50,0x00,0x8F,0xFC,0x00,0x00,
 153          "回",0x00,0x00,0x7F,0xFC,0x40,0x04,0x40,0x04,0x4F,0xE4,0x48,0x24,0x48,0x24,0x48,0x24,0x48,0x24,0x48,0x24,0
             -x4F,0xE4,0x40,0x04,0x40,0x04,0x40,0x04,0x7F,0xFC,0x00,0x00,
 154          };
 155          
 156          uchar   gCurRow;
 157          uchar   gCurCol;        // 图形当前行、列存储,行高16点,列宽8点
 158          uchar   tCurRow;
 159          uchar   tCurCol;        // 文本当前行、列存储,行高8点 ,列宽8点
 160          uchar   ShowModeSW; // 当前显示模式
 161          uint    txthome;
 162          uint    grhome;
 163          
 164          uchar   InitLcd();                              //液晶显示器初始化
 165          uchar   TestSta(uchar sta);     //状态位检测
 166          uchar   WriteDoubParm(uchar cmd, uchar parm1, uchar parm2);     //写双参数指令
 167          uchar   WriteSigParm(uchar cmd, uchar parm);    //写单参数指令
 168          uchar   WriteCom(uchar cmd);    //写无参数指令
 169          uchar   WriteData(uchar Data);  //写数据
 170          //uchar ReadData();//读数据
 171          void SetPos(uchar row, uchar col);//设置当前地址
 172          //void at(unsigned char x,unsigned char y);//设置文本X,Y 值
 173          void cls();                                             //清屏
 174          uchar dprintf(uchar x,uchar y,char *string,uchar mod);//ASCII(8*16)与汉字(16*16)显示
 175          //void SetShowMode(uchar ShowMod);//设置显示模式
 176          //void Line(uchar x1,uchar y1,uchar x2,uchar y2,bit mod);//画线函数
 177          //void Pixel(uchar PointX,uchar PointY,bit mod);//画点函数
 178          
 179          uchar TestSta(uchar sta)
 180          {
 181   1              uchar i;
 182   1              uchar RightSta;
 183   1      
 184   1              if(sta==1)
 185   1                      RightSta=0x03;
 186   1              else if(sta==2)
 187   1                      RightSta=0x04;
 188   1              else if(sta==3)
 189   1                      RightSta=0x08;
 190   1              else if(sta==6)
 191   1                      RightSta=0x40;
 192   1              else
 193   1                      RightSta=0;
 194   1      
 195   1              for(i=10;i>0;i--)
 196   1              {
 197   2                      if((LCDCOMADR & RightSta) == RightSta)
 198   2                      break;
 199   2              }
 200   1              return i;       //若返回0值,LCD不在正常状态
 201   1      }
 202          
 203          uchar WriteDoubParm(uchar cmd, uchar parm1, uchar parm2)        //写双参数指令
 204          {
 205   1              if(TestSta(1)==0)
C51 COMPILER V8.01   LCDCON                                                                10/03/2008 08:28:26 PAGE 5   

 206   1              return 1;
 207   1              LCDDATADR=parm1;
 208   1              if(TestSta(1)==0)
 209   1              return 2;
 210   1              LCDDATADR=parm2;
 211   1              if(TestSta(1)==0)
 212   1              return 3;
 213   1              LCDCOMADR=cmd;
 214   1      
 215   1              return 0;
 216   1      }
 217          
 218          uchar WriteSigParm(uchar cmd, uchar parm)       //写单参数指令
 219          {
 220   1              if(TestSta(1)==0)
 221   1              return 1;
 222   1              LCDDATADR=parm;
 223   1              if(TestSta(1)==0)
 224   1              return 2;
 225   1              LCDCOMADR=cmd;
 226   1      
 227   1              return 0;       
 228   1      }
 229          
 230          uchar WriteCom(uchar cmd)       //写无参数指令
 231          {
 232   1              if(TestSta(1)==0)
 233   1              return 1;
 234   1              LCDCOMADR=cmd;
 235   1      
 236   1              return 0;
 237   1      }
 238          
 239          uchar WriteData(uchar Data)     //写数据
 240          {
 241   1              if(TestSta(3)==0)
 242   1              return 1;
 243   1              LCDDATADR = Data;
 244   1      
 245   1              return 0;
 246   1      }
 247          /*
 248          uchar ReadData()        //读数据
 249          {
 250                  if(TestSta(1)==0)
 251                  return 1;
 252                  return LCDDATADR;
 253          }
 254          */
 255          void SetPos(uchar row, uchar col)//设置当前地址
 256          {
 257   1              uint iPos;
 258   1      
 259   1              iPos = row * 20 + col;
 260   1              WriteDoubParm(LC_ADD_POS,iPos & 0xFF,iPos / 256);
 261   1              gCurRow = row;
 262   1              gCurCol = col;
 263   1      }
 264          
 265          /*
 266          void at(unsigned char x,unsigned char y)//设定文本x,y 值
 267          {       
C51 COMPILER V8.01   LCDCON                                                                10/03/2008 08:28:26 PAGE 6   

 268                  uint iPos; //地址
 269                  
 270                  iPos = x  + y* 20;
 271                  WriteDoubParm(LC_ADD_POS,iPos&0xff,iPos/256);
 272                  tCurRow = x;
 273                  tCurCol = y;
 274          }
 275          */
 276          // 清屏
 277          void cls(void)
 278          {
 279   1              uint i;
 280   1              
 281   1              WriteDoubParm(LC_ADD_POS,0x00,0x00); // 置地址指针
 282   1              WriteCom(LC_AUT_WR); // 自动写
 283   1              for(i=0;i<0x0F00;i++)
 284   1              {
 285   2                      TestSta(3);
 286   2                      WriteData(0x00); // 写数据
 287   2              }
 288   1              WriteCom(LC_AUT_OVR); // 自动写结束
 289   1              WriteDoubParm(LC_ADD_POS,0x00,0x00); // 重置地址指针
 290   1              gCurRow = 0; // 置地址指针存储变量
 291   1              gCurCol = 0;
 292   1      }
 293          
 294          uchar InitLcd()
 295          {
 296   1              P1_0=0;
 297   1              P1_0=1;
 298   1              WriteDoubParm(LC_TXT_STP,0x00,0x00);    //文本显示区首地址
 299   1              WriteDoubParm(LC_TXT_WID,0x14,0x00);    //文本显示区宽度
 300   1              WriteDoubParm(LC_GRH_STP,0x00,0x00);    //图形显示区首地址
 301   1              WriteDoubParm(LC_GRH_WID,0x14,0x00);    //图形显示区宽度
 302   1              WriteSigParm(LC_CGR_POS,CGRAMSTART >> 11); //设置便宜寄存器
 303   1              WriteCom(LC_CUR_SHP | 0x07);    //光标形状
 304   1              WriteCom(LC_MOD_OR);    //显示模式
 305   1              WriteCom(LC_DIS_SW |0x08);      //显示开关
 306   1              grhome = GRSTART;
 307   1              txthome = TXTSTART;
 308   1              
 309   1              return 0;
 310   1      }
 311          

⌨️ 快捷键说明

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