凤凰湟盘网免费收录优秀网站,为了共同发展免费收录需做上本站友情链接,风暴分类目录网的编辑 人员才会审核收录,不做链接提交一律不审核,为了避免浪费时间:收录必看!!!
  • 收录网站:0
  • 快审网站:0
  • 待审网站:9
  • 文章:10364
当前位置:主页 > 网站目录 > 阿里云国际账号注册,阿里云国际站

阿里云国际账号注册,阿里云国际站

更新时间:2023-09-04 15:36:16 人气指数:
网站标签:

阿里云国际站经销商,主营阿里云,腾讯云,华为云,亚马逊aws,谷歌云gcp,微软云az,免费开户,代充值优惠大,联系客服飞机@jkkddd

Paho-MQTT C(嵌入式版)接入示例

本文介绍如何使用Paho提供的嵌入式C语言MQTT开源工程,将设备接入阿里云物联网平台,并进行消息收发。
使用前必读
本文操作步骤以普通用户权限为例。如果您在操作过程中涉及到管理员权限才能执行的操作,可尝试使用sudo命令执行。
前提条件
已在物联网平台控制台,对应实例下,创建产品和设备,并获取MQTT接入域名和设备证书信息(ProductKey、DeviceName和DeviceSecret)。具体操作,请参见:
查看实例终端节点。
创建产品。
创建设备。
准备开发环境
本示例使用Ubuntu 16.04-LTS作为开发环境。执行以下命令构建开发环境。
下载C语言Paho MQTT库
执行以下命令,克隆C语言版本的Paho MQTT库。
Paho嵌入式C工程提供了以下三个子项目:
MQTTPacket:提供MQTT数据包的序列化与反序列化,以及部分辅助函数。
MQTTClient:封装MQTTPacket生成的高级别C++客户端程序。
MQTTClient-C:封装MQTTPacket生成的高级别C客户端程序。
samples目录提供FreeRTOS和Linux两个例程,分别支持FreeRTOS和Linux系统。
src目录提供MQTTClient的代码实现能力,以及用于移植到FreeRTOS、cc3200和Linux的网络驱动。
了解Paho MQTT的更多API细节,可以查看MQTTClient.h。
接入物联网平台
单击打开aiot_mqtt_sign.c,复制阿里云提供的计算MQTT连接参数所需的源码,然后粘贴保存为本地的aiot_mqtt_sign.c文件。
aiot_mqtt_sign.c文件定义了函数aiotMqttSign(),函数说明如下:
原型:
int aiotMqttSign(const char *productKey, const char *deviceName, const char *deviceSecret,
char clientId[150], char username[65], char password[65]);功能:
用于计算设备接入物联网平台的MQTT连接参数username、password和clientid。
添加实现设备接入物联网平台的程序文件。
您需编写程序调用aiot_mqtt_sign.c中的aiotMqttSign()函数计算MQTT连接参数,实现接入物联网平台和通信。
开发说明和示例代码如下:
调用aiotMqttSign()接口,生成连接MQTT服务端的三个建连参数clientId、username和password。
接入物联网平台。
需配置以下内容:
调用NetworkInit和NetworkConnect建立TCP连接。
调用MQTTClientInit初始化MQTT客户端。
配置MQTT建连参数结构体MQTTPacket_connectData。
发布消息。
调用MQTTPublish()接口,向指定的自定义Topic发布自定义格式消息。
通信Topic介绍,请参见什么是Topic。
示例代码
使用Demo代码程序接入物联网平台。
下载Demo包,并解压缩。
在aiot_c_demo.c中,将设备信息修改为您的设备信息。
替换以下代码中EXAMPLE_PRODUCT_KEY、EXAMPLE_DEVICE_NAME和EXAMPLE_DEVICE_SECRET后的值为您的设备证书信息。
修改代码char *host = EXAMPLE_PRODUCT_KEY".iot-as-mqtt.cn-shanghai.aliyuncs.com"中的值为对应接入域名。
公共实例和企业版实例接入域名的格式说明,请参见查看实例终端信息。
将aiot_mqtt_sign.c和已修改的aiot_c_demo.c文件放到Paho工程的目录../paho.mqtt.embedded-c/MQTTClient-C/samples/linux中。
编译工程,并运行程序。
有两种方法可以编译出可执行的程序:
使用CMake。
在/paho.mqtt.embedded-c/MQTTClient-C/samples/linux目录下的CMakeLists.txt文件中,增加aiot_c_demo.c和aiot_mqtt_sign.c。
修改后的CMakeLists.txt文件内容如下。
使用build.sh。
打开/paho.mqtt.embedded-c/MQTTClient-C/samples/linux目录下的build.sh文件。
将build.sh中的stdoutsub.c替换为aiot_mqtt_sign.c aiot_c_demo.c,-o stdoutsub替换为-o aiot_c_demo,然后保存build.sh。
修改完成后,在/paho.mqtt.embedded-c/MQTTClient-C/samples/linux目录下,执行命令./build.sh,完成编译。
完成编译后,生成aiot_c_demo可执行文件。
执行命令./aiot_c_demo,运行程序。

温馨提示:尊敬的[]站点管理员,将本页链接加入您的网站友情链接,下次可以快速来到这里更新您的站点信息哦!每天更新您的[阿里云国际账号注册,阿里云国际站]站点信息,可以排到首页最前端的位置,让更多人看到您站点的信息哦。

将以下代码插入您网页中,让网友帮您更新网站每日SEO综合情况

  • 静安免联考申请条件 -

    TA2钛管 静安免联考申请条件为具有自身本科毕业能力,高考成绩60%,但没有语言能力、工作业绩突出、参与过省一级、高职院校毕业生换言之有:工程硕士专业在国内能否获得更大的竟争和

  • 长宁免联考报名 -

    数字示波器 长宁免联考报名时一般是采取网上报名和现场确认相结合的方式。 考试期间所有要求考生初试达到复试分数线的考生,单科成绩不低于95分或单科成绩不低于低于95分,有时不

  • 金山国际免联考mba -

    HKBN家宽 金山国际免联考mba,参加10月份联考的考生可以选择后入手考,11月份报考,采取入校学习方式,修满学分,给予结业证书;在学员自入学之日起三年内通过1月份MBA联考,完成全部MBA培养

  • widely是什么意思_wisely是什么意思 -

    迅闪加速器 什么是widely? Widely是一个英文单词,它有着广泛的意思。它常用来形容一件事物在范围或程度上的广泛分布或普及。例如,我们经常听到widely used(广泛使用)这个短语,这

  • 关键事项:永州车间防静电工作桌定制需注意_佰斯特POUSTO -

    在永州,定制 防静电工作桌 是一项至关重要的任务,它直接影响到车间设备的安全运行和产品质量,为了确保定制能够满足我们的实际需求,以下是需要牢记的几个关键事项。 需求和

  • 选择宝山区专业防静电货架厂家时,这些要素不可忽视!_佰斯特POUSTO -

    防静电货架 是一种专门设计用于防止静电生成和累积的存储设备,其主要材料包括不锈钢网和镀锡管材,这些材料具有良好的导电性和防静电特性,在选择宝山区专业防静电货架厂家时