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

📄 lesson6._c

📁 基于51的液晶1602 显示程序。含1602显示pdf格式说明
💻 _C
字号:
#include <iom16v.h>
#include <macros.h>
#define  uchar unsigned char
#define  uint  unsigned int
#pragma data:code 
const uchar table[]="I LIKE AVR !";
const uchar table1[]="WWW.TXMCU.COM";
const uchar table2[]="I am gonna to " ; 
const uchar table3[]="work as hard as ";
const uchar table4[]="i can, and see ";
const uchar table5[]="what happen !";
void delay(uint ms)
{
        uint i,j;
	for(i=0;i<ms;i++)
	   {
	   for(j=0;j<1141;j++);
       }
}
void write_com(uchar com)
{
       PORTD&=~BIT(4);
	   PORTD&=~BIT(5);
	   PORTB=com; 
	   PORTD|=BIT(6);
	   delay(1);
	   PORTD&=~BIT(6);
}

void write_dat(uchar dat)
{     
       PORTD|=BIT(4);
	   PORTD&=~BIT(5);
	   PORTB=dat;
	   PORTD|=BIT(6);
	   delay(1);
	   PORTD&=~BIT(6);

}
void  main()
{
          uchar i;
	  DDRB=0XFF;
	  DDRD|=BIT(4)|BIT(5)|BIT(6);
	  PORTD&=~BIT(6);
	  
	  write_com(0X38);  //设置16*2显示 ,5*7点阵,8位数据接口
	  delay(5);
	  write_com(0X01);  //显示清屏
	  delay(5);
	  write_com(0X0C); //显示开关,光标设置
	  delay(5);
	  write_com(0X06);//显示开关,光标设置
	  delay(5);
	  write_com(0X80+0X00);// 数据指针设置
	  delay(5);

	  for(i=0;i<16;i++)
	  {
	     write_dat(table2[i]);
		
	  }
	  write_com(0X80+0X40);
	  delay(5);
	    for(i=0;i<16;i++)
	  {
	     write_dat(table3[i]);
		
	  }
      delay(1000);
	  write_com(0X01);  //显示清屏
	  delay(5);
	  	  write_com(0X01);  //显示清屏
	  delay(5);
	  	  write_com(0X0C); //显示开关,光标设置
	  delay(5);
	  write_com(0X06);//显示开关,光标设置
	  delay(5);

	  	  write_com(0X80+0X00);// 数据指针设置
	  delay(5);

	  for(i=0;i<16;i++)
	  {
	     write_dat(table4[i]);
		
	  }
	  write_com(0X80+0X40);
	  delay(5);
	    for(i=0;i<14;i++)
	  {
	     write_dat(table5[i]);
		
	  }
	  
	  
}

⌨️ 快捷键说明

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