上面既是效果图了。。
/*//////////////////////////////////////////////////////////////////////////
文件名:液晶显示
时间:2011年8月24日
*///////////////////////////////////////////////////////////////////////////
#include <msp430x24x.h>//加载头文件
#define E (0x0004u)//确定E的位
#define RW (0x0002u)
#define RS (0x0001u)
unsigned char show[]={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','E','F'};
void delayms()
{
unsigned int i=300;
while(i!=0)
{i--;}
}
/*//////////////////////////////////////////////////////////////////////////
函数名:writecommand(unsigned char command)
函数功能:写命令函数
入口参数:command
出口参数:
*///////////////////////////////////////////////////////////////////////////
void writecommand(unsigned char command)
{
delayms();
P5OUT |=E;
P5OUT &=~RW;
P5OUT &=~RS;
P4OUT =command;
P5OUT &=~E;
}
/*//////////////////////////////////////////////////////////////////////////
函数名:writedata(unsigned char data)
函数功能:写数据函数
入口参数:data
出口参数:
*///////////////////////////////////////////////////////////////////////////
void writedata(unsigned char data)
{
delayms();
P5OUT |=E;
P5OUT &=~RW;
P5OUT |=RS;
P4OUT =data;
P5OUT &=~E;
}
/*//////////////////////////////////////////////////////////////////////////
函数名:lcd_init
函数功能:液晶初始化函数
入口参数:
出口参数:
*///////////////////////////////////////////////////////////////////////////
void lcd_init(void)
{
delayms();
writecommand(0x38);
writecommand(0x08);
writecommand(0x01);
writecommand(0x06);
writecommand(0x0C);
}
/*//////////////////////////////////////////////////////////////////////////
函数名:main
函数功能:主函数
入口参数:
出口参数:
*///////////////////////////////////////////////////////////////////////////
void main(void)
{
int i=0;
WDTCTL=WDTPW+WDTHOLD;
P4DIR =0XFF;
P5DIR =BIT0+BIT1+BIT2;
lcd_init();//液晶初始化
for(i=0;i<15;i++)//写15个字母
writedata(show[i]);
writecommand(0x80+0x40);//换成第二行
for(i=0;i<15;i++)
writedata(show[i]);
}