tag 标签: 嵌入式硬件

相关帖子
相关博文
  • 热度 1
    2025-6-30 16:55
    38 次阅读|
    0 个评论
    从智能音箱到车载语音助手,全场景语音交互正重塑用户体验。本文聚焦音频电路的核心技术难点,通过系统化教程与实战案例,帮助开发者突破信噪比、延迟控制等瓶颈,构建稳定、可靠的语音解决方案。 Air780EHV音频电路参考设计中要注意哪些…… 今天在这里分享下相关内容。Air780EHV内置Audio Codec,支持1路Mic,1路Speaker。 有如下特点: 支持1路驻极体Mic,模组内置偏置电压,差分输入; 支持1路Speaker输出,但输出功率仅14mW,差分输出; Speaker输出需搭配音频PA使用,音频PA请根据所需灵活选择,也可选择标准配件AirAUDIO_1000搭配使用; Air780EHV支持VoLTE通话和TTS(文字转语音)功能。 一、硬件参考设计 资料中心提供了音频电路参考设计,及其使用的相关注意事项等文档。 最新内容详见: https://docs.openluat.com/air780ehv/luatos/hardware/design/audio/ 注意:Air780EHV支持驻极体Mic,内部已接Micbias偏置电压,外部无需再加。 尤其要注意的是: Mic电路上切勿增加隔直电容,按照参考电路连接即可。 音频PA选用的是纳芯微NS4160,最高可驱动4Ω 3W的喇叭(5V供电时)。 二、Audio API说明 此前文章介绍过LuatOS二次开发提供了丰富的资源支持,目前包括74个核心库、55个扩展库、1000多个API接口,以及100多个基于实际场景的Demo示例。 其中就包括Audio函数,详见: https://docs.openluat.com/osapi/core/audio/ 本文主要介绍audio.config() 这一个函数: audio.config()跟硬件相关,主要是两个GPIO的配置。 一个GPIO控制Audio PA; 一个GPIO控制Audio Codec。 如下图所示: Air780EHV内部集成了Audio Codec: 相应的控制GPIO为GPIO20,大家在使用本函数时可以输入20 ,也可以默认不填。 Air780EHV需要在外部增加Audio PA电路: 相应的控制GPIO我们默认推荐使用GPIO22,也就是PIN19:AudioPA_EN。 如下图所示: 大家在使用时务必注意如下几点: Audio PA务必使用一个单独的GPIO控制使能,不能默认一直开启,一方面在功耗上比较浪费,一方面也无法搭配Audio函数抑制有可能产生的POP音; Audio PA的控制GPIO推荐使用PIN19:AudioPA_EN,也就是GPIO22; 如果不使用PIN19:AudioPA_EN,那么至少也要选用一个AGPIO,只有AGPIO在休眠状态下才能控制其输出状态。 详见Air780EHV GPIO设计说明: https://docs.openluat.com/air780ehv/luatos/hardware/design/gpio/ 今天的内容就分享到这里了~
  • 热度 3
    2025-6-30 15:55
    127 次阅读|
    0 个评论
    文字如何获得情感与温度?Air8000开源TTS应用给出答案。开发者可通过调整其语音合成算法,赋予文本不同的语调、节奏及音色,让机器生成的语音更接近真人表达,实现人机交互的自然升级。 TTS (Text-to-Speech文本转语音)——是一种将书面文本转换为人类可听语音的技术,通过算法和模型模拟人类发声,实现机器“说话”。其核心目标是生成自然、流畅且富有表现力的语音。 TTS可广泛应用于各个领域,通过将文字转化为自然语音提升交互效率与包容性: 智能助手(如:车载语音、虚拟客服) 数字内容创作(有声书/视频配音) 教育(语言学习发音) 医疗(病历播报) 文化保护(方言合成) …… 一、主要硬件准备 Air8000整机开发板套件 支持数据传输的USB数据线 Win10及其以上PC电脑 二、软件demo下载 Air8000应用示例持续更新中,下文仅拆解展示TTS示例代码的功能要点。 完整示例源码及实操教程详见: https://docs.openluat.com/air8000/luatos/app/audio/tts/ - 示例要点解析 - 1)设置i2s和audio参数,控制ES8311上电,然后设置i2c、i2s、audio相关基础配置。 2)设置音频的回调函数,根据播放结果,返回对应内容。 3)等待配置初始化完毕,接收"AUDIO_READY"消息,从模块里面烧录的qianzw.txt文件,读取该文件的一行。 如果读取失败,则写入固定的内容,去除头尾空格,播放内容;如果播放成功,等待audio.on的返回内容,激活等待;做一个关闭的再次判断,如果没有关闭,则手动关闭,进入PM待机模式,打印内存。 今天的内容就分享到这里了~
  • 2025-6-30 15:46
    5 次阅读|
    0 个评论
    一个人的智慧有限,群体的力量无穷。Air8000开源Modbus功能,邀请开发者共同参与优化:提交bug修复、贡献新特性,共建更稳定、更强大的工业通信解决方案。 支持Modbus RTU、Modbus TCP、Modbus ASCII,通过硬件集成与软件优化实现了工业通信能力的突破性升级。 支持Modbus RTU/TCP/ASCII协议自动转换‌,无需独立网关即可实现RS-485、以太网、4G三通道自由切换,可同时作为主站或从站设备,适应复杂工业网络拓扑。 目前提供基于Modbus RTU/TCP/ASCII协议的demo示例,可根据具体场景灵活选择。 Modbus RTU: 传输方式:基于串行通信(RS-485/RS-232),采用二进制数据传输。 应用场景:短距离、小规模设备本地通信(如传感器、PLC、仪表组网)。 Modbus TCP: 传输方式:基于以太网(TCP/IP),通过网络传输数据。 应用场景:远程监控、大规模设备组网、跨区域通信(如工业物联网、SCADA系统)。 Modbus ASCII: 传输方式:基于串行通信(RS-485/RS-232),采用ASCII字符编码传输数据。 应用场景:早期工业设备、低速通信场景,或需要人工可读数据的场景(如调试、简单仪表)。 最新源码及示例教程详见: https://docs.openluat.com/air8000/luatos/app/modbus/ 一、主要硬件准备 Air8000整机开发板套件 485/232转USB转换器 支持数据传输的USB数据线 Win10及其以上PC电脑 1.ModbusRTU和ASCII协议测试连接方式: 2.ModbusTCP协议测试连接方式: 二、示例功能要点 示例通过Modbus RTU/TCP/ASCII三种常用协议,演示Air8000开发板作为主站(客户端)与从站连接通讯的过程,或开发板作为从站(服务器)与主站连接通讯的过程。 篇幅原因,下文仅以RTU协议应用demo文件(master_rtu、slave_rtu)为例,拆解展示代码的功能要点。 完整示例源码及实操演示详见: https://docs.openluat.com/air8000/luatos/app/modbus/ 1、master_rtu 1)初始化通讯串口 2)Modbus主站创建 3)添加从站 4)创建数据区和通信消息 5)启动Modbus设备 6)定时状态检查 7)数据读取并转化为json 2、slave_rtu 1)初始化设置 2)Modbus从站创建 创建了一个RTU模式的Modbus从站,添加了两个数据块:保持寄存器区和线圈区。 3)启动Modbus从站 4)数据更新 今天的内容就分享到这里了~
  • 2025-6-23 16:56
    0 个评论
    当Air8101遇见Air780EPM,一场关于4G联网的革新悄然发生。外挂模块后的多网融合系统,不仅突破传统网络限制,更让设备在智慧城市、工业物联网等场景中展现出更强的环境适应能力与数据传输效能。 本文将分享Air8101核心板通过外挂Air780EPM整机开发板,实现4G联网的功能示例。 一、硬件准备工作 1.1 所需硬件 Air8101核心板(开发板也可以); Air780EPM开发板套件(V1.2/V1.3开发板、整机开发板、核心板均可); 杜邦线; 支持数据传输的USB数据线; Win10及其以上PC电脑。 1.2 接线说明 本文以Air8101核心板和Air780EPM开发板V1.3版本为例。如果你使用其他版本的开发板,可通过开发板的使用手册查找对应管脚。 使用手册详见资料中心:—— docs.openluat.com 本次测试使用SPI0接法进行演示,相关接线参考如下图表: 二、软件准备工作 参考Air8101/Air780EPM软件环境清单,准备好软件环境。 2.1 烧录工具 Luatools工具下载及使用说明:https://docs.openluat.com/air8101/common/Luatools/ 2.2 Air8101需要烧录的固件和脚本文件 1)内核固件下载:https://docs.openluat.com/air8101/luatos/firmware/ 2)脚本文件下载:https://gitee.com/openLuat/LuatOS/tree/master/module/Air8101/demo/air8101_air780epm_4G/air8101_air780epm_4g_master 主要功能代码: 2.3 Air780EPM需要烧录的固件和脚本文件 1)内核固件下载:https://docs.openluat.com/air780epm/luatos/firmware/version/ 2)脚本文件下载:https://gitee.com/openLuat/LuatOS/tree/master/module/Air8101/demo/air8101_air780epm_4G/air8101_air780epm_4g_slave 主要功能代码: 2.4 LuatOS运行所需要的lib文件: 使用Luatools烧录时,注意勾选“添加默认lib”选项,使用默认lib脚本文件。 三、demo测试结果 成功烧录后运行测试,Air8101核心板即可通过外挂Air780EPM开发板实现4G联网功能。 3.1 Air780EPM日志 3.2 Air8101日志 今天的内容就分享到这里了~
  • 热度 1
    2025-6-23 16:11
    297 次阅读|
    0 个评论
    调研显示,多数CAN接口开发问题源于对协议、硬件、错误处理等核心环节的忽视。本文提炼出五大必修要点:协议深度理解、硬件规范配置、错误预防机制、实时性设计与调试流程优化,助你规避80%的常见陷阱,事半功倍。 在Air780EPM上开发CAN接口,需要注意哪些问题? 本文将分享CAN接口硬件参考设计,以及相关软件开发示例、问题排查要点等内容。 资料中心文档库也在持续更新中,有需要的朋友可以查阅最新资料。 CAN接口硬件设计详见:https://docs.openluat.com/air780epm/luatos/hardware/design/can/ LuatOS开发API文档详见:https://docs.openluat.com/air780epm/luatos/api/core/can/ 我们从以下五个方面,一起来了解在Air780EPM上开发CAN接口的相关要点: CAN接口概述 硬件设计注意事项 软件开发注意事项 应用场景与参考设计 典型问题排查 大家在实际应用中,可结合项目场景灵活选择合适方案。 一、CAN接口概述 1.1 CAN协议简介 CAN(Controller Area Network)是一种被广泛应用于汽车和工业控制领域的串行通信协议。它支持多主节点通信,具有高可靠性、实时性以及错误检测能力。 Air780EPM支持CAN 2.0A/B标准,允许最高1Mbps的通信速率。 1.2 核心功能与协议 1)支持协议: CAN 2.0A/B标准,兼容标准帧(11 位ID)和扩展帧(29 位ID)。 注意!Air780EPM不支持CAN FD标准。 2)通信速率: 最高支持1Mbps(如需更高带宽需外接CAN FD收发器)。 3)物理层依赖: 需外接CAN收发器(如川土微的CA-IF1051S/VS),通过GPIO引脚复用实现差分信号传输(CAN_H/CAN_L)。 1.3 硬件接口特性 1)GPIO映射: CAN_TXD(发送):默认映射到GPIO26(GPIO13是另一组映射选择)。 CAN_RXD(接收):默认映射到GPIO25(GPIO12是另一组映射选择)。 CAN_STB(待机模式控制):默认映射到GPIO28(GPIO14是另一组映射选择)。 ▼ 关于CAN_STB信号 ▼ 01. 电源管理(待机模式控制) 1)低功耗模式: 当系统需要进入节能状态时(如汽车熄火或设备待机),CAN_STB信号可被触发(高电平或低电平,取决于硬件设计),使CAN收发器进入低功耗待机模式。此时,收发器停止正常通信以降低能耗。 2)唤醒功能: 当需要恢复通信时,CAN_STB信号状态切换(如拉低或拉高),将收发器从待机模式唤醒,重新激活CAN总线的数据传输。 02. 硬件控制 1)收发器启用/禁用: 在某些CAN收发器芯片(如TI的SN65HVD230)中,STB(Standby)引脚直接控制收发器的工作状态。 例如: STB = 高电平:收发器关闭,仅消耗微量静态电流。 STB = 低电平:收发器正常工作,可收发CAN信号。 2)系统集成: 在复杂系统中,CAN_STB可能由主控制器(如MCU)输出,协调多个CAN节点的电源状态,优化整体能耗。 03. Air780EPM开发板设计 注意!Air780EPM开发板,为了电平转换的需要,在Air780EPM侧,CAN_STB信号,实际需要作如下反向设计: 1)STB = 低电平:收发器关闭,仅消耗微量静态电流。 2)STB = 高电平:收发器正常工作,可收发CAN信号。 1.4 电源与电平 CAN收发器逻辑电平需与Air780EPM的GPIO电平匹配(默认 3.0V);CA-IF1051VS:支持IO逻辑电平独立供电。 Air780EPM开发板为例: 可使用Air780EPM的PIN99:Vref(GPIO23保持高电平输出)与其连接,从而保证CA-IF1051VS与Air780EPM的IO电平一致,不再需要额外的电平转换电路。 二、硬件设计注意事项 2.1 外部电路设计 1)CAN收发器选型: 推荐使用川土微CA-IF1051S/VS,支持3.0V逻辑电平,抗干扰能力强。 确保收发器与Air780EPM的GPIO电平匹配(如VREF=3.0V)。 2)终端电阻: 必加:在CAN总线两端各接入120Ω终端电阻,防止信号反射。 位置:靠近CAN收发器的CAN_H和CAN_L引脚。 3)布线与抗干扰: 差分对走线:CAN_H和CAN_L需走差分线,长度对称,间距10-15mil。 远离干扰源:避免靠近电源线、高频信号线,增加地线屏蔽。 ESD防护:在CAN接口处添加TVS二极管(如PESD3V3YB4),靠近接口布局。 2.2 电源与复位 1)电源稳定性: CAN收发器需独立供电,通常为5V,但需注意您所选择的CAN收发器型号是否需要通过电平转换与Air780EPM的3.0V IO电平一致。 比如:CA-IF1051S需要增加电平转换电路,而CA-IF1051VS有IO电平独立供电,无需再加电平转换电路。 2)使用去耦电容(如100nF和10μF)稳定电源。 2.3 其他关键点 1)总线长度: 50米内:1Mbps速率下可正常通信。 超长距离:需降速至125kbps或添加中继器。 2)GPIO冲突: 确保CAN_TXD/CAN_RXD/CAN_STB引脚,初始化为CAN接口功能。 三、 软件开发注意事项 3.1 LuatOS API与驱动 1)初始化CAN接口: 2)发送CAN帧: 3)接收CAN帧: 3.2 关键注意事项 1)波特率匹配: 所有CAN节点的波特率必须一致,否则通信失败。 2)资源限制: 单帧最大8字节,需分包传输大数据。 频繁发送可能占用CPU资源,建议使用DMA或轮询。 3)错误恢复: 监控错误计数器,超过阈值时重启接口: 四、应用场景与参考设计 4.1 典型应用场景 1)工业物联网: 如:设备状态监测、传感器数据采集。 2)智能电网: 如:远程抄表、设备控制。 4.2 方案优化建议 1)硬件层面: 增加信号屏蔽层或缩短总线长度以减少干扰。 2)软件层面: 采用DMA传输减少CPU占用;实现心跳包机制检测链路状态。 4.3 硬件参考设计 4.4 示例源码下载 https://gitee.com/openLuat/LuatOS-Air780EPM/blob/master/demo/can/main.lua 五、典型问题排查 5.1 通信失败 1)检查清单: 确认CAN收发器电源和接地正常。 终端电阻是否正确安装。 管脚初始化配置与硬件手册一致例如: CAN_TXD/CAN_RXD/CAN_STB引脚 波特率设置是否匹配其他节点。 2)工具辅助: 使用CAN分析仪(如Vector CANalyzer)捕获信号。 5.2 数据丢失或乱码 可能如下原因导致: 波特率不匹配导致帧同步失败; 总线干扰或信号完整性问题(如走线过长、未加终端电阻); 发送间隔过短导致缓冲区溢出。 今天的内容就分享到这里了~
相关资源