完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
说明
前面章节已经配置好了MQTT服务器SSL单向认证. 这节测试一下Android程序以SSL单向认证方式连接MQTT服务器 提示:所谓SSL单向认证通信,就是在客户端连接上TCP服务器以后 TCP服务器向客户端发送服务器的证书文件数据,然后客户端可以解析证书文件 也可以不解析证书文件,然后二者通过TCP通信再商议好对称加密通信的秘钥 最后二者TCP通信全部使用对称加密把数据加密再进行传输. Android程序说明(不验证服务器证书) 默认提供的整体测试源码支持SSL(不验证服务器证书) 1.使用Android Studio打开整体运行测试里面的APP源码 注:需要把源码放到非中文目录才可以打开 2.只需要把端口号改为SSL的端口号,然后把useSSL设置为true即可 单片机程序说明(不验证服务器证书) 提示:详细请参考BC26资料里面的 1.打开这节的单片机程序 2.端口号改为了MQTT的SSL端口 3.提示 连接成功以后,如果要发数据,需要先通过串口发送 AT+QSSLSEND=1,5,数据长度rn 然后等待模组返回 > 最后通过串口发送数据 4.SSL连接MQTT服务器相关 打包MQTT连接协议数据并发送 AT+QSSLSEND=1,5,数据长度rn 返回 > 发送真实数据 5.正常发送数据先发送 AT+QSSLSEND=1,5,%drn 然后再发送数据 注:发送完 AT+QSSLSEND 设置了等待返回超时时间,目的是等待返回 > 在串口里面收到 > 会清零超时,就能立即发送数据 模块返回 > 清零超时. 注意:发送完真实数据以后没有清零发送超时变量,而是设置了延迟时间为100ms. 因为单片机把数据发送给模组以后模组大概需要60多ms才会真正的发出去. 如果不等待一会直接再给模组发送数据,模组会报错!最后导致掉线. 注:以上设置的时间不会对主循环造成影响,只是控制了从缓存里面提取数据的时间. 6.SSL指令,接收数据的指令有些不一样,修改了下. 7.测试 |
|
|
|
只有小组成员才能发言,加入小组>>
3274 浏览 9 评论
2950 浏览 16 评论
3453 浏览 1 评论
8980 浏览 16 评论
4042 浏览 18 评论
1092浏览 3评论
564浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
560浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2297浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1854浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-17 20:21 , Processed in 1.124107 second(s), Total 81, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号