专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
求解HT1621与LCD的连接
2019-03-23 22:21
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
TI MCU
9383
19
1076
第一次用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;
}
加载中...
查看其它19个回答
一周热门
更多
>
相关问题
相关文章
×
关闭
采纳回答
向帮助了您的知道网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
×
付费偷看金额在0.1-10元之间
确定
×
关闭
您已邀请
0
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
唉,写数据不行
主频: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;
}
一周热门 更多>