概述
本期我们选择的是另一个paho mqtt。本期选择这一个的原因是:移植简单,且比较成熟,有长期维护,有很多物联网产品中就是使用的paho mqtt库
要移植的是这两个文件夹下的源文件和头文件
client-c里面需要移植的源文件是这几个
我们移植的是kernel freertos,不是tcp freertos,所以圈红的内容在我们使用的freertos中是没有的,需要删掉替换
read和write则是根据我们对网络设备的封装中也有read和write,进行对应修改即可
连接/断开连接/初始化这些也不必多数了~,然后是关于paho mqtt里面的mqtt相关的结构对象的认识
这是历程里面对于客户端对象的使用,如果我们的设备客户端需要发布遗嘱topic和遗嘱消息这些的话
就要把这里改成我们自己需求的客户端数据
我们在让客户端连接服务器的时候,需要设置retain、keepalive、will topic、will message这些
在Paho mqtt里面就是设置这个结构体对象中的成员,来设置connect packet的参数的
客户端和服务器建立连接使用的api
其实对于这些API的使用,参考例程很快就能看明白,有个比较重要的地方是,我们订阅了主题后,必须要轮询调用一个API去查询是否有接收到订阅的消息
那个timeout_ms就是间隔这么长时间去查询下是否收到了网络数据
我们将接收到的订阅消息放在了消息处理回调函数中进行数据处理
例程是将topic和payload打印出来,我们后续就是判断ropic是否是我们订阅的控制led的topic,然后再判断payload是要led on还是led off,之后去点灯或者灭灯,视频最后我们用开发板连接了阿里云物联网平台上的设备,简单的体验了下
最后
以上就是缥缈野狼为你收集整理的FreeRTOS上移植MQTT的全部内容,希望文章能够帮你解决FreeRTOS上移植MQTT所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复