




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 ALIENTEK STM32开发板AN1412AAN1412A ATK-RM04 WIFI 模块使用说明 本应用文档(AN1412A)将教大家如何在 ALIENTEK 探索者 STM32F407 开发板上使用 ATK-RM04 WIFI 模块。 本文档分为如下几部分: 1, ATK-RM04 WIFI 模块简介 2, 硬件连接 3, 软件实现 4, 验证 1、ATK-RM04 WIFI 模块简介 ATK-RM04 是ALIENTEK 推出的一款高性能UART-ETH-WIFI(串口-以太网-无线网)模块。ATK- RM04 模块板载Hi-Link 公司的 HL
2、K-RM04 模块,该模块通过 FCC,CE 认证,可直接用于产品销往欧美地区。 ATK-RM04 模块采用串口(RS232/LVTTL)与 MCU(或其他串口设备)通信,内置 TCP/IP 协议栈,能够实现用户串口、以太网、无线网(WIFI)3 个接口之间的转换。 通过 ATK-RM04 模块,传统的串口设备在不需要更改任何配置的情况下,即可通过网络 (有线/WIFI)传输自己的数据,为用户的串口设备通过网络传输数据提供完整快速的解决方案,如图 1.1 所示: 串口 ATK-RM04WIFI(STA/AP)以太网 图 1.1 ATK-RM04 功能结构 ATK-RM04 模块支持 RS232
3、 串口和 LVTTL 串口,支持 DC6V16V 宽电压工作范围,支持串口转以太网、串口转 WIFI STA、串口转 WIFI AP 等连接形式,从而快速构建串口-网络数据传输方案,方便你的设备使用互联网传输数据。同时,ATK-RM04 还带有路由器功能,完全可以当成一个路由器使用(相当于:1 个 WAN 口,1 个 LAN 口的 WIFI 无线路由器)。 1.1 模块资源简介 ATK-RM04 模块是ALIENTEK 推出的一款高性能 UART-ETH-WIFI(串口-以太网-无线网)模块,能为单片机网络(以太网/WIFI)数据传输提供简单快速的解决方案,另外,该模块也可以当作无线路由器使用
4、。模块资源图如图 1.1.1 所示: ww 开源电子网2014-10-28RS232RS232 与 TTLWIFI IPX5V 电源HLK-RM04WPS/ES 按键和LAN 口 串口串口选择天线接口接口WIFI 模块GPIO 引出接口(网口 2)电源电源 输入接口指示灯电源 开关 RM04TVS 保护USBWPS/RST 和 工作指示灯 (在底板上)接口ES/RST 按键 WLAN 口 (网口 1)图 1.1.1 ATK-RM04 模块资源图 从图 1.1.1 可以看出,ATK-RM04 模块外观漂亮,结构紧凑,而且功能齐全、接口丰富, 模块尺寸(不算天线部分)为
5、76mm*56mm,并带有安装孔位,非常小巧,并且利于安装, 可方便应用于各种产品设计。 ALIENTEK ATK-RM04 模块板载资源如下: 1 个RS232 串口(母头) 1 个RS232 与TTL 串口选择端口 1 个 WIFI IPX 天线接口 1 个 5V 电源接口 1 个HLK-RM04 WIFI 模块 1 个 WPS/ES 按键和GPIO 引出接口 1 个 LAN 口(网口 2) 1 个 WLAN 口(网口 1) 1 个 WPS/RST 按键和ES/RST 按键 1 个 USB 接口 3 个RM04 工作指示灯 1 个电源开关 1 个电源指示灯(蓝色) 1 个电源输入接口 AT
6、K-RM04 模块采用高标准设计,特点包括: 板载 RS232 串口和 TTL 串口接口,方便与 PC/工控机/单片机等设备连接; 板载 2 个网络接口(LAN 和 WLAN),使用方便; 引出所有RM04 模块的 IO 口,并对 ES/WPS 两个控制信号做了兼容性设计,方便连接 3.3V/5V 单片机系统; 板载高效 DCDC 降压电路,转换效率高达 90%,支持宽电压工作范围(616V)。 板载电源防反接保护和 TVS 电源保护,保护功能完善; 板载 IPX 天线接口,方便选择不同天线,满足不同场合需求; 采用国际A 级 PCB 料,沉金工艺加工,稳定可靠; 采用全新元器件加工,纯铜镀金
7、排针,坚固耐用; 人性化设计,各个接口都有丝印标注,使用起来一目了然;接口位置设计安排合理, 方便顺手。 PCB 尺寸为 76mm*56mm,并带有安装孔位,小巧精致; ATK-RM04 模块的背面如图 1.1.2 所示: 图 1.1.2 ATK-RM04 模块背面图 从图 1.1.2 可以看出,ATK-RM04 模块的背面非常整洁,没有一个元器件,方便在设备上安装。 ATK-RM04 模块的资源介绍,我们就介绍到这里,详细的介绍,请看ATK-RM04 WIFI模块用户手册相关章节。 1.2 模块使用 本文档,我们将介绍大家如何通过 ALIENTEK 探索者STM32F4 开发板连接ATK-R
8、M04 WIFI模块,实现:串口以太网(ETH-COM)、串口无线网卡(COM-WIFI STA)和串口无线接入点 (COM-WIFI AP)等 3 个模式的测试,每个模式又包含:TCP 服务器、TCP 客户端、UDP 服务器、UDP 客户端等 4 个子模式,本节我们将详细介绍这些模式的使用。 模块的配置可以通过串口或者网页配置,这里因为是与开发板串口通信,所以我们通过串口配置。模块串口工作有两种模式:1,AT 指令模式;2,透传模式。 AT 指令模式,用于对模块进行配置。透传模式,用与数据传输。 这两种模式,可以相互转换,如图 1.2.1 所示: 是配置正常?否1.ES/RST 引脚AT 指
9、令模式 透传模式 上电 2.特定的串口数据 1.at+out_trans=图 1.2.1 串口工作状态转换图 在配置正常的条件下,模块默认是进入透传模式的,所以如果我们要对模块进行配置, 就必须先让模块进入到 AT 指令模式。退出透传模式有两种办法: 1、ES/RST 引脚。 在任意状态下,保持 ES/RST 脚(KEY1 按键)低电平的时间大于 Tes 且小于 Trst1,将立即进入 AT 指令模式,如图 1.2.2 所示: TestTpt400ms600msTptRXAT COMMAND MODE图 1.2.3 串口退出透传模式 其中: Tpt:串口组帧时间,默认为 10ms。 间隔时间大
10、于组帧时间连续发送 3 个“+”,然后等待约 500ms(400ms600ms),间隔时间大于组帧时间连续发送 3 个 0x1B。模块即可退出透传模式。 从 AT 指令模式进入透传模式则非常简单,只需要发送:at+out_trans=0,这条 AT 指令, 即可进入透传模式。进入透传模式以后,我们就可以通过串口 AT 指令,来对模块进行各种配置了。 1.2.1 AT 指令简介 在 AT 模式下,可以通过串口的 AT 指令对系统参数做配置。指令格式如下: at+command=valuer 特别提醒,ATK-RM04 模块对 AT 指令的大小写敏感,at 都是小写的! 根据不同命令,模块将返回不
11、同的返回值。其中r 为换行符,用十六进制表示,就是0X0D。 例如:at+remoteip=02r,设置远端 ip 地址为 02。例如:at+remoteip=?r ,查询远端 ip 地址。 ATK-RM04 模块支持的指令列表如表 所示: netmode 网络模式 wifi_conf WiFi 配置 Channel WiFi channel dhcpc DHCP 客户端配置 net_ip 网络 IP 地址 net_dns 网络 DNS 地址 dhcpd DHCP 服务器配置 dhcpd_ip DHCP 服务器 IP 地址 dhcpd
12、_dns DHCP 服务器 DNS 地址 dhcpd_time DHCP 服务器分配时间 net_commit 提交网络配置 out_trans 退出透传 remoteip 远端服务器域名或者 IP 地址 remoteport 本地或远端端 remotepro 网络协议类型 timeout 网络超时时间 mode 串口网络模式 uart 串口配置 uartpacklen 串口组帧长度 uartpacktimeout 串口组帧时间 escap 串口退出透传 tcp_auto TCP 自动重连 save 提交串口转换配置并重启服务 reconn 重启串口服务 default 恢复出厂设置 rebo
13、ot 重启模块 ver 模块版本 CLport TCP/UDP CLIENT 本地端口 RTS 串口输出指示(485) XON_XOFF XON/XOFF 流控使能 net_wanip wan ip 地址 tcp_client_check TCP CLIENT 远端状态侦测 S2N_Stat 串口功能状态 Get_MAC 获取 MAC 地址 wifi_ConState WiFi STA 连接状态 wifi_Scan WiFi 扫描 suspend 系统挂起 default 恢复出厂设置 reboot 重启模块 表 ATK-RM04 模块 AT 指令表 关于这些指令的详细使用,请
14、看:ATK-RM04 用户手册 2.3.4 节,这里我们就不再详细阐述了。 通过模块的 RS232 端口,和电脑的串口连接在一起,我们便可以通过串口调试助手测试这些指令,打开串口助手(SSCOM3.3),选择连接模块的串口(注意别选错串口了!,我电脑连接模块的是 COM2,所以选择 COM2,大家得根据自己的实际情况设置),设置波特率为 115200,勾选发送新行,如图 所示: 图 串口 AT 指令测试 从图 可以看出,前面我们特意发送几个非法和错误的指令格式,可见,对于非法的指令(AT 大写了),模块直接返回 ERROR,对于错误的指令格式,模
15、块直接不响应,对于正确的指令格式,才会执行响应,返回正确的数据。 1.2.2 串口以太网(ETH-COM) 串口以太网(ETH-COM)模式,模块的 WIFI 和LAN 口将关闭,仅开启WLAN 口,用于连接以太网(Ethernet),实现串口以太网之间的数据转换互传。 该模式下,根据应用场景的不同,又可以设置 4 个子模式:TCP 服务器、TCP 客户端、 UDP 服务器、UDP 客户端。 接下来看看如何通过 AT 指令配置模块,达到我们所要的功能,这里仅列出必要配置, 配置准备:1,模块处于默认设置(即出厂设置);2,模块 WLAN 通过网线连接路由器的LAN口,且路由器开启DHCP 服务
16、。 串口以太网模式,TCP 服务器配置,如表 所示: 发送指令 作用 at+netmode=1配置模块为串口以太网模式 at+dhcpd=0关闭 DHCP 服务器(仅 WIFI AP/路由器模式需要开启)at+dhcpc=1 使能 DHCP 客户端,允许模块自动获取 IP 地址 at+remotepro=tcp TCP 协议 at+mode=server 服务器(IP 为模块从路由器自动获取到的 IP) at+remoteport=8086 服务器端 (用于对外连接的端 ) at+net_commit=1 提交网络参数,该指令执行可能需要 30s 左右 at+reconn=1
17、重启串口服务,收到该指令,模块将进入透传模式 表 串口以太网 TCP 服务器配置 以上配置,模块将工作在串口以太网模式,子模式为:TCP 服务器。模块 IP 地址将从路由器自动获取,通过:at+net_wanip=? 指令,可以获取模块从路由器得到的 IP 地址,该 IP 地址就是模块作为TCP 服务器的 IP 地址。服务器端 为:8086。 串口以太网模式,TCP 客户端配置,如表 所示: 发送指令 作用 at+netmode=1配置模块为串口以太网模式 at+dhcpd=0关闭 DHCP 服务器(仅 WIFI AP/路由器模式需要开启)at+dhcpc=1
18、使能 DHCP 客户端,允许模块自动获取 IP 地址 at+remotepro=tcp TCP 协议 at+mode=client 客户端 at+remoteip=08 服务器 IP 地址(要连接的目的 IP 地址) at+remoteport=8086 服务器端 (要连接的端口) at+net_commit=1 提交网络参数,该指令执行可能需要 30s 左右 at+reconn=1 重启串口服务,收到该指令,模块将进入透传模式 表 串口以太网 TCP 客户端配置 以上配置,模块将工作在串口以太网模式,子模式为:TCP 客户端。连接服务器 IP 为: 19
19、08,连接服务器端 为:8086。 串口以太网模式,UDP 服务器配置,如表 所示: 发送指令 作用 at+netmode=1配置模块为串口以太网模式 at+dhcpd=0关闭 DHCP 服务器(仅 WIFI AP/路由器模式需要开启)at+dhcpc=1 使能 DHCP 客户端,允许模块自动获取 IP 地址 at+remotepro=udp UDP 协议 at+mode=server 服务器(IP 为模块从路由器自动获取到的 IP) at+remoteport=8086 服务器端 (用于对外连接的端 ) at+net_commit=1 提交网络参数,该指令执
20、行可能需要 30s 左右 at+reconn=1 重启串口服务,收到该指令,模块将进入透传模式 表 串口以太网 UDP 服务器配置 以上配置,模块将工作在串口以太网模式,子模式为:UDP 服务器。模块 IP 地址将从路由器自动获取,通过:at+net_wanip=? 指令,可以获取模块从路由器得到的 IP 地址,该IP 地址就是模块作为UDP 服务器的 IP 地址。服务器端 为:8086。 串口以太网模式,UDP 客户端配置,如表 所示: 发送指令 作用 at+netmode=1配置模块为串口以太网模式 at+dhcpd=0关闭 DHCP 服务器(仅 WIFI
21、AP/路由器模式需要开启)at+dhcpc=1 使能 DHCP 客户端,允许模块自动获取 IP 地址 at+remotepro=udp UDP 协议 at+mode=client 客户端 at+remoteip=08 服务器 IP 地址(要连接的目的 IP 地址) at+remoteport=8086 服务器端 (要连接的端口) at+net_commit=1 提交网络参数,该指令执行可能需要 30s 左右 at+reconn=1 重启串口服务,收到该指令,模块将进入透传模式 表 串口以太网 TCP 客户端配置 以上配置,模块将工作在串口以太网模式,子模式
22、为:UDP 客户端。连接服务器 IP 为: 08,连接服务器端 为:8086。 以上 4 个表格,就是串口以太网,4 个子模式的配置,基本大同小异(表格中加粗部分存在差异),配置比较简单。 1.2.3 串口无线网卡(COM-WIFI STA) 串口无线网卡(COM-WIFI STA)模式,模块的 WLAN 和 LAN 口将关闭,仅开启 WIFI, 用于连接无线网络(WIFI STA),实现串口与无线网络之间的数据转换互传。 该模式下,根据应用场景的不同,同样可以设置 4 个子模式:TCP 服务器、TCP 客户端、 UDP 服务器、UDP 客户端。 接下来看看如何通过 AT
23、 指令配置模块,达到我们所要的功能,这里仅列出必要配置, 配置准备:1,模块处于默认设置(即出厂设置);2,准备一个无线路由器,且路由器开启 DHCP 服务。 串口无线网卡模式,TCP 服务器配置,如表 所示: 发送指令 作用 at+netmode=2配置模块为串口无线网卡(WIFI STA)模式 at+dhcpd=0关闭 DHCP 服务器(仅 WIFI AP/路由器模式需要开启)at+wifi_conf=ALIENTEK,wpawp a2_aes配置模块的无线参数,即模块要连接到的路由器的无线参数。SSID: ALIENTEK;加密方式:WPA/WP
24、A2_AES; at+dhcpc=1 使能 DHCP 客户端,允许模块自动获取 IP 地址 at+remotepro=tcp TCP 协议 at+mode=server 服务器(IP 为模块从路由器自动获取到的 IP) at+remoteport=8086 服务器端 (用于对外连接的端 ) at+net_commit=1 提交网络参数,该指令执行可能需要 30s 左右 at+reconn=1 重启串口服务,收到该指令,模块将进入透传模式 表 串口无线网卡 TCP 服务器配置 以上配置,模块将工作在串口无线网卡模式,子模式为:TCP 服务器。模块将通过
25、WIFI 连接到无线路由器,at+wifi_conf ,用于设置模块将要连接到的无线路由器的相关参数, 这里必须正确设置,否则可能无法连接到无线路由器(下同)。模块的 IP 地址将从无线路由器自动获取,通过:at+net_wanip=? 指令,可以获取模块从无线路由器得到的 IP 地址,该IP 地址就是模块作为TCP 服务器的 IP 地址。服务器端 为:8086。 串口无线网卡模式,TCP 客户端配置,如表 所示: 发送指令 作用 at+netmode=2配置模块为串口无线网卡(WIFI STA)模式 at+dhcpd=0关闭 DHCP 服务器(仅 WIFI AP/路由器模式需
26、要开启)at+wifi_conf=ALIENTEK,wpawp a2_aes配置模块的无线参数,即模块要连接到的路由器的无 线参数。SSID: ALIENTEK;加密方式:WPA/WPA2_AES; at+dhcpc=1 使能 DHCP 客户端,允许模块自动获取 IP 地址 at+remotepro=tcp TCP 协议 at+mode=client 客户端 at+remoteip=08 服务器 IP 地址(要连接的目的 IP 地址) at+remoteport=8086 服务器端 (要连接的端口) at+net_co
27、mmit=1 提交网络参数,该指令执行可能需要 30s 左右 at+reconn=1 重启串口服务,收到该指令,模块将进入透传模式 表 串口无线网卡 TCP 客户端配置 以上配置,模块将工作在串口无线网卡模式,子模式为:TCP 客户端。连接服务器 IP 为:08,连接服务器端 为:8086。 串口无线网卡模式,UDP 服务器配置,如表 所示: 发送指令 作用 at+netmode=2配置模块为串口无线网卡(WIFI STA)模式 at+dhcpd=0关闭 DHCP 服务器(仅 WIFI AP/路由器模式需要开启)at+wifi_conf=A
28、LIENTEK,wpawp a2_aes配置模块的无线参数,即模块要连接到的路由器的无线参数。SSID: ALIENTEK;加密方式:WPA/WPA2_AES; at+dhcpc=1 使能 DHCP 客户端,允许模块自动获取 IP 地址 at+remotepro=udp UDP 协议 at+mode=server 服务器(IP 为模块从路由器自动获取到的 IP) at+remoteport=8086 服务器端 (用于对外连接的端 ) at+net_commit=1 提交网络参数,该指令执行可能需要 30s 左右 at+reconn=1 重启串
29、口服务,收到该指令,模块将进入透传模式 表 串口无线网卡 UDP 服务器配置 以上配置,模块将工作在串口无线网卡模式,子模式为:UDP 服务器。模块 IP 地址将从无线路由器自动获取,通过:at+net_wanip=? 指令,可以获取模块从无线路由器得到的IP 地址,该 IP 地址就是模块作为 UDP 服务器的 IP 地址。服务器端 为:8086。 串口无线网卡模式,UDP 客户端配置,如表 所示: 发送指令 作用 at+netmode=2配置模块为串口无线网卡(WIFI STA)模式 at+dhcpd=0关闭 DHCP 服务器(仅 WIFI AP/路由器模式需
30、要开启)at+wifi_conf=ALIENTEK,wpawp a2_aes配置模块的无线参数,即模块要连接到的路由器的无 线参数。SSID: ALIENTEK;加密方式:WPA/WPA2_AES; at+dhcpc=1 使能 DHCP 客户端,允许模块自动获取 IP 地址 at+remotepro=udp UDP 协议 at+mode=client 客户端 at+remoteip=08 服务器 IP 地址(要连接的目的 IP 地址) at+remoteport=8086 服务器端 (要连接的端口) at+net_com
31、mit=1 提交网络参数,该指令执行可能需要 30s 左右 at+reconn=1 重启串口服务,收到该指令,模块将进入透传模式 表 串口无线网卡 TCP 客户端配置 以上配置,模块将工作在串口无线网卡模式,子模式为:UDP 客户端。连接服务器 IP 为:08,连接服务器端 为:8086。 以上 4 个表格,就是串口无线网卡,4 个子模式的配置,基本大同小异(表格中加粗部分存在差异),配置比较简单。 1.2.4 串口无线接入点(COM-WIFI AP) 串口无线接入点(COM-WIFI AP)模式,模块的 WLAN 和 LAN 口将关闭,仅开启 WIFI,
32、 作为无线接入点(WIFI AP),允许其他 WIFI 设备连接到本模块,实现串口与其他设备之间的无线(WIFI)数据转换互传。该模式下,根据应用场景的不同,同样可以设置 4 个子模式: TCP 服务器、TCP 客户端、UDP 服务器、UDP 客户端。 接下来看看如何通过 AT 指令配置模块,达到我们所要的功能,这里仅列出必要配置, 配置准备:1,模块处于默认设置(即出厂设置);2,准备一个带 WIFI 功能的设备,如智能手机、PAD、笔记本电脑等。 串口无线接入点模式,TCP 服务器配置,如表 所示: 发送指令 作用 at+netmode=3配置模块为串口无线接入点(WIFI
33、 AP)模式 at+dhcpd=1开启 DHCP 服务器,自动分配 IP 给其他 WIFI 设备 at+dhcpd_ip=00, 00,255.255.255. 0, 设置模块自动分配 IP 的地址范围:00 00;子网掩码:;网关: ; at+dhcpd_dns=,0 .0.0.0 设置主要 DNS、次要 DNS at+wifi_conf=ATK-RM04,wpawp a2_aes,12345678
34、配置模块的无线参数,即模块对外的无线参数。SSID:ATK-RM04;加密方式:WPA/WPA2_AES; :12345678; at+dhcpc=0 关闭 DHCP 客户端,使用net_ip 设置模块 IP 地址 at+net_ip=54,25 , 设置模块的 IP 地址、子网掩码、网关等。这里设置 IP 为:54,即本模块的对外 IP 地址。at+net_dns=,0.0 .0.0 设置网络主要 DNS、次要 DNS at+remotepro=tcp TCP 协议 at+m
35、ode=server 服务器(IP 通过 at+net_ip 设置) at+remoteport=8086 服务器端 (用于对外连接的端 ) at+net_commit=1 提交网络参数,该指令执行可能需要 30s 左右 at+reconn=1 重启串口服务,收到该指令,模块将进入透传模式 表 串口无线接入点 TCP 服务器配置 以上配置,模块将工作在串口无线接入点模式,子模式为:TCP 服务器。模块作为无线接入点(WIFI AP),允许外部 WIFI 设备连接到本模块。模块作为外部 WIFI 设备的 WIFI 接入点,其无线参数如下(下同): SSID:ATK-RM04加密方
36、式:WPA/WPA2_AES :12345678DHCP IP 地址分配范围:00 00子网掩码: DNS:外部设备开启 WIFI 即可搜索到模块的 SSID(ATK-RM04),输入(12345678)即可实现与模块的WIFI 连接,对于开启 DHCPC 功能的设备,则可以自动从模块获取 IP 地址,如果禁止 DHCPC,那么就需要你手动输入 IP 地址了。 模块对外的 IP 地址通过 at+net_ip 这个指令,设置为:54,该 IP 地址就是模块作为TCP 服务器的
37、 IP 地址。服务器端 为:8086。 串口无线接入点模式,TCP 客户端配置,如表 所示: 发送指令 作用 at+netmode=3配置模块为串口无线接入点(WIFI AP)模式 at+dhcpd=1开启 DHCP 服务器,自动分配 IP 给其他 WIFI 设备 at+dhcpd_ip=00, 00,255.255.255. 0, 设置模块自动分配 IP 的地址范围:00 00;子网掩码:;网关: ; at+
38、dhcpd_dns=,0 .0.0.0 设置主要 DNS、次要 DNS at+wifi_conf=ATK-RM04,wpawp a2_aes,12345678 配置模块的无线参数,即模块对外的无线参数。SSID:ATK-RM04;加密方式:WPA/WPA2_AES; :12345678; at+dhcpc=0 关闭 DHCP 客户端,使用net_ip 设置模块 IP 地址 at+net_ip=54,25 , 设置模块的 IP 地址、子网掩码、网关等。这里设置 IP 为:54,即
39、本模块的对外 IP 地址。at+net_dns=,0.0 .0.0 设置网络主要 DNS、次要 DNS at+remotepro=tcp TCP 协议 at+mode=client 客户端 at+remoteip=08 服务器 IP 地址(要连接的目的 IP 地址) at+remoteport=8086 服务器端 (要连接的端口) at+net_commit=1 提交网络参数,该指令执行可能需要 30s 左右 at+reconn=1 重启串口服务,收到该指令,模块将进入透传模式 表 串口无线接入点 TCP 客户端配置 以上配置,模块
40、将工作在串口无线接入点模式,子模式为:TCP 客户端。连接服务器 IP 为:08,连接服务器端 为:8086。 串口无线接入点模式,UDP 服务器配置,如表 所示: 发送指令 作用 at+netmode=3配置模块为串口无线接入点(WIFI AP)模式 at+dhcpd=1开启 DHCP 服务器,自动分配 IP 给其他 WIFI 设备 at+dhcpd_ip=00, 设置模块自动分配 IP 的地址范围:00 00,255.255.255. 0, 192.168.
41、16.200;子网掩码:;网关:; at+dhcpd_dns=,0 .0.0.0 设置主要 DNS、次要 DNS at+wifi_conf=ATK-RM04,wpawp a2_aes,12345678 配置模块的无线参数,即模块对外的无线参数。SSID:ATK-RM04;加密方式:WPA/WPA2_AES; :12345678; at+dhcpc=0 关闭 DHCP 客户端,使用net_ip 设置模块 IP 地址 at+net_ip=54,25 , 设
42、置模块的 IP 地址、子网掩码、网关等。这里设置 IP 为:54,即本模块的对外 IP 地址。at+net_dns=,0.0 .0.0 设置网络主要 DNS、次要 DNS at+remotepro=udp UDP 协议 at+mode=server 服务器(IP 通过 at+net_ip 设置) at+remoteport=8086 服务器端 (用于对外连接的端 ) at+net_commit=1 提交网络参数,该指令执行可能需要 30s 左右 at+reconn=1 重启串口服务,收到该指令,模块将进入透传模式 表 串口无线接入
43、点 UDP 服务器配置 以上配置,模块将工作在串口无线接入点模式,子模式为:UDP 服务器。模块对外的 IP 地址通过 at+net_ip 这个指令,设置为:54,该 IP 地址就是模块作为 UDP 服务器的 IP 地址。服务器端 为:8086。 串口无线接入点模式,UDP 客户端配置,如表 所示: 发送指令 作用 at+netmode=3配置模块为串口无线接入点(WIFI AP)模式 at+dhcpd=1开启 DHCP 服务器,自动分配 IP 给其他 WIFI 设备 at+dhcpd_ip=00, 00,
44、255.255.255. 0, 设置模块自动分配 IP 的地址范围:00 00;子网掩码:;网关: ; at+dhcpd_dns=,0 .0.0.0 设置主要 DNS、次要 DNS at+wifi_conf=ATK-RM04,wpawp a2_aes,12345678 配置模块的无线参数,即模块对外的无线参数。SSID:ATK-RM04;加密方式:WPA/WPA2_AES; :12345678; at+dhcpc=0 关闭 DHCP 客户端,使用ne
45、t_ip 设置模块 IP 地址 at+net_ip=54,25 , 设置模块的 IP 地址、子网掩码、网关等。这里设置 IP 为:54,即本模块的对外 IP 地址。at+net_dns=,0.0 .0.0 设置网络主要 DNS、次要 DNS at+remotepro=udp UDP 协议 at+mode=client 客户端 at+remoteip=08 服务器 IP 地址(要连接的目的 IP 地址) at+remoteport=8086 服务器端 (要连
46、接的端口) at+net_commit=1 提交网络参数,该指令执行可能需要 30s 左右 at+reconn=1 重启串口服务,收到该指令,模块将进入透传模式 表 串口无线接入点 TCP 客户端配置 以上配置,模块将工作在串口无线接入点模式,子模式为:UDP 客户端。连接服务器 IP 为:08,连接服务器端 为:8086。 以上 4 个表格,就是串口无线接入点,4 个子模式的配置,基本大同小异(表格中加粗部分存在差异),配置比较简单。 2、硬件连接 2.1 功能简介 本实验功能简介:本实验用于测试ATK-RM04 模块,总共包括 3 大项测试,每大项又包
47、括 4 个子模式的测试,下面分别介绍。 2.1.1 串口以太网(ETH-COM)测试 该项测试网络连接方式:电脑1 路由器ATK-RM04 模块(WLAN 口) 注 1:-,表示通过网线连接。 ,表示通过无线连接(WIFI),下同。通过按 KEY0 键选择此模式,进入此模式后,首先会进入到 ETH-COM 工作模式选择界面, 总共有 4 种模式可供选择:TCP 服务器、TCP 客户端、UDP 服务器、UDP 客户端。通过 KEY0/KEY1选择模式,通过 KEY_UP 确定。点击确定后,服务器模式(TCP/UDP 服务器)不需要手动输入IP 地址,直接进入下一步,开始配置模块。但是对于客户端模
48、式(TCP/UDP 客户端),还会需 要手动输入远端 IP 地址,此时界面会提示:远端 IP 设置,通过屏幕显示的虚拟键盘, 输入远端 IP 地址,输入完后,可以点击虚拟键盘的“连接”按键,进入下一步,开始配置模块, 此时,开发板将对模块进行配置,配置成功后,进入数据收发测试。 进入测试后,开发板液晶会显示相关提示信息,方便大家测试,信息包括: IP 地址:如果是服务器模式,那么 IP 地址表示 ATK-RM04 模块的 IP 地址。如果是客户端模式,则表示模块将要连接到的目标 IP 地址。 端口:为方便测试,所有模式的端口都固定为 8086。 状态:表示连接状态,如果连接建立,则显示连接成功
49、,如果断开,则显示连接失败。模式:显示当前的工作模式(TCP 服务器、TCP 客户端、UDP 服务器、UDP 客户端)。发送数据:显示当需要发送的数据,每按一次 KEY0,发送一次数据,会在这个区域显 示发送的内容,当发送完以后,过一段时间,该区域自动清空。 接收数据:显示ATK-RM04 模块接收到的数据,对方发过来的数据,将显示在这里,每次收到新内容,会将旧内容清空,然后显示新内容,否则旧内容将一直显示。 按 KEY_UP,可以退出此项测试,回到主界面。 对于 4 种子模式:TCP 服务器、TCP 客户端、UDP 服务器、UDP 客户端,他们的数据收发测试界面几乎是一样的,测试方法也几乎一
50、模一样,大同小异,我们就不一一介绍了,在第 4 部分,我们会详细介绍测试步骤。 2.1.2 串口无线网卡(COM-WIFI STA)测试 该项测试网络连接方式:电脑无线路由器ATK-RM04 模块(WIFI STA) 通过按 KEY1 键选择此模式,进入此模式后,首先会进入到 WIFI-STA 工作模式选择界面, 剩下的操作,同 2.1.1 节一模一样。 2.1.3 串口无线接入点(COM-WIFI AP)测试 该项测试网络连接方式:智能手机(WIFI STA)ATK-RM04 模块(WIFI AP) 通过按 KEY_UP 键选择此模式,进入此模式后,首先会进入到 WIFI-AP 工作模式选择
51、界面,剩下的操作,同 2.1.1 节一模一样。 2.2 硬件资源准备 本实验所需的硬件资源如下: 1, ALIENTEK 探索者 STM32F407 开发板 1 个 2, ATK-RM04 WIFI 模块 1 个 3, 电脑一台 4, 无线路由器一个 5, 智能手机一台(亦可由其他带无线网卡的设备代替) 6, 直流稳压电源 1 个(616V 范围,推荐 12V 1A 电源,另外也可以用USB 供电) 7, 杜邦线 1 根 8, RS232 串口线一条 9, 普通网线 2 根 要完成本文档例程的所有功能测试,请大家务必准备好以上硬件,否则有些功能可能无法完成。 2.3 模块与开发板连接 ATK-
52、RM04 模块的指令与数据,都可以通过串口来传输,所以我们的探索者 STM32F4 开发板与模块连接,只需要连接串口即可(当然还需要共地),这里我们通过开发板的 RS232串口 3(COM3)来连接 ATK-RM04 WIFI 模块。另外为了方便模块退出透传模式,我们还将PF6 连接到了模块的 ES 引脚,ALIENTEK 探索者 STM32F4 开发板与 ATK-RM04 模块的连接方式,如图 2.3.1 所示: 图 2.3.1 探索者 STM32F4 开发板与 ATK-RM04 模块连接示意图 可以看到,连接非常简单,只需要通过开发板配套的RS232 串口线,将COM3 和ATK-RM04
53、 模块连接起来,然后用杜邦线连接开发板的 PF6 和模块的 ES 引脚,就可以了。 3、软件实现 本实验,在探索者 STM32F4 开发板的扩展实验 4(ATK-SIM900A GSM 模块测试实验) 基础上进行修改,删除原来的 SIM900A 文件夹,新建 ATK-RM04 文件夹,在里面新建: common.c、cometh.c、wifista.c、wifiap.c 和 common.h 等文件。 打开原工程,删除 SIM900A 分组,然后添加 ATK-RM04 分组,将 ATK-RM04 文件夹里面的 4 个.c 文件添加到 ATK-RM04 分组,并将 ATK-RM04 文件夹,加入到头文件包含路径里面。 最后掉原工程的一些未用到的.c 文件,最终的工程如图 3.1 所示: 图 3.1 ATK-RM04 模块测试实验工程截图 本例程由于代码量比较多,我们仅对 ATK-RM04 文件夹里面的部分代码(common.c、 cometh.c、wifista.c、wifiap.c 等),以及 main 函数进行讲解,其他的请大家参考源代码注释。首先,common.c 文件,该文件是驱动 ATK-RM04 模块,各种功能实现的公用.c 文件, 里面包含了负责与 ATK-RM04 模块通信的底层接口函数(AT 指令的发送与接收,模块状态检测等
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高岭土新材料生产项目招商引资报告(范文)
- 城区二次供水改造提升工程投资计划书(范文)
- 医院全面质量管理课件
- 脑病护理安全管理目标
- 大班健康教案《怎样保护大脑》
- 中班健康安全:保护眼睛
- 小学生口语英文课件
- 智能技术在医学教育的应用
- 幼儿园门口寒假安全教育
- 药物破损不良护理事件
- 儿童溺水护理常规
- 医疗美容销售培训
- 南通大学《高级英语Ⅲ》2023-2024学年第一学期期末试卷
- 小学数学-二年级升三年级暑假数学作业-口算竖式脱式应用题
- 学堂在线 毛泽东思想和中国特色社会主义理论体系概论 期末考试答案
- 浙教版(2024)七年级上册《第1章 有理数》单元测试卷-学生用卷
- 网络货运安全管理制度
- 2025至2030全球及中国溴化聚苯乙烯(BPS)行业发展趋势分析与未来投资战略咨询研究报告
- 文化认同机制构建-洞察及研究
- 校园外卖公司管理制度
- “三级”安全安全教育记录卡
评论
0/150
提交评论