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

📄 lcm.c

📁 1602LCD程序
💻 C
字号:
#include<reg52.h>
#include<stdio.h>
#include<absacc.h>
#include<intrins.h>
/**************针脚定义************/
sbit RS=P1^0;
sbit RW=P1^1;
sbit EN=P1^2;
sbit DATA=P1^4;
sbit CLK=P1^5;
sbit CLR=P1^3;
/**************函数声明************/
void clrlcd(void);                                 //clr LCD
void c_send(unsigned char y);                         //发命令
void reset(void);                                 // reset LCD
void d_send(unsigned char x);                     //发数据
void pos(unsigned char posx);                     //设定显示位置
void l_delay(unsigned int t);                      //长延时
/**************延时子程序**********************/
delay()                        //延时
{
   int i;
          for(i=0;i<30000;i++);
}
/***********************************************/
void l_delay(unsigned int t)                        //延时
{
  unsigned int p;
  unsigned int j;

     for(j=0;j<t;j++)
      {
	     for(p=0;p<2000;p++);
      }
}
/***********************************************/
void reset(void)               // reset LCD
{
     delay();
    c_send(0x38);
    c_send(0x01);
    c_send(0x06);
    c_send(0x0c);
    c_send(0x80);
}
/***********************************************/
void clrlcd(void)               // clr LCD
{
     delay();
    c_send(0x01);

}
/***********************************************/
void pos(unsigned char posx,unsigned char posy)        //设定显示位置
{
 unsigned char temp;
  temp =  posx & 0xf;
  posy &= 0x1;
  if (posy) temp |= 0x40; 
  c_send(temp | 0x80);
}
/***********************************************/
void c_send(unsigned char y)         //发命令
{
  unsigned char i;
  EN=1;
  RS=0;
  RW=0;
  for(i=0;i<8;i++)
    {
       if(_crol_(y,i)&0x80)
            DATA=1;
       else
            DATA=0;
      CLK=0;
      CLK=1;
	 }
  EN=0;
  delay();
}
/**************************************************/
void d_send(unsigned char x)     //发数据
{
  unsigned char i;
  EN=1;
  RS=1;
  RW=0;
  for(i=0;i<8;i++)
    {
       if(_crol_(x,i)&0x80)
            DATA=1;
       else
            DATA=0;
      CLK=0;
      CLK=1;
	 }
  EN=0;
  delay();
}
/***********************************/
main()
{   
while (1)
{
    reset();
    pos(0,0);
    d_send('O');
    d_send('h');
    d_send(' ');
    d_send('S');
    d_send('h');
    d_send('i');
    d_send('t');
    d_send('!');
    d_send('!');
    d_send('!');
    d_send('!');
	delay();
    
     }    
    
}


⌨️ 快捷键说明

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