求解HT1621与LCD的连接

2019-03-23 22:21发布

第一次用HT1621,看完手册后还是有些地方不解,HT1621的SEG0可以连接LCD的A1段电极也可以连接D1段电极,这个连接关系是不确定的,任意连接?
如果用来驱动多个LCD的话,公共电极COM就是用来选择要显示的LCD的,相当于数码管显示中的位选,这样理解对吗?
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
zzbaizhi
2019-03-26 04:39
本帖最后由 zzbaizhi 于 2014-9-23 10:38 编辑
bobde163 发表于 2014-9-22 13:15
那你给它发送段数据,看一看相应的段会不会显示

唉,写数据不行
主频:20M/8
void main(void)
{  WDTCTL = WDTPW+WDTHOLD;  //关闭看门狗定时器

   P8DIR |=BIT5+BIT6+BIT7;
   P8OUT |=BIT5+BIT6+BIT7;//CS,WR,DATA置高
   Init_Clk();
   delay_ms(10);

   Ht1621WrCmd(BIAS);   //1/3
   Ht1621WrCmd(RC256); //使用内部振荡器
   Ht1621WrCmd(SYSDIS);
   Ht1621WrCmd(WDTDIS);
   Ht1621WrCmd(SYSEN);
   Ht1621WrCmd(LCDON);
   //Ht1621WrCmd(LCDOFF);
   delay_ms(20);
   //Ht1621WrOneData(1,0);
   display(A);//清屏
   _NOP();

}


void Ht1621Wr_Data(uchar Data,uchar cnt)
{
uchar i;
for (i=0;i<cnt;i++)
      {
       WR_0;
       _NOP();
       _NOP();
       _NOP();
      // _NOP();
       if((Data&0x80)==0x80)
          DATA_1;
       else DATA_0;
       //_NOP();
       WR_1;
       _NOP();
       _NOP();
       _NOP();
       //_NOP();
       Data<<=1;
     }

}


void display(uchar Data0)
{
uchar i;
uchar Addr=0;
CS_0;
_NOP();
Ht1621Wr_Data(0xa0,3); //写入数据标志101
Ht1621Wr_Data(Addr<<2,6); //写入地址数据
for (i=0;i<16;i++)
      { //Ht1621Wr_Data(Addr<<=2,6); //写入地址数据
        Ht1621Wr_Data(Data0,8); //写入数据
      }
CS_1;

}


一周热门 更多>

相关问题

    相关文章