大家帮帮忙,AT89S52单片机用一个I/O口怎么控制40个并联发光二级管,能画个电路图吗?就是从I/O口开始画

我知道是驱动的问题,但不知道怎么画电路图,就是I/O口,电阻,三极管之类的元件怎么连接,元件型号大小怎么选择。最好从i/o口开始画一个电路图给我,麻烦大家了。

按这个图连接,把P15端接到任意I/O口上,把并联的40个发光管接到蜂鸣器符号的位置,拿下蜂鸣器。按后按此图编程序即可。

追问

你提供的三极管连接方式是共集电极电路吧,那么输入电路为P15,输出为电源VCC,这样放大的电流是从发射极输出的,你说发光二级管接在蜂鸣器的位置也就是集电极的位子,怎么起放大电流的作用呢?发光二级管应该接在电源与发射极之间吧。

追答

这个你不明白,晶体管基射极间加0.7V电压是放大状态,0.7V以上是导通状态,单片机上的晶体管基极加的是I/o 口的输出电压5V.都是导通状态,这时,,三极管等效一个开关,把VCC电压直接接通到发光管,通过100欧电阻接负极,你是40个发光管并联,每个电流10mA,总电流400mA,100欧电阻需用2W以上的。还忘了一个事,8550是PNP管,正极是接发射极的,这个电路没毛病。

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-03-19

你是初学者吧?

建议你去看看“NPN三极管”和“PNP三极管”

看了楼上的回答,你也可以这样:

这是NPN型三极管的电路;

R1为1~10K

R2~Rn 取470Ω~1KΩ

三极管用电流稍大的,如SS8050(电流约为40*20mA=800mA),也可以用40个三极管

程序中写到

如:(把图中的IO接到单片机P3.7)

#include<reg52.h>

sbit IO=P3^7;

main()

{

      IO=1: 

      while(1);

}

追问

谢谢你的回答,我有一个疑问就是IO为什么不是等于0,而等于1呢?在单片机中1不是灭,0不是亮吗?还有只用一个电阻和所有的并联的发光二级管串联可以吗,这样就不用每一个发光二级管都串联一个发光二级管了。

追答

IO等不等于0是跟三极管有关的,等于0就用PNP型三极管,等于1是用NPN型的

第2个回答  2012-03-19
楼上的说得对,不过有个地方错了哦,这样可不行哈,应该将蜂鸣器接到vcc与8550的发射极,
相似回答
大家正在搜