学单片有一个月了,今天弄个无线遥控两路继电器,可是就不好用,没反应!大家帮我找找错误。不会传图片,我发附件了!
程序:
#include "AT89X52.h"
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar i,j;
void main(void)
{
P2_0=0;//释放继电器
P2_1=0;
while(1){
P1=0xff; //P1口设置为输入状态 先全部写1
i=P1;//赋值给临时存贮变量
i=i&0x0f; //和0x0f相与 屏蔽高四位,读取无线遥控码
if (i==0x04)//如果是0x04,则代表无线遥控器的按键A按下,执行显示
{
P2_0=1; //继电器吸合
}
if (i==0x08)//如果是0x08,则代表无线遥控器的按键b按下,执行显示
{
P2_0=0;//继电器释放
}
if (i==0x02)//如果是0x02,则代表无线遥控器的按键C按下,执行显示
{
P2_1=1;//继电器吸合
}
if (i==0x01)//如果是0x01,则代表无线遥控器的按键d按下,执行显示
{
P2_1=0; //继电器释放
}
}
} |