❶ 51单片机的共阴数码管怎么显示数字(c语言)知道
共阴极数码管也就是说,当控制信号为1时该段LED点亮,8段数码管的数字0~9定义为:
3FH,06H,5BH,4FH,66H
;01234
6DH,7DH,07H,7FH,6fh
;56789
以下为简易8路抢答器的例程:
#include<reg51.h>
#define
uchar
unsigned
char
uchar
table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f};
sbit
rstkey=P2^2;
sbit
speaker=P2^0;
void
delay()//延时约400毫秒
{
uchar
i,j;
for(i=0;i<200;i++)
for(j=0;j<250;j++);
}
main()
{
uchar
i,key;
P2=0xff;
while(1)
{
i=0;
P1=table[i];
while(1)
{
key=P3;
if(key!=0)break;
}
switch(key)
{
case
0x01:i=1;break;
case
0x02:i=2;break;
case
0x04:i=3;break;
case
0x08:i=4;break;
case
0x10:i=5;break;
case
0x20:i=6;break;
case
0x40:i=7;break;
case
0x80:i=8;break;
default:break;
}
P1=table[i];//显示按下抢答器的号
P0=key;//显示按下键号的LED
while(1)
{
if(rstkey==0)break;//主持人按下复位键则重新开始
speaker=~speaker;//否则蜂鸣器报警
delay();
}
}
}
❷ 单片机共阴极数码管,怎么分别控制不同的数码管
这个很好实现的,用动态扫描显示的方式,利用人眼的视觉暂留原理来控制。
#include<reg51.h>
#define uchar unsigned char;
uchar distab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00}; //0到f
uchar number,dat,dis[4];
void t0isr() interrupt 1
{
TH0=(65536-5000)/256;
TL0=(65536-5000)%256;
number++;
number%=4;
switch(number)
P1=0x01<<number;
P0=distab[dis[number]];
}
void t1isr() interrupt 3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
dat++;
dat%=10000;
dis[0]=dat%10;
dis[1]=(dat%100)/10;
dis[2]=(dat%1000)/100;
dis[3]=dat/1000;
}
main()
{
TMOD=0x11;
TH0=(65536-5000)/256;
TL0=(65536-5000)%256;
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
TR1=1;
ET1=1;
TR0=1;
ET0=1;
EA=1;
while(1);
}
❸ 51单片机的共阴数码管怎么显示数字(c语言)
要让51单片机共阴数码管显示数字,只需要将单片机的P2端口输出数字对应的段码即可。
以显示数字“0”为例,c语言程序如下:
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
//数码管的段码编码
Uchar table[10] ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void main(){//主函数
P0 = table[0];//显示0,大家可以修改里面的数据。
while(1);//程序不再执行其他步骤;
}
(3)单片机共阴极数码管扩展阅读:
数字0-9的对应段码:
数字0 0x3f
数字1 0x06
数字2 0x5b
数字3 0x4f
数字4 0x66
数字5 0x6d
数字6 0x7d
数字7 0x07
数字8 0x7f
数字9 0x6f
❹ 如何把共阳极的数码管改成共阴极的单片机电子
数码管的七个字段实际上就是七个发光二极管,按理水就是有十四个引脚,为了显示驱动电路及数码管的引脚,一般是把所有发光二极管的正极或负极连在一起。把正极连在一起的,即为共阳极;把负极连在一起的,即为共阴极。数码管一经做成产品,其特性就此被确定,不可再进行变动。如果驱动电路与数码管不配合,需要更改的话有两种方法:1.更换数码管;2.将驱动电路的驱动芯片更换掉。
❺ 什么是单片机LED数码管共阳极和共阴极
LED数码管指的是七段数码管,有共阳极和共阴极之分;
(顺便说 数码管可不是因单片机而生,所以不是单片机的数码管,是互不相干的不同元器件)
共阳极就是把二极管的正极连接在一起,那么共阴极就是把二极管负极连接在一起;
共阳极数码管,要点亮LED就需要输入端信号为低电平,反之共阴极就需要输入高电平信号;
结果输出的七段码就有正反两种了;
❻ 共阳极数码管和共阴极数码管用法区别
你好朋友,专业家电电脑维修的告诉你,共阴和共阳的区别 共阴-就是共负极 数码管 其它正极abcdefg。 负极都连在一起了! 共阴就是-数码管的正极脚全都连在一起了!
这2种数码管 供电正好相反!
共阳极-是 电压从阳极进入然后通过单片机io脚对地行成回路,好让数码管亮起来!如果不接限流电阻,电流直接通过数码管的共阳极进入单片机的io脚,单片机没有那么大的驱动能力,会损坏单片机的io脚!
有什么不明白的可以问我!
❼ 单片机里数码管的共阴极和共阳极是怎么回事
数码管的一个数据位是由8个发光二极管组成,这8个发光二极管如果阳极并在一起,就称为共阳;如果这8个发光二极管的阴极并在一起,就称为共阴。
❽ 共阴极数码管共阴极脚怎么接
如果共阳的,3或8应该是阳极,接电源,单片机控制其他管脚就可以了。
如果是共阴的,3或8就是阴极,接地,单片机控制脚要通过三极管再接数码管的管脚。
一般单片机不用输出直接接数码管管脚进行驱动,而是要通过hc595、cd4094等芯片驱动。
❾ 一位共阴极数码管怎么与单片机相连
取单片机的8个引脚,每个引脚通过100欧的电阻与数码管的a~dp引脚相连,数码管的共阴端连接pnp型三极管的发射极e,基极b和集电极c接地就可以了,单片机的引脚最好加个10k的上拉电阻,就这样,看看行不。谢谢!
❿ 共阴极单片机数码管我不明白排列顺序为何是hgfedcba这个顺序,而不是从abcdefgh这个
不管是共阴还是共阳,都是按,dp,g,f,e,d,c,b,a的顺序显示。
只是对于共阴1代表亮,0代表灭。共阳正好相反。比如想用共阴显示0,那按照顺序就是0011 1111,转换为16进制就是3f,所以ox3f就代表零。