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

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

3天内不再提示

【合宙Air105开发板试用体验】体验不一样的嵌入式脚本开发

开发板试用精选 来源:开发板试用 作者:电子发烧友论坛 2022-12-02 11:03 次阅读
本文来源电子发烧友社区,作者:辛一, 帖子地址:https://bbs.elecfans.com/jishu_2288937_1_1.html

首先赞一下合宙的LuatOS wiki,做的真的很详细:https://wiki.luatos.com/index.html。手上拿到的这款Air105核心板是基于Air105 MCU设计的一款开发板,开发板尺寸迷你,通过邮票孔设计引出Pin脚,很容易进行拓展连接。pYYBAGK0gHGAafftAAT0V6J1hJ8863.jpg
Air105 MCU是一款强大的MCU,内核采用Cortex M4F CPU,运算能力有一定的保证。同时配有640KB的大内存,以及4MB的Flash,可以让开发者不必纠结代码结构,大胆“放飞自我”。接口方面有基本的UART、SPI、IIC等串行接口,还带有USB和摄像头DCMI,可以说是应有尽有。另外ADCDACtimer等模块可以丰富MCU的应用场景,CRC和TRNG模块能够在信息安全中发挥作用。pYYBAGK0gMGAeNheAAC2fkEzK9U558.jpg
总体来看 Air105 MCU真是一块宝。虽然采用ARM的MCU,但是合宙帮我们开发者封装了一层脚本框架LuatOS,基于这个框架可以大大提高开发效率。既然是基于LuatOS,那么就不能使用Keil进行开发。合宙官方推荐的vscode+插件的形式,插件可以在vscode内搜索“LuatOS-SOC推荐拓展包”,有了这个插件可以完成一些LuatOS下代码自动补全的功能。poYBAGK0gQOAXH0SAACKjmCNEOk795.jpg
脚本的烧录是通过串口进行的,需要用到的工具是Luatools。Luatools是一个综合工具,可以完成串口打印debug,也可以完成固件更新,以及脚本上传。pYYBAGK0gR2APnt6AAHCUwfY0-U739.jpg
poYBAGK0gR6AC2_8AAFRBMdcUbY553.jpg
LuatOS的Wiki主页为我们提供不少库和外设的使用方式。其中sys和log基本上是必选的。sys负责嵌入式操作系统任务的创建和调度等任务,加入sys库LuatOS才能够正常运行。

  1. local sys = require "sys"
复制代码

而log库可以输出代码信息,方便调试。log可以分为debug、info、warn和error不同等级,可以根据需求屏蔽不同等级的输出,方便了程序调试。

  1. log.setLevel("WARN") -- warn以下等级的log不会输出print(log.getLevel())log.debug(PROJECT, "debug message")log.info(PROJECT, "info message")log.warn(PROJECT, "warn message")log.error(PROJECT, "error message")
复制代码

为了保证程序不会跑飞,还可以加入看门狗

  1. -- 添加硬狗防止程序卡死wdt.init(15000)-- 初始化watchdog设置为15ssys.timerLoopStart(wdt.feed, 10000)-- 10s喂一次狗
复制代码

通过上面三个库的使用,可以看到LuatOS很容易上手,大大提高了开发效率。

最后,利用温度传感器和PWM配合,完成了一个自适应的风扇调节系统。


  1. sys.taskInit(function()
  2. local raw = 0
  3. local mv= 0
  4. while 1 do
  5. adc.open(1)
  6. sys.wait(500)
  7. raw, mv = adc.read(1)
  8. log.debug("adc", "adc1", mv)
  9. if mv >= 1500 then
  10. pwm.open(5, 1000, 100)
  11. elseif mv >= 1000 then
  12. pwm.open(5, 1000, 80)
  13. elseif mv >= 800 then
  14. pwm.open(5, 1000, 60)
  15. elseif mv >= 500 then
  16. pwm.open(5, 1000, 30)
  17. elseif mv >= 100 then
  18. pwm.open(5, 1000, 20)
  19. else
  20. pwm.open(5, 1000, 0)
  21. end
  22. adc.close(1)
  23. sys.wait(500)
  24. end
  25. end)
复制代码

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

    关注

    0

    文章

    147

    浏览量

    1739
  • Air105
    +关注

    关注

    0

    文章

    48

    浏览量

    300
收藏 人收藏

    评论

    相关推荐

    干货分享:Air780E开发板如何使用?

    、概述 CORE-AIR780E 开发板通信推出的基于 Air780E 模组所
    的头像 发表于 10-25 17:46 303次阅读
    干货分享:<b class='flag-5'>Air</b>780E<b class='flag-5'>开发板</b>如何使用?

    如何使用Air780E开发板?看这篇就够了!

    、综述 CORE-AIR780E 开发板通信推出的基于 Air780E 模组所
    的头像 发表于 10-23 17:07 388次阅读
    如何使用<b class='flag-5'>Air</b>780E<b class='flag-5'>开发板</b>?看这篇就够了!

    Air780E开发板使用,文解密!

    、概述 CORE-AIR780E 开发板通信推出的基于 Air780E 模组所
    的头像 发表于 10-23 17:05 244次阅读
    <b class='flag-5'>Air</b>780E<b class='flag-5'>开发板</b>使用,<b class='flag-5'>一</b>文解密!

    RNDIS网卡应用看这篇!Air780EP低功耗4G模组AT开发示例

    ** ​ 1.1 硬件准备 EVB_Air780EP开发板套,包括天线、SIM卡; USB线 WIN10以上PC电脑 1.2 软件准
    的头像 发表于 09-30 06:59 556次阅读
    RNDIS网卡应用看这篇!<b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>Air</b>780EP低功耗4G模组AT<b class='flag-5'>开发</b>示例

    FTP应用看这篇!Air780EP低功耗4G模组AT开发示例

    780EX/Air724UG… **、相关准备工作 ** ​ 1.1 硬件准备 EVB_Air780EP
    的头像 发表于 09-29 09:36 1814次阅读
    FTP应用看这篇!<b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>Air</b>780EP低功耗4G模组AT<b class='flag-5'>开发</b>示例

    低功耗4G模组AIR780EX ——开发板使用说明

    EVB-AIR780EX 开发板通信推出的基于 Air780EX 模组所开发的,包含电源,
    的头像 发表于 09-11 11:55 690次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b>低功耗4G模组<b class='flag-5'>AIR</b>780EX ——<b class='flag-5'>开发板</b>使用说明

    4G模组Air780E开发板使用手册

    开发板Air780E使用说明
    的头像 发表于 09-09 18:22 693次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b>4G模组<b class='flag-5'>Air</b>780E<b class='flag-5'>开发板</b>使用手册

    LuatOS开发板Core_Air780EP使用说明

    Core-Air780EP 开发板通信推出的基于 Air780EP 模组所开发的,包含电源
    的头像 发表于 09-03 17:38 552次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b>LuatOS<b class='flag-5'>开发板</b>Core_<b class='flag-5'>Air</b>780EP使用说明

    嵌入式linux开发板怎么操作

    嵌入式Linux开发板种基于Linux操作系统的嵌入式系统开发平台。它通常包括个处理器、内
    的头像 发表于 09-02 09:09 375次阅读

    嵌入式linux开发板芯片的工作原理

    嵌入式Linux开发板种基于Linux操作系统的嵌入式系统开发平台,它广泛应用于工业控制、智能家居、智能交通、医疗设备等领域。
    的头像 发表于 09-02 09:07 382次阅读

    低功耗4G模组Air700EAQ——开发板使用说明

    低功耗4G模组Air700EAQ——开发板使用说明
    的头像 发表于 08-30 17:14 1088次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b>低功耗4G模组<b class='flag-5'>Air</b>700EAQ——<b class='flag-5'>开发板</b>使用说明

    LuatOS开发板使用手册——Air700EAQ

    本文详细讲解了Air700EAQ开发板的使用说明。
    的头像 发表于 08-28 14:37 512次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b>LuatOS<b class='flag-5'>开发板</b>使用手册——<b class='flag-5'>Air</b>700EAQ

    LuatOS开发板使用手册——Air700ECQ

    LuatOS开发板使用说明——Air700ECQ
    的头像 发表于 08-23 16:28 571次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b>LuatOS<b class='flag-5'>开发板</b>使用手册——<b class='flag-5'>Air</b>700ECQ

    Air780EP模块——AT指令MQTT接入OneNET开发指南

    过程,Air780EP和MQTT是最佳拍档,让设备互联变得轻松又靠谱。想不想试试这简单又神奇的操作?那就来吧!本文详细讲解了基于Air80EP
    的头像 发表于 08-19 16:40 2210次阅读
    <b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>Air</b>780EP模块——AT指令MQTT接入OneNET<b class='flag-5'>开发</b>指南

    MQTT应用看这篇!Air780EP_LuatOS_MQTT应用指南

    Air780EP 是的低功耗4G模组之,支持LuatOS的脚本二次开发,即使是不太懂技术的
    的头像 发表于 08-08 17:13 1920次阅读
    MQTT应用看这篇!<b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>Air</b>780EP_LuatOS_MQTT应用指南