TM1621/HT1621 段码LCD驱动器

TM1621和HT1621是兼容的,下面统称TM1621。

TM1621是一个32x4的LCD 驱动器,也就是说它最多能驱动128段段码。

四线串行接口
在这里插入图片描述

一般我们不使用读数据的功能,所以用到的数据引脚只有/WR、/CS、DATA
先定义使用到的引脚

#define CS_CLR	HAL_GPIO_WritePin(LCD_CS_GPIO_Port, LCD_CS_Pin, GPIO_PIN_RESET)
#define	CS_SET	HAL_GPIO_WritePin(LCD_CS_GPIO_Port, LCD_CS_Pin, GPIO_PIN_SET)

#define DATA_CLR	HAL_GPIO_WritePin(LCD_DATA_GPIO_Port, LCD_DATA_Pin, GPIO_PIN_RESET)
#define DATA_SET	HAL_GPIO_WritePin(LCD_DATA_GPIO_Port, LCD_DATA_Pin, GPIO_PIN_SET)

#define WR_CLR	HAL_GPIO_WritePin(LCD_WR_GPIO_Port, LCD_WR_Pin, GPIO_PIN_RESET)
#define WR_SET	HAL_GPIO_WritePin(LCD_WR_GPIO_Port, LCD_WR_Pin, GPIO_PIN_SET)

一些命令参数

#define HT1621B_BYTES  32
#define REG_NO_UPDATE  0
#define REG_UPDATE     1

#define HT1621B_BIAS_COM2 0 	//AB=00 可选2个公共口 
#define HT1621B_BIAS_COM3 1 	/
HT1621是一种常见的式液晶驱动芯片,其驱动代如下: ```c #include <ht1621.h> #define HT1621_WR 2 // HT1621写入引脚 #define HT1621_RD 3 // HT1621读取引脚 #define HT1621_CS 4 // HT1621片选引脚 void HT1621_Write(unsigned char data, unsigned char cnt) { unsigned char i; pinMode(HT1621_WR, OUTPUT); pinMode(HT1621_RD, OUTPUT); pinMode(HT1621_CS, OUTPUT); digitalWrite(HT1621_CS, LOW); for (i = 0; i < cnt; i++) { digitalWrite(HT1621_WR, LOW); shiftOut(HT1621_WR, HT1621_RD, MSBFIRST, data); digitalWrite(HT1621_WR, HIGH); data >>= 1; } digitalWrite(HT1621_CS, HIGH); } void HT1621_Init(void) { HT1621_Write(0x52, 4); // 启动系统振荡器 HT1621_Write(0x80, 3); // 设置系统时钟,1/3Duty,4COM,Bias=1/2 HT1621_Write(0xA4, 3); // 停止显示 HT1621_Write(0xEB, 4); // 设置LCD偏压电压 HT1621_Write(0x40, 8); // 初始化显示RAM HT1621_Write(0xA6, 3); // 正常显示,不反转 } void HT1621_Display(unsigned char *buffer, unsigned char cnt) { unsigned char i; HT1621_Write(0xA4, 3); // 停止显示 HT1621_Write(0x40, 8); // 初始化显示RAM for (i = 0; i < cnt; i++) { HT1621_Write(buffer[i], 4); } HT1621_Write(0xA2, 3); // 打开显示,不闪烁 } ``` 其中,`HT1621_Write`函数用于向HT1621芯片写入数据,`HT1621_Init`函数用于初始化HT1621芯片,`HT1621_Display`函数用于显示数据。在使用HT1621芯片时,需要先调用`HT1621_Init`函数进行初始化,然后再调用`HT1621_Display`函数显示数据。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值