t6963c驱动程序-驱动代码
{
OutPortCom3( (unsigned char)(StartAddr), (unsigned char)(StartAddr>>8), 0x24); //set address
for(j=0;jLineWidth;j++)
{
OutPortCom2( CBYTE[address + i*LineWidth+ j ], 0xc0);
}
StartAddr=StartAddr + LineChar;
}
}
///////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
//图形函数,用于描点画图
//---------------------------------------------------------------------------
//在指定位置显示一个点
//如果显示屏超过了256*256,请修改这个函数 PointX,PointY的类型
//Mode 1:显示 0:清除该点
Pixel(unsigned char PointX,unsigned char PointY, bit Mode)
{
unsigned int StartAddr=0;
unsigned char dat;
StartAddr=PointX*LineChar + PointY/8;
dat=0xf0+7-PointY%8;
if(Mode) dat=dat 0x08;
OutPortCom3( (unsigned char)(StartAddr),(unsigned char)(StartAddr>>8),0x24 ); //设置该点所在单元地址
OutPortCom1(dat);
}
//-------------------------------------------------------------------------------
//划线函数
void Line( unsigned char x1, unsigned char y1, unsigned char x2, unsigned char y2, bit Mode)
{
unsigned char x,y;
double k,b;
if( abs(y1-y2) = abs(x1-x2) ) // k =1
{
k=(float)(y2-y1) / (float)(x2-x1) ;
b=y1-k*x1;
if( x1 = x2 )
{
for(x=x1;x=x2;x++)
{
y=k*x+b;
Pixel(x, y, Mode);
}
}
else
{
for(x=x2;x=x1;x++)
{ y=k*x+b;
Pixel(x, y, Mode);
}
}
}
else // abs(y1-y2) > abs(x1-x2) K >1
{
k=(float)(x2-x1) / (float)(y2-y1) ;
b=x1-k*y1;
if( y1 = y2 )
{
for(y=y1;y=y2;y++)
{ x=k*y+b;
Pixel( x , y,Mode );
}
}
else
{
for(y=y2;y=y1;y++)
{ x=k*y+b;
Pixel( x , y,Mode );
}
}
}
}
/*--------------------------------------------------------------------------------------*/
void ClearScreen()
{
unsigned int i;
///////// 清显示 RAM 区 0000h--2000h (8k)
OutPortCom3(0x00,0x00,0x24); //设置指针地址0000H
OutPortCom1(0xb0); //设置自动写状态
for(i=0x00;i0x2000;i++) OutPortData(0x00); // data=0;
OutPortCom1(0xb2); // 自动写结束
}
//初始化LCD
//需要手动设置
void InitLCD()
{
OutPortCom3( 0x00,0x00,0x42 ); //设置图形显示区域首地址GraphAddr
OutPortCom3( 30,0x00,0x43 ); //设置图形显示区域宽度 : LineChar
// OutPortCom3( 0x00,0x00,0x42 ); //设置图形显示区域首地址GraphAddr
// OutPortCom3( 0x10,0x00,0x43); //设置图形显示区域宽度:10H
OutPortCom1(0xa7); //设置光标形状 cursor size 8x8
OutPortCom1(0x80); //设置显示方式: CGROM方式 文本图形 "或"
OutPortCom1(0x98); //设置显示开关: 1001 1100 图形
ClearScreen();
}
T6963C 引脚说明
T6963C 的QFD 封装共有67 个引脚,各引脚说明如下:
1、D0-D7:T6963C 与MPU 接口的数据总线,三态。

c语言相关文章:c语言教程
评论