标题: 单片机控制红外发射管没反应 [打印本页]

作者: 2602482600    时间: 2020-4-25 11:14
标题: 单片机控制红外发射管没反应
用单片机的io口控制的,按键按下时io口输出1,为什么控制不了红外发射管呢?用手机摄像看得红外led并不亮啊

#include<reg51.h>
#define GPIO_LED P2                  //宏定义P2口
sbit K1=P1^4;                          //位操作
sbit out=P3^7;
void Delayms(int);   //延时

/*******************************************************************************
* 函 数 名         : main
* 函数功能                   : 主函数
* 输    入         : 无
* 输    出         : 无
*******************************************************************************/
void main(void)
{
                int n=0;
           GPIO_LED=0xff;
                  
        while(1)
        {                 
                switch(n%2)
                {
                        case 0: GPIO_LED=0xff, out=0;break;
                        case 1:        GPIO_LED=0xef, out=1;
                }
                if(K1==0)                //检测按键K1是否按下
                {
                        Delayms(100);        //消除抖动
                        if(K1==0)
                        {
                                n++;
                        }
                }
               
        }
}



作者: 权威人物    时间: 2020-4-25 16:27
首先你的手机 不一定能看的到红外,然后你这个程序只会让红外闪烁,有条件可以示波器看,简单点直接改代码用万用表看或者用发光二极管顶着也行,就可以直观的观察了。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1