AT89S52驱动LED灯闪烁失败,求解????

2020-02-04 09:16发布

单片机驱动发光二级管.jpg (72.61 KB, 下载次数: 0) 下载附件 LED驱动电路 2012-4-6 22:03 上传 ,这是我是用的LED驱动电路。
以下是我使用的LED灯1S闪烁的程序:
#include<reg52.h>  
#define uchar unsigned char
#define uint unsigned int
sbit led1=P1^0;
uchar num;
void main()
{
        TMOD=0x01;       
        TH0=(65536-45872)/256;
        TL0=(65536-45872)%256;
        EA=1;       
        ET0=1;       
        TR0=1;       
        while(1);
}
void T0_time() interrupt 1
{
        TH0=(65536-45872)/256;       
        TL0=(65536-45872)%256;
        num++;          
        if(num==20)       
        {
                num=0;         
                led1=~led1;       
        }
}
但是真正工作的时候,LED灯只是亮了,但没有闪烁,求解????????????????
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
rclong
2020-02-06 10:53
surelost2013 发表于 2012-4-7 15:43
就是把D?和R?串在VCC与C,把三极管看成一个受控的开关。

NPN管就是串在VCC与C之间
驱动继电器 小型直流电机 都可以用这个办法

我个人偏向于使用PNP管 负载串在C与GND间
这样做能是IO为低电平时导通 上电复位阶段不容易误动作 而且低电平驱动能力较强

一周热门 更多>