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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 5046|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

240128液晶屏T6963C驅(qū)動(dòng)求大神愿意不吝賜教,萬(wàn)分感謝

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:200794 發(fā)表于 2019-4-6 12:31 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
240128液晶屏,搞了一個(gè)星期了,都沒(méi)能顯示字符,求救了,哪位大神愿意不吝賜教啊,萬(wàn)分感謝

以下是源程序:



#include "LCD_240128.h"


//========================================================================
// 函數(shù): void LCD_DataWrite(unsigned int Data)
// 描述: 寫(xiě)一個(gè)字節(jié)的顯示數(shù)據(jù)至 LCD 中的顯示緩沖 RAM 當(dāng)中
// 參數(shù): Data 寫(xiě)入的數(shù)據(jù)
// 返回: 無(wú)
// 備注: 無(wú)
// 版本:
//========================================================================
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();
}
//========================================================================
// 函數(shù): void LCD_CmdWrite(unsigned int Command)
// 描述: 寫(xiě)一個(gè)字節(jié)的數(shù)據(jù)至 LCD 中的控制寄存器當(dāng)中
// 參數(shù): Command 寫(xiě)入的命令,低八位有效(byte)
// 返回: 無(wú)
// 備注: 無(wú)
// 版本:
//========================================================================
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()
*功能: 液晶寫(xiě)1數(shù)據(jù)1命令程序,dat為要寫(xiě)入的數(shù)據(jù),cmd為要寫(xiě)入的命令
******************************************************************************/
void WriteDC(unsigned char Data,unsigned char Command)      //寫(xiě)一個(gè)數(shù)據(jù)和一個(gè)指令
{   
    LCD_DataWrite(Data);   
    LCD_CmdWrite(Command);   
}
/******************************************************************************
*名稱: WriteDDC()
*功能: 液晶寫(xiě)2數(shù)據(jù)1命令程序,data為要寫(xiě)入的數(shù)據(jù),cmd為要寫(xiě)入的命令
******************************************************************************/
void WriteDDC(unsigned char Data1, unsigned char Data2, unsigned char Command)   //寫(xiě)兩個(gè)數(shù)據(jù)和一個(gè)指令
{   
    LCD_DataWrite(Data1);         
    LCD_DataWrite(Data2);   
    LCD_CmdWrite(Command);     
}   


/******************************************************************************
*名稱: LCD_Init()
*功能: 液晶初始化程序
*      初始地址設(shè)置好后,在不同的地址段相同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();
    /*********************設(shè)置文本顯示*****************************/   
    Data1 = 0x00;   
    Data2 = 0x10;              //圖形顯示占用32*128=0xfff,故文本從0x1000開(kāi)始
    Command = 0x40;                //設(shè)置文本顯示區(qū)首地址   
    WriteDDC(Data1,Data2,Command);   
    Data1 = 0x20;              //可以整屏顯示
    Data2 = 0x00;   
    Command = 0x41;                //設(shè)置文本顯示區(qū)寬度   
    WriteDDC(Data1,Data2,Command);   
    Data1 = 0x00;   
    Data2 = 0x00;   
    Command = 0x42;                //設(shè)置圖形顯示區(qū)首地址   
    WriteDDC(Data1,Data2,Command);   
    Data1 = 0x20;   
    Data2 = 0x00;   
    Command = 0x43;                //設(shè)置圖形顯示區(qū)寬度   
    WriteDDC(Data1,Data2,Command);  
    Command =0xa2;                 //設(shè)置光標(biāo)形狀
    LCD_CmdWrite(Command);
    Command = 0x80;                //顯示方式設(shè)置
                             //啟用外部字符發(fā)生器,顯示方式是文本與圖形與
    LCD_CmdWrite(Command);
    Command = 0x9e;                //啟用光標(biāo)閃爍,光標(biāo)不顯示,文本顯示與圖形顯示   
    LCD_CmdWrite(Command);   
}

unsigned char Photo_code[] =
{   
/*---- 圖片文件來(lái)自:【xxxx.jpg】 ----*/
/*---- 圖片寬度:96     圖片高度:93 ----*/
/*---- 本數(shù)據(jù)文件建立日期:         ; 建立時(shí)間:         ----*/
/*---- 本數(shù)據(jù)文件由PICtoCODE【圖片數(shù)據(jù)生成器】V1.0自動(dòng)生成! ----*/

};
#define CG_length 352

unsigned char CG_code[] =
{

};


/******************************************************************************
*名稱: Write_Str()
*功能: 液晶寫(xiě)字符程序,顯示ASCII字符,row為行(0~15),rol為列(0~29)
*      顯示ASCII字符為8*8點(diǎn)陣(屏為240*128點(diǎn)陣)
******************************************************************************/
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()
*功能: 液晶畫(huà)圖程序,row為圖片開(kāi)始行(0~127),rol為圖片開(kāi)始列(0~29),
*      width為圖片長(zhǎng)(單位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);//自動(dòng)寫(xiě)模式
    for(i=0;i<Photolength;i++)
    {
        LCD_DataWrite(Photo_code);
        j++;
        if(j==width)
        {
            LCD_CmdWrite(0xb2);           //退出自動(dòng)寫(xiě)模式
            address=address+32;
            Data1 = address;                 //取地址低八位   
            Data2 = address>>8;                //取地址高八位   
            Command = 0x24;
            WriteDDC(Data1,Data2,Command);
            j=0;
            LCD_CmdWrite(0xb0);         //進(jìn)入自動(dòng)寫(xiě)模式
        }
    }
    LCD_CmdWrite(0xb2);
}




/******************************************************************************
*名稱: Write_Chinese()
*功能: 液晶寫(xiě)漢字程序,row為漢字開(kāi)始行,rol為漢字開(kāi)始列,Chinese為漢字字符串在
*      CGRAM中的初地址 ,length為漢字字符串的長(zhǎng)度,(一個(gè)16*16點(diǎn)陣的漢字長(zhǎng)度為4)
******************************************************************************/
void SetCGRAM(void)   
{      
    unsigned char Data1,Data2,Command;   
    unsigned int i;
    Data1 = 0x03;   
    Data2 = 0x00;                  //設(shè)置偏移地址寄存器
    Command = 0x22;                       
    WriteDDC(Data1,Data2,Command);   
    Data1 = 0x00;   
    Data2 = 0x1c;   
    Command = 0x24;                   //設(shè)置地址指針   
    WriteDDC(Data1,Data2,Command);   
    Command = 0xb0;                   //進(jìn)入自動(dòng)寫(xiě)模式   
    LCD_CmdWrite(Command);   
    for (i = 0;i < CG_length; ++i)   
    {      
        LCD_DataWrite(CG_code);     
    }   
    Command = 0xb2;                   //退出自動(dòng)寫(xiě)模式   
    LCD_CmdWrite(Command);      
}
/******************************************************************************
*名稱: Write_Chinese()
*功能: 液晶寫(xiě)漢字程序,row為漢字開(kāi)始行(0~15),rol為漢字開(kāi)始列(0~29),
*      Chinese為漢字字符串在CGRAM中的初地址 ,
*      length為漢字字符串的長(zhǎng)度,(一個(gè)16*16點(diǎn)陣的漢字長(zhǎng)度為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;   
    /****************先寫(xiě)漢字上半部分*********************************/   
    address = row * 32 + rol+0x1000;   
    Data1 = address;                 //取地址低八位   
    Data2 = address>>8;                //取地址高八位   
    Command = 0x24;                      //設(shè)置地址指針,字符顯示首位置   
    WriteDDC(Data1,Data2,Command);   
    Command = 0xb0;                      //進(jìn)去自動(dòng)寫(xiě)模式   
    LCD_CmdWrite(Command);
    for(i=0;i<length;i++)
    {
        LCD_DataWrite(Chinese+i);
        i++;
    }
    Command = 0xb2;                   //退出自動(dòng)寫(xiě)模式   
    LCD_CmdWrite(Command);
   /****************再寫(xiě)漢字下半部分*********************************/   
    address = address+32;   
    Data1 = address;                 //取地址低八位   
    Data2 = address>>8;                //取地址高八位   
    Command = 0x24;                      //設(shè)置地址指針,字符顯示首位置   
    WriteDDC(Data1,Data2,Command);   
    Command = 0xb0;                      //進(jìn)去自動(dòng)寫(xiě)模式   
    LCD_CmdWrite(Command);
    for(i=1;i<length;i++)
    {
        LCD_DataWrite(Chinese+i);
        i++;
    }
    Command = 0xb2;                   //退出自動(dòng)寫(xiě)模式   
    LCD_CmdWrite(Command);
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:198286 發(fā)表于 2019-11-17 11:26 | 只看該作者
給個(gè)接線圖吧
回復(fù)

使用道具 舉報(bào)

板凳
ID:860649 發(fā)表于 2020-12-15 16:07 | 只看該作者
T6963C都停產(chǎn)好多年了,現(xiàn)應(yīng)該都是用RA6963的吧,軟硬件完全兼容的。
回復(fù)

使用道具 舉報(bào)

地板
ID:18297 發(fā)表于 2020-12-15 19:54 | 只看該作者
出什么問(wèn)題了呢?你需要什么幫助呢?
回復(fù)

使用道具 舉報(bào)

5#
ID:517951 發(fā)表于 2021-6-25 15:56 | 只看該作者
我這里還有一塊240160的T6963的液晶單色顯示屏,是可以點(diǎn)亮,正常顯示字符和漢字的。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 九九伦理电影 | 欧美国产日本一区 | 韩国理论电影在线 | 亚洲国产精品一区二区第一页 | 野狼在线社区2017入口 | 一区二区在线看 | 5060网一级毛片 | 免费成年网站 | 国产精品久久久久久久久久久免费看 | 精品国产一区二区国模嫣然 | 一区二区在线免费观看 | 亚洲综合在线视频 | 日本视频在线播放 | 精品伊人久久 | 91久久精品国产免费一区 | 国产精品完整版 | 国产乱性 | 亚洲一区二区三区四区五区午夜 | 亚洲一区二区综合 | 日韩成人免费视频 | 国产精品99久久久久久久久久久久 | 9191在线播放 | 成人在线一区二区 | 亚洲网在线 | 国产欧美一区二区精品忘忧草 | 日韩av在线播 | 一二三在线视频 | 欧美日韩中文字幕在线 | 精品在线一区二区 | 色永久| 成人精品一区 | 91看片网 | 久久久久久久综合色一本 | 成人永久免费视频 | 综合精品久久久 | 日本又色又爽又黄又高潮 | 蜜臀网 | 久在线 | 有码在线 | 精品久久久久久久人人人人传媒 | 午夜免费视频 |