標(biāo)題:
c51單片機(jī)程序1602顯示兩行字
[打印本頁]
作者:
1991486117
時(shí)間:
2021-12-2 13:58
標(biāo)題:
c51單片機(jī)程序1602顯示兩行字
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar lcd_Read();
void lcd_w_ml(uchar com);
void lcd_w_sj(uchar dat);
void lcd_init();
sbit RS=P2^6 ;
sbit RW=P2^5;
sbit E=P2^7;
uchar disp1[]="de zhou";
uchar disp2[]="xskeo ynng ka";//名字+1
void delay_ms(uint z)
{
uint i,j;
for(i=z;i>0;i--)
for(j=110;j>0;j--);
}
uchar lcd_Read()
{
uchar t;
RS=0;
RW=1;
_nop_();
P1=0xff;
_nop_();
E=1;
_nop_();
t=P1;
_nop_();
E=0;
return (t);
}
void lcd_w_ml(uchar com)
{
unsigned char i;
do
{
i=lcd_Read();
i=i&0x80;
}while(i!=0);
RS=0;
RW=0;
_nop_();
P1=com;
_nop_();
E=1;
_nop_();
_nop_();
E=0;
_nop_();
_nop_();
}
void lcd_w_sj(uchar dat)
{
unsigned char i;
do
{
i=lcd_Read();
i=i&0x80;
}while(i!=0);
RS=1;
RW=0;
_nop_();
P1=dat;
_nop_();
E=1;
_nop_();
_nop_();
E=0;
_nop_();
_nop_();
}
void lcd_init()
{
delay_ms(15);
lcd_w_ml(0x38);
delay_ms(5);
lcd_w_ml(0x38);
delay_ms(5);
lcd_w_ml(0x38);
lcd_w_ml(0x0c);
lcd_w_ml(0x01);
lcd_w_ml(0x06);
}
void main()
{{
uchar i,j;
lcd_init();
lcd_w_ml(0x80);
for(i=0;i<8;i++)
{
lcd_w_sj(disp1[i]);
_nop_();
_nop_();}
//lcd_init();
lcd_w_ml(0xC0);
for(j=0;j<13;j++)
lcd_w_sj(disp2[j]);
_nop_();
_nop_();
}}
復(fù)制代碼
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1