91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

設計一個基于單片機的嵌入式系統,要求具備以下功能: 紅外數據的接收及解碼,紅外發射電路 數碼管的顯示驅動控制 將接收到的紅外數據進行實時顯示(限于動態掃描方法) 請根據以上功能要求,進行硬件系統設計,編寫軟件程序并畫出流程圖。 實現:本設計利用AT89C52制作紅外遙控系統,使用Keil軟件編寫程序,在Proteus軟件中采用IRLINK模塊用于接收并解調紅外信號,進行程序的仿真。設計中,矩陣鍵盤充當遙控器,當我們按下某一個鍵時,經單片機識別,CPU向接有紅外發射管的端口發射一定頻率的脈沖,該脈沖與38KHz左右的載波脈沖進行調制,然后將已調制的脈沖進行緩沖放大,激勵紅外發光二極管將電能轉化為光能,使得紅外發光二極管發射出一定頻率的紅外線,當接收控制系統接收到該紅外光后,由單片機內定時/計數器得到該紅外光的頻率,然后將該頻率送往CPU,由CPU對該信號進行反編碼,識別出控制信號,控制LED燈亮,蜂鳴器發聲,并從數碼管顯示出按鍵值,同時示波器顯示紅外發射及接受端的脈沖波形,實現紅外數據的接收解碼與動態顯示。 信號波形解碼顯示都沒問題,LED燈和蜂鳴器設計是有點問題的,可以刪掉不用不影響。 自己使用的是壓縮包里第二個文件的程序,其他包里有額外的參考資料,可借鑒。

資源截圖

代碼片段和文件信息

#include??

static?bit?OP;????????//紅外發射管的亮滅
static?unsigned?int?count;???????//延時計數器
static?unsigned?int?endcount;?//終止延時計數
static?unsigned?char?Flag;??????//紅外發送標志
char?iraddr1;??//十六位地址的第一個字節
char?iraddr2;??//十六位地址的第二個字節

void?SendIRdata(char?p_irdata);
void?delay();
char?getkey()
{
??P1=0xfe;P3_6=P3_7=1;P3_3=1;
??if(!P1_4)return?1;???//ON
??if(!P1_5)return?2;???//7
??if(!P1_6)return?3;???//8
??if(!P1_7)return?4;???//9
??if(!P3_6)return?5;???//X
??if(!P3_7)return?6;???//÷
??P1=0xfd;
??if(!P1_4)return?11;?//+-
??if(!P1_5)return?12;?//4
??if(!P1_6)return?13;?//5
??if(!P1_7)return?14;?//6
??if(!P3_6)return?15;?//-
??if(!P3_7)return?16;?//MRC
??P1=0xfb;
??if(!P1_4)return?21;?//%
??if(!P1_5)return?22;?//1
??if(!P1_6)return?23;?//2
??if(!P1_7)return?24;?//3
??if(!P3_6)return?25;?//+
??if(!P3_7)return?26;?//M-
??P1=0xf7;
??if(!P1_4)return?31;?//□
??if(!P1_5)return?32;?//0
??if(!P1_6)return?33;?//.
??if(!P1_7)return?34;?//=
??if(!P3_6)return?35;?//+
??if(!P3_7)return?36;?//M+

??P1=0xfF;P3_3=0;
??if(!P1_4)return?41;?//
??if(!P1_5)return?42;?//
??if(!P1_6)return?43;?//
??if(!P1_7)return?44;?//
??if(!P3_6)return?45;?//
??if(!P3_7)return?46;?//
??return?0;
}

void?main(void)?
{
??char?key;
??count?=?0;
??Flag?=?0;
??OP?=?0;
??P3_4?=?1;
??EA?=?1;?//允許CPU中斷?
??TMOD?=?0x11;?//設定時器0和1為16位模式1?
??ET0?=?1;?//定時器0中斷允許?

??P1=0xff;
??TH0?=?0xFF;?
??TL0?=?0xE6;?//設定時值0為38K?也就是每隔26us中斷一次??
??TR0?=?1;//開始計數

??iraddr1=0xff;
??iraddr2=0xff;


??do{
??key=getkey();
??????if(key==1)SendIRdata(0x12);//set
??????if(key==11)SendIRdata(0x0b);//exit
??????if(key==25||key==35)SendIRdata(0x1a);//+
??????if(key==15)SendIRdata(0x1e);//-
??????if(key==6)SendIRdata(0x0e);//↑?÷
??????if(key==16)SendIRdata(0x1d);//↓?MRC

??????if(key==26)SendIRdata(0x1f);//←?M-
??????if(key==36)SendIRdata(0x1b);//→?M+
??????if(key==32)SendIRdata(0x00);//0
??????if(key==22)SendIRdata(0x01);//1
??????if(key==23)SendIRdata(0x02);//2

??????if(key==24)SendIRdata(0x03);//3
??????if(key==12)SendIRdata(0x04);//4
??????if(key==13)SendIRdata(0x05);//5
??????if(key==14)SendIRdata(0x06);//6
??????if(key==2)SendIRdata(0x07);//7
??????if(key==3)SendIRdata(0x08);//8

??????if(key==4)SendIRdata(0x09);//9
??????if(key==21)SendIRdata(0x2A);//%
??????if(key==5)SendIRdata(0x2B);//X
??????if(key==33)SendIRdata(0x2C);//.
??????if(key==34)SendIRdata(0x2D);//=
??????if(key==31)SendIRdata(0x2E);//□

??????if(key==41)SendIRdata(0x2F);//
??????if(key==42)SendIRdata(0x30);//
??????if(key==43)SendIRdata(0x31);//
??????if(key==44)SendIRdata(0x32);//
??????if(key==45)SendIRdata(0x33);//
??????if(key==46)SendIRdata(0x34);//
??}while(1);
}?
//定時器0中斷處理?
void?timeint(void)?interrupt?1?
{?
??TH0=0xFF;?
??TL0=0xE6;?//設定時值為38K?也就是每隔26us中斷一次
??count++;

}?


void?SendIRdata(char?p_irdata)
{
??int?i;
??char?irdata=p_irdata;

??//發送9ms的起始碼
??endcount=223;
??Flag=1;

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件?????149931??2008-08-04?20:07??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\Last?Loaded?紅外遙控的仿真.DBK

?????文件??????26471??2020-06-28?15:44??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\Last?Loaded?紅外遙控的仿真.pdsbak

?????文件???????5196??2008-08-04?22:06??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\main.c

?????文件??????10149??2008-08-04?22:06??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\main.LST

?????文件??????13217??2008-08-04?22:06??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\main.OBJ

?????文件??????10482??2007-11-01?21:52??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\紅外遙控

?????文件?????????44??2007-11-01?21:52??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\紅外遙控.lnp

?????文件??????12468??2007-11-01?21:52??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\紅外遙控.M51

?????文件???????1379??2020-06-30?08:59??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\紅外遙控.Opt

?????文件????????166??2008-01-15?12:19??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\紅外遙控.plg

?????文件???????2091??2020-06-28?10:36??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\紅外遙控.Uv2

????.......??????1381??2020-06-28?21:08??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\紅外遙控_Opt.Bak

????.......??????1652??2008-08-04?22:53??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\紅外遙控_Uv2.Bak

?????文件?????149931??2008-11-21?19:17??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\紅外遙控的仿真.DSN

?????文件????????328??2020-06-28?21:07??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\紅外遙控的仿真.pdsprj.DESKTOP-EN0H7CH.DELL.workspace

?????文件???????3463??2009-12-07?19:57??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\紅外遙控的仿真.PWI

?????文件??????22584??2008-08-04?22:08??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼

?????文件???????3779??2008-08-04?22:06??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼.c

?????文件???????7303??2008-08-04?22:08??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼.hex

?????文件?????????41??2008-08-04?22:08??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼.lnp

?????文件???????7575??2008-08-04?22:08??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼.LST

?????文件??????24972??2008-08-04?22:08??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼.M51

?????文件??????14968??2008-08-04?22:08??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼.OBJ

?????文件???????1606??2020-06-28?10:36??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼.Opt

?????文件????????189??2020-06-28?10:33??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼.plg

?????文件???????2107??2020-06-28?10:36??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼.Uv2

?????文件???????3609??2008-01-15?13:55??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼LCD.c

?????文件???????6629??2008-08-04?22:08??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼LCD.LST

?????文件??????10091??2008-08-04?22:08??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼LCD.OBJ

????.......??????1604??2008-11-21?19:25??紅外遙控帶原理圖\proteus做得紅外仿真\紅外遙控模擬\解碼_Opt.Bak

............此處省略136個文件信息

評論

共有 條評論