 
					
				
/*-----------------------------------------------
  名称:LCD1602
  学校:中州大学
  网站:www.zhzhu.edu.cn
  编写:我就是我lxw
  内容:通过标准程序静态显示2行字符
------------------------------------------------*/
#include<reg52.h> 
#include<stdio.h>
#include<intrins.h>
sbit RS = P2^4;
sbit RW = P2^5;
sbit E  = P2^6;
#define Data P0
char data TimeNum[]="                ";
char data Test1[]="                  ";
void DelayUs(unsigned char us)
{
 unsigned char uscnt;
 uscnt=us>>1;        
 while(--uscnt);
}
void DelayMs(unsigned char ms)
{
 while(--ms)
   {
     DelayUs(250);
     DelayUs(250);
  DelayUs(250);
  DelayUs(250);
   }
}
void WriteCommand(unsigned char c)
{
 DelayMs(5);
 E=0;
 RS=0;
 RW=0;
 _nop_();
 E=1;
 Data=c;
 E=0;
}
void WriteData(unsigned char c)
{
 DelayMs(5); 
 E=0;
 RS=1;
 RW=0;
 _nop_();
 E=1;
 Data=c;
 E=0;
 RS=0;
}
void ShowChar(unsigned char pos,unsigned char c)
{
 unsigned char p;
 if (pos>=0x10)
    p=pos+0xb0; 
 else 
    p=pos+0x80; 
 WriteCommand (p);
 WriteData (c); 
}
void ShowString (unsigned char line,char *ptr)
{
 unsigned char l,i;
 l=line<<4;
 for (i=0;i<16;i++)
  ShowChar (l++,*(ptr+i));
}
void InitLcd()
{
 DelayMs(15);
 WriteCommand(0x38); 
 WriteCommand(0x38); 
 WriteCommand(0x38); 
 WriteCommand(0x06); 
 WriteCommand(0x0c);
 WriteCommand(0x01);
}
void main(void)
{
InitLcd();        
DelayMs(15);   
sprintf(Test1,"MCU--DIY"); 
ShowString(0,Test1);
sprintf(TimeNum,"www.eepw.com.cn");
ShowString(1,TimeNum);
while(1);
}
 
					
				回复
| 有奖活动 | |
|---|---|
| 硬核工程师专属补给计划——填盲盒 | |
| “我踩过的那些坑”主题活动——第002期 | |
| 【EEPW电子工程师创研计划】技术变现通道已开启~ | |
| 发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
| 【EEPW在线】E起听工程师的声音! | |
| 高校联络员开始招募啦!有惊喜!! | |
| 【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
| 送您一块开发板,2025年“我要开发板活动”又开始了! | |

 
			
			
			
						
			 我要赚赏金
 我要赚赏金 STM32
STM32 MCU
MCU 通讯及无线技术
通讯及无线技术 物联网技术
物联网技术 电子DIY
电子DIY 板卡试用
板卡试用 基础知识
基础知识 软件与操作系统
软件与操作系统 我爱生活
我爱生活 小e食堂
小e食堂

