/*================================================
data 的高cnt 位元写入,HT1621,高位在前,用于写地址
参数:
write_data 数据
cnt 位数
==================================================*/
void SendBitH_1621(uchar write_data,uchar cnt)
{
uchar i
for(i =0i <cnti ++)
{
if((write_data&0x80)==0) DATA=0
else
DATA=1
delay1622()
WR_1622=0
delay1622()
WR_1622=1
delay1622()
write_data<<=1
}
}
/*===================================================
data 的低cnt 位写入HT1621,低位在前,用于写数据
参数:
write_data 数据
cnt 位数
====================================================*/
void SendBitL_1621(uchar write_data,uchar cnt)
{
uchar i
for(i =0i <cnti ++)
{
if((write_data&0x01)==0) DATA=0
else DATA=1
delay1622()
WR_1622=0
delay1622()
WR_1622=1
delay1622()
write_data>>=1
}
}
/*=================================================
写入命令
参数:command:命令
===================================================*/
void SendCmd(uchar command)
{
CS=0
SendBitH_1621(0x80,4)//写入旗标码”100”和9 位command 命令,由於
SendBitH_1621(command,9)//没有使有到更改时钟输出等命令,为了编程方便
CS=1//直接将command 的最高位写”0”
}
特意按了一下HT1621芯片
你要注意看他的使用说明书
1,单片机和该IC的连接是串行通信,但是这个芯片提供了一些额外的控制功能
所以建议你把相应的引脚都连接到单片机的IO口上
2,VLCD建议你接一个电位器到3V,通过调节电位器来确定
3,这种芯片一般都是对应的驱动芯片,不知道你说的什么顺序连接更方便具体指什么
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)