#include<iom16v.h>
#include<macros.h>
#define uint unsigned int
#define uchar unsigned char
//rs=PD5,RW=PD6,E=PD7
void delay(uint m)
{ uint i;
for(m;m>1;m--)
{
for(i=745;i>1;i--);
}
}
void lcd_w_onedata(uchar i,uchar dat)
{
PORTD&=0XBF;//RW清零
if(i)
PORTD|=0X20;
else
PORTD&=0XDF;
PORTC=dat;
PORTD|=0X80;//E=1
PORTD&=0X7F;//E=0
delay(30);
}
/*********写字符串***************/
void lcd_w_strings(uchar ads,const uchar *s)
{
lcd_w_onedata(0,ads);
while(*s)
{
lcd_w_onedata(1,*s);
s++;
}
}
/**********12864初始化**************/
void lcd_init(void)
{
delay(40);
lcd_w_onedata(0,0x0c);
lcd_w_onedata(0,0x38);
lcd_w_onedata(0,0x01);
}