欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
關于stc15單片機 為什么紅外遙控按了沒反應,8位數碼管就都顯示0
[打印本頁]
作者:
lxb
時間:
2017-12-26 15:44
標題:
關于stc15單片機 為什么紅外遙控按了沒反應,8位數碼管就都顯示0
求助各為大神,幫忙分析下這個程序,為什么紅外遙控按了沒反應,8位數碼管就都顯示0
#include <stc15.h>
#define uchar unsigned char
#define uint unsigned int
uchar code led_xs[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xA7,0xA1,0x86,0x8E};
uchar code led_wei[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F};
uchar t;
sbit IR=P3^2;
bit irok;//紅外接收完標志位
bit ieok;//紅外處理完標志位
uchar Ir_cd[4];
uchar Ir_data[33];
void iint();//設置準雙向口
void init();//外部中斷0初始化
void intt();//定時器0初始化
void hwjmcl(); //紅外解碼處理
void hwmzzh();//紅外碼值轉換處理顯示
void delay(uint t);
void main()
{
intt();//設置準雙向口
iint();//外部中斷0初始化
init();//定時器0初始化
while(1)
{
if(irok)
{
irok=0;
ET0=0; //禁止定時器0中斷
hwjmcl();//紅外解碼處理
}
if(ieok)
{
ieok=0;
}
hwmzzh(); //紅外碼值轉換處理顯示
}
}
void hwjmcl() //紅外解碼處理
{
uchar i,j,k=1,value=0;
for(i=0;i<4;i++)
{
for(j=0;j<8;j++)
{
value>>=1;
if(Ir_data[k]>6)
{
value|=0x80;
}
k++;
}
Ir_cd[i]=value;
}
ieok=1;
}
void hwmzzh() //紅外碼值轉換處理顯示
{
P2=led_xs[Ir_cd[0]/16];
P0=led_wei[0];delay(1);P0=0xFF;
P2=led_xs[Ir_cd[0]%16];
P0=led_wei[1];delay(1);P0=0xFF;
P2=led_xs[Ir_cd[1]/16];
P0=led_wei[2];delay(1);P0=0xFF;
P2=led_xs[Ir_cd[1]%16];
P0=led_wei[3];delay(1);P0=0xFF;
P2=led_xs[Ir_cd[2]/16];
P0=led_wei[4];delay(1);P0=0xFF;
P2=led_xs[Ir_cd[2]%16];
P0=led_wei[5];delay(1);P0=0xFF;
P2=led_xs[Ir_cd[3]/16];
P0=led_wei[6];delay(1);P0=0xFF;
P2=led_xs[Ir_cd[3]%16];
P0=led_wei[7];delay(1);P0=0xFF;
}
void time_0(void) interrupt 1 //定時器0中斷服務函數
{
t++;
}
void INT_0(void) interrupt 0 //外部中斷0服務函數
{
static uchar i;
static bit flag;
ET0=1;
if(t>35)
{
flag=1;
i=0;
}
if(flag)
{
Ir_data[i]=t;
i++;
t=0;
if(i>=33)
{
i=0;
flag=0;
irok=1;
}
}
}
void delay(uint t)
{
uint i,j;
for(i=t;i<50;i++)
for(j=25;j>0;j--);
}
void init()
{
TMOD&=0xF0;
TMOD|=0x02;
TH0=0;
TL0=0;
TR0=1;
}
void iint()
{
IT0=1;
EX0=1;
EA=1;
}
void intt()
{
P0M0=0;P0M1=0;
P1M0=0;P1M1=0;
P2M0=0;P2M1=0;
P3M0=0;P3M1=0;
P4M0=0;P4M1=0;
P5M0=0;P5M1=0;
}
復制代碼
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1