久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
240128液晶屏T6963C驅動求大神愿意不吝賜教,萬分感謝
[打印本頁]
作者:
異客
時間:
2019-4-6 12:31
標題:
240128液晶屏T6963C驅動求大神愿意不吝賜教,萬分感謝
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);
}
作者:
zxy2266
時間:
2019-11-17 11:26
給個接線圖吧
作者:
想跳水的朱
時間:
2020-12-15 16:07
T6963C都停產好多年了,現應該都是用RA6963的吧,軟硬件完全兼容的。
作者:
zjjhtony
時間:
2020-12-15 19:54
出什么問題了呢?你需要什么幫助呢?
作者:
rayin
時間:
2021-6-25 15:56
我這里還有一塊240160的T6963的液晶單色顯示屏,是可以點亮,正常顯示字符和漢字的。
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
波多野结衣在线观看一区二区
|
av永久免费
|
日韩精品区
|
欧美日韩国产在线播放
|
午夜精品久久久久久久99
|
日韩在线播放视频
|
在线免费黄色
|
久久久久久久成人
|
三级黄色片网站
|
黄色一级视频
|
午夜xxx
|
中文字幕在线观看不卡
|
亚洲天堂免费
|
国产亚洲一区二区三区
|
中文字幕观看
|
亚洲精品成a人在线观看
|
国产一区免费
|
国产91在线看
|
久久狠狠干
|
93久久精品日日躁夜夜躁欧美
|
欧美不卡在线观看
|
国产精品久久
|
久久亚洲精品视频
|
欧美精品二区
|
在线视频日韩
|
女人一级一片30分
|
午夜精品视频在线观看
|
天天操操操
|
欧美日韩精品一区二区
|
久久天天躁狠狠躁夜夜躁2014
|
少妇网址
|
国产精品手机在线
|
亚洲成肉网
|
黄色国产网站
|
国产欧美成人
|
风间由美一区二区三区
|
精品在线播放
|
一区二区视频在线播放
|
亚洲精品中文字幕乱码三区91
|
日本理伦片午夜理伦片
|
欧美成人极品
|