求助,MSP430G2553串行连接12864

2019-08-08 14:19发布

我用G2和12864(ST7920)串行连接,准备做画曲线程序,但一直卡在读不出LCD中的数据,从网上找,也很少有这方面的资料。所以求助各位大神了。
读程序如下:
uchar read_lcd()
{


      uchar i,data;
      data =0;
      LCD_SCLK0;             //en=1;
      LCD_SID1;              //wr=1
      for(i=0;i<5;i++)       //数据时序
      {
          LCD_SCLK1;
          delay_us(50);
          LCD_SCLK0;
          delay_us(50);
      }

      LCD_SID1;             //wr=1
      LCD_SCLK1;            //en=1
      delay_us(50);
      LCD_SCLK0;            //en=0
      delay_us(50);

      LCD_SID1;   
      LCD_SCLK1;
      delay_us(50);
      LCD_SCLK0;
      delay_us(50);

      LCD_SID0;
      LCD_SCLK1;
      delay_us(50);
      LCD_SCLK0;
      delay_us(50);
   P2DIR &= 0xef;  
    for(i=0;i<4;i++)
    {
        data<<=1;
        LCD_SCLK1;
        if(LCD_SID_READ) data++;
        LCD_SCLK0;
    }
    //再接受4个连续'0'
    for(i=0;i<4;i++)
    {
        delay_us(1);
        LCD_SCLK1;
        delay_us(1);
        LCD_SCLK0;
    }
    //接受低4位
    for(i=0;i<4;i++)
    {
        data<<=1;
        LCD_SCLK1;
        if(LCD_SID_READ) data++;
        LCD_SCLK0;   
    }
    //再接受4个连续'0'
    for(i=0;i<4;i++)
    {   
        delay_us(1);
        LCD_SCLK1;
        delay_us(1);
        LCD_SCLK0;   
    }
    P2DIR |= BIT4;
    return data;
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
568581185
1楼-- · 2019-08-08 19:29
:(只能看看,帮你顶一下
下一个微笑
2楼-- · 2019-08-08 20:45
 精彩回答 2  元偷偷看……
shenxl419
3楼-- · 2019-08-09 01:09
这个比较简单的,网上有人发过这样的例程,你读不出7920的数据,很有可能是时序不对,楼主要仔细看一下7920的时序,把软件延时改改吧
cjhk
4楼-- · 2019-08-09 03:14
帮楼主顶一个  呵呵   坐等大神  呵呵
1021256354
5楼-- · 2019-08-09 06:21
时序可能有问题,读写位的方向很重要。
gygp
6楼-- · 2019-08-09 09:44
反正数据不大,直接清屏就行了

一周热门 更多>