一直有小伙伴们问,迷你小巧的合宙Air201虽然有很多优点,超低功耗、精准定位,那么它是否支持录音、播放录音功能?

那必须能!高集成化设计的Air201自带了ES8311音频解码芯片(Audio Codec)及MIC麦克,可支持本地的录音功能;使用配套喇叭即可将录音保存的数据进行播放,操作极为方便。

本期,我们就来学习合宙Air201实用示例
——录音和播放录音功能

 Air201录音&播放录音功能 

合宙Air201资产定位模组——是一个集成超低功耗4G通信、语音通话、超低功耗定位、计步、震动、Type-C、充电、放音、录音等功能的超小PCBA。

内部集成高效、简单、可靠的LuatOS语言,旨在帮助客户降低开发难度,降低研发成本,以及打造超小超低功耗的精品产品。

接下来,教你从零上手,实现Air201录音和播放的功能。

1. 搭建环境

新同学建议先看前期的基础知识相关教程,更有助于理解和操作。

此时可以在LuaTools项目管理中新建一个项目,重新选择底层CORE和脚本;或者在原有项目的基础上,不更换CORE,将原来的脚本删除,添加为demo/record的脚本。

1.1 硬件准备:

合宙Air201板子自带了ES8311音频解码芯片(Audio Codec)及MIC麦克,硬件主要外接一个喇叭。

  • 合宙Air201 PCBA及配套喇叭

  • 带有数据通信功能的数据线

  • Win10以上PC

▼ Air201连接喇叭示意 ▼

注意:Air201最大支持8Ω 1.2W功率喇叭(默认),或者4Ω 2.5W功率喇叭。

1.2 软件准备:

  • LuaTools调试工具:

  • 最新固件:

  • 最新脚本:

2. 调试代码

使用克隆的代码进行测试,代码路径:
LuatOS-Air201\demo\record

2.1 初始化驱动ES8311

Air201板子自带了ES8311音频解码芯片(Audio Codec),所以硬件配置参数是固定的。

ES8311使用了I2C0,电源脚为GPIO2,PA控制脚为GPIO23。

2.2 注册音频事件回调函数

2.3 准备录音

录音API说明

audio.record(id, record_type, record_time, amr_quailty, path, record_callback_time)

  • id:
    多媒体播放通道号

  • record_type:
    录音音频格式,支持audio.AMR和audio.PCM

  • record_time:
    录制时长,单位秒,可选参数,默认为0则表示一直录制。

  • amr_quailty:
    录音质量,只有在音频格式为audio.AMR的情况下此参数有效。

  • path:
    录音文件路径,可选参数,不指定则不保存,可以再audio.on回调函数中处理原始PCM数据。

  • record_callback_time:
    单次录音回调时长,单位100ms,默认1即100ms。在不指定录音文件路径时,此参数有效。

2.4 播放录音

播放录音需要使用audio.play() 接口,需要将录音文件的存放路径(path),作为第二个参数传入,就可以将刚刚录音的文件,进行播放。


3. 展示效果

将demo烧录至Air201,烧录进去之后会自动开机(如果有意外没有自动开机的话,请手动开机)。

烧录完程序开机后,等待蓝灯亮起,再对着MIC麦克说话。

经过5秒后,蓝灯灭掉,会自动结束录音。随后间隔2秒,红灯亮起,开始播放录音文件。

▼ 点击查看演示效果 ▼

今天的分享就到这里了
更多实用示例带你开启应用之门
下一期见~

你有哪些开发故事分享呢

Air201资产定位模组LuatOS:录音&播放录音功能的操作方法的更多相关文章

  1. 中科微北斗定位模组ATGM336H简介

    36H系列卫星定位模块 产品介绍 ATGM336H是高灵敏度,支持BDS/GPS/GLONASS卫星导航系统的单系统定位,以及任意组合的多系统联合定位的接收机模块.ATGM336H基于本公司自主独立研 ...

  2. 手把手教你基于luatos的4G(LTE Cat.1)模组接入华为云物联网平台

    摘要:本期文章采用了4G LTE Cat.1模块,编程语言用的是lua,实现对华为云物联网平台的设备通信与控制 本文分享自华为云社区<基于luatos的4G(LTE Cat.1)模组接入华为云物 ...

  3. MTK 平台上查询当前使用的摄像头模组及所支持预览分辨率

    1,MTK 平台如何查询当前使用的是哪颗摄像头及相关的模组信息? 在该目录下可以查到当前平台及相关项目的配置文件 ProjectConfig.mk \ALPS.JB.MP.V1_W_20120919\ ...

  4. android camera(一):camera模组CMM介绍

    一.摄像头模组(CCM)介绍: 1.camera特写 摄像头模组,全称CameraCompact Module,以下简写为CCM,是影像捕捉至关重要的电子器件.先来张特写,各种样子的都有,不过我前一段 ...

  5. 【转】android camera(一):camera模组CMM介绍

    关键词:android  camera CMM 模组 camera参数平台信息:内核:linux系统:android 平台:S5PV310(samsung exynos 4210)  作者:xubin ...

  6. led模组的优点和却点

    插件模组 1.是指DIP封装的灯将灯脚穿过PCB板,经由过程焊接将锡灌满在灯孔内,由这种工艺做成的LED模组便是插灯模组:益处是视角年夜,亮度高,散热好:谬误舛错是像素密度小. 表贴模组 1.表贴也叫 ...

  7. 二维条码扫描模组在肯德基KFC的无纸化点餐解决方案

    在如今提倡节约资源的环境下,肯德基在品牌发展中,逐渐实现无纸化点餐,不仅节约了纸质点餐单,而且还具有节约资源的示范作用.而其中二维码扫描模组是这套无纸化点餐方案的重点,在整套设备中,加入二维码扫描模组 ...

  8. FreeSWITCH 增删模组

    今天在尝试FreeSWITCH新功能时,遇到一个问题,就是该功能所需要的模组没有加载,导致写了好久的代码不能看到效果,让人很是忧伤啊! 再此,将FS模组增删的方法记录下,以方便遇到同样问题的童鞋. 具 ...

  9. android camera(一):camera模组CMM介绍【转】

    转自:https://blog.csdn.net/kevinx_xu/article/details/8821818 androidcmm图像处理工作手机三星 关键词:android  camera ...

  10. C# 组件模组引用第三方组件问题

    对接上一文章由于是动态加载指定程序集,会把当前目录下所有dll都加载进来.如果像sqlite这种第三组件调用了由C.C++非.net语言所以生成的Dll.因为自动生成的原因.会把非C#生成的dll都加 ...

随机推荐

  1. QTreeWidget折叠子项(折叠当前项的所有子项)

    QTreeWidget折叠子项(折叠当前项的所有子项) 本文仅供本人知识总结使用,所以内容会比较浅显,不喜勿喷. 文章目录 QTreeWidget折叠子项(折叠当前项的所有子项) 一.仅折叠子项 二. ...

  2. 【Python】Selenium自动化测试之动态识别验证码图片方法(附静态图片文字获取)

    目录 一.前提 二.获取验证码 三.获取4位验证码 四.判断验证码是否正确 五.输入验证码登录 六.登录页面类 七.完整的获取验证码类代码 八.附录:静态图片文字提取 一.前提 返回目录 经常会遇到登 ...

  3. Redis实战9-全局唯一ID

    发布优惠券的时候,每个店铺都可以发布优惠券,当用户抢购的时候,优惠券表中的id如果使用数据库的自增长ID会存在以下问题: 1:id的规律太明显,容易被刷 2:当数据量很大的时候,会受到单表数据的限制 ...

  4. WiFi基础(二):最新WiFi信道、无线OSI模型与802.11b/g/n

    liwen01 2024.09.01 前言 最近十几年,通信技术发展迅猛,通信标准更新频繁,有的设备还在使用 802.11/b/g/n 协议,有的已支持到 WiFi6.WiFi7. 而国内有关无线 W ...

  5. VUE-局部使用

    目录 VUE-局部使用 快速入门 常用指令 v-for v-bind v-if & v-show v-on v-model vue生命周期 Axios Vue案例 VUE-局部使用 Vue 是 ...

  6. python操作ipv6_用python开启临时http服务器及其ipv6支持

    https://blog.csdn.net/weixin_35647799/article/details/112023159

  7. 教你一招,测试人员如何通过AI提高工作效率!

    伴随着AI技术的兴起,像OpenAI推出的ChatGPT.Microsoft发布的Microsoft 365 Copilot.阿里的通义千问.百度的文心一言.华为的盘古大模型等.很多测试人员开始担心, ...

  8. 图解连接阿里云(二)使用Paho-MQTT(支持FreeRTOS版本、Linux版本)连接1MQTT测试服务器 2阿里云物联网平台

    前沿提要: MQTT是什么不知道? 看这一篇:https://www.cnblogs.com/happybirthdaytoyou/p/10362336.html 阿里云官网玩不转? 看这一篇: ht ...

  9. PHP面试,ES

    什么是Elasticsearch? Elasticsearch是一个开源的分布式搜索和分析引擎,用于存储.搜索和分析大量数据.它基于Lucene搜索引擎构建,可以快速地执行全文搜索.结构化查询.分析和 ...

  10. 微信小程序点击按钮进行页面跳转

    下面是wxml代码 <button type="primary" bindtap="go">跳转到list页面</button> 下面是 ...