欢迎光临
我们一直在努力

2.4G无线模块 示例教程 适用于Arduino平台

1. 产品图片

2. 产品购买地址点我购买

3. 产品概述
串口无线模块,简单地说是可以通过串口来进行无线通信的模块,他一般是由无线收发芯片和一个带串口的单片机组成,用户只要了解串口通信,不要了解复杂的无线通讯知识,就能完成无线通信产品的开发。最普遍的应用是取代原来的有线的通信,采用串口无线模块,不需要施工,也不要布线,能大大节省材料和人工成本,安装十分方便,基本上是无缝连接,所以该模块应用十分地广泛。

2.4G无线传输技术,其频段处于2.405GHz—2.485GHz之间。所以简称为2.4G无线技术,这个频段里是国际规定的免费ISM频段,是不需要向国际相关组织缴纳任何费用的,这就为2.4G无线技术可发展性提供了必要的有利条件。

2.4G无线模块数据传输广泛地运用在车辆监控、遥控、遥测、小型无线网络、无线抄表、门禁系统、小区传呼、工业数据采集系统、无线标签、身份识别、非接触RF智能卡、小型无线数据终端、安全防火系统、无线遥控系统、生物信号采集、水文气象监控、机器人控制、无线232数据通信、无线485/422数据通信、数字音频、数字图像传输等领域中。

2.4G无线模块:仅支持两个模块之间的通信,单个模块无法使用。

芯片型号:UART芯片信号:STM8S003F3P6 无线收发芯片:XN297

4. 产品参数
工作频率:2.4G(2400MHz ~ 2485MHz)可通过AT指令调节
工作电压:3.3-5.5V
工作电流:透传约21mA,配置模式约5mA
发射功率:-30dBm到+13dBm(AT指令调节)
传输距离:空旷150米到200米
模块尺寸:32mmX12.7mmX2mm(长X宽X厚)

5. 引脚定义
VDD:电源正极,电压范围:3.3V~5V
GND:电源负极
TXD:串口发送脚,接设备或MCU的RXD
RXD:串口接收脚,接设备或MCU的TXD
CMD:命令控制脚。高:透传模式;低:设置模式(固定9600通讯)

6. 接线方式
2.4G无线模块———USB-TTL
VDD——————–3.3V
GND——————GND
TXD——————–RXD
RXD——————–TXD
CMD——————-VCC透传模式( GND设置模式)

7. 2.4G模块相互通信使用方法
1、准备两个2.4G无线模块,连接好电路,模块CMD端接GND(即模块进入设置模式),将USB_TTL端插在电脑上。打开电脑设备管理,会看到两个模块分别对应的端口号。

2、打开两个串口调试工具。分别设置好两个2.4G模块的端口号,将两个模块的波特率设置成9600(该模块只能在9600波特率下进入AT模式)后,点击打开串口按钮。

3、两个模块均发送AT+RESET指令。反馈为模块初始化。(具体参照技术手册)

4、模块1:发送AT+TID=1234567890指令,设置发送ID为1234567890,模块2:发送AT+RID=1234567890,设置接收ID为1234567890
(AT指令发送成功,反馈为Y,发送失败,反馈为N)

5、模块1:发送AT+RID=ABCDEF1234指令,设置发送ID为ABCDEF1234,模块2:发送AT+TID=ABCDEF1234,设置接收ID为ABCDEF1234。
(AT指令发送成功,反馈为Y,发送失败,反馈为N)
注意:第4步和第5步的模块1和模块2,设置的发送ID和接收ID必须是相互的,才能进行互通!

6、更改两个2.4G无线模块的接线,模块CMD端改接VCC(即模块进入透传模式),重新上电。打开串口调试工具,并点击”打开串口“按钮(参数不改变)。随后,在模块1的串口调试工具中的“字符串输入框”里写上你要发送的内容,点击“发送”按钮,模块2的串口调试工具中就会接收到你所发的信息。反之,一样。

8. Arduino+2.4G无线模块,软串口程序设置AT指令(本方法不推荐,推荐用刚才PL2303的方式去设置参数)
Arduino——–2.4G无线模块
5V—————–VDD
GND—————–GND
D11—————–RXD
D10—————–TXD
GND—————CMD

//中贝斯特UltiRobot2.4G模块软串口设置参数示例教程
//程序效果:上传程序后,打开串口监视器,反馈:Goodnight moon! 表示已成功进入AT模式,可以尝试发送AT指令,对模块进行设置。
//淘宝店地址:zhongbest.taobao.com
//专业Arduino资料网站:www.arduino365.com
#include <SoftwareSerial.h>

SoftwareSerial mySerial(10, 11); // RX, TX

void setup()
{
// Open serial communications and wait for port to open:
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
Serial.println("Goodnight moon!");

// set the data rate for the SoftwareSerial port
mySerial.begin(9600);
mySerial.println("Hello, world?");
}


void loop() // run over and over
{
if (mySerial.available())
Serial.write(mySerial.read());
if (Serial.available())
mySerial.write(Serial.read());
}

9. Arduino+2.4G无线透传模块之间的互相收发数据

Arduino———-2.4G无线模块
5V—————–VDD
GND————–GND
TXD—————RXD
RXD—————TXD
5V—————–CMD

使用两个2.4G无线模块实现Arduino板子的互相通信,首先按照上面的方法将模块设置好(模块出厂默认参数已经设好),随后将模块连接至Arduino(此时CMD需要接5V)。在不同的Arduino板子上上传控制程序,实现透传。

Arduino1例子程序

void setup()
{
  Serial.begin(9600);
}
void loop()
{
   Serial.write("A");

   delay(1000);
}

Arduino2例子程序

void setup()
{
  Serial.begin(9600);
}
void loop()
{
   while(Serial.available())
    {
      char c=Serial.read();
       if(c=='A')
         {
           Serial.println("Hello I am zhongBEST");
         }
    }
}

Arduino 1和Arduino 2上上传程序后,打开Arduino1的串口,自动写入数据”A”,随后打开Arduino2的串口,发现接收到Arduino1的数据,串口反馈了“HEllo, I am zhongBEST”,实现远程的数据收发和通信。

分别接到2台电脑上,实现数据传输。
注意:如果是UNO为发射端,MEGA为接收端,请先打开接收端的串口监视器,后再打开发送端的串口监视器。方可接收到信息。(UNO—-UNO不影响,UNO和MEGA之间是由于电路串口设计上的问题,您也可以尝试使用MEGA的其他Serial串口)

10. 注意事项
2.4G无线模块:仅支持两个模块之间的通信,单个模块无法使用。

1.本模块是串口数据透明传输模块,同一个模块即可以接收,又可以发送,串口接收完成数据后,模块将数据发送到目标模块,发送完成后,模块自动进入接收状态;

2.CMD脚功能,高电平或悬空透传,低电平配置;

3.上电模块LED闪烁一次,表示模块启动;

4.每接收一包数据,模块上的LED会闪烁一次;

5.每发送一包数据,若发送成功,模块上的LED会闪烁一次;

6.常规数据包长度可为1~32 任意长度,最小发送间隔时间在40ms;

7.一包数据长度极限长度是200,模块内部自动将其分成若干小包;

8.发送AT指令:发送成功,反馈为Y,发送失败,反馈为N。

9.AT指令设置,请参考技术手册,本文下方有下载

10.AT模式说明:
本模块使用的AT指令与市面上其他类似产品的AT指令不一样,这里的AT指令更加是一种简化版的格式,注意事项分以下几点:
10.1指令没有结束符,即指令只识别有效字段,多余的字符自动屏蔽。举例说明:设置模块的频率为2450MHz,即发送(AT+FREQ=32),那么即使发送(AT+FREQ=32ABCD)也是可以的,指令不像GPRS模块那样,需要在指令末尾加上换行符才能判断指令是否正确
10.2所有的指令除数字与符号外,仅识别大写字母。即指令中如果包含字母的话,只包含大字的字母,如AT+BAUD?、AT+FREQ=3E等
10.3设置参数的指令返回只有 ’Y’ 与 ’N’ 两种提示命令,这么设计也方便了用户在判断指令是否正确时,MCU编程更加简单,发送指令如果回复Y,说明指令发送正确,回复N即指令格式错误,仅需识别一个字节。
10.4所有指令在配置模式下进行,即将CMD脚拉低,9600bps波特率通信。

11. 相关下载
百度网盘:点我下载

厂家技术手册使用注意事项:
1、使用回传,需要将单个2.4G无线模块的发送ID和接收ID设置成一致,例:AT+TID=1234567890和AT+RID=1234567890,发送成功才会反馈S,发送失败才会反馈F。如果单个2.4G无线模块的发送ID和接收ID设置不一致,那么不论发送成功还是失败,回传反馈都是F。

2、重发次数:设置每帧数据重复发送次数,设置越高,则数据发送越可靠,但是数据的延迟也会更久,所以建议在当作遥控时,尽量设置较大的数值,以保证可靠性。

模块发送成功后,就不再重发,即使设置为10次,在传输过程中,也可能只传输3次就成功了。最大重发次数是发送失败后,重新发送的最大次数。

经测试,一般在通信范围内,极少出现发送失败。如果发送失败,直接重发就是了。不用太考虑重发次数。

未经允许不得转载:Arduino-Maker » 2.4G无线模块 示例教程 适用于Arduino平台

支付宝扫码打赏 微信打赏

原创文章,若帮到您,欢迎打赏

分享到:更多 ()

评论 抢沙发

评论前必须登录!

 

线上商城

中贝斯特创客空间蘑菇云创客教育