久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5078|回復: 4
收起左側

240128液晶屏T6963C驅動求大神愿意不吝賜教,萬分感謝

[復制鏈接]
ID:200794 發表于 2019-4-6 12:31 | 顯示全部樓層 |閱讀模式
240128液晶屏,搞了一個星期了,都沒能顯示字符,求救了,哪位大神愿意不吝賜教啊,萬分感謝

以下是源程序:



#include "LCD_240128.h"


//========================================================================
// 函數: void LCD_DataWrite(unsigned int Data)
// 描述: 寫一個字節的顯示數據至 LCD 中的顯示緩沖 RAM 當中
// 參數: Data 寫入的數據
// 返回: 無
// 備注: 無
// 版本:
//========================================================================
void LCD_DataWrite(unsigned char Data)
{
    LCD_CD_SetLow();
    LCD_CE_SetLow();
    LCD_WR_SetLow();
//    __delay_us(5);
    LATC = Data;
    __delay_us(5);
    LCD_WR_SetHigh();
    LCD_CE_SetHigh();
//    LCD_CD_SetHigh();
}
//========================================================================
// 函數: void LCD_CmdWrite(unsigned int Command)
// 描述: 寫一個字節的數據至 LCD 中的控制寄存器當中
// 參數: Command 寫入的命令,低八位有效(byte)
// 返回: 無
// 備注: 無
// 版本:
//========================================================================
void LCD_CmdWrite(unsigned char Command)
{
    LCD_CD_SetHigh();
    LCD_CE_SetLow();
    LCD_WR_SetLow();
//    __delay_us(5);
    LATC = Command;
    __delay_us(5);
    LCD_WR_SetHigh();
    LCD_CE_SetHigh();
//    LCD_CD_SetLow();
}

/******************************************************************************
*名稱: WriteDC()
*功能: 液晶寫1數據1命令程序,dat為要寫入的數據,cmd為要寫入的命令
******************************************************************************/
void WriteDC(unsigned char Data,unsigned char Command)      //寫一個數據和一個指令
{   
    LCD_DataWrite(Data);   
    LCD_CmdWrite(Command);   
}
/******************************************************************************
*名稱: WriteDDC()
*功能: 液晶寫2數據1命令程序,data為要寫入的數據,cmd為要寫入的命令
******************************************************************************/
void WriteDDC(unsigned char Data1, unsigned char Data2, unsigned char Command)   //寫兩個數據和一個指令
{   
    LCD_DataWrite(Data1);         
    LCD_DataWrite(Data2);   
    LCD_CmdWrite(Command);     
}   


/******************************************************************************
*名稱: LCD_Init()
*功能: 液晶初始化程序
*      初始地址設置好后,在不同的地址段相同WriteData()輸出不同
******************************************************************************/
void LCD_Init(void)         //液晶初始化
{   
    unsigned char Data1,Data2,Command;   
    LCD_WR_SetHigh();
    LCD_CE_SetHigh();
//    LCD_RST_SetLow();
//    __delay_us(5);
    LCD_RST_SetHigh();
    /*********************設置文本顯示*****************************/   
    Data1 = 0x00;   
    Data2 = 0x10;              //圖形顯示占用32*128=0xfff,故文本從0x1000開始
    Command = 0x40;                //設置文本顯示區首地址   
    WriteDDC(Data1,Data2,Command);   
    Data1 = 0x20;              //可以整屏顯示
    Data2 = 0x00;   
    Command = 0x41;                //設置文本顯示區寬度   
    WriteDDC(Data1,Data2,Command);   
    Data1 = 0x00;   
    Data2 = 0x00;   
    Command = 0x42;                //設置圖形顯示區首地址   
    WriteDDC(Data1,Data2,Command);   
    Data1 = 0x20;   
    Data2 = 0x00;   
    Command = 0x43;                //設置圖形顯示區寬度   
    WriteDDC(Data1,Data2,Command);  
    Command =0xa2;                 //設置光標形狀
    LCD_CmdWrite(Command);
    Command = 0x80;                //顯示方式設置
                             //啟用外部字符發生器,顯示方式是文本與圖形與
    LCD_CmdWrite(Command);
    Command = 0x9e;                //啟用光標閃爍,光標不顯示,文本顯示與圖形顯示   
    LCD_CmdWrite(Command);   
}

unsigned char Photo_code[] =
{   
/*---- 圖片文件來自:【xxxx.jpg】 ----*/
/*---- 圖片寬度:96     圖片高度:93 ----*/
/*---- 本數據文件建立日期:         ; 建立時間:         ----*/
/*---- 本數據文件由PICtoCODE【圖片數據生成器】V1.0自動生成! ----*/

};
#define CG_length 352

unsigned char CG_code[] =
{

};


/******************************************************************************
*名稱: Write_Str()
*功能: 液晶寫字符程序,顯示ASCII字符,row為行(0~15),rol為列(0~29)
*      顯示ASCII字符為8*8點陣(屏為240*128點陣)
******************************************************************************/
void Write_Str(unsigned char row,unsigned char rol,unsigned char str)
{
    unsigned int addres;
    unsigned char Data1,Data2;
    addres=row*32+rol+0x1000;
    Data2=addres>>8;
    Data1=addres;
    WriteDDC(Data1,Data2,0x24);
    LCD_CmdWrite(0xb0);
    LCD_DataWrite(str);
    LCD_CmdWrite(0xb2);
}


/******************************************************************************
*名稱: Write_Photo()
*功能: 液晶畫圖程序,row為圖片開始行(0~127),rol為圖片開始列(0~29),
*      width為圖片長(單位Bit),deep 為圖片寬(單位bit)
******************************************************************************/
void Write_Photo(unsigned char row,unsigned char rol,unsigned char width,unsigned char deep)
{
    unsigned int address,Photolength,i;
    unsigned char j,Data1,Data2,Command;
    Photolength=width*deep;
    address = row*32+rol;
    Data1 = address;                 //取地址低八位   
    Data2 = address>>8;                //取地址高八位   
    Command = 0x24;
    WriteDDC(Data1,Data2,Command);
    LCD_CmdWrite(0xb0);//自動寫模式
    for(i=0;i<Photolength;i++)
    {
        LCD_DataWrite(Photo_code);
        j++;
        if(j==width)
        {
            LCD_CmdWrite(0xb2);           //退出自動寫模式
            address=address+32;
            Data1 = address;                 //取地址低八位   
            Data2 = address>>8;                //取地址高八位   
            Command = 0x24;
            WriteDDC(Data1,Data2,Command);
            j=0;
            LCD_CmdWrite(0xb0);         //進入自動寫模式
        }
    }
    LCD_CmdWrite(0xb2);
}




/******************************************************************************
*名稱: Write_Chinese()
*功能: 液晶寫漢字程序,row為漢字開始行,rol為漢字開始列,Chinese為漢字字符串在
*      CGRAM中的初地址 ,length為漢字字符串的長度,(一個16*16點陣的漢字長度為4)
******************************************************************************/
void SetCGRAM(void)   
{      
    unsigned char Data1,Data2,Command;   
    unsigned int i;
    Data1 = 0x03;   
    Data2 = 0x00;                  //設置偏移地址寄存器
    Command = 0x22;                       
    WriteDDC(Data1,Data2,Command);   
    Data1 = 0x00;   
    Data2 = 0x1c;   
    Command = 0x24;                   //設置地址指針   
    WriteDDC(Data1,Data2,Command);   
    Command = 0xb0;                   //進入自動寫模式   
    LCD_CmdWrite(Command);   
    for (i = 0;i < CG_length; ++i)   
    {      
        LCD_DataWrite(CG_code);     
    }   
    Command = 0xb2;                   //退出自動寫模式   
    LCD_CmdWrite(Command);      
}
/******************************************************************************
*名稱: Write_Chinese()
*功能: 液晶寫漢字程序,row為漢字開始行(0~15),rol為漢字開始列(0~29),
*      Chinese為漢字字符串在CGRAM中的初地址 ,
*      length為漢字字符串的長度,(一個16*16點陣的漢字長度為4)
******************************************************************************/
void Write_Chinese(unsigned char row,unsigned char rol,unsigned char Chinese,unsigned char length) // 0x80 0x82 0x84 86     
{                                                                    // 0x81 0x83 0x85 87   
    unsigned char Data1,Data2,Command;   
    unsigned char i;   
    unsigned int address;   
    /****************先寫漢字上半部分*********************************/   
    address = row * 32 + rol+0x1000;   
    Data1 = address;                 //取地址低八位   
    Data2 = address>>8;                //取地址高八位   
    Command = 0x24;                      //設置地址指針,字符顯示首位置   
    WriteDDC(Data1,Data2,Command);   
    Command = 0xb0;                      //進去自動寫模式   
    LCD_CmdWrite(Command);
    for(i=0;i<length;i++)
    {
        LCD_DataWrite(Chinese+i);
        i++;
    }
    Command = 0xb2;                   //退出自動寫模式   
    LCD_CmdWrite(Command);
   /****************再寫漢字下半部分*********************************/   
    address = address+32;   
    Data1 = address;                 //取地址低八位   
    Data2 = address>>8;                //取地址高八位   
    Command = 0x24;                      //設置地址指針,字符顯示首位置   
    WriteDDC(Data1,Data2,Command);   
    Command = 0xb0;                      //進去自動寫模式   
    LCD_CmdWrite(Command);
    for(i=1;i<length;i++)
    {
        LCD_DataWrite(Chinese+i);
        i++;
    }
    Command = 0xb2;                   //退出自動寫模式   
    LCD_CmdWrite(Command);
}


回復

使用道具 舉報

ID:198286 發表于 2019-11-17 11:26 | 顯示全部樓層
給個接線圖吧
回復

使用道具 舉報

ID:860649 發表于 2020-12-15 16:07 | 顯示全部樓層
T6963C都停產好多年了,現應該都是用RA6963的吧,軟硬件完全兼容的。
回復

使用道具 舉報

ID:18297 發表于 2020-12-15 19:54 | 顯示全部樓層
出什么問題了呢?你需要什么幫助呢?
回復

使用道具 舉報

ID:517951 發表于 2021-6-25 15:56 | 顯示全部樓層
我這里還有一塊240160的T6963的液晶單色顯示屏,是可以點亮,正常顯示字符和漢字的。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久久.com | 成人av一区 | 日韩www视频 | 爱爱视频网 | 国产亚洲精品久久久久久豆腐 | 综合久久综合久久 | 国产精品欧美一区喷水 | 久久久久免费精品国产 | www.亚洲区 | 国产精品视频一二三 | 黑人巨大精品欧美黑白配亚洲 | 狠狠色狠狠色综合日日92 | 男女啪啪网址 | 天天操网 | 日本精品久久 | 欧美精品三区 | 国产精品3区 | 日韩成人在线播放 | 精品视频在线免费观看 | 一区二区三区欧美 | 亚洲国产精品日韩av不卡在线 | 免费在线成人 | 老外几下就让我高潮了 | 欧产日产国产精品国产 | 亚洲视频免费在线观看 | 精品久久国产 | 久久精品小视频 | 亚洲视频在线看 | 成人av片在线观看 | 精品成人在线视频 | 久久午夜视频 | 美女视频一区二区三区 | 精品视频在线免费观看 | 中国大陆高清aⅴ毛片 | 国产精品久久久久久av公交车 | 国产精品永久免费视频 | 欧美成人免费在线 | 日韩精品在线观看免费 | 一区精品国产欧美在线 | 欧美最猛性xxxxx亚洲精品 | 欧美九九 |