打印
[PIC®/AVR®/dsPIC®产品]

HT1621B读数据问题

[复制链接]
1863|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
黑洞不黑|  楼主 | 2016-10-10 09:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/*****ht1621写字节函数*****/
void sendbit(unsigned char data,unsigned char cnt)//data的高cnt位写入,高位在前
{
    unsigned char i;
    for(i=0;i<cnt;i++)
    {
        WR=0;
        if(data&0x80)
            DATA=1;
        else
            DATA=0;
        WR=1;
        data<<=1;
    }
}
/*****ht1621读字节函数*****/
unsigned char readbit()
{
    unsigned char i;
    unsigned char data;
    for(i=0;i<4;i++)
    {
        data<<1;
        RD=0;
        __delay_us(5);
        if(DATA==1)
            data|=0x01;
        else
            data|=0x00;
        RD=1;
    }
    return data;
}
/*****ht1621写命令函数*****/
void sendcmd(unsigned char command)
{
    CS=0;//打开片选使能
    sendbit(0x80,4);//写入标识码“100”+9位command命令
    sendbit(command,8);//由于没有使用到更改时钟输出命令,直接将command最高位写0
    CS=1;//关闭片选使能
}
/*****ht1621读数据函数*****/
unsigned char readdata(unsigned char addr)
{
    unsigned char data;
    addr<<=2;//地址左移2位
    CS=0;//打开片选使能
    sendbit(0xc0,3);//写入标识码“110”
    sendbit(addr,6);//写入6位地址
    data=readbit();
    CS=1;
    return data;
}
/*****ht1621写地址+数据函数*****/
void write1621(unsigned char addr,unsigned char data)
{
    addr<<=2;//地址左移2位
    data<<=4;//数据左移4位
    CS=0;//打开片选使能
    sendbit(0xa0,3);//写入标识码“101”
    sendbit(addr,6);//写入6位地址
    sendbit(data,4);//写入4位数据
    __delay_us(10);  //延时
    CS=1;//关闭片选使能
}
程序功能是读写HT1621B操作函数,先写入所有地址的数据是0,再读出来某一个地址的数据,结果不是0,请大家看一下读操作是否正确
沙发
JY-DX-JY| | 2016-10-10 12:52 | 只看该作者
你把液晶折腾亮了就正确了

使用特权

评论回复
评论
NE5532 2016-10-10 14:39 回复TA
非常精P!楼主你这样写一堆程序上来让别人帮你找错,是木有人接招滴。 
板凳
freeelectron| | 2016-10-10 13:02 | 只看该作者
HT1621B读数据,没多大用啊
我最近就在用HT1621B,读引脚直接没有接

使用特权

评论回复
地板
QQ178960471| | 2016-10-13 23:45 | 只看该作者
HT1621B专家来了

使用特权

评论回复
5
xushuo888| | 2018-8-3 15:54 | 只看该作者
可以试试VK1621B ,我有资料跟驱动程序,发给你看看,性价比更高

VK1621B-LCD液晶显示驱动IC.pdf

1.41 MB

VK1622液晶驱动IC资料.pdf

623.5 KB

VK1623S-LCD液晶显示驱动IC.rar

1.58 MB

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

110

帖子

2

粉丝