新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 基于DTMF技术与射频技术的远程控制的实现

基于DTMF技术与射频技术的远程控制的实现

作者: 时间:2010-11-23 来源:网络 收藏

  “MT8880发送前的初始化”函数:

  //功能说明:发送前的初始化(对MT8880控制寄存器的

  //操作)void DTMF-send-init(void)

  {

  DTMF_REG=0x49;

  //写1001到MT8880控制寄存器CRA(允许发送)

  DTMF_CPW(); //写人控制器寄存器

  DTMF_REG=0x40;//写0000到MT8880控制寄存器CRB

  DTMF_CPW(); //写人控制器寄存器}

  “MT8880接收前的初始化”函数:

  //功能说明:接收前的初始化(对MT8880控制寄存器

  //的操作)void DIME rec init(void)

  {

  DTMF_REG=0x4C;

  //写1100到MT8880控制寄存器CRA(使能中断模式,接着写CRB)

  DTMF_CPW();

  DTMF_REG=0x40; //写 0000到MT8880控制寄存器

  //CRB

  DTMF_CPW();

  }

  “MT8880接收1位DTMF”函数:

  //功能说明:接收1位DTMF信号

  //返回参数:接收到数据存于A//DTMF REG为与MCU的接口寄存器,在"DTMF.H"有定义

  //READSR为读状态寄存器SR时临时存储器,在"DTMF.H"

  //有定义

  uchar DTMF_rec_1 byte(void)

  {

  uchar uc_data;

  DTMF_REG=Ox⒍;//CS=0 RS0=1 RW=1 Q2=0

  READSR=DTMF_CPR(); //读状态寄存器SR

  while(SRBZ! =1);

  //判断SR的b2=1吗?=1说明收到有效数据

  DTMF_REG=0x2f;

  uc_data=DTMF_CPR();//读取数据

  return(uc_data);

  )

  “MT8880发送1位DTMF”函数:

  //功能说明:发送1位DTMF信号

  //输人参数:待发送数据给A//DTMF-REG为与MCU的接口寄存器,在"DTMf. H"有定义//READSR为读状态寄存器SR时临时存储器,在"DTMF.H"

  //有定义

  void DTMF send_lbyte(uchar uc_data)

  {

  DIME_ON();

  DTMF_Q2=0;

  DTMF RS0=0:

  DTMF RW=0:

  DTMF RFC=uc data:

  DTMF CPM():

  delay_ms(130);

  //突发模式,送出后延时的100 ms再读状态寄存器

  DTMF ̄REG=0x6f;//CS=0 RS0=1 RW=1 Q2=0

  READSR=DTMF CPR():

  }

  4.3对编码芯片地址线和数据线的控制

  已正确识别用户通过DTMF技术输人的控制指令后,单片机只要控制8位地址线和4位数据线这12个lO口的高低电平就可以启动无线传输。而在无线接收端是由硬件电路自动完成的,不需要软件控制。

  本文介绍的技术已在实际项目中运用,系统运行稳定。如果增加语音提示功能,则整个系统能做得更加完善和更加人性化。要实现语音提示功能,只要增加一块语音录放芯片就可以了。


上一页 1 2 3 4 下一页

关键词: 射频 音频

评论


相关推荐

技术专区

关闭