msp430f1491602LCD程序分析和总结.docx

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

/*****************MSP430F149

***********************/

/*

1602LCD

Lvpanfei

2011

3.11

*/

/**************************Pins

defination***************************/

/*

RS

P3.0

寄存器选择信号

H-数据寄存器

L-指令寄存器

*/

/*

RW

P3.1

读写信号

H-读

L-写

*/

/*

E

P3.2

片选信号

下降沿触发

*/

/*

DB0-DB7

P2.0-P2.7

数据线

数据传输

*/

/**************************over*************************************/

#includemsp430x14x.h#includestdio.h

#defineucharunsignedchar#defineuintunsignedint

uchardis1[]=HELLO!;uchardis2[]=LVPANFEI;

voidint_clk()

{

uchari;

BCSCTL1=~XT2OFF; //打开XT振荡器BCSCTL2|=SELM1+SELS; //MCLK为8MHz,SMCLK 为8MHz

do

{

IFG1=~OFIFG; //清除振荡错误标志for(i=0;i100;i++)

_NOP(); //延时等待

}

while((IFG1OFIFG)!=0);IFG1=~OFIFG;

}

如//果标志为1,则继续循环等待

voiddelay(int延j)时/函/数

{

inti;while(j--)

{

for(i=0;i2000;i++)

{

_NOP();

_NOP();

_NOP();

_NOP();

}

}

}

/******************* 检查LCD忙状态 *********************/

/************* lcd_busy为1时,忙,等待 *****************/

/************* lcd-busy为0时,闲,可写指令与数据 *********/intlcd_busy()

{

intbusy;

P2DIR=0x00;

P3OUT=~BIT0;//RS=0

P3OUT

|=BIT1;//RW=

1

P3OUT

|=BIT2;//EN=

1

_NOP();

busy=P2IN0x80;

_NOP();

P3OUT

=~BIT2;

//EN

=0

P3OUT

=~BIT1;

//RW

=0

P3OUT|=BIT0; //RS=1P2DIR=0XFF;

returnbusy;

}

//写指令数据到LCD RS=L,RW=L,E=高脉冲,D0-D7=指令码。voidlcd_wcmd(ucharcmd)

{

while(lcd_busy());

P3OUT=~(BIT0+BIT1); //RS=0RW=0P2OUT=cmd;

_NOP();

P3OUT|=BIT2; //E=1

_NOP();

P3OUT=~BIT2;

}

//写显示数据到LCD RS=H,RW=L,E=高脉冲,D0-D7=数据。voidlcd_wdat(uchardat)

{

while(lcd_busy());

P3OUT|=BIT0;//RS=1

P3OUT=~(BIT1+BIT2);//RW=0E=0

P2OUT=dat;

_NOP();

P3OUT|=BIT2; //E=1

_NOP();

P3OUT=~BIT2; //E=0

}

voidlcd_pos(ucharpos)

{

lcd_wcmd(pos|0x80); //数据指针=80+地址变量

}

voidlcd_clr()

{

lcd_wcmd(0x01);delay(1);

}

//清除LCD

的显示内容

voidlcd_init()

{

delay(10);

//等待LCD

电源稳定

lcd_wcmd(0x38);delay(1);lcd_wcmd(0x38);delay(50);lcd_wcmd(0x38);delay(1);

//16*2显示,5*7点阵,8位数据

}

lcd_wcmd(0x0c);delay(1);lcd_wcmd(0x06);d

文档评论(0)

tianya189 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体阳新县融易互联网技术工作室
IP属地上海
统一社会信用代码/组织机构代码
92420222MA4ELHM75D

1亿VIP精品文档

相关文档