0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在飞凌嵌入式T113-i开发板的Buildroot中移植MQTT协议?

飞凌嵌入式 2024-01-26 08:02 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

飞凌嵌入式OK113i-S开发板上市一段时间以来收获了很多关注,也成为了许多客户项目选型的优质之选。在实际的项目开发中,工程师朋友们可能会需要在文件系统中移植一些工具或协议,那么该如何进行移植操作呢?

我们可以通过添加package包配置的方式在OK113i-S开发板的Buildroot中移植新功能。本篇文章,小编就以在Buildroot移植MQTT协议为例为大家介绍。

wKgaomWzHVaAHKWdAAwCIfM679s540.png

Part 1:配置文件介绍

首先了解一下在Buildroot中移植功能时涉及到的配置文件。查看飞凌嵌入式OK113i-S开发板源码中已有的配置文件,可以看到在路径 buildroot/buildroot-201902/package/mosquitto 里边包括以下几个文件:

Config.in

mosquitto.mk

mosquitto.hash

mosquitto.service

S50mosquitto

① Config.in

Config.in文件通过 BR2_PACKAGE_** 作为开关来告知Buildroot需要哪个包参与编译,开关在 buildroot/buildroot-201902/configs/ 下面的 OK113I_linux_defconfig 配置文件中赋值,类似于内核中的Kconfig文件。

例如:

package/Config.in中写了调用关系

source "package/mosquitto/Config.in";

package/mosquitto/Config.in中写了

BR2_PACKAGE_MOSQUITTO信息。

wKgZomWzHVWAY1Y7AAEfv21DOpQ685.png

② demo.mk

这个文件中声明一些包的信息,比如:指定包的版本、包源码下载链接、存放路径、编译规则、工具链等。编译时会按照这个文件中的下载地址和版本下载源码包到指定路径并进行编译和文件拷贝,相当于Makefile文件。

例如:mosquitto.mk

文件开头先写了软件包版本和下载地址,我们在浏览器访问该地址可以找到对应版本的软件包。编译时,如果源码中没有该文件,就会自动下载。

mosguitto-1.5.8.tar.gz

mosguitto-1.5.8.tar.gz.asc

除此之外文件中还定义了其他的编译规则,包括文件拷贝路径等内容。

③ demo.hash

这个文件会记录下载的源码包的hash校验码,防止下载的源码包出错。

④ demo.service

此文件是为systemd服务 ,systemd开机后会依据此文件启动demo服务,在demo.mk中会指定此文件的源路径已经安装路径。目前OK113i-S开发板没有使用该服务,因此可以不用管它。

⑤ S50demo

此文件类是demo.service,是目前OK113i-S开发板在使用的开机服务类型。在以上5种文件中Config.indemo.mk是必须的,其他文件按需配置即可。具体配置内容可参考已有文件或根据实际情况进行书写。Mosquitto已经有写好的配置文件,可以直接用,一般配置文件由项目的维护者或开发者提供,如果自己移植的文件没有配置文件,可以参考已有配置文件写一个。

Part 2:执行

我们需要在buildroot/buildroot-201902中执行

make OK113I_linux_defconfig

然后执行make menuconfig ARCH=arm

在图形配置界面进行配置(如果执行报错,请先安装该指令:sudo apt-get update sudo apt-get install ncurses)。

进入图形配置界面后输入“/”搜索要配置的功能,如图搜索Mosquitto看到的信息,按提示选“1”可进入目标选项,按“空格”选择后保存并退出。

wKgZomWzHVaAJuxvAAGhW-6Rx9A308.png

配置完成后,在当前目录下执行 ./build.sh对文件系统进行编译,编译完成后可查看文件系统中是否已经有对应文件。(注:如果没有网络,则编译时不能自动下载源码包,需要到下载地址手动下载源码包并放到源码包存放路径中。)

Part 3:MQTT的测试验证

修改OK113i-S开发板的 /etc/mosquitto/mosquitto.conf 文件,在#user mosquitto后加一行user root,重启服务或者开发板。也可以杀掉进程并重新执行:

/usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf

然后进行测试——

订阅test主题:

mosquitto_sub -t test &

发布test主题:

mosquitto_pub -t test -m "hello world"

能看到返回的 hello world 字样,就说明移植成功了。

以上就是在飞凌嵌入式OK113i-S开发板的Buildroot中移植MQTT协议的方法,供屏幕前的工程师小伙伴参考。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5186

    文章

    20146

    浏览量

    328771
  • 开发板
    +关注

    关注

    25

    文章

    6122

    浏览量

    113283
  • MQTT协议
    +关注

    关注

    0

    文章

    103

    浏览量

    6424
  • 全志T113
    +关注

    关注

    0

    文章

    65

    浏览量

    847
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【作品合集】嵌入式OK527N-C开发板测评

    嵌入式OK527N-C开发板测评作品合集 产品介绍: OK527-C开发板采用核心+底板分
    发表于 09-22 15:54

    送啦!嵌入式联合NXP邀您参加OK-MX9596-C开发板试用活动

    送啦!嵌入式联合NXP邀您参加OK-MX9596-C开发板试用活动
    的头像 发表于 08-22 08:03 754次阅读
    送啦!<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>联合NXP邀您参加OK-MX9596-C<b class='flag-5'>开发板</b>试用活动

    国产!全志T113-i 双核Cortex-A7@1.2GHz 工业开发板—RISC-V案例开发手册(上)

    本文档主要介绍T113-i处理器的RISC-V案例开发,演示RISC-V核心RTOS案例的编译与加载方法。适用开发环境如下。
    的头像 发表于 08-13 11:34 3.9w次阅读
    国产!全志<b class='flag-5'>T113-i</b> 双核Cortex-A7@1.2GHz 工业<b class='flag-5'>开发板</b>—RISC-V案例<b class='flag-5'>开发</b>手册(上)

    国产!全志T113-i 双核Cortex-A7@1.2GHz 工业开发板MQTT通信协议案例

    、Linux-RT-5.4.61 本文主要介绍创龙科技TLT113-EVM评估基于MQTT通信协议开发案例,主要包括
    的头像 发表于 07-31 14:34 568次阅读
    国产!全志<b class='flag-5'>T113-i</b> 双核Cortex-A7@1.2GHz 工业<b class='flag-5'>开发板</b>—<b class='flag-5'>MQTT</b>通信<b class='flag-5'>协议</b>案例

    RK3568开发板暗藏32位兼容开关?嵌入式带你一键解锁!

    RK3568是一款64位处理器,嵌入式为其提供的交叉编译器也是64位的,然而部分用户可能需要在RK3568开发板上运行32位应用。本文将详细阐述如何使用32位交叉编译器,编译出32
    的头像 发表于 07-19 08:49 4180次阅读
    RK3568<b class='flag-5'>开发板</b>暗藏32位兼容开关?<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>带你一键解锁!

    嵌入式受邀亮相「2025龙芯产品发布暨用户大会」

    6月26日,2025龙芯产品发布暨用户大会在北京隆重举行,嵌入式作为龙芯重要的生态合作伙伴受邀亮相,并带来了基于龙芯2K0300-i处理器设计
    的头像 发表于 06-27 08:07 1149次阅读
    <b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>受邀亮相「2025龙芯产品发布暨用户大会」

    5分钟学会网络服务搭建!i.MX9352开发板 + Linux 6.1实战示例

    本文就将以嵌入式OK-MX9352-C开发板(搭载了在工业物联网领域广泛应用的NXP i.MX9352处理器)为平台,介绍如
    的头像 发表于 06-13 16:42 1078次阅读
    5分钟学会网络服务搭建!<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>i</b>.MX9352<b class='flag-5'>开发板</b> + Linux 6.1实战示例

    「2025恩智浦创新技术峰会」嵌入式亮相上海首站

    2025年5月14日,【2025年恩智浦创新技术峰会】首站登陆上海,嵌入式作为恩智浦(NXP)金牌合作伙伴受邀参会,聚焦“工业与物联网”领域,携多款边缘侧AI核心
    的头像 发表于 05-15 13:38 1059次阅读
    「2025恩智浦创新技术峰会」<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>亮相上海首站

    从DeepSeek到Qwen,AI大模型的移植与交互实战指南-嵌入式

    在不久前发布的《技术实战|OK3588-C开发板上部署DeepSeek-R1大模型的完整指南》一文,小编为大家介绍了DeepSeek-R1在
    的头像 发表于 03-28 08:06 2525次阅读
    从DeepSeek到Qwen,AI大模型的<b class='flag-5'>移植</b>与交互实战指南-<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>

    新操作系统适配,嵌入式T527核心打造高效开发新体验

    嵌入式为基于全志T536处理器开发设计的FET527N-C核心适配了全新升级的Forlin
    的头像 发表于 03-20 14:33 1134次阅读
    新操作系统适配,<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b><b class='flag-5'>T</b>527核心<b class='flag-5'>板</b>打造高效<b class='flag-5'>开发</b>新体验

    一篇文章玩转T113的ARM+RSIC V+DSP三核异构!

    (基于全志T113-i)来应对这一市场需求。米尔基于全志T113-i核心开发板part01T113-i芯片及OpenAMP简介
    的头像 发表于 03-20 08:04 2165次阅读
    一篇文章玩转<b class='flag-5'>T113</b>的ARM+RSIC V+DSP三核异构!

    【正点原子】全志T113-i开发板资料震撼来袭!异核开发、工控设计方案!

    【正点原子】全志T113-i开发板震撼来袭!异核开发、工控设计方案!ATK-DLT113IS开发板是正点原子基于全志
    发表于 03-13 15:37

    实用调试技能:全志T113-i 音视频测试

    前言:音视频功能是现代嵌入式系统的核心应用之一,尤其在全志T113-i开发板,其丰富的音视频接口为
    的头像 发表于 03-06 08:31 2249次阅读
    实用调试技能:全志<b class='flag-5'>T113-i</b> 音视频测试

    3.1s启动!嵌入式i.MX93开发板部署LVGL,打造更高效的GUI

    近期,嵌入式为基于NXP i.MX93系列处理器打造的OK-MX9352-C开发板成功移植
    的头像 发表于 01-16 11:52 1059次阅读
    3.1s启动!<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b><b class='flag-5'>i</b>.MX93<b class='flag-5'>开发板</b>部署LVGL,打造更高效的GUI

    2秒启动!嵌入式RK3506开发板LVGL显示方案,让界面炫起来

    近期,嵌入式为OK3506J-S开发板移植了最新9.2版本的LVGL,支持多种屏幕构件以及鼠标、键盘、触摸等多种输入方式, 能够带来更加
    的头像 发表于 01-10 10:52 1642次阅读
    2秒启动!<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>RK3506<b class='flag-5'>开发板</b>LVGL显示方案,让界面炫起来