导航:首页 > 操作系统 > 数码管与51单片机连接

数码管与51单片机连接

发布时间:2022-08-27 18:15:50

1. 关于8个共阴极数码管与51 单片机相连做显示器的接法

8550是NPN的三极管,你的数码管是共阴还是共阳?
给你方案:
1 共阴数码管,共阴数码管就是说你需要控制发光二极管的正极,而7段的负极都 是并到一起的,段控制【8550的发射极接到LED的正极,基极接单片机IO,IO需要上拉,集电极接电源视情况加个限流电阻】,位控制【为控制也可用8550,8550的集电极极接到LED的负极,基极接单片机IO,IO需要上拉,发射极接地】
2 共阳数码管,共阴数码管就是说你需要控制发光二极管的负极,而7段的正极极都 是并到一起的,段控制【8550的集电极极接到LED的负极,基极接单片机IO,IO需要上拉,发射极接地】,位控制【8550的发射极接到LED的正极,基极接单片机IO,IO需要上拉,集电极接电源视情况加个限流电阻】
希望能帮到你。

2. 2个4位共阳数码管直接和51单片机IO口连接,亮度偏暗的原因

数码管直接与I/O连接,亮度肯定是很暗的,这是小事,重要的是单片机很容易被烧坏的。因为单片机I/O的驱动能力很小,是不能直接驱动数码管的,特别是驱动共阳数码管的公共端,这需要高电平有效驱动,需要单片机输出电流,而对于单片机高电平时的输出电源是极小的,因此不可能驱动公共端的,非要这么做后果就是因电流小而使数码管显示很暗,最坏的结果是烧坏单片机。而用I/O驱动数码管的七段还免强维持,因单片机低电平时的输出电流比高电平时大很多。但不提倡直接用I/O驱动数码管,不论是公共端还是七段的控制端,而都要用一片驱动电路来连接。用74LS244和74HC244(同相驱动),或74LS240,74HC240(反相驱动)等都可以。

3. 四位八段共阴数码管怎么连接51单片机

一般8根段码线占一个完整的端口如p0口,另外4个端口如p1.0一p1.4驱动4个三极管分别接数码管的位控端

段输出一般加100一200欧的电阻三极管基极要串1000欧左右的电阻
三极管NPN或PNP均可

4. 51单片机如何连接4个二位数码管,只有p0口和P20-P23可以使用了。

用4个二位数码管,可以用一个8位一体的共阴数码管画仿真图更简单。用P0口和P2.0~P2.2就可以接成8位动态显示电路。方法一:用两片74HC573锁存器,这是比较典型的显示电器,用是比较多,用P0口输出数据,两片锁存器分别锁存段码和位码。如下图。

5. 51单片机按键控制流水灯和数码管(最好用外部中断)

51单片机按键控制流水灯和数码管,P1口接8个LED灯,P0口接一个共阳数码管,P3.2和P3.3各接一个按键,分别用外部中断0和中断1。早蜂鸣器接在P2.7上。仿真图如下。

6. 51单片机能直接驱动数码管吗

不可以的,给你分析分析:点亮一个发光diode,需要驱动电流至少5-10mA.而C51单片机的I/O口输出的电流在1mA左右。要想有提供大电流就需要在I/O口和diode之间加入一个电源,而一个加入一个电源之后,电流实在有点大,diode可受不了。那就只好在电源上在串一个电阻,电阻值的大小如何选,凭楼主的智慧应该可以算出来的。给个提示,一般上拉电阻值K级以上。

7. 菜鸟想请问一下各位高手 图中四位数码管与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; //归零进行下一轮扫描

}

8. 数码管可以直接接51单片机吗

51 的P0口内部没有上拉电阻
P0口如是接共阳管的段,一般要加限流电阻(可不加),一般在1K内选择,要保证合适的亮度.如是接共阴管的段,要加上拉电阻,这个上拉电阻也是限流电阻,要保证合适的亮度,一般是470欧姆

9. 图中的6位数码管是如何连接到51单片机I/O口上啊

每个数码管的对应段都并联在一起,这样一共就有 8根线,这8根线就是段信号,每个数码管的公共端分别引出来,这个都叫位信号,数码管分共阳和共阴的,这个不 一样的话启动方式是不一样的,如果公共端是正的话那就是共阳的,否则就是共阴的,共阳的话,8根段信号直接连单片机IO,例如P1口,6个位信号分别用PNP型三极管例如8550驱动,三极管发极接电源,集电极接位,基极通过一个220欧电阻接单片机IO口。就可以了,驱动原理就是 通过不停改变6位数码管的选通状态,同时给对应的段码,来达到6个数码管的数字的显示效果。例如位IO先选通第一个数码管,然后给段信号也就是片P1口一个段码,然后再选通第二个数码管,然后给P1对应的段码,以此类推,这样6个数码管就是分时点亮,但是由于每个数码管选通的时间比较短所以整体扫描频率比较高,所以根据人眼的视觉暂留效应感觉所有数码管是同时点亮的。这样就实现了数码管的驱动了。

阅读全文

与数码管与51单片机连接相关的资料

热点内容
linux中命令大全 浏览:34
pic单片机学习网站 浏览:163
843除6的算法 浏览:376
arduino编程视频 浏览:744
pdf背景绿色 浏览:612
记事本dos命令 浏览:274
服务器如何搭建多个节点 浏览:326
acx算法 浏览:258
幽冥诡匠漫画全集用什么app可以看 浏览:1001
租用服务器为什么越来越慢 浏览:960
算法创新就业方向 浏览:423
算法最优解作者 浏览:868
通达信红绿宝塔线指标源码 浏览:668
app是什么东西合法吗 浏览:232
怎么锁app视频教程 浏览:841
迅捷pdf注册码生成器 浏览:750
androidsdkosx 浏览:304
压缩面膜纸荧光 浏览:841
app怎么分身三个 浏览:745
电影bt下载源码 浏览:424