<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于89C52與DT9122D紅外遙控用數碼管顯示

基于89C52與DT9122D紅外遙控用數碼管顯示

作者: 時(shí)間:2016-11-27 來(lái)源:網(wǎng)絡(luò ) 收藏
本實(shí)驗是89C52DT9122D紅外遙控的鍵值顯示在數碼管上,希望對朋友們有幫助,程序如下:

#include
#include
typedefunsigned int uint;
typedefunsigned char uchar;

本文引用地址:http://dyxdggzs.com/article/201611/322562.htm

uchar code smg_tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};//數碼管段碼0~F

sbit IRINPUT=P3^2;//紅外線(xiàn)接收頭端口

uchar IR_Input_Buffer[]={0x00,0x00,0x00,0x00};
uchar Display_Buffer[]={0x00,0x00};//數碼管顯示緩沖
//-------------------------------------------------/
//函數功能:延時(shí)函數(MS)              /
//入口參數:x/
//出口函數:無(wú)/
//------------------------------------------------/
void _delay_ms(uint x)
{
uchar i;
while(x--)for(i=0;i<120;i++);
}
//-------------------------------------------------/
//函數功能:延時(shí)函數(140US)           //
//入口參數:x//
//出口函數:無(wú)//

void _delay_us(uint x)
{
uchar i;
while(x--)
for(i=0;i<13;i++);
}
//-------------------------------------------------/
//函數功能:中斷0初始化             /
//入口參數:無(wú)//
//出口函數:無(wú)//

void IR_INT0(void)
{
EX0=1;
IT0=1;
EA=1;
}
//------------------------------------------------/
//函數功能:顯示函數(把接收到數據顯示在數碼管)   /
//入口參數:無(wú)/
//出口函數:無(wú)  /
//------------------------------------------------/
void Show_IR_Input_Value(void)
{
P2=0x7f;
P0=smg_tab[Display_Buffer[0]];
_delay_ms(2);
P2=0xbf;
P0=smg_tab[Display_Buffer[1]];
_delay_ms(2);
}
//--------------------------------------------------/
//函數功能:主函數(程序入口)            /
//入口參數:無(wú)/
//出口函數:無(wú)  /
//------------------------------------------------/
void main(void)
{
IR_INT0();
IRINPUT=1;
while(1)
{
Show_IR_Input_Value();
}
}
//--------------------------------------------------/
//函數功能:外部中斷0函數             /
//入口參數:無(wú)/
//出口函數:無(wú)  /
//-------------------------------------------------/
void Display_IR_Input_Value(void) interrupt 0//紅外遙控信號進(jìn)行鍵值解碼和糾錯.
{

uchar i,j,k,N=0;
EX0=0;
_delay_us(15);
for(i=0;i<14;i++)
{
if(IRINPUT)
{
EX0=1;
return;
}
}
while(!IRINPUT)
_delay_us(1);
for(j=0;j<4;j++)
{
for(k=0;k<8;k++)
{
while(IRINPUT)
_delay_us(1);
while(!IRINPUT)
_delay_us(1);
while(IRINPUT)
{
_delay_us(1);
N++;
if(N>=30)
{
EX0=1;
return;
}
}
IR_Input_Buffer[j]=IR_Input_Buffer[j]>>1;
if(N>=8)
IR_Input_Buffer[j]=IR_Input_Buffer[j]|0x80;
N=0;
}
}
if(IR_Input_Buffer[2]!=~IR_Input_Buffer[3])
{
EX0=1;
return;
}
Display_Buffer[0]=IR_Input_Buffer[2]&0x0f;
Display_Buffer[1]=IR_Input_Buffer[2]>>4;
EX0=1;
}



評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>