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

📄 st7920

📁 这是TOPWAY公司的LCD驱动程序
💻
📖 第 1 页 / 共 2 页
字号:
 208   3              wr_lcd(comm,0x30);
 209   3              wr_lcd(dat,data1);
 210   3              wr_lcd(dat,data2);
 211   3              }
 212   2              }
 213   1              wr_lcd(comm,0x36);
 214   1      }
 215          
 216          /******************************************************************************************
 217          * 函数名称    :cur_disp
 218          * 功能描述    : 
 219          * 参数        :  参数名称:    输入/输出?     类型            描述
 220          * //当data1=0xff,data2=0x00时,在x0,y0处显示前半光标.
 221          * //当data1=0x00,data2=0xff时,在x0,y0处显示后半光标.
 222          * //当data1=0x00,data2=0x00时,在x0,y0处不显示光标.
 223          * //y0=0x8f or y0=0x9f.
 224          * 返回值      :
 225          * 作者        :
 226          * 创建日期    :2006-12-19
 227          * 全局变量    :
 228          * 全局静态变量:
 229          * 局部静态变量:
 230          *----------------------------------------修改历史------------------------------------------
 231          * 当前版本    :                         修改人:                  修改日期:
 232          * 修改说明    :
 233          ******************************************************************************************/
 234          void cur_disp(uchar data1,uchar data2,uchar x0,uchar y0)
 235          {
 236   1              wr_lcd(comm,0x34);
 237   1              wr_lcd(comm,y0);
 238   1              wr_lcd(comm,x0);
 239   1              wr_lcd(comm,0x30);
 240   1              wr_lcd(dat,data1);
 241   1              wr_lcd(dat,data2);
C51 COMPILER V7.50   ST7920并行反白与光标                                                  07/24/2007 11:24:50 PAGE 5   

 242   1              wr_lcd(comm,0x36);
 243   1      }
 244          
 245          /******************************************************************************************
 246          * 函数名称    :clrram
 247          * 功能描述    : 清DDRAM
 248          * 参数        :  参数名称:    输入/输出?     类型            描述
 249          * 
 250          * 返回值      :
 251          * 作者        :
 252          * 创建日期    :2006-12-19
 253          * 全局变量    :
 254          * 全局静态变量:
 255          * 局部静态变量:
 256          *----------------------------------------修改历史------------------------------------------
 257          * 当前版本    :                         修改人:                  修改日期:
 258          * 修改说明    :
 259          ******************************************************************************************/
 260          void clrram(void)
 261          {
 262   1              wr_lcd(comm,0x30);
 263   1              wr_lcd(comm,0x01);
 264   1      }
 265          
 266          /******************************************************************************************
 267          * 函数名称    :wr_lcd
 268          * 功能描述    : 
 269          * 参数        :  参数名称:    输入/输出?     类型            描述
 270          * 
 271          * 返回值      :
 272          * 作者        :
 273          * 创建日期    :2006-12-19
 274          * 全局变量    :
 275          * 全局静态变量:
 276          * 局部静态变量:
 277          *----------------------------------------修改历史------------------------------------------
 278          * 当前版本    :                         修改人:                  修改日期:
 279          * 修改说明    :
 280          ******************************************************************************************/
 281          void wr_lcd(uchar dat_comm,uchar content)
 282          {
 283   1              chk_busy();
 284   1              if(dat_comm)
 285   1              {
 286   2              rs=1;   //data
 287   2              rw=0;   //write
 288   2              }
 289   1              else 
 290   1              {
 291   2              rs=0;   //command
 292   2              rw=0;   //write
 293   2              }
 294   1              P0=content;   //output data or comm
 295   1              e=1;
 296   1              ;
 297   1              e=0;
 298   1      }
 299          /******************************************************************************************
 300          * 函数名称    :chk_busy
 301          * 功能描述    : 
 302          * 参数        :  参数名称:    输入/输出?     类型            描述
 303          * 
C51 COMPILER V7.50   ST7920并行反白与光标                                                  07/24/2007 11:24:50 PAGE 6   

 304          * 返回值      :
 305          * 作者        :
 306          * 创建日期    :2006-12-19
 307          * 全局变量    :
 308          * 全局静态变量:
 309          * 局部静态变量:
 310          *----------------------------------------修改历史------------------------------------------
 311          * 当前版本    :                         修改人:                  修改日期:
 312          * 修改说明    :
 313          ******************************************************************************************/
 314          void chk_busy(void)
 315          {
 316   1              P0=0xff;
 317   1              rs=0;
 318   1              rw=1;
 319   1              e =1;
 320   1              while(busy==1);
 321   1              e =0;
 322   1      }
 323          /******************************************************************************************
 324          * 函数名称    :
 325          * 功能描述    : 
 326          * 参数        :  参数名称:    输入/输出?     类型            描述
 327          * 
 328          * 返回值      :
 329          * 作者        :
 330          * 创建日期    :2006-12-19
 331          * 全局变量    :
 332          * 全局静态变量:
 333          * 局部静态变量:
 334          *----------------------------------------修改历史------------------------------------------
 335          * 当前版本    :                         修改人:                  修改日期:
 336          * 修改说明    :
 337          ******************************************************************************************/
 338          void delay(uint us)   //delay time
 339          {
 340   1              while(us--);
 341   1      }
 342          /******************************************************************************************
 343          * 函数名称    :
 344          * 功能描述    : 
 345          * 参数        :  参数名称:    输入/输出?     类型            描述
 346          * 
 347          * 返回值      :
 348          * 作者        :
 349          * 创建日期    :2006-12-19
 350          * 全局变量    :
 351          * 全局静态变量:
 352          * 局部静态变量:
 353          *----------------------------------------修改历史------------------------------------------
 354          * 当前版本    :                         修改人:                  修改日期:
 355          * 修改说明    :
 356          ******************************************************************************************/
 357          void delay1(uint ms)
 358          {
 359   1              uint i,j;
 360   1              for(i=0;i<ms;i++)
 361   1              for(j=0;j<15;j++)
 362   1              delay(1);
 363   1      }
 364          
 365          /******************************************************************************************
C51 COMPILER V7.50   ST7920并行反白与光标                                                  07/24/2007 11:24:50 PAGE 7   

 366          * 函数名称    :
 367          * 功能描述    : 
 368          * 参数        :  参数名称:    输入/输出?     类型            描述
 369          * 
 370          * 返回值      :
 371          * 作者        :
 372          * 创建日期    :2006-12-19
 373          * 全局变量    :
 374          * 全局静态变量:
 375          * 局部静态变量:
 376          *----------------------------------------修改历史------------------------------------------
 377          * 当前版本    :                         修改人:                  修改日期:
 378          * 修改说明    :
 379          ******************************************************************************************/
 380          void main()
 381          {
 382   1              uchar i;
 383   1              init_lcd();
 384   1              while(1)
 385   1              {
 386   2              lat_disp(0x00,0x00);
 387   2              chn_disp(tab2);
 388   2              for(i=0;i<8;i++)
 389   2              {
 390   3              cur_disp(0xff,0x00,0x88+i,0x8f);
 391   3              delay1(2000);
 392   3              cur_disp(0x00,0x00,0x88+i,0x8f);
 393   3              cur_disp(0x00,0xff,0x88+i,0x8f);
 394   3              delay1(2000);
 395   3              cur_disp(0x00,0x00,0x88+i,0x8f);
 396   3              }
 397   2              for(i=0;i<8;i++)
 398   2              {
 399   3              cur_disp(0xff,0x00,0x88+i,0x9f);
 400   3              delay1 (2000);
 401   3              cur_disp(0x00,0x00,0x88+i,0x9f);
 402   3              cur_disp(0x00,0xff,0x88+i,0x9f);
 403   3              delay1(2000);
 404   3              cur_disp(0x00,0x00,0x88+i,0x9f);
 405   3              }
 406   2              }
 407   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    911    ----
   CONSTANT SIZE    =    130    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      31
   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 + -