产品详情
  • 产品名称:无线通讯模块

  • 产品型号:MCU_RFB_V1.2
  • 产品厂商:SUNMAN
  • 产品价格:0
  • 产品文档:
  • 我要买: 加入购物车
你添加了1件商品 查看购物车
简单介绍:
无线通讯模块:MCU_RF_V1.2 无线通讯模块=无线串口使用说明书:  250信道,250地址  不大于28dbm发射功率  半双工透明传输 无线应用 简单有效  无线爱好者得福音,提供全部技术支持  代替232、485等传统有线方案  彻底解决有线方案施工繁琐、设备后期维护成本高等难题  更大功率模块或其他要求请来电,我司可定制
详情介绍:

无线通讯模块MCU_RF_V1.2
无线通讯模块=无线串口使用说明书
 无线通讯模块主要技术参数:
Ø      250信道,250地址
Ø      不大于28dbm发射功率
Ø      半双工透明传输 无线应用 简单有效
Ø      无线爱好者得福音,提供全部技术支持
Ø      代替232、485等传统有线方案
Ø      彻底解决有线方案施工繁琐、设备后期维护成本高等难题
Ø      更大功率模块或其他要求请来电,我司可定制
 
长沙太阳人电子有限公司/长沙双能电子科技有限公司
电话:0731-83520730/83520732/85862870/84167806 / 84167808
传真:0731-84167807/85862870
地址:长沙桐梓坡西路229号麓谷国际工业园A1栋三楼
网址:http://www.sunman.cn/http://www.sunneng.com.cn/
 
Ø      MCU_RF_V1.2外形图
 
 
如模块外观因设计有所改变,请以实际产品为准。
 
 
 
 
 
 
 
 
 
 
Ø      尺寸
²       模块** 30*20*2
²       MCU_RFB_V1.2模块引脚完全兼容
 
Ø      模块介绍
1配置我司的简易天线,离地面高于1.2米的地方,工作频率433MHz,空中速率20Kbps,(VCC输入为7.5V),空旷地实测有效通信距离可达800m1200m仍有信号(如降低空中速率或更换高增益天线,有效通信距离还可增大)。
 
2基础载波频率为433MHz,可通过串口命令选择不同信道和地址,适合多节点的特殊场合。
 
3串行接口:TTL电平,8N1模式,默认波特率为9600bps
 
4信道:通过配置可提供250个信道,信道选择和地址选择配置相同的两个模块才能正常通讯。
 
5地址:通过配置可提供250个不同地址,信道选择和地址选择配置相同的两个模块才能正常通讯。
 
6透明数据传输:提供透明的数据接口,能够适应任何标准或非标准用户协议,自动过滤掉空中产生的噪声信号和假数据,即发及所收。
 
7智能数据控制:可无限制连续发送数据,即使空中为半数工数据传输,用户也无需多余的编程操作,只需从串口接收/发送即可,其余空中收/发、网络连接、数据应答、数据重发等,模块自动完成。
 
8、宽电压、低功耗:模块3.3V3.3V~8V双电源供电,接收电流小于20mA,发射电流请参照电流与VCC电压对照表。
 
9、高可靠性、体积小:嵌入式高速单片机和高性能射频芯片,外围电路少,可靠性高,故障率低,并有看门狗实时监控,即使射频芯片**扰(如雷击等)也可重新启动,改变目前无线通讯行业的致命问题,使该产品永不死机。
 
 
 
 
Ø      应用
²       工业遥控、遥测
²       自动化数据采集
²       无线数据传输
²       楼宇自动化、安防、机房设备监控、门禁系统
²       汽车检测设备
²       互动节目表决设备
²       政府路灯节能设备
²       工业控制、银行系统等
 
 
 
Ø      引脚说明
 
 
引脚
方向
说明
1GND
输入
电源地
2VCC33
输入
3.3V电源输入(3.3-3.6
3CD
输入
命令/数据输入选择,低电平为命令,高电平为数据
4NC
--
空,模块定制预留接口
5NC
--
空,模块定制预留接口
6NC
--
空,模块定制预留接口
7NC
--
空,模块定制预留接口
8NC
--
空,模块定制预留接口
9NC
--
空,模块定制预留接口
10NC
--
空,模块定制预留接口
11NC
--
空,模块定制预留接口
12NC
--
空,模块定制预留接口
13NC
--
空,模块定制预留接口
14NC
--
空,模块定制预留接口
15RXD
输入
串行数据输入
16TXD
输出
串行数据输出
17GND
输入
电源地
18VCC
输入
3V~8V电源输入
19RF
输入/输出
天线接口
 
 
 
Ø      电气特性
典型参数
数值
单位
工作电压VCC33
3.3-3.6
V
工作电压VCC
3-8
V
IO口操作电压
3.3-3.6
V
温度范围
-40-70
工作湿度
10-90
%
工作频率
433
MHz
发射功率
<=28
dbm
空中速率
20
Kbps
发射电流
90-250
mA
接收电流
20
mA
*高灵敏度
-110
dbm
串口速率
9600
bps
 
 
 
 
 
 
 
Ø      发射电流与VCC电压对照表
VCC(V)
Pout(dbm)
发射电流(mA)
3.0
21.50
90
3.6
22.98
111
4.5
24.61
132
5
25.34
142
6
26.52
161
7
27.33
176
7.5
28.11
185
8
28.51
204
 
Ø      使用说明
1、命令流程及命令列表
模块可以输入命令以读取或改变运行参数,输入命令流程如下:
1)、将C/D脚拉低,进入命令状态
2)、通过串口连续的发送命令数据包
3)、等待串口返回
4)、将C/D脚拉高,进入正常数据传输状态
 
一条完整的命令数据包包含8个字节:
字节
1
2
3
4
5
6
7
8
含义
包头
包头
命令字
数据
数据
数据
数据
和校验
包头:MCU向模块发送命令包时,固定为0x24,模块返回时固定为0x25
命令字:不同的命令有着不同的命令字,参照命令列表;
数据:要传送的命令数据或模块返回的命令数据,参照命令列表;
和校验:除和校验字节外所有字节累加和,取低8位。
 
注意:
       1)、模块以数据超时(每个连续的数据之间不超过30ms)方式判断数据包是否传送完毕,因此一次数据包的传送必须是连续不间断的,MCU也可以数据超时方式接收模块返回的数据包;
       2)、不同的命令执行时间不同,一次命令数据包发送完毕后,必须等待模块返回或等待命令执行超时才能启动下一次的命令传送,否则可能出现不可预料状况,所有命令执行等待时间小于100ms
       3)、在模块返回之前,CD脚不能拉高,否则可能出现不可预料状况;
       4)、如遇到不可解析的命令数据包或命令执行失败,模块将返回命令解析错误数据包;
       5)、模块出厂默认使用信道0、地址0,建议使用前先读取模块当前的信道值和地址值,根据命令不同,可以选择设置参数是否需要掉电保存;
       6)、模块在命令状态(即CD脚拉低),不会接收无线数据。
 
命令数据包列表:
含义
数据包格式
备注
设置信道和地址(参数掉电不保存)
MCU至模块
0x24 0x24 0x01 信道值地址值 0x00 0x00 和校验
信道值、地址值取值范围     
0x00~0xf9
模块返回
0x25 0x25 0x01 信道值地址值 0x00 0x00 和校验
读取信道和地址
MCU至模块
0x24 0x24 0x02 0x00 0x00 0x00 0x00 和校验
 
模块返回
0x25 0x25 0x02 信道值地址值 0x00 0x00 和校验
读取上次数据传输无线信号强度
MCU至模块
0x24 0x24 0x03 0x00 0x00 0x00 0x00 和校验
测试,信号强度根据LQI
RSSI计算
模块返回
0x25 0x25 0x03 LQI RSSI 0x00 0x00 和校验
设置信道和地址(参数掉电后保存)
MCU至模块
0x24 0x24 0x04 信道值地址值 0x00 0x00 和校验
信道值、地址值取值范围     
0x00~0xf9
模块返回
0x25 0x25 0x04 信道值地址值 0x00 0x00 和校验
复位模块
MCU至模块
0x24 0x24 0xfe 0x00 0x00 0x00 0x00 和校验
特殊情况下使用
模块返回
0x25 0x25 0xfe 0x00 0x00 0x00 0x00 和校验
命令解析错误返回
模块返回
0x25 0x25 0xff 0x00 0x00 0x00 0x00 和校验
 
 
举例:
如将信道和地址修改为0x180xF3,并且掉电后不保存,操作步骤如下:
       1)、将C/D脚拉低,进入命令状态
       2)、通过串口发送命令
              0x24 0x24 0x01 0x18 0xF3 0x00 0x00 0x54
       3)、等待串口返回
              0x25 0x25 0x01 0x18 0xF3 0x00 0x00 0x56
       4)、将C/D脚拉高,进入正常数据传输状态
 
 
 
 
 
 
 
2、上电
模块上电后需要等待不小于5ms才能操作。
 
 
3、典型连接示意图
如果需要控制模块加电和断电以降低功耗,只需控制VCC33的通断即可。
4、与电脑连接示意图
 
 
 
Ø      示例代码
/********************************************************************
;copyright    :SN.LTD
;filename     :main.c
;mcu         :STC12LE5204
;crystal       :12MHZ
;startdate     :2011.6.11
;enddate      :
;writeby      :liubo
;revision     :A
;describe     :模块通信测试
;notice       :
;complier     :Keil C
;********************************************************************
 
;                            --------------------------------
;                    GND |1 GND           RF 19 | 
;                  VCC33 |2 VCC33               | 
;                    P1.0 |3  CD                  | 
;                          |4                      | 
;                          |5                      | 
;                          |6                      | 
;                          |7                      | 
;                          |8                      | 
;                          |9                      | 
;                          |10                     | 
;                          |11                     |  
;                          |12                     |
;                          |13                     | 
;                          |14                     | 
;                   TXD |15 RXD                | 
;                    RXD |16 TXD                | 
;                    GND |17 GND                | 
;                    VCC |18 VCC                |
;                            --------------------------------
;                                  
;********************************************************************/
#include "STC.h"
#include <intrins.h>
sbit CD = P1^0;
 
unsigned char RX_Buf[64];
unsigned char RX_Count;
 
/*----------------------------------------------------
函数名: delay_5us     
返回值:
 : i,延时计数
 : 5us延时
----------------------------------------------------*/
void delay_5us(unsigned int i)
{
       unsigned int j;
       for(;i>0;i--)
       for(j=3;j>0;j--);
}
 
 
/*----------------------------------------------------
函数名: UartInit  
返回值:
 :
 : 初始化串口,192008N1
----------------------------------------------------*/
 
void UartInit(void)              //19200bps@12MHz
{
       PCON |= 0x80;          //使能波特率倍速位SMOD
       SCON = 0x50;           //8位数据,可变波特率
       AUXR |= 0x40;           //定时器1时钟为Fosc,1T
       AUXR &= 0xfe;          //串口1选择定时器1为波特率发生器
       TMOD &= 0x0f;         //**定时器1模式位
       TMOD |= 0x20;          //设定定时器18位自动重装方式
       TL1 = 0xD9;        //设定定时初值
       TH1 = 0xD9;              //设定定时器重装值
       ET1 = 0;              //禁止定时器1中断
       TR1 = 1;              //启动定时器1
}
 
/*----------------------------------------------------
函数名: com_interrupt      
返回值:
 :
 : 串口中断处理
----------------------------------------------------*/
void com_interrupt(void) interrupt 4
{
       if(_testbit_(RI))     //如果是串口接收引发的中断
       {
              RX_Buf[RX_Count] = SBUF;
              RX_Count++;
       }
       else
       {
       }
}
 
/*----------------------------------------------------
函数名: Send_Char
返回值:
 : unsigned char
 : 通过串口发送一字节数据
----------------------------------------------------*/
void Send_Char(unsigned char buffer)
{
       ES = 0;
       SBUF = buffer;
       while(!TI);     //等待发送完成
       TI = 0;
       ES = 1;
}
 
/*----------------------------------------------------
函数名: Send_buf
返回值: 通过串口发送的字节个数
 : buffer,要发送的数据缓冲,i,要发送的数据个数
 : 通过串口发送一字节数据
----------------------------------------------------*/
unsigned char Send_buf(unsigned char *buffer,unsigned short i)
{
       unsigned short j;
       if(i==0)
              return 0;
       for(j=0;j<i;j++)
       {
              Send_Char(*(buffer+j));
       }
       return j;
}
 
void get_and(unsigned char * buf,unsigned char count)
{
       unsigned char i,j;
       j = 0;
       for(i=0;i<count;i++)
       {
              j += buf[i];
       }
       buf[i] = j;
}
 
unsigned char check_and(unsigned char *buf,unsigned char count)
{
       unsigned char i,j;
       j = 0;
       for(i=0;i<count;i++)
       {
              j += buf[i];
       }
       if(j==buf[i])
       {
              return 1;
       }
       else
       {
              return 0;
       }
}
 
void main(void)
{
       unsigned char buf[8],i;
       for(i=0;i<64;i++)
       {
              RX_Buf[i] = 0;
       }
       RX_Count = 0;
       delay_5us(1000); //上电延时5ms
       UartInit();
       CD = 0; //命令输入状态
       buf[0] = 0x24;
       buf[1] = 0x24;
       buf[2] = 0x01;
       buf[3] = 0x01;
       buf[4] = 0x01;
       buf[5] = 0;
       buf[6] = 0;
       get_and(buf,7);
       Send_buf(buf,8); //发送命令,设置信道1,地址1
       RX_Count = 0;
       while(!(RX_Count==8));
       if(!check_and(buf,7))
       {
              //错误处理
       }
       if((RX_Buf[0]!=0x25||(RX_Buf[1]!=0x25))
       {
              //错误处理
       }
       if(RX_Buf[2]!=0x11)
       {
              //错误处理
       }
       if(RX_Buf[3]!=0x01)||(RX_Buf[4]!=0x01))
       {
              //错误处理
       }
       CD = 1;        //设置命令完成,数据输入状态
       Send_buf("this is test!",13); //发送数据
       while(1);
}
 
 
Ø      建议及注意事项
1、说明书描述的通信距离均为实测,无线通信距离受天线、遮挡物、数据速率等因素影响很大,如有特殊要求,请联系本司;
2、无线通信为半双工,不建议同时向成对模块发送数据,不建议连续对模块发送大量数据,建议每次发送数据不超过1024字节;
3、空中存在大量电磁杂波,虽然模块做了滤波处理,但不能保证将所有杂波滤掉,有可能在串口输出无用数据,建议按照一定格式编排数据;
4、成对模块使用*小间距建议不小于50cm,距离太近,容易造成信号阻塞;
5、应用程序和引脚与MCU_RFB_V1.2完全兼容。
姓名:
电话:
您的需求:
 

湘公网安备 43019002000596号