S6B0108驱动的19264,程序写了没反应,求助

2019-07-15 19:20发布

本帖最后由 yue497676042 于 2014-6-24 14:19 编辑

各位好,

     我用了一个S6B0108驱动的19264,按照示例写了程序,液晶一直没有显示。对比度及背光都正常。逐条写语句,用示波器检测引脚波形均正常。

     试了很久,都没有显示。延时都增加了,还是一个点都没有显示。请各位帮忙看看,新手在此万分感谢:

    (因为是试试,所以只操作第一部分屏,即设置/CS1=0,/CS2=1;/CS3=1)

#include<p33FJ256GP710.h>

#define uchar unsigned char
#define uint unsigned int

#define LCD_RS LATBbits.LATB8
#define LCD_RW LATBbits.LATB9
#define LCD_E LATBbits.LATB10
#define LCD_CS1 LATBbits.LATB11
#define LCD_RST LATBbits.LATB12
#define LCD_CS2 LATBbits.LATB13
#define LCD_CS3 LATBbits.LATB14
#define LCD_BLA LATBbits.LATB15

/****************************************************************************
* 名    称:void Delay(uchar n)
* 功    能:延迟函数1ms
* 入口参数:n
* 出口参数:无
* 说    明:经过示波器检测,11.0592MHz下精确1ms。
****************************************************************************/
void Delay(uint n)
{
    uint j;
    uint k;
    for(j=0;j<n;j++)
        for(k=730;k>0;k--) asm("nop");
}


/****************************************************************************
* 名    称:LCD_Write(uchar dat_com,uchar content)
* 功    能:液晶数据/指令写入函数
* 入口参数:dat_com,content
* 出口参数:无
* 说    明:dat_com=0为指令,dat_com=1为数据。
****************************************************************************/
void LCD_Write(uchar dat_com,uchar content)
{  
    LCD_E=0;
    LCD_RW=0;
    LCD_RS=dat_com;

   *(volatile char*)(&LATB)=content;

    LCD_E=1;
    Delay(10);
    LCD_E=0;
}

void main()
{
    RCON=0x00;
    AD1PCFGH=0xFF;
    AD1PCFGL=0xFF;
    AD2PCFGL=0xFF;
    TRISB=0x0000;
    LATB=0xFCFF;      //初始化

    LCD_RST=0;
    Delay(500);
    LCD_RST=1;
    Delay(500);      //复位

    LCD_CS1=0;
    LCD_CS2=1;
    LCD_CS3=1;      //只对CS1操作

    LCD_Write(0,0x3F);      //开显示
    Delay(1000);
    LCD_Write(0,0xC0);      //起始行设置
    Delay(1000);  

    LCD_Write(0,0xB8);      //页设置首页
    Delay(1000);
    LCD_Write(0,0x40);      //列设置首行
    Delay(1000);
    LCD_Write(1,0xFF);      //随便写入一个数据0xFF
    Delay(1000);
    LCD_Write(1,0xFF);      //随便写入一个数据0xFF
    while(1);
}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
yue497676042
1楼-- · 2019-07-15 22:03
没有人愿意帮下忙的吗?
zhou2sheng
2楼-- · 2019-07-16 02:07
 精彩回答 2  元偷偷看……
z00
3楼-- · 2019-07-16 07:58
如果时序正序的话 那只能说明屏坏掉了 或者是对比度设置的不正确
yue497676042
4楼-- · 2019-07-16 12:14
感谢版主关注。问题已经解决了,买的液晶片选信号是高有效,主要问题是对比度调的不对。

不能直接接到电源即100%,大概调到75%字就出来了。不同的液晶不一样,建议设计的时候用电阻器调,把字调清楚了,后续产品再用贴片电阻。

以上个人解决方案,为后面的同志做个参考吧。
guolei
5楼-- · 2019-07-16 13:46
学习学习谢谢分享

一周热门 更多>