近距离无线通信(红外线收发芯片)

2019-08-05 16:54发布

红外线通信技术适合于低成本,跨平台,点对点高速数据连接,尤其是嵌入式系统。经外线技术的主要应用:设备互联,信息网关。设备互联后可完成不同设备内文件与信息的交换。信息网关负责连接信息终端和互联网。红外通信技术已经被全球范围内的众多软硬件厂商所支持与采用。目前主流的软件和硬件平台均提供对它的支持。
推出NB9148
电路图(NB9148红外遥控发射器电路)
基于NB9148红外遥控发射器电路图.jpg
程序

******************************************************************************
主程序功能是接收NB9148发射的红外脉冲命令,根据命令代码执行相应的功能子程序。
程序给出的是单个按键按下时,红外接收端程序的主体结构。如果涉及到第一列多个按键的组合,可以通过预先建立功能表格的方法,通过查表实现多个按键同时按下的识别。这就需要读者自行对程序进行修改完成。
#include <reg51.h>  // 引用标准库的头文件
#include <absacc.h>
#include <stdio.h>
#include <math.h>
#define uchar unsigned char
#define uint unsigned int
define   DHP   XBYTE [0x7fff]
define   DSP   XBYTE [0xffff]
/* 主程序 */
void main(void)
{
It0=1;           外部中断0下降沿触发
EA = 1;            开中断总开关
EX0 = 1;   // 打开外部0中断
/* 开始无限循环,等待中断到来 */
while (1)  
   {;}
}
/* 外部0中断 */
void int0() interrupt 0 using 0
{
uchar temp
EX0 = 0;    // 关闭外部0中断
temp=DHP;               //读取端口1状态
switch(temp);                  //按键判断
     {
     case 0x01:  {  ;  }; break;   //HP1
  case0x10:  {  ;  }; break;   //HP2
  case0x20:  {  ;  }; break;   //HP3
  case0x40:  {  ;  }; break;       //HP4
  case0x80:  {  ;  }; break;   //HP5
     default              break;
}
temp=DSP;                       读取端口2状态
switch(temp);
     {
     case 0x01:  {  ;  }; break;   //SP1
  case0x10:  {  ;  }; break;   //SP2
  case0x20:  {  ;  }; break;   //SP3
  case0x40:  {  ;  }; break;       //SP4
  case0x80:  {  ;  }; break;   //SP5
     default              break;
}
EX0 = 1;    // 打开外部0中断
   return;
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。