Standard SDK: [RTL8195AM] 透传 - 使用 Ameba 当作 Wi-Fi 透传
准备
此教学中使用到的工具及程式码:Ameba 透传
透传即是透明传输,即传送网络无论传输业务如何,只负责将需要传送的业务传送到目的节点,同时保证传输的质量即可,而不对传输的业务进行处理。 使用Ameba实现AT透传,大致可分为两步实现:建立连接,发送/接收数据。- Ameba UART 透传 主MCU通过UART连接Ameba,使用AT 指令让Ameba连接到服务器,完成数据的上传和接受服务器推送数据。 教程中,选用PC作为通过串口工具模拟主MCU UART发送数据。
- 开发板/模块开机测试
(注:这里的开发板/模块并不针对某一款开发板或模块,方法对所有Ameba开发板或模块有效)
通过Ameba LOG UART测试Ameba是否正常开机。
Ameba有一组LOG UART用于接收用户输入和系统信息输出,其引脚为GPIOB_0(LOG_UART_OUT)、GPIOB_1(LOG_UART_IN).
- Ameba 开发板 如果使用开发板(一般开发板会配置USB转串口芯片,连接micro USB到LOG UART),使用一根micro USB 线连接开发板到PC。 开发板一般使用micro USB供电,具体情况,依据开发板说明。否则需要在VCC引脚供电,Ameba使用3.3V供电。
- Ameba Wi-Fi 模块
如果使用模块(一般只会引出Ameba的PIN),这时候需要用杜邦线连接PC串口TX和RX分别到模块的GPIOB_1和GPIOB_0. 并且在VCC引脚供电,Ameba使用3.3V供电。
Ameba LOG UART默认配置为:波特率38400,数据位8,校验None,停止位1,无流控。
在PC上使用串口调试助手(推荐使用SecureCRT)打开对应串口,默认设置如下:
连接串口之后,输入“help”,串口打印信息如下,如未打印如下信息: 1. 检查供电是否正常 2. 请检查串口是否连接正常(TX,RX是否反接) 3. 出现乱码,检查串口设置是否正确
- 升级AT固件
1. 使用image tool下载完整固件(RTL871xAF_AT_v2.2.1.bin)到开发板
2. 使用OTA升级到最新AT固件v2.2.x.(RTL871xAF_AT_v2.2.1_OTA.bin)
检查开发板AT指令版本,在串口中输入“AT”,如果响应unknown command ‘AT’,那么对应AT版本为V1,否则为V2.
- AT V1升级 1. 连接Ameba到AP, 并确保PC和Ameba处在同一个网络下 假设AP: SSID=test, PASSWORD=12345678 连接到AP方法如下: ATW0=test ATW1=12345678 ATWC 2. 在PC 端进入OTA 升级服务器的目录DownloadServer(../SDK/ tools/DownloadServer),根据readme.txt修改并运行:start.bat(如果出现权限问题,点击右键使用管理员权限运行) 3. 在串口中端输入升级命令,等待升级完成,系统会重启 ATWO=192.168.0.1,8080(ex: PC 端的地址为:192.168.0.1,端口为8080)
- AT V2升级 1. 设置Ameba为STA模式,连接Ameba到AP, 并确保PC和Ameba处在同一个网络下。 假设AP: SSID=test, PASSWORD=12345678 连接到AP方法如下: ATPW=1 ATPN=test,12345678 2. 在PC 端进入OTA 升级服务器的目录DownloadServer(../SDK/ tools/DownloadServer),根据readme.txt修改并运行:start.bat(如果出现权限问题,点击右键使用管理员权限运行) 3. 在串口中端输入升级命令,等待升级完成,系统会重启 ATSO=192.168.0.1,8080(ex: PC 端的地址为:192.168.0.1,端口为8080)
- AT V2 UART连接
V2固件使用一组独立的AT UART(RX: GPIOA_0/TX: GPIOA_4)作AT command的输入和响应,使用杜邦线连接开发板与PC串口TX和RX分别到Ameba GPIOA_0和GPIOA_4。
测试固件升级成功,通过AT UART确认AT固件版本号为v2.2.x.
AT指令参照:AT command 说明
TCP/UDP服务器配置
本教程使用TCP/UDP测试工具sokit 1.3,建立TCP/UDP服务器,通过Ameba透传数据到服务器。
多链接指令传输
Ameba支持多路socket连接,Host MCU可以同时和多个服务器或者设备通信。为了区分多个socket链路,会在串口传输指令中附带socket的链路id。TCP指令传输
使用sokit建立TCP服务器,端口号设定为5000。 1. 使用”ATPW”设置Ameba为STA,执行”ATPN”让Ameba连接到一个没有加密的AP(SSID:iot_tplink)







UDP指令传输
使用sokit建立UDP服务器,端口号设定为5000。 1. 使用”ATPW”设置Ameba为STA,执行”ATPN”让Ameba连接到一个没有加密的AP(SSID:iot_tplink)







单链接纯数据透传(TT模式)
在纯数据透传模式下,串口输入不需要带任何协议或指令,仅支持单一连接,TCP和UDP类似,所有串口输入将会被发送到目标地址。 Ameba在接收字符后,如果在20ms内没接收到新的字符,将触发一次发送。TCP纯数据透传
使用sokit建立TCP服务器,端口号设定为5000。 1. 使用”ATPW”设置Ameba为STA,执行”ATPN”让Ameba连接到一个没有加密的AP(SSID:iot_tplink)






UDP纯数据透传
方法与TCP透传类似,参考前一章节。Arduino + Ameba UDP 指令传输实例
使用Arduino UNO配置Ameba实现UDP透传,硬件连接如下:



Copyrights ©瑞晟微电子(苏州)有限公司 2021. All rights reserved. 使用条款