㈠ 求教数码管电路图怎么看
为了节约io口把段码全部并联一起 点亮的时候依次点亮(也就是在1234送要哪个数码管点回亮) 由于单片机的速度答比较快 人眼有视觉惰性所以感觉一直亮着 com是数码管的公共端(一位数码管对应着一个com端) 1234分别对应着四个数码管的com(公共端) 这个就是动态扫描现实
㈡ 试设计单片机控制数码管显示电路,画出电路连接图,编程实现数码管从左至右显示
是设计单片机控制数码显示电路板电路
㈢ 这是数码管电路图,写一个能点亮数字7的程序
首先你这个数码管是共阳的还是共阴的,led1~8是接138还是锁存器,如果是138的话请提供接ABC的输入IO,然后P0口按照编码表来赋值,对7来说共阳的话就是0xF8,共阴是0x07,一般是将编码声明为常量数组 code unsigned char[],以后用的时候取出对应的编码就可以了。下面是示例程序:
#include<reg51.h>
#include<intrins.h>
#include<math.h>
unsignedchardatadis_digit;//dis_digit---位选通值,传送到P2口用于选通当
//前数码管的数值,如等于0xfe时,选通P2.0口数码管
unsignedcharcodedis_code[11]={0xc0,0xf9,0xa4,0xb0,//0,1,2,3
0x99,0x92,0x82,0xf8,0x80,0x90,0xff};//4,5,6,7,8,9,off
unsignedchardatadis_buf[8];//dis_buf---显于缓冲区基地址
unsignedchardatadis_index;//dis_index---显示索引,用于标识当前显示的数码//管和缓冲区的偏移量
Voiddelay(intt)
{
inti;
while(t--){
for(i=0;i<120;i++)
{;}
}
}
Voidmain()
{
P0=0xff;
P2=0xff;
TMOD=0x01;//定时器0工作于方式1
TH0=0x8C;
TL0=0x8B;
IE=0x8A;//开总中断和定时器1中断允许
dis_buf[0]=dis_code[0x1];
dis_buf[1]=dis_code[0x2];
dis_buf[2]=dis_code[0x3];
dis_buf[3]=dis_code[0x4];
dis_buf[4]=dis_code[0x5];
dis_buf[5]=dis_code[0x6];
dis_buf[6]=dis_code[0x7];
dis_buf[7]=dis_code[0x8];
dis_digit=0xf9;//控制在数码管上显示的数字效果,按位
dis_index=0;
TR0=1;
while(1);
}
Voidtimer0()interrupt1
//定时器0中断服务程序,用于数码管的动态扫描
//dis_index---显示索引,用于标识当前显示的数码管和缓冲区的偏移量
//dis_digit---位选通值,传送到P2口用于选通当前数码管的数值,
//如等于0xfe时,选通P2.0口数码管dis_buf---显于缓冲区基地址
{
TH0=0x8C;
TL0=0x8B;
P2=0xff;//先关闭所有数码管
P0=dis_buf[dis_index];//显示代码传送到P0口
P2=dis_digit;
dis_digit=_crol_(dis_digit,2);//位选通值左移,下次中断时选通下一位数码管
delay(500);
dis_index++;
dis_index&=0x07;//8个数码管全部扫描完一遍之后,再回到第一个开始下一次扫描
}
㈣ 用单片机控制数码管显示电路图的运行原理
单片机控制数码管显示电路图的运行原理是利用人眼“视觉暂留”的原理来实专现的。
1、根据科学论断属,人眼视觉暂留时间是一帧也就是1/24秒,大约42毫秒时间。
2、在多个数码管显示电路中,控制上是通过扫描显示也就是分别分时给每个数码管送显示数据(段码+位码),而全部数码管的一次扫描时间不超过1/24秒。
3、要想达到稳定显示,经过试验,每个数码管数据暂留时间又不能太少,一般不少于3毫秒。因此一个单片机的扫描控制流程最多可以控制14个数码管。
4、扫描控制,一般用定时器来实现,51单片机有2个定时器,因此,最多可以同时控制28个数码管稳定显示。
㈤ 数码管显示电路原理图
所谓的八段就是指数码管里有八个小LED发光二极管,通过控制不同的LED的亮灭来显示出不同的字形。数码管又分为共阴极和共阳极两种类型,其实共阴极就是将八个LED的阴极连在一起,让其接地,这样给任何一个LED的另一端高电平,它便能点亮。而共阳极就是将八个LED的阳极连在一起。其原理图如下。
其中引脚图的两个COM端连在一起,是公共端,共阴数码管要将其接地,共阳数码管将其接正5伏电源。一个八段数码管称为一位,多个数码管并列在一起可构成多位数码管,它们的段选线(即a.b.c.d.e.fg.dp)连在一起,而各自的公共端称为位选线。显示时,都从段选线送入字符编码,而选中哪个位选线,那个数码管便会被点亮。数码管的8段,对应一个字节的8位, a对应最低位, dp对应最高位。所以如果想让数码管显示数字0,那么共阴数码管的字符编码为00111111 , 即Ox3f;共阳数码管的字符编码为11000000,即Oxco。可以看出两个编码的各位正好相反。如下图。
由上面的图可以得到共阳极和共阴极的数码管的编码
共阳极:位选为高电平(即1)选中数码管,各段选为低电平(即0接地时)选中各数码段,由0到f的编码为:
uchar code table[]={
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e};
共阴极:
位选为低电平(即0)选中数码管,各段选为高电平(即1接+5V时)选中各数码段,
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
数码管静态显示
当多位数码管应用于某一系统时,它们的“位选”是可独立控制的,而“段选”是连接在一起的,我们可以通过位选信号控制哪几个数码管亮,而在同一时刻,位选选通的所有数码管上显示的数字始终都是一样的,因为它们的段选是连接在一起的,所以送入所有数码管的段选信号都是相同的,那么它们显示的数字必定一样,数码管的这种显示方法叫做静态显示。
让一个数码管循环显示0-9
下面是程序,从DSY_CODE数组中依次的将编码数据送到P0口就可以了,是不是很简单。
㈥ 求单片机 连接四位数码管电路图
没查你这数码管是共阳极还是攻阴极的,我画了一个共阳极的电路图,看能用不,(若是共阴极的要麻烦些) P0口要加10K的电阻做上拉。
㈦ 51单片机驱动8位数码管电路图
段选直接接到口线,位选接到IO引脚,加上合适的编程就能显示内容了。我这里有相关的视频详细说明资料
㈧ 单片机如何与控制电路连接通过数码管显示出来,并且把电路图设计出来
这是集电极电压高于基极电压原因。
㈨ 电路图里如何区分数码管是共阳极还是共阴极
根据仿真图的电平颜色来看,图中所用的数码管是共阳的。
如果你手上有该仿真图,你可以通过逐步运行来分析,也可以双击数码管查看属性,CA是共阳的,CC是共阴的。