微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 段式液晶模块的驱动

段式液晶模块的驱动

时间:11-10 来源:互联网 点击:

h(HTB_WR_PORT, HTB_WR_PIN);

}

}

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

* FunctionName : HTB_SendBitLsb()

* Description : 发送多位[低位在前]

* EntryParameter : None

* ReturnValue : None

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

void HTB_SendBitLsb(u8 dat, u8 cnt)

{

for (u8 i=0; i

{

(dat & 0x01) ? GPIO_WriteHigh(HTB_DT_PORT, HTB_DT_PIN) :

GPIO_WriteLow(HTB_DT_PORT, HTB_DT_PIN);

dat >>= 1;

GPIO_WriteLow(HTB_WR_PORT, HTB_WR_PIN);

HTB_DelayUs(3);

GPIO_WriteHigh(HTB_WR_PORT, HTB_WR_PIN);

}

}

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

* FunctionName : HTB_SendCmd()

* Description : 发送命令

* EntryParameter : None

* ReturnValue : None

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

void HTB_SendCmd(u8 cmd)

{

GPIO_WriteLow(HTB_CS_PORT, HTB_CS_PIN);

HTB_SendBitMsb(0x80, 3); // 前面3位命令代码

HTB_SendBitMsb(cmd, 9); // 后面10位: a5~a0[RAM地址]+d3~d0[RAM数据]

GPIO_WriteHigh(HTB_CS_PORT, HTB_CS_PIN);

}

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

* FunctionName : HTBSendNDat()

* Description : 发送N数据

* EntryParameter : None

* ReturnValue : None

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

void HTBSendNDat(u8 addr, u8 *pDat, u8 cnt, u8 bitNum)

{

GPIO_WriteLow(HTB_CS_PORT, HTB_CS_PIN);

HTB_SendBitMsb(0xA0, 3); // 前面3位命令代码

HTB_SendBitMsb(addr<2, 6); // a5~a0[RAM地址]

for (u8 i=0; i

{

HTB_SendBitLsb(*pDat++, bitNum); // RAM数据

}

GPIO_WriteHigh(HTB_CS_PORT, HTB_CS_PIN);

}

上面的函数是通过按位传递的方式把数据发给HT1621,并不复杂,这里就不相信介绍了:

typedef enum

{

HTB_CMD_BIAS = 0x29, // 0B:0010 abXc -ab控制占空比,-c控制偏压

HTB_CMD_SYSEN = 0x01, //

HTB_CMD_LCDOFF = 0x02, //

HTB_CMD_LCDON = 0x03, //

} HTB_CMD;

最后,我们可以看出,在修改了全局变量后,在把更新的数据传递给驱动芯片就可以了,非常简单方便灵活,这个示例让我们充分了解和使用位段进行位控制是非常方便。


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top