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

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

3天内不再提示

如何快速集成C/C++?合宙LuatOS NDK开发方案来了

合宙LuatOS 2022-04-26 10:20 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

对于商用的LuatOS系统,Lua虚拟机部分是闭源的,用户无法直接集成C/C++代码。怎么办?!针对上述问题,合宙全新推出LuatOS NDK开发解决方案,简单易上手,且无需过多关注本地化实现部分。

1

LuatOS NDK开发简介


LuatOS NDK(Native Development Kit)——是一种本地化接口(芯片硬件提供的原始接口)开发工具集,以下简称为NDK。

可以简单的理解为使用C/C++开发的接口,能够在Lua上直接调用。

29363166-c4b5-11ec-8521-dac502259ad0.gif

NDK应用场景


NDK主要针对LuatOS闭源版本(例如LuatOS-Air/LuatOS-HMI/LuatOS-iRTU等)的以下几种场景:

对运行效率要求比较高的场景,需要用C/C++语言来实现;

已有成熟的C/C++代码需要集成到LuatOS中;

向第三方提供闭源lib库。

当然开源版本的LuatOS理论上也可以使用,不过针对开源版本,更建议直接将库源码放到LuatOS源码中构建编译。

NDK原理简介


用户使用NDK将C代码编译成lib库后,和lua脚本文件一起打包下载到硬件中。

LuatOS系统将lib库动态加载到内存中运行,并将lib库中提供的API接口注册到系统中。这样lua脚本就可以通过dl模块进行加载,并使用这类接口。

29519fd2-c4b5-11ec-8521-dac502259ad0.png296480f2-c4b5-11ec-8521-dac502259ad0.png

2

开发工具及相关资料


合宙基于VSCode开发的LuatIDE为开发者提供强大的集成式开发环境,实用功能不仅可有效降低嵌入式开发难度,让工程师快速掌握LuatOS开发,更可帮助工程师及时发现技术问题,极大提高开发效率。

点击图片链接,查看最新功能介绍:

2977e6e2-c4b5-11ec-8521-dac502259ad0.gif

NDK开发功能作为LuatIDE的一个插件集成在LuatIDE的生态中,第一次运行需要下载NDK的编译环境。

LuatIDE全新推出的UI设计器让图形化开发更为简单,也进一步提升项目开发效率,助力产品快速量产,为客户抢占市场先机。

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

    关注

    0

    文章

    134

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    LuatOS AGPS 辅助定位开发实战教程

    为解决传统 GPS 定位慢、功耗高的痛点,AGPS 技术通过辅助数据注入提升效率。本教程以 LuatOS 开发环境为基础,循序渐进地讲解 AGPS 辅助定位的开发流程,包括 AGPS 服务器对接
    的头像 发表于 10-31 17:34 1003次阅读
    <b class='flag-5'>LuatOS</b> AGPS 辅助定位<b class='flag-5'>开发</b>实战教程

    嵌入式C/C++回归测试四大最佳实践(附自动化测试工具TESSY使用教程)

    嵌入式开发中,一次微小的代码改动都可能引发“蝴蝶效应”,如何守护系统的稳健?推荐专业的自动化测试工具#TESSY,源自戴姆勒-奔驰,是嵌入式C/C++单元/集成测试的标杆。
    的头像 发表于 10-31 14:21 184次阅读
    嵌入式<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>回归测试四大最佳实践(附自动化测试工具TESSY使用教程)

    快速掌握TCP/IP?LuatOS新手入门指南

    快速上手TCP/IP通信却不知从何开始?LuatOS开发者提供了简洁高效的开发路径。通过本指南的实操步骤,你将发现,实现网络连接其实比想象中更简单。 提到网络应用,就绕不开TCP/
    的头像 发表于 10-15 17:27 449次阅读
    <b class='flag-5'>快速</b>掌握TCP/IP?<b class='flag-5'>LuatOS</b>新手入门指南

    Perforce QAC产品简介:面向C/C++的静态代码分析工具(已通过SO 26262认证)

    Perforce QAC专为C/C++开发者打造,支持多种编码规范、功能安全标准(ISO 26262)等,广泛用于汽车、医疗、嵌入式开发领域,可帮助
    的头像 发表于 07-10 15:57 835次阅读
    Perforce QAC产品简介:面向<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>的静态代码分析工具(已通过SO 26262认证)

    零基础学习LuatOS编程:快速上手开发实战教程!

    无论你是刚接触物联网编程的新手,还是希望拓展技能的技术爱好者,本教程将为零基础的读者提供一条清晰的LuatOS学习路径。从安装开发工具到编写第一个程序,我们将通过实例讲解核心概念,助你快速实现从理论
    的头像 发表于 06-13 17:27 449次阅读
    零基础学习<b class='flag-5'>LuatOS</b>编程:<b class='flag-5'>快速</b>上手<b class='flag-5'>开发</b>实战教程!

    快速入门——LuatOS:sys库多任务管理实战攻略!

    在嵌入式开发中,多任务管理是提升系统效率的关键。本教程专为快速入门设计,聚焦LuatOS的sys库,通过实战案例带你快速掌握多任务创建、调度与同步技巧。无论你是零基础新手还是希望
    的头像 发表于 05-29 14:36 597次阅读
    <b class='flag-5'>快速</b>入门——<b class='flag-5'>LuatOS</b>:sys库多任务管理实战攻略!

    主流的 MCU 开发语言为什么是 C 而不是 C++

    在单片机的地界儿里,C语言稳坐中军帐,C++想分杯羹?难喽。咱电子工程师天天跟那针尖大的内存空间较劲,C++那些花里胡哨的玩意儿,在这儿真玩不转。先说内存这道坎儿。您当stm32f4的256kRAM
    的头像 发表于 05-21 10:33 778次阅读
    主流的 MCU <b class='flag-5'>开发</b>语言为什么是 <b class='flag-5'>C</b> 而不是 <b class='flag-5'>C++</b>?

    源代码加密、源代码防泄漏c/c++与git服务器开发环境

    源代码加密对于很多研发性单位来说是至关重要的,当然每家企业的业务需求不同所用的开发环境及开发语言也不尽相同,今天主要来讲一下c++及git开发环境的源代码防泄密保护
    的头像 发表于 02-12 15:26 874次阅读
    源代码加密、源代码防泄漏<b class='flag-5'>c</b>/<b class='flag-5'>c++</b>与git服务器<b class='flag-5'>开发</b>环境

    基于OpenHarmony标准系统的C++公共基础类库案例:ThreadPoll

    。每个线程每秒打印1段字符串,10秒后停止。2、基础知识C++公共基础类库为标准系统提供了一些常用的C++开发工具类,包括:文件、路径、字符串相关操作的能力增强接口
    的头像 发表于 02-10 18:09 599次阅读
    基于OpenHarmony标准系统的<b class='flag-5'>C++</b>公共基础类库案例:ThreadPoll

    从Delphi、C++ Builder和Lazarus连接到Oracle数据库

    从 Delphi、C++ Builder 和 Lazarus 连接到 Oracle 数据库 Oracle 数据访问组件 (ODAC) 是一个组件库,它为 32 位和 64 位平台提供从 Delphi
    的头像 发表于 01-15 10:01 1343次阅读

    Spire.XLS for C++组件说明

    开发人员可以快速地在 C++ 平台上完成对 Excel 的各种编程操作,如根据模板创建新的 Excel 文档,编辑现有 Excel 文档,以及对 Excel 文档进行转换。 Spire.XLS
    的头像 发表于 01-14 09:40 1297次阅读
    Spire.XLS for <b class='flag-5'>C++</b>组件说明

    EE-112:模拟C++中的类实现

    电子发烧友网站提供《EE-112:模拟C++中的类实现.pdf》资料免费下载
    发表于 01-03 15:15 0次下载
    EE-112:模拟<b class='flag-5'>C++</b>中的类实现

    AKI跨语言调用库神助攻C/C++代码迁移至HarmonyOS NEXT

    /C++代码快速迁移至HarmonyOS NEXT。凭借卓越的兼容性,AKI已成为厂商与开发者打造鸿蒙原生应用过程中广泛使用的跨语言调用解决方案。 AKI是一款专为鸿蒙原生
    发表于 01-02 17:08

    HighTec C/C++编译器套件全面支持芯来RISC-V IP

    德国萨尔布吕肯,2024年12月5日——世界领先的汽车C/C++编译器解决方案提供商HighTec EDV Systeme GmbH宣布全面支持芯来科技的RISC-V IP。HighTec编译器
    的头像 发表于 12-23 09:04 1999次阅读
    HighTec <b class='flag-5'>C</b>/<b class='flag-5'>C++</b>编译器套件全面支持芯来RISC-V IP

    HighTec C/C++编译器支持Andes晶心科技RISC-V IP

    汽车编译器解决方案领先供货商HighTec EDV-Systeme GmbH宣布其针对汽车市场的高度优化C/C++编译器支持Andes晶心科技的RISC-V IP。这项支持对汽车软件开发
    的头像 发表于 12-12 16:26 1560次阅读