您的位置 首页 传感器

msp430液晶屏1602驱动程序

1602液晶显示:1,16脚:地2,15脚:+53脚:接滑动变阻器,滑动变阻器另一端接地4脚:P45(RS)5脚:P46(RW)6脚:P47(E)7~14脚:接单

1602液晶显现:

1,16脚:地

2,15脚:+5

3脚:接滑动变阻器,滑动变阻器另一端接地

4脚:P4.5(RS)

5脚: P4.6 (RW)

6脚: P4.7(E)

7~14脚:接单片机的数据口P5(D0~D7)

#include<msp430x14x.h>
#define RS_HIGN P4OUT|=BIT5 //P4.5
#define RS_LOW P4OUT&=~BIT5
#define RW_HIGN P4OUT|=BIT6 //P4.6
#define RW_LOW P4OUT&=~BIT6
#define E_HIGN P4OUT|=BIT7 //P4.7
#define E_LOW P4OUT&=~BIT7
void LcdPos(char,char);
void LcdWd(char);
void LcdWc(char);
void LcdWcn(char);
void Delay(char);
void WaitIdle();

void Delay(char wDelay) //延时子程序
{
while(wDelay!=0)
wDelay–;
}

void WriteChar(char c,char x,char y)
{
LcdPos(x,y);
LcdWd(c);
}

void WriteString(char *s,char x,char y)
{
char i;
if(*s==0)
return;
for(i=0;;i++)
{
if(*(s+i)==0)
break;
WriteChar(*(s+i),x,y);
x++;
if(x>15)
break;
}
}

void SetCur(char Para) //设置光标,显现状况等
{ Delay(2);
switch(Para)
{case 0:
{LcdWc(0x08);
break;}
case 1:
{LcdWc(0x0c);
break;}
case 2:
{LcdWc(0x0e);
break;}
case 3:
{LcdWc(0x0f);
break;}
default:
break;
}
}

void ClrLcd()
{
LcdWc(0x01);
}

void WaitIdle()
{
char temp;
P5DIR &=0;
RS_LOW;//RS=0;
RW_HIGN;//RW=1;
Delay(1000);
for(;;)
{
E_HIGN;//E=1;
temp=P5IN;
E_LOW;//E=0
temp&=0x80;
if(temp==0)
{P5DIR=0xff;
break;}
}
}

void LcdWd(char c) //将待写数据送到端口
{WaitIdle();
P5DIR=0xff;
RS_HIGN;//RS=1;
RW_LOW;//RW=0;
P5OUT=c;
E_HIGN;//E=1;
Delay(2000);
E_LOW;//E=0;
}
void LcdWc(char c)
{
WaitIdle();
LcdWcn(c);
}
void LcdWcn(char c ) //送操控字子程序
{ P5DIR=0xff;
RS_LOW;//RS=0;
RW_LOW;//RW=0;
P5OUT=c;
E_HIGN;//E=1;
Delay(1000);
E_LOW;//E=0;
}
void LcdPos(char x,char y) //设置光标所在方位
{
unsigned char temp;
x &=0x0f;
y &=0x01;
if(y==0)
temp=x;
else
temp=x+0x40;
temp |=0x80;
LcdWc(temp);
}
void RstLcd()
{ Delay(10000);
LcdWc(0x38); //显现形式设置
LcdWc(0x08); //显现封闭
LcdWc(0x01); //显现清屏
LcdWc(0x06); //显现光标移动方位
LcdWc(0x0c); //显现开及光标设置
}

int main()
{
WDTCTL=WDTPW+WDTHOLD;
P4DIR=0xff;
RstLcd();
ClrLcd();
WriteString(“welcome!”,4,0);
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/chuanganqi/261398.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部