⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ht1621.c

📁 液晶驱动芯片HT1621驱动程序,keil c调试通过,可放心使用
💻 C
字号:
#include "reg52.h"
#include "intrins.h"

#define uchar unsigned char
#define uint unsigned int

sbit lcd_cs		= P1^5;
sbit lcd_clk	= P1^0;
sbit lcd_data	= P1^7;

uchar lcdbuff[16];
uchar temp;

/****************************************************/
void delay(void)
{
	_nop_();
	_nop_();
	_nop_();
}

/****************************************************/
void sendbit(uchar lcddata,uchar count)
{
	uchar i;
	for(i=0;i<count;i++)
	{
		lcddata<<=1;
		if(CY)	lcd_data=1;
		else	lcd_data=0;
		delay();
		lcd_clk=0;
		delay();
		lcd_clk=1;
	}
}

void clrbit(void)
{
	lcd_data=0;
	delay();
	lcd_clk=0;
	delay();
	lcd_clk=1;
}

void setbit(void)
{
	lcd_data=1;
	delay();
	lcd_clk=0;
	delay();
	lcd_clk=1;
}

/****************************************************/
void init_lcd(void)
{
//打开系统振荡器 	100 00000001x
//1/3偏压,4个公共口	100 001010x1x
//打开LCD偏压		100 00000011x
	lcd_cs=1;
	lcd_clk=1;
	lcd_data=1;
	delay();
	lcd_cs=0;
	sendbit(0x80,8);
	sendbit(0x20,4);
	sendbit(0x29,8);
	clrbit();
	sendbit(0x03,8);
	clrbit();
	lcd_cs=1;
}

/****************************************************/
void wr_lcd(uchar *pt)
{
//写命令 101 a5,a4,a3,a2,a1,a0,	数据d0,d1,d2,d3
	uchar i;
	lcd_cs=1;
	lcd_clk=1;
	lcd_data=1;
	delay();
	lcd_cs=0;
	sendbit(0xa0,8);
	clrbit();
	for(i=0;i<16;i++)
		sendbit(*pt++,8);
	lcd_cs=1;
}

/****************************************************/
void main()
{
    for(temp=0;temp<16;temp++)
       lcdbuff[temp]=0x01;
     init_lcd();
     wr_lcd(lcdbuff);
     _nop_();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -