好文档 - 专业文书写作范文服务资料分享网站

HT液晶显示驱动详细原理及程序

天下 分享 时间: 加入收藏 我要投稿 点赞

//十位数

else {

data[2] =LCD_CODE[(unsigned char) (dat/100)];

data[1] =LCD_CODE[(unsigned char) (dat/10)] ;

data[0] =LCD_CODE[(unsigned char) (dat)];

} //百位数

for(i=0;i

HT1621_Dis_Char(data[i],i);

}

/*********************************************************/

//打印INT型数据

//dat--待显示数据

//chk--显示的数据位数: 0--关闭 1~3时,显示对应的数据;大于3时只显示3位;(从左到右)

//point_loc--显示的小数点的位置:0以及大于2时:不显示小数点;1-显示第1个,2-显示第2个;(从左到右)

/*********************************************************/

void HT1621_Print_Int(unsigned long dat,unsigned char chk,unsigned char point_loc)

{

unsigned char i;

unsigned char data[HT1621_DATA_NUM];

//chk为0,则屏幕不显示

for(i=0;i

if(chk>0) {data[0] = LCD_CODE[(unsigned char) (dat)];

dat=dat/10; }

if(chk>1) {data[1] = LCD_CODE[(unsigned char) (dat)];

dat=dat/10; }

if(chk>2) {data[2] = LCD_CODE[(unsigned char) (dat)];

}

//显示小数点

if (point_loc==1)

data[0]|=0x80;

else if (point_loc==2)

data[1]|=0x80;

//从低位到高位,调用显示每个数的函数HT1621_Dis_Char

for(i=0;i

HT1621_Dis_Char(data[i],i);

}

/*********************************************************/

//送d_count位数据d;从低位开始送

/*********************************************************/

void HT1621_Send_Bits(unsigned char d, unsigned char d_count)

{

unsigned char j;

for (j=0; j

{

HT1621_PORT&=~_BV(HT1621_WR); //wr置低;

HT1621_Delay(50);

if (d & 0x01==1) //置数据位;

{ HT1621_PORT|=_BV(HT1621_DATA); //data置0

}

else

{ HT1621_PORT&=~_BV(HT1621_DATA); //data置1

}

HT1621_PORT|=_BV(HT1621_WR); //wr置高;

HT1621_Delay(50);

d =(d>>1); //右移位

}

}

/*********************************************************/

//HT1621初始化

/*********************************************************/

void HT1621_Init()

{

DDRC |= _BV(4)|_BV(5)|_BV(7); //定义端口PC4-PC5-PC7输出

HT1621_PORT&=~_BV(HT1621_CS); //CS端清零

HT1621_Send_Bits(0x18,9); //系统时钟选用片内RC

HT1621_Send_Bits(0x80,9); //打开系统振荡器

HT1621_Send_Bits(0x94,9); //1/2偏置,2个公共口 1000 0100

HT1621_Send_Bits(0xc0,9); //打开LCD偏置发生器

HT1621_PORT|=_BV(HT1621_CS); //CS端置1

HT1621_NoPrint( ); //液晶不显示

}

7. 结束

HT1621作为液晶驱动芯片,功能十分灵活,而液晶在我们的学习项目中会经常用到,所以学好它的操作是十分必要的。

HT液晶显示驱动详细原理及程序

//十位数else{data[2]=LCD_CODE[(unsignedchar)(dat/100)];data[1]=LCD_CODE[(unsignedchar)(dat/10)];data[0]=LCD_CODE[(unsignedchar)(
推荐度:
点击下载文档文档为doc格式
417hj4981o4ddq3430jm4g4gh0kzl900yhn
领取福利

微信扫码领取福利

微信扫码分享