【深海王国】小学生都能玩的语音模块?ASRPRO打造你的第一个智能语音助手(4)

Hi~ (o^^o)♪, 各位深海王国的同志们,早上下午晚上凌晨好呀~ 辛勤工作的你今天也辛苦啦(/≧ω)

今天大都督继续为大家带来系列——小学生都能玩的语音模块,帮你一周内快速学会语音模块的使用方式,打造一个可用于智能家居、物联网领域的语音助手,let’s go!

(4)编程模式介绍与ASRPRO引脚功能

上节我们已经了解了天问BLOCK的配置模式如何编程与下载程序,这节我们就开始在编程模式下编写程序,并尝试添加拓展库。

编程模式介绍:

点击上方编程模式按钮进入编程模式:

在这里插入图片描述

进入编程模式后,我们可以看到左边的指令区出现了许多新的颜色的指令模块,然后代码块也变得更复杂了:

在这里插入图片描述

ASRPRO引脚功能与编程模块介绍:

先给大家看一下ASRPRO的引脚图:

在这里插入图片描述

然后如果具体代码的功能大家不清楚,可以直接看官方注释,将鼠标悬停在对应代码块上,就会出现对应注释:

在这里插入图片描述

1.语音识别模块

棕褐色代码块,在程序中每次修改这类代码块后,都需要重新生成模型,因为生成的模型是语言模型。主要功能为设置语音模块的语音识别与播报声音:

在这里插入图片描述

关于生成模型,可以参考上一篇:(3)天问BLOCK程序下载与常见问题

2.GPIO模块

棕色代码块,设置单片机的引脚状态,点击更多,还有一些额外的代码块,但是不经常用,我们只需要会最基础的这几个就可以啦。

在这里插入图片描述

GPIO(General Purpose Input/Output)是“通用输入/输出”端口的简称,它是一种在计算机、微控制器、开发板等数字设备上广泛使用的接口,用于实现设备与外部世界的交互。通过GPIO,这些设备可以读取外部传感器的数据(作为输入)或控制外部设备(作为输出),比如点亮LED灯、控制电机转动等。

GPIO端口可以被配置为输入模式或输出模式:

输入模式:在此模式下,GPIO端口可以读取外部设备(如按钮、传感器等)的状态(高电平或低电平),供微控制器或计算机处理。

输出模式:在此模式下,GPIO端口可以发送高电平或低电平信号,从而控制外部设备(如LED灯、继电器等)。

具体可参考大都督的另一个系列:【深海王国】小学生都能玩的单片机?零基础入门单片机Arduino带你打开嵌入式的大门!(2)初识Arduino与基本单片机电路知识

3.PWM模块

深蓝色代码块,设置 PWM 引脚、频率、占空比、占空比初值:

在这里插入图片描述

然后对应PWM引脚如下:

引脚功能对应引脚号
PWM0PA2、PC4
PWM1PA3
PWM2PA4
PWM3PA5
PWM4PA6
PWM5PA0
4.ADC模块

棕色代码块,可以读取ADC值。ADC分辨率为12位,返回值范围为0~4095。

在这里插入图片描述

可使用的ADC采样引脚为PC_1、PC_2、PC_3、PC_4:

在这里插入图片描述

但要注意除了ASRPRO-PLUS主板,其他主板只有PC_4是模拟引脚 。只有一个ADC引脚!

5.串口模块

土黄色代码块,可以使用ASRPRO配置的三个串口进行通讯。

在这里插入图片描述

然后对应PWM引脚如下:

引脚功能对应引脚号
Serial_TXPB5
Serial_RXPB6
Serial1_TXPA2
Serial1_RXPA3
Serial2_TXPA5
Serial2_RXPA6

这里说明一下,虽然理论上Serial1与Serial2的串口引脚号可以修改,但是ASRPRO开发板上的实际引脚资源只有PA2~6可以使用,也就是说除了ASRPRO-PLUS主板,其他主板的Serial1与Serial2的串口引脚号,不可以修改

6.多线程模块

蓝紫色代码块,能让程序从单线变为多线,也就是说能同时运行多个程序,比如想要语音模块既进行语音识别,又控制灯循环亮起,多线程对语音模块类单片机很重要!

多线程模块我们会在后面重点讲,这里大家先有个印象。

在这里插入图片描述

7.自定义代码块

黑色代码块,可以自定义使用语言编程编写代码块,使用比较少,大部分时候用它写个注释就够啦。

在这里插入图片描述

8.控制模块

浅绿色代码块,也是我们最常用的模块,延迟、if、for、while、switch、定时器都在这里面,具体模块我们在后面用到的时候会讲。
在这里插入图片描述

9.数学与逻辑模块

深蓝色代码块,数学公式、随机数、映射都在这里:
在这里插入图片描述

10.文本与数组

草绿色代码块,主要功能是文本和数组的创建与修改,主要用于串口通讯的时候接受、记录、发送、处理数据。
在这里插入图片描述

11.变量模块

深粉色代码块,可以通过灰色代码块,创建变量来创建新的变量:
在这里插入图片描述
在这里插入图片描述

创建好后就可以引用处理新创建的变量:
在这里插入图片描述

12.函数模块

紫色代码块,相当于创建子函数的操作,让代码模块化,实现代码复用:
在这里插入图片描述

今天的学习到这里差不多啦。下节我们就开始学习ASRPRO拓展功能模块与认识WS2812灯带,加油!看到这里的你今天也辛苦啦٩(ˊᗜˋ)و✧。

需要的相关材料链接我都放在公众号「深海大都督」里了,回复「语音模块购买」就能获得啦~

哈哈,让焦虑不再蔓延,信息不再高壁,如果你觉得这篇文章对你有帮助,就来个免费的点赞吧!

(◍˃̶ᗜ˂̶◍)✩我深海大都督正式授予你深海王国公民的身份~

(・ω< )★ 加入深海大家庭,快乐摆烂每一天!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/39805.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

qtreewidget 美化,htmlcss和qss 不是一个概念!已解决

这种样式的美化&#xff0c; 能气死个人&#xff0c;css 一个单词搞定&#xff0c;非要 在qss中。多少个单词不知道了。 m_tree_widget->setStyleSheet("QTreeView{background:transparent; selection-background-color:transparent;}""QTreeView::branch{b…

linux 安装腾讯会议和解决ubuntu打开腾讯会议提示:不兼容 wayland 协议

一. 下载腾讯会议安装包 腾讯会议下载链接 二. 命令行安装 cd [安装包路径] sudo dpkg -i TencentMeeting_0300000000_3.19.1.400_x86_64_default.publish.deb 三. 打开腾讯会议提示无法支持wayland 协议 解决方法: 打开终端 sudo vi /etc/gdm3/custom.conf打开 #Wayland…

哪个牌子的充电宝牌子便宜好用?2024年性价比高充电宝排行榜!

在 2024 年&#xff0c;充电宝市场依旧琳琅满目&#xff0c;让人眼花缭乱。大家都在寻找那个既便宜又好用的充电宝&#xff0c;可面对众多品牌和产品&#xff0c;常常感到无从下手。别担心&#xff01;经过深入的市场调研和实际使用体验&#xff0c;我们为您精心整理出了 2024 …

轻度图像处理工具,匹敌photoshop

一、简介 1、一款功能强大的在线图片编辑工具,用户可以将其安装为渐进式网页应用(PWA)。它提供了与 Photoshop 相似的核心功能,能够满足大多数图像编辑需求,非常适合那些不愿或无法安装 Photoshop 的用户。即使使用免费版本,用户也能享受所有功能,是轻度图像处理的理想选…

实用麦克风话筒音频放大器电路设计和电路图

设计目标 输入电压最大值输出电压最大值电源Vcc电源Vee频率响应偏差20Hz频率响应偏差20kHz100dB SPL(2Pa)1.228Vrms5V0V–0.5dB–0.1dB 设计说明 此电路使用跨阻抗放大器配置中的运算放大器将驻极体炭精盒麦克风的输出电流转换为输出电压。此电路的共模电压是固定的&#xf…

动物检测yolo格式数据集(水牛 、大象 、犀牛 、斑马四类)

动物检测数据集 1、下载地址&#xff1a; https://download.csdn.net/download/qq_15060477/89512588?spm1001.2101.3001.9500 2、数据集介绍 本数据集含有四种动物可以检测&#xff0c;分别是水牛 、大象 、犀牛 、斑马四类&#xff0c;数据集格式为yolo格式&#xff0c;…

大模型对汽车行业意味着什么?_汽车企业大模型

引 言 大模型是一种利用海量数据进行训练的深度神经网络模型&#xff0c;其特点是拥有庞大的参数规模和复杂的计算结构。通过在大规模数据集上进行训练&#xff0c;大模型能够学习到丰富的模式和特征&#xff0c;从而具备强大的泛化能力&#xff0c;可以对未知数据做出准确的预…

Vue87-Vuex中的mapState、mapGetters

一、借助mapState生成计算属性&#xff0c;从state中读取数据 当vuex中的state有很多数据的时候&#xff1a; 组件中调用state中的数据 此写法不是很方便&#xff0c;借助计算属性。 计算属性的写法也不是很方便&#xff1a; 优化&#xff1a; 1-1、对象写法 注意&#xff1a…

JVM原理(十二):JVM虚拟机类加载过程

一个类型从被加载到虚拟机内存中开始&#xff0c;到卸载为止&#xff0c;它的整个生命周期将会经过 加载、验证、准备、解析、初始化、使用、卸载七个阶段。其中 验证、准备、解析三个部分统称为 连接 1. 加载 加载是整个类加载的一个过程。在加载阶段&#xff0c;Java虚拟机…

使用python编程的视频文件列表应用程序

简介&#xff1a; 在本篇博客中&#xff0c;我们将介绍一个基于 wxPython 的视频文件列表应用程序。该应用程序允许用户选择一个文件夹&#xff0c;并显示该文件夹中的视频文件列表。用户可以选择文件并查看其详细信息&#xff0c;导出文件列表为文本文件&#xff0c;以及播放…

Spring系统学习-什么是AOP?为啥使用AOP?

问题思考 我们为啥要使用AOP? 来看一个案例&#xff1a; 声明计算器接口Calculator&#xff0c;包含加减乘除的抽象方法 public interface Calculator {int add(int i, int j);int sub(int i, int j);int mul(int i, int j);int div(int i, int j); }public class Calculat…

JS(JavaScript)数据校验 表单校验-案例

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

【Rust入门】生成随机数

文章目录 前言随机数库rand添加rand库到我们的工程生成一个随机数示例代码 总结 前言 在编程中&#xff0c;生成随机数是一种常见的需求&#xff0c;无论是用于数据分析、游戏开发还是模拟实验。Rust提供了强大的库来帮助我们生成随机数。在这篇文章中&#xff0c;我们将通过一…

顺序表--续(C语言详细版)

2.9 在指定位置之前插入数据 // 在指定位置之前插入数据 void SLInsert(SL* ps, int pos, SLDataType x); 步骤&#xff1a; ① 程序开始前&#xff0c;我们要断言一下&#xff0c;确保指针是有效的&#xff0c;不是NULL&#xff1b; ② 我们还要断言一下&#xff0c;指定的…

ctfshow sql注入 web234--web241

web234 $sql "update ctfshow_user set pass {$password} where username {$username};";这里被过滤了&#xff0c;所以我们用\转义使得变为普通字符 $sql "update ctfshow_user set pass \ where username {$username};";那么这里的话 pass\ where…

libtorch+torchvision windows编译

libtorch建议直接采用官方的预编译版本,对应好torchvision版本做编译。 1. libtorch预编译版本下载 libtorch官方下载地址 Pybind11编译 git clone https://github.com/pybind/pybind11.git cd pybind11 mkdir build (base) PS E:\project\pybind11-2.13.1> cd .\build…

小程序-<web-view>嵌套H5页面支付功能

背景&#xff1a;小程序未发布前&#xff0c;公司使用vue框架搭建了管理系统&#xff0c;为了减少开发成本&#xff0c;微信提供了web-view来帮助已有系统能在小程序上发布&#xff0c;详见web-view | 微信开放文档。因公司一直未打通嵌套H5小程序的支付功能&#xff0c;导致用…

AIGC对设计行业的影响与启发:AIGC设计能替代真正的设计师吗?

随着科技的飞速发展&#xff0c;人工智能生成内容&#xff08;AIGC&#xff09;技术在设计行业的应用日益广泛&#xff0c;引发了广泛的讨论和关注。AIGC以其高效、多样化的生成能力&#xff0c;为设计行业带来了前所未有的变革。然而&#xff0c;关于AIGC是否能替代真正的设计…

开源模型应用落地-FastAPI-助力模型交互-WebSocket篇(一)

一、前言 使用 FastAPI 可以帮助我们更简单高效地部署 AI 交互业务。FastAPI 提供了快速构建 API 的能力,开发者可以轻松地定义模型需要的输入和输出格式,并编写好相应的业务逻辑。 FastAPI 的异步高性能架构,可以有效支持大量并发的预测请求,为用户提供流畅的交互体验。此外,F…

Python 生成Md文件带超链 和 PDF文件 带分页显示内容

software.md # -*- coding: utf-8 -*- import os f open("software.md", "w", encoding"utf-8") f.write(内部测试版2024 MD版\n) for root, dirs, files in os.walk(path): dax os.path.basename(root)if dax "":print("空白…