⑴ 用51单片机怎么驱动12V共阳数码管
用51单片机怎么驱动12V共阳数码管?下面是网友经验回答,为大家提供参考。
用ULN2803接数码管的阴极。
将PNP三极管8550接入阳极。
--发射极接+12V,
--集电极接数码管公共阳极,
--基极用I/O口进行控制。
但是,这时基极需要的控制电压,超出了单片机I/O口的输出能力。
所以,基极和I/O口之间,还应该接入一个NPN型的三极管,或者用ULN2803也可。
电路如下,本人已经使用多年,效果良好姿漏。
追问:uln2803我昨天也接了试一下,不行呀,大概是这样接的(见图),你看看哪里出了问题?
追答:楼主的电路基本正确,只是2803的COM,没有画出来,它应该接+12V。可以看看下面显示“3”的'电路,注意,下图中省略了限流电阻。
追问:这下好奇怪呀,我昨天晚上接了都不行,今天就可以。现在我把uln2803的10脚悬空和接+12V效果都一样呀.....这个管脚到底有啥特殊用途呢?
追答:呵呵,昨天不好用,大概是因为我还没有贴上这张图片吧。在2803每个输出端的内部,都含有一个续流二极管。外接感性负载的时候,COM端必陵册旅须接高电源端,这样续流二极管才能起作用。现在接尺凳的负载是数码管,COM也可不用高电源端,接上更好。
⑵ 51单片机怎么用按键控制一个数码管,按一下显示一个数字,顺序显示
1、首先,要把代码写好,点亮数码管。
⑶ 51单片机能直接驱动数码管吗
不可以的,给你分析分析:点亮一个发光diode,需要驱动电流至少5-10mA.而C51单片机的I/O口输出的电流在1mA左右。要想有提供大电流就需要在I/O口和diode之间加入一个电源,而一个加入一个电源之后,电流实在有点大,diode可受不了。那就只好在电源上在串一个电阻,电阻值的大小如何选,凭楼主的智慧应该可以算出来的。给个提示,一般上拉电阻值K级以上。
⑷ 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);//程序不再执行其他步骤;
}
(4)51单片机接数码管扩展阅读:
数字0-9的对应段码:
数字0 0x3f
数字1 0x06
数字2 0x5b
数字3 0x4f
数字4 0x66
数字5 0x6d
数字6 0x7d
数字7 0x07
数字8 0x7f
数字9 0x6f
⑸ 51单片机三极管驱动数码管如何接线
4位数码管有8个公用的段信号,还有4个位信号,如果是共阴郑碰数码管,用4个IO口各驱动一个NPN三极管,集电极分别接4个数码管的位信号,8个段信号一般也需驱动电路,如用74LS273 74LS244等
如果是共阳数码管,则段信号无需驱动,搏闷位信号要喊银谈用四个PNP三极管驱动,低电平三极管导通