A. 单片机与数码管的连接
如果22位数码管共用7段来驱动,显示效果很差,太暗!而且单片机直接驱动运行起来也费力。你可以计算一下就知道了:如果想显示没有闪烁感,显示刷新周期就要超过50HZ,也就是每20mS这22位数码管都要显示一次,那么每个数码管每次只能显示20mS÷22=0.91mS,而且单片机在这么短的时间内就没有太多的时间处理其它的任务了。
要解决这个问题,你必须用专用的LED显示驱动IC,而且要保证每个数码管显示的占空比要超过1/8才会有足够的亮度,如果是室外使用最好是1/4或1/3。
如果占空比选用1/6,那么你要在同一时间每次点亮22/6(4)个数码管,你可以看看TM1629A、B、C、D显示驱动IC,可以用2块驱动IC,每个IC同时点亮2个数码管,每个IC驱动11个数码管。
用这种IC比用74系列的芯片的好处是:只有在需要改变显示内容时,单片机才发送数据到驱动IC,平时不必发送数据,这样MCU就可以把时间用于处理其它任务了。
具体的电路你看IC资料就行了。
B. 一位共阴极数码管怎么与单片机相连
取单片机的8个引脚,每个引脚通过100欧的电阻与数码管的a~dp引脚相连,数码管的共阴端连接pnp型三极管的发射极e,基极b和集电极c接地就可以了,单片机的引脚最好加个10k的上拉电阻,就这样,看看行不。谢谢!
C. 3位数码管引脚图,与单片机的接法!如何区分共阴共阳!
如果有电路图,你可以参考电路图。至于是共阴或共阳,你可以用代码来测试一下,让连接数码管的IO输出高电平或低电平。大部分单片机的数码管都是共阳极的,因为单片机IO默认输出是高电平。共阴或共阳关键在“共”字上,只要用万用表测量数码管的8个引脚中那一个引脚是接电源的负极或是正极,只要找出这一个引脚就知道是共阴或是共阳了,因为只有一个引脚和其他的7个引脚是不同的。
D. 2位7段共阳数码管如何使用应如何和单片机进行连接。
嘿嘿 可以按照下面的图 进行连接
一个接在P0口、一个接在P2口上,分别为7段数码管提供段形,采用共阴极的数码管,数码管的3、8引脚都接地,即公地。送高电平可以点亮相应的各段。
为静态显示方式。
呵呵 满意就选满意回答
E. 菜鸟想请问一下各位高手 图中四位数码管与51单片机相连的1234四个脚 在实物中该如何对应连接。。。。
// 数码管与51单片机相连,实物与仿真图一样连接就可以,也可以在A~G、DP线上串一个300欧姆的电阻。
#include<reg52.h>
#define uchar unsigned char
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,};//数组0到F
uchar num,tt;
void main()
{
num=0;
tt=0;
TMOD=0x01;//设置定时器0为工作方式1
TH0=(65536-5000)/256;//为定时器设置初值 5 mS
TL0=(65536-5000)%256;
EA=1;//开总中断
ET0=1;//开定时器0中断
TR0=1;//启动定时器0
P3=0xe1;//位选
P1=0xc0;//段选
while(1)
{
if(tt==250) //计时器使tt满200,则执行后面的语句
{
tt=0;
num++;
if(num>15)
{
num=0; //num加到15后置0
}
}
}
}
void exter0() interrupt 1 //定时器中断函数,1方式
{
static unsigned char led_shift=0x00; //定义静态变量
TH0=(65536-5000)/256; // 5 mS
TL0=(65536-5000)%256;
tt++;
switch(led_shift) //选择数码管控制位
{
case 0: P3=0xfb;P1=~table[num]; break; //控制左1数码管
case 1: P3=0xf7;P1=~table[num+1]; break; //控制左2数码管
case 2: P3=0xef;P1=~table[num+2]; break; //控制左3数码管
case 3: P3=0xdf;P1=~table[num+3]; break; //控制左4数码管
default:break;
}
led_shift++; //数码管控制变量自加
if(led_shift==0x04) //判断是否扫描一轮
led_shift=0x00; //归零进行下一轮扫描
}
F. 要实现数码管的动态显示,数码管的公共端和各段选线应该怎么和单片机连接
位选,就是选择想要点亮哪个数码管;
段选,就是选择想要点亮哪个数码管的哪个一段。
如果有几个数码管,为了节省接口,将每个数码管的对应段连在一起,需要那只数码管亮,控制的就是“位选”。
段选就是让数码管里的八段里的哪一段亮,位选就是让一些数码管里的哪一个数码管亮,你程序应该是四个数码管的。通过位选,段选来达到让不同的数码管显示不同的字符。
G. 单片机引脚与数码管显示驱动芯片如何连接
TM1629与单片机的连接是串行接口,只需要4个引脚,单片机随便用4个I/O脚与TM1629连接就行了。
串行接口的4个引脚如下表所示
H. 四位一体的共阳数码管与单片机及三极管驱动之间怎么连接
给你来张图,下面WE1-4接单片机IO口
I. 共阳极四位8段数码管与单片机接口怎样连接
1、2、3、4为控制极,A、B、C、D、E、F、G、dp对应数码管显示段位。
图是前几天自己对着实物画的,把这12个脚都接到单片机的IO口上,让它怎么亮就看程序怎么写了~~~
J. 图中的6位数码管是如何连接到51单片机I/O口上啊
每个数码管的对应段都并联在一起,这样一共就有 8根线,这8根线就是段信号,每个数码管的公共端分别引出来,这个都叫位信号,数码管分共阳和共阴的,这个不 一样的话启动方式是不一样的,如果公共端是正的话那就是共阳的,否则就是共阴的,共阳的话,8根段信号直接连单片机IO,例如P1口,6个位信号分别用PNP型三极管例如8550驱动,三极管发极接电源,集电极接位,基极通过一个220欧电阻接单片机IO口。就可以了,驱动原理就是 通过不停改变6位数码管的选通状态,同时给对应的段码,来达到6个数码管的数字的显示效果。例如位IO先选通第一个数码管,然后给段信号也就是片P1口一个段码,然后再选通第二个数码管,然后给P1对应的段码,以此类推,这样6个数码管就是分时点亮,但是由于每个数码管选通的时间比较短所以整体扫描频率比较高,所以根据人眼的视觉暂留效应感觉所有数码管是同时点亮的。这样就实现了数码管的驱动了。