位置:51电子网 » 技术资料 » 通信网络

波特率自适应的无线数据传输模块设计

发布时间:2008/5/29 0:00:00 访问次数:557

1 模块总体硬件结构

  模块总体硬件结构主要由微控制器和蓝牙芯片及其相应的外围电路组成,能自动完成波特率识别,并进行数据的编码处理,给用户提供了一个透明的数据接口。微控制器选用atmel公司新推出的具有可在线编程(icsp)功能的单片机at89s51,便于以后软件的升级。根据发送数据是否需要曼彻斯特编码、所需外围元件的数量、功耗及发射功率等方面因素的综合比较,选用nrf401芯片作为无线数据传输芯片。

  nrf401是单片无线收发芯片,采用蓝牙核心技术设计,内部集成高频发射、高频接收、pll合成、fsk调制、fsk解调、多频道切换等诸多功能和外围部件协议。它是目前集成度最高的无线数据传输产品,也是目前唯一一个可以直接连接微控制器串口进行异步数据传输、无需进行曼彻斯特编码的无线收发芯片。nrf401发射功率最大为10 mw,工作电压为2.7~5 v,发射电流为8~30 ma,接收电流约为10 ma,待机电流为8 μa,灵敏度为-105dbm,20脚8 mm×7 mm的soic封装;所需外部元件很少,仅外接一个晶振和几个阻容、电感元件;基本无需凋试,传输速率最高为19.2 kbps,工作频段为433/434 mhz,有2个信道,调制方式fsk。

  nrf401端口中与微控制器相关的有5个:din和dout用于异步串行通信,din的数据方向为微控制器到无线芯片,dout则相反;cs选择芯片频段,cs=0时为433.92 mhz,cs=1时为434.33 mhz,在本模块中将该引脚引出,以方便用户的控制,当一个频段无法工作时,可以设置为另一个工作频段,提高了系统的抗干扰能力;pwr_up用于芯片节电控制,pwr_up=0时为掉电(节电模式),pwr_up=1时为上电(工作模式),在该模块中同样将其引出,当不需要无线发射和接收时,用户可将芯片设置为节电模式以降低系统功耗;txen选择芯片处于发射或接收状态,txen=0时为接收状态,txen=1时为发送状态。

  pcb板布局和电源去耦设计对于rf射频电路获得较好的性能是必要的,电路板采用1.6 mm厚fr4板材的两层pcb,底层铺铜面,并在元件层空白区铺铜;多打通孔连接上下层,铜面与地线相连,天线下底层不铺铜,vss直接与铜层连接,并保证关键元件有充分的接地。所有开关数字信号和控制信号都不能经过pll环路滤波器元件和vco电感附近。直流供电在离vdd脚尽可能近的地方用高性能的电容去耦,去耦使用1个小电容(0.01μf)和1个大电容(2.2μf)并联,并避免较长的电源走线。

2 硬件设计及软件实现

2.1 微控制器与nrf401接口设计

  微控制器at89s51与蓝牙芯片nrf401的接口电路如图2所示。nrf401芯片只需10个左右的元件即实现了数据收发功能,应用极其方便。其txen端为数据收发选择端,当设定为发送模块时,将其置为高电平;同时,din引脚与微控制器的txd端相连,微控制器的rxd端作为预留接口与外部主控单片机的txd相连。若设计为接收模块,则将txen端置为低电平;同时,dout引脚与微控制器的rxd端相连,微控制器的rxd引脚与外部主控单片机的txd引脚相连。模块与外部单片机的通信波特率为自动检测方式,受nrf401芯片通信速率的限制,可以工作在1 200~19 200 bps。模块上预留icsp接口,可在系统编程,方便程序的升级;同时具有良好的防窃密功能,不易破解。

2.2 串口模拟及波特率自适应的实现

  模块上的微控制器at89s51既要控制nrf401芯片实现与外界的数据交换功能,又必须受控于模块外部的主控单片机,因此at89s51必须能同时与nrf401芯片和片外主控单片机通信;但at89s51只有一个uart,无法满足要求。为解决这一予盾,通常的做法是扩展一片8251或8250通用同步/异步接收发送芯片(usart),但会额外占用单片机i/o资源,增加系统的成本,同时也增大了pcb板的布局面积。在本系统中用单片机普通i/o口模拟串行口,利用该方法还可扩展多个外部串行端口,实现多机通信。

  要实现用普通的i/o口模拟串口,必须首先确定串行口的通信速率(即波特率)。本系统中,该模块设计成波特率为1 200~19 200 bps自适应式的通信模块,自身的波特率能随主控单元的变化而自动调整,使系统适应性更强,更智能化,因此,必须首先解决好波特率自动检测识别的问题。

2.2.1 波特率自动检测识别的实现

波特率自动检测识别的常用方法主要有两种。

(1) 标准波特率穷举法

  标准波特率穷举法要求主机侧的波特率必须在有限的几个固定数值之间变化,如300~9 600的标准值;同时从机侧的工作振荡频率已知且稳定。从机启动通信程序后,逐个尝试以不同的波特率接收主机发出的特定字符,直到能正确接收为止。因此,该方法的运用有一定的局限性。

(2) 码元宽度实时检测法

  码元宽度实时检测法是先通过单片机的定时器测量接收(rxd)引脚上输入数据的码元宽度,即机器周期的计数值,而后用软件计算出波特率发生寄存器的值。该方法由于适用范围广、操

1 模块总体硬件结构

  模块总体硬件结构主要由微控制器和蓝牙芯片及其相应的外围电路组成,能自动完成波特率识别,并进行数据的编码处理,给用户提供了一个透明的数据接口。微控制器选用atmel公司新推出的具有可在线编程(icsp)功能的单片机at89s51,便于以后软件的升级。根据发送数据是否需要曼彻斯特编码、所需外围元件的数量、功耗及发射功率等方面因素的综合比较,选用nrf401芯片作为无线数据传输芯片。

  nrf401是单片无线收发芯片,采用蓝牙核心技术设计,内部集成高频发射、高频接收、pll合成、fsk调制、fsk解调、多频道切换等诸多功能和外围部件协议。它是目前集成度最高的无线数据传输产品,也是目前唯一一个可以直接连接微控制器串口进行异步数据传输、无需进行曼彻斯特编码的无线收发芯片。nrf401发射功率最大为10 mw,工作电压为2.7~5 v,发射电流为8~30 ma,接收电流约为10 ma,待机电流为8 μa,灵敏度为-105dbm,20脚8 mm×7 mm的soic封装;所需外部元件很少,仅外接一个晶振和几个阻容、电感元件;基本无需凋试,传输速率最高为19.2 kbps,工作频段为433/434 mhz,有2个信道,调制方式fsk。

  nrf401端口中与微控制器相关的有5个:din和dout用于异步串行通信,din的数据方向为微控制器到无线芯片,dout则相反;cs选择芯片频段,cs=0时为433.92 mhz,cs=1时为434.33 mhz,在本模块中将该引脚引出,以方便用户的控制,当一个频段无法工作时,可以设置为另一个工作频段,提高了系统的抗干扰能力;pwr_up用于芯片节电控制,pwr_up=0时为掉电(节电模式),pwr_up=1时为上电(工作模式),在该模块中同样将其引出,当不需要无线发射和接收时,用户可将芯片设置为节电模式以降低系统功耗;txen选择芯片处于发射或接收状态,txen=0时为接收状态,txen=1时为发送状态。

  pcb板布局和电源去耦设计对于rf射频电路获得较好的性能是必要的,电路板采用1.6 mm厚fr4板材的两层pcb,底层铺铜面,并在元件层空白区铺铜;多打通孔连接上下层,铜面与地线相连,天线下底层不铺铜,vss直接与铜层连接,并保证关键元件有充分的接地。所有开关数字信号和控制信号都不能经过pll环路滤波器元件和vco电感附近。直流供电在离vdd脚尽可能近的地方用高性能的电容去耦,去耦使用1个小电容(0.01μf)和1个大电容(2.2μf)并联,并避免较长的电源走线。

2 硬件设计及软件实现

2.1 微控制器与nrf401接口设计

  微控制器at89s51与蓝牙芯片nrf401的接口电路如图2所示。nrf401芯片只需10个左右的元件即实现了数据收发功能,应用极其方便。其txen端为数据收发选择端,当设定为发送模块时,将其置为高电平;同时,din引脚与微控制器的txd端相连,微控制器的rxd端作为预留接口与外部主控单片机的txd相连。若设计为接收模块,则将txen端置为低电平;同时,dout引脚与微控制器的rxd端相连,微控制器的rxd引脚与外部主控单片机的txd引脚相连。模块与外部单片机的通信波特率为自动检测方式,受nrf401芯片通信速率的限制,可以工作在1 200~19 200 bps。模块上预留icsp接口,可在系统编程,方便程序的升级;同时具有良好的防窃密功能,不易破解。

2.2 串口模拟及波特率自适应的实现

  模块上的微控制器at89s51既要控制nrf401芯片实现与外界的数据交换功能,又必须受控于模块外部的主控单片机,因此at89s51必须能同时与nrf401芯片和片外主控单片机通信;但at89s51只有一个uart,无法满足要求。为解决这一予盾,通常的做法是扩展一片8251或8250通用同步/异步接收发送芯片(usart),但会额外占用单片机i/o资源,增加系统的成本,同时也增大了pcb板的布局面积。在本系统中用单片机普通i/o口模拟串行口,利用该方法还可扩展多个外部串行端口,实现多机通信。

  要实现用普通的i/o口模拟串口,必须首先确定串行口的通信速率(即波特率)。本系统中,该模块设计成波特率为1 200~19 200 bps自适应式的通信模块,自身的波特率能随主控单元的变化而自动调整,使系统适应性更强,更智能化,因此,必须首先解决好波特率自动检测识别的问题。

2.2.1 波特率自动检测识别的实现

波特率自动检测识别的常用方法主要有两种。

(1) 标准波特率穷举法

  标准波特率穷举法要求主机侧的波特率必须在有限的几个固定数值之间变化,如300~9 600的标准值;同时从机侧的工作振荡频率已知且稳定。从机启动通信程序后,逐个尝试以不同的波特率接收主机发出的特定字符,直到能正确接收为止。因此,该方法的运用有一定的局限性。

(2) 码元宽度实时检测法

  码元宽度实时检测法是先通过单片机的定时器测量接收(rxd)引脚上输入数据的码元宽度,即机器周期的计数值,而后用软件计算出波特率发生寄存器的值。该方法由于适用范围广、操

相关IC型号

热门点击

 

推荐技术资料

耳机的焊接
    整机电路简单,用洞洞板搭线比较方便。EM8621实际采... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!