项目简介
本项目是基于C++语言和mbed OS的设备通信与管理系统示例,展示了将设备注册到mbed Device Connector,实现设备资源读写与注销操作的方法。支持多种网络连接方式,能记录设备按钮点击次数、控制设备LED闪烁模式,还可处理蜂窝网络接口、GPS数据以及移动设备管理相关功能。
项目的主要特性和功能
- 多网络连接支持:支持WiFi、以太网、6LoWPAN ND或Thread连接,适应不同网络环境。
- 设备注册与管理:可将设备注册到mbed Device Connector,提供资源读写权限并能注销设备。
- 数据记录与控制:记录设备按钮点击次数并发送到mbed Device Connector,可通过该平台控制设备LED闪烁模式。
- 蜂窝网络与GPS功能:通过CellInterface类处理蜂窝网络连接与通信,提供GPS数据解析和通信功能,支持NMEA和UBX协议及串行和I2C通信方式。
- 移动设备管理:通过MDMParser类处理与u - blox模块相关的AT命令,涵盖设备初始化、网络注册、IP连接、HTTP通信、短信处理、文件操作等。
- 资源注册与远程控制:利用CoAP协议注册和管理设备资源,实现设备状态监控和远程控制。
安装使用步骤
硬件准备
- 准备FRDM - K64F开发板,使用其他mbed OS支持的开发板需少量配置修改。
- 准备1 - 2根micro - USB电缆。
- 若使用6LoWPAN ND和Thread连接,需准备mbed 6LoWPAN网关路由器和mbed 6LoWPAN屏蔽(AT86RF212B/AT86RF233)。
- 准备以太网电缆并确保有互联网连接。
- 若使用WiFi连接,需准备ESP8266WiFi模块、更新的Espressif Firmware、K64F Grove Shield v2。
软件准备
- 注册ARM mbed账户。
- 安装串口监视器。
代码配置
- 配置应用程序:
- 选择连接类型:在
mbed_app.json
中设置网络接口类型。 - 设置客户端凭证:在mbed Device Connector获取设备安全凭证,替换
security.h
中的内容。 - 修改6LoWPAN ND和Thread设置:添加RF驱动,启用IPV6功能,配置网关和频道设置等。
- 修改以太网设置:确保以太网电缆连接和网络正常。
- 修改WiFi设置:设置
mbed_app.json
中的网络接口为WiFi,并提供WiFi的SSID和密码。 - 设置IP地址(可选):若网络无DHCP,需手动分配静态IP地址。
- 更改套接字类型(可选):在
simpleclient.h
中修改SOCKET_MODE
。
- 选择连接类型:在
代码编译与烧录
- 打开命令行工具,进入项目目录。
- 使用
mbed update
命令更新mbed - os源。 - 配置好客户端应用程序后,使用
mbed compile -m K64F -t GCC_ARM -c -j0
命令编译应用程序,生成的二进制文件位于项目的.build
目录下。 - 根据所选连接方式进行硬件连接:若使用以太网,将以太网电缆插入开发板;若使用6LoWPAN ND或Thread,先连接并开启网关。
- 将micro - USB电缆插入开发板的OpenSDA端口,开发板会显示为大容量存储设备。
- 将二进制文件
.build/K64F/GCC_ARM/mbed - os - example - client.bin
拖到开发板进行烧录。
测试与验证
- 开发板烧录完成后,按下RESET按钮运行程序。
- 使用串口监视器(波特率115200)监控应用程序的调试信息,验证设备是否成功连接到mbed Device Connector。
- 按下开发板的
SW2
按钮,观察串口输出的点击次数变化。 - 在mbed Device Connector上验证设备是否成功注册,并测试资源读取和控制功能。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】