[求助] 求高手指点!LaunchPad点1602的LCD没有反应

wuyanyanke   2012-6-18 23:21 楼主

我用的是1602的屏,资料如附件;

 

按手册如下连接:

p1.0-p1.6 连 LCD的 7-14(DB0-DB7)

P2.0  连    LCD的 6脚 (EN)

P2.1  连    LCD的 4脚 (RS)

 

无论LCD的GND和VCC连不连到Launchpad上都没有反应

 

代码参考常见泽兄的如下:

#include <msp430g2452.h>
unsigned char table1[]="EE-LaunchPad";
unsigned char num;
void delay_1ms(void)
{
  unsigned int i;
  for (i=0;i<1140;i++);
}

/*****************************************
*
* N ms延时函数
*
****************************************/
void delay_nms(unsigned int n)
{
  unsigned int i=0;
  for (i=0;i<n;i++)
    delay_1ms();
}

void write_com(unsigned int com)
{
  //lcdrs = 0;
  P2OUT&= 0xfd;     //1111 1101  P2.1为低电平
  P1OUT = com;      //    放到LCD里面的数据   
  delay_nms(5);
  //lcden = 1;
  P2OUT|= 0x01;      //0000 0001
  delay_nms(5);
  P2OUT&= 0xfe;      //1111 1110
}

void write_dat(unsigned int dat)
{
  //lcdrs = 1;
  P2OUT |= 0x03;
  P1OUT = dat;
  delay_nms(5);
  //lcden=1;
  P2OUT|= 0x01;
  delay_nms(5);
  // lcden=0;
  P2OUT&= 0xfe;

}
void init()
{
  write_com(0x38);      //0011 1000     1.3,1.4,1.5为输出高电平

  write_com(0x0f);      //P1OUT = 0000 1111
  write_com(0x01) ;     //0000 0001
  write_com(0x06);      //0000 0110
  write_com(0x80);      //1000 0000
}
void main(void)
{
  WDTCTL = WDTPW + WDTHOLD; // Stop WDT
  P1DIR |= 0xff; // P1.2 output: 1111 1111 P1口各位作为输出
  P2DIR |= 0xff;                //1111 1111  P2各口作为输出
  init();              
  for(num=0;num<12;num++)
  {
    write_dat(table1[num]);
    delay_nms(100);
  }
  while(1);
}

 

不知道问题出在哪!?求高手指点!!

[ 本帖最后由 wuyanyanke 于 2012-6-18 23:25 编辑 ]

回复评论 (5)

void write_dat(unsigned int dat)
{
  //lcdrs = 1;
  P2OUT |= 0x03;//改为P2OUT = 0x02;试试
  P1OUT = dat;
  delay_nms(5);
  //lcden=1;
  P2OUT|= 0x01;
  delay_nms(5);
  // lcden=0;
  P2OUT&= 0xfe;

}

还有1602的RW信号呢?你直接把它接地了吗?

点赞  2012-6-19 00:04

P2OUT |= 0x03;改为P2OUT |= 0x02;试试

点赞  2012-6-19 00:07

回复 楼主 wuyanyanke 的帖子

1602瓶应该是一样的 看了你的屏幕的引脚是一样的
第一:确认你的硬件电路正确(我的直接连得别的开发板上的液晶,所以电路问题不存在)
第二:确认引脚连接是否正确(RW接地,因为我程序里没有RW拉低)
(程序肯定是通过的,具体还要楼主自己揣摩了,当然程序只是实现简单的功能,不完善,需要楼主更新提出建议)
点赞  2012-6-19 14:41
常见泽1兄、woaifpga兄
改过代码,也连线将RW拉底,还是没有反应!??
点赞  2012-6-19 23:59

有可能是

1602第三腳是vo

你要串聯約10k可變電阻去調整

這一個pin輸入電壓可調整字幕清晰度

 

点赞  2012-7-2 14:51
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复