|
紅外無(wú)線通信仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
51hei.png (17.25 KB, 下載次數(shù): 66)
下載附件
2021-6-14 05:00 上傳
0.png (17.17 KB, 下載次數(shù): 109)
下載附件
2018-12-4 15:46 上傳
紅外無(wú)線發(fā)射/接收器
燈光模擬:有光電阻小,無(wú)光電阻大
單片機(jī)源程序如下(發(fā)送程序):
- #include <REG51.h>
- #include <intrins.h>
- #include "hongwaifashe.h"
- void hongwaifashe(void)
- {
- TMOD = 0x01; //T0 16位工作方式
- IR=1; //發(fā)射端口常態(tài)為高電平
- ZZ(setdata[0]);
- ZZ(setdata[1]);
- }
- void ZZ(uchar x)
- {
- TT0(1,m9); //高電平9mS
- TT0(0,m4_5); //低電平4.5mS
- /*┈ 發(fā)送4幀數(shù)據(jù) ┈*/
- Z0(SBM);
- Z0(~SBM);
- Z0(x);
- Z0(~x);
- /*┈┈ 結(jié)束碼 ┈┈*/
- TT0(1,m_56);
- TT0(0,m40);
- }/*┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
- 函數(shù)功能:?jiǎn)螏l(fā)送程序
- 入口參數(shù):1幀數(shù)據(jù)
- ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈*/
- void Z0(uchar temp)
- {
- uchar v;
- for (v=0;v<8;v++) //循環(huán)8次移位
- {
- TT0(1,m_56); //高電平0.65mS
- if(temp&0x01) TT0(0,m1_68); //發(fā)送最低位
- else TT0(0,m_56);
- temp >>= 1; //右移一位
- }
- }
- /*┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
- 函數(shù)功能:38KHz脈沖發(fā)射 + 延時(shí)程序
- 入口參數(shù):(是否發(fā)射脈沖,延時(shí)約 x (uS))
- ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈*/
- void TT0(bit BT,uint x)
- {
- TH0 = x>>8; //輸入T0初始值
- TL0 = x;
- TF0=0; //清0
- TR0=1; //啟動(dòng)定時(shí)器0
- if(BT == 0) while(!TF0); //BT=0時(shí)不發(fā)射38KHz脈沖只延時(shí);BT=1發(fā)射38KHz脈沖且延時(shí);
- else while(1) //38KHz脈沖,占空比5:26
- {
- IR = 0;
- if(TF0)break;
- if(TF0)break;
- IR = 1;
- if(TF0)break;
- if(TF0)break;
- if(TF0)break;
- if(TF0)break;
- if(TF0)break;
- if(TF0)break;
- if(TF0)break;
- if(TF0)break;
- if(TF0)break;
- if(TF0)break;
- }
- TR0=0; //關(guān)閉定時(shí)器0
- TF0=0; //標(biāo)志位溢出則清0
- IR =1; //脈沖停止后,發(fā)射端口常態(tài)為高電平
- }
復(fù)制代碼
接受程序:
所有資料51hei提供下載:
紅外無(wú)線通信.zip
(146.29 KB, 下載次數(shù): 259)
2018-12-4 09:13 上傳
點(diǎn)擊文件名下載附件
大家想學(xué)紅外的可以參看一下哈 下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|