把七或八只发光二极管组合在一个模件上组成了个8字和小数点,用以显示数字。为了减少管脚,把各个发光管的其中同一个极接在一起作为共用点,因此就产生了共阳极和共阴极数码之说。共阳管就是把各个发光管的正极接在一起,而共阴管就刚好相反。见下图:
74hc244驱动数码管显示电路
大部分的逻辑ic的吸收电流要强于输出电流。因此,大家都爱使用共阴极的数码管,因为可选的ic多些。可是这组数码管是共阳的,因此公共端用三级管来驱动。最常用的s9012,首先得计划好电路方式,就采用最常用的动态扫描显示。先搭建最简电路,调试出需采用元件的参数。
先不接上图的r2和74hc244,将数码管一个段直接接地。调节r1,测得s9012基极电流为0.21ma时集电极也就是数码管上已有40ma,说明放大倍数足够了。这时接上r2和74hc244,调节r2使数码管电流控制在15ma,这样当8个段一起点亮时三极管上得通过120ma的电流。而基极上需要0.63ma,为了减小三极管的负荷应使三极管过饱和,,调节r1使基极电流为2ma,此时测得集电极和漏极之间的电压约0.1v。此时r1为2k。r2为240欧姆。
74hc244驱动数码管显示电路图
74hc244驱动数码管显示程序
查询方式程序
//六位管码管在以0.3秒的间隔在闪烁,这是采用查询方式的,比较占cup资源
# include
typedef unsigned char uchar;
uchar code bit_num[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};//位码值表:0,1,2,3,4,5
uchar code meg_val[]={0x03,0x9f,0x25,0x0d,0x99,0x49};//段码值表:0,1,2,3,4,5
uchar code hello[]={0x03,0xe3,0xe3,0x61,0x91,0xff}; //hello
uchar code beybey[]={0x89,0x61,0xc1,0x89,0x61,0xc1};//beybey
uchar code ab6789[]={0xc1,0x11,0x09,0x01,0x1f,0x41};//ab6789
void delay(int n);
void main(void)
{
uchar i,m;
p2=0xff; //先将段码关闭
p3=0xff; //将位码关闭
delay(20);//等待一会
while(1)
{
for (m=30;m》0;m--) //显示30次约0.3秒
{
for(i=0;i《=5;i++)
{
p2=0xff;
p3=bit_num[i]; //输出位码到p3口
p2=ab6789[i]; //输出段码到p2口
delay(5);
}
}
p2=0xff; //关闭段码
p3=0xff; //关闭位码
delay(1000); //等待0.3秒
}
}
void delay(int n) //子程序
{
int j;
uchar k;
for(j=0;j
{
for(k=255;k》0;k--);
}
}
中断显示程序
//这是采用中断方式的,也是带闪烁的。
# include
typedef unsigned char uchar;
uchar code bit_num[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};//位码:0,1,2,3,4,5
uchar code meg_val[]={0x49,0x99,0x0d,0x25,0x9f,0x03};//段码:0,1,2,3,4,5
uchar i,aa; //定义全局变量
bit fg; //定义一个亮起和熄灭标志
void timer0(void) interrupt 1 using 1 //中断程序
{
if (fg) //当fg为1时点亮6位数码管
{ p2=0xff;
if (i》=6)
{
i=0;
}
else
{
p3=bit_num[i]; //输出位码到p3口
p2=meg_val[i]; //输出段码到p2口
i++;
}
}
else //当fg为0时熄灭数码管
{
if(aa==0)
{
p3=0xff;
p2=0xff;
}
}
aa++;
if (aa》=254) //当aa值累加至254时fg标志翻转。
{
fg=~fg;
aa=0;
}
th0=0xf8; //重装定时器初值,2ms,值为65536-2000
tl0=0x30;
}
void main(void)
{
p2=0xff; //先将段码关闭
p3=0xff; //将位码关闭
tmod=0x01;//设置t0为模式1
th0=0xf8; //装入计数初值高位
tl0=0x30; //装入计数初值低位
ea=1; //总充许
et0=1; //t0充许
fg=1; //将亮、灭标志设置为亮
tr0=1; //启动中断
while(1);
}
智能化妆镜是什么,它的功能都有哪些
太阳能混合动力系统中安科瑞光伏直流电能计量表的应用
传感器在我们的生活中都有哪些应用案例
诺基亚8,三星S8,小米6,HTC One X10这几款即将发布的手机,哪款是你的菜?
加速MCU产品布局,灵动推出全新MM32G系列MCU
74hc244驱动数码管显示电路及程序
连接器接线端子怎么选型的,连接器接线端子的选取注意事项是
SSD和HDD有什么区别,那个比较好?
AI+热成像:不仅看到你,还能看清你
电动自行车充电器技术规范
方型电芯装机量整体处于上升趋势 未来成熟的动力电池尺寸型号究竟有多少
杠上高通,LG面临5G芯片断供?
这三大巨头智能音箱市场份额近九成,华为有机会吗?
云米科技为你打造简单易用的智能家居服务
最赚钱央企赴港IPO,收入约等于20个阿里巴巴?
光环云CEO吴曼一行到访天数智芯,全面加强合作实现共赢发展
中国联通与中兴通讯联合研发出了AI智能节电解决方案
大功率音频功放芯片WT8673的详细介绍
广凌智慧教室融合管理平台:个性化十足,功能系统自由选配
HMI推动家庭中的边缘AI