如何读取人体红外模块的输出电平?

2019-07-15 18:00发布


我的红外模块接到单片机的I/O口,但是读取不到它的电平.下面的LED不亮
#include<reg52.h>
typedef unsigned char uint8;
typedef unsigned int  uint16;
sbit hw=P1^0;
sbit led=P1^3;
sbit led1=P1^2;
sbit beep=P3^6;
uint8 a;
//unsigned char code LedChar[] = {  //数码管显示字符转换表
                                 0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8,0x80, 0x90};
void delay1ms(uint16 t)
{
        uint8 i,j;
        for(i=0;i<t;i++)
        for(j=0;j<120;j++);         
}       
void main()
{       
        while(1)
        {         
             
                  
                 if(hw==1)
                 {
                         delay1ms(5);
                         if(hw==1)                  
                     {
                                 led1=0;
                                 delay1ms(200);
                         }
                 
                  
                  while(!hw);

                  
                 }
        }
}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。