【模块系列】DY-SV17F语音播放模块

news2024/9/22 5:24:10

前言

  本文针对官方给的应用手册进行补充和加上个人理解。在官方的资料中已经介绍的很详细了,我就节选部分出来,基本认识模块就行了吧。本来还行自己介绍呢,没想到官方写这么详细了,也不知道介绍啥了,现在单纯的写为个人理解应用笔记吧。

  概述:DY-SV17F 是一款智能语音模块,四种IO 分段触发,UART 串口控制, ONE_line 单总线串口控制,标准 MP3 等 7 种工作模式板载 5W D 类功放,可直接驱动 4Ω, 3~5W 喇叭;支持 MP3,WAV 解码格式,板载 32Mbit(4MByte)flash 存储,可通过 USB 数 据线连接电脑更新音频文件。

  官方的手册资料会在末尾给出链接的,当然也可以去优信电子该模块介绍下面下载,我的也是在那里下载的。

目录

  • 模块图片
  • 配置模式
  • 播放模式
  • 官方资料

模块图片

下图标明了DY-SV17F模块引脚的基本功能

在这里插入图片描述

官方的IO 独立模式0配置示例

在这里插入图片描述

配置模式

配置触发模式的CON1,CON2,CON3,一定要经过电阻完成上下拉。

下图为官方手册中配置工作模式的原图

在这里插入图片描述

官方的注解:

  • “按键组合播放”是指 IO0-IO7 输出对应的电平后恢复原来的高电平,类似于按键触发一次
  • “电平组合播放”是指 IO0-IO7 输出对应的电平后保持电平不变
  • “I/O 组合(独立)模式 0”与“I/O 组合(独立)模式 1”的区别在于前者模式释放电平后 继续播放当前曲目至结束,后者模式释放电平后立即停止播放曲目。

播放模式

简单介绍下四大种播放模式,注意下述的模式的前提是,要按照配置模式的章节完成硬件配置先。

  1. I/O模式:

    注意:在此模式下曲目名称必须按照 5 位数字进行命名。比如:00001.mp3,000123.mp3

    • I/O 组合模式 0(按键组合播放):单片机控制 I/O 组合触发(低电平有效)指定的曲目后释放(IO0-IO7 恢复高电平),播放完 当前曲目停止;播放中途重新触发,播放新的曲目,播放结束停止;若一直触发(不释放电平), 循环播放;播放过程 busy 有效。

    • IO 组合模式 1(电平组合播放):单片机控制 IO 组合触发(低电平有效)指定的曲目,一直循环播放指定曲目,电平释放(IO0-IO7 恢复高电平)即停止播放。播放中途释放电平,即刻停止播放。播放过程 busy 有效。

    • IO 独立模式 0(按键独立控制):IO0-IO7 独立控制 8 首曲目, IO 触发(低电平有效)指定的曲目后释放(IO0-IO7 恢复高电 平),播放完当前曲目停止;播放中途重新触发,播放新的曲目,播放结束停止;若一直触发(不 释放电平),循环播放;播放过程 busy 有效。

    • IO 独立模式 1(电平独立控制):IO0-IO7 独立控制 8 首曲目,IO 触发(低电平有效)指定的曲目,一直循环播放指定曲目, 电平释放(IO0-IO7 恢复高电平)即停止播放。播放中途释放电平,即刻停止播放。播放过程 busy 有效。

    该模式小结:组合模式最大256首,独立模式最大8首。组合模式8位遵循8421码的256种变化,独立模式模式则是每个IO就单独触发。模式0/1的区别是,触发方式是脉冲电平,还是持续电平。

  2. UART 串口模式:

    基本参数:采用全双工串口通信; 波特率为 9600,数据位:8 ,停止位 1 位,检验位 N。

    起始码-指令类型-数据长度(n)-数据 1-数据 n-和检验(SM)

    ※ 指令码 :固定为 AA。

    ※ 指令类型 : 用来区分指令类型。

    ※ 数据长度:指令中的数据的字节数。

    ※ 数据 :指令中的相关数据,当数据长度为 1 时,表示只有 CMD,没有数据位。

    ※ 和检验 :为之前所有字节之和的低 8 位,即起始码到数据相加后取低 8 位。

    ※ 数据格式:发送的数据或命令,高 8 位数据在前,低 8 位在后。

    该模式小结:上面的格式参数是节选官方的资料的,因为官方介绍命令篇幅内容有点多,我就不加进来了,感兴趣的可以自行查看官方给的数据手册。而且官方还很贴心的配置有UART 调试工具的。总的来说的话,串口模式能对该芯片的控制更为精细,比如我在手册就看到有,随机播放,加减音量,指定路径播放等等命令。

  3. One_line 单总线串口模式:

    在该模式下可以只利用一个指定的I/O口IO4就能完成对该芯片播放的控制。利用手册阅读好的协议时序,和协议约定完成通信。

    该模式小结:该模式能用的命令作用几乎和串口模式的一样,在控制端I/O口紧张的时候可以考虑使用。

  4. 标准 MP3 模式:

    注意:此模式下,按照存储顺序播放,即先存储先播放,与文件名称无关。

    该模式一共用到5个引脚,分别为IO0~IO4,引脚功能如下:

    引脚作用
    NEXT/V+/IO0短按“下一首”,长按“音量+”
    PREV/V-/IO0短按“上一首”,长按“音量-
    P/P/IO2短按一次“暂停”再按一次“播放
    EQ/IO3短按一次调节“EQ”
    RPT/IO4短按一次“单曲播放”,再按一次“循环播放”

    该模式小结:该模式操作便捷,简直是弄Diy个小型MP3的不二之选,不过听歌的话也要考虑到改模块板载只有32Mbit(4MByte)flash 存储,估计空间小点哈。

官方资料

在官方给出的资料中,已经够详细简洁了,大家想要对该模块更详细了解的可以去看看。还有图中的软件案例是,UART 串口模式,One_line 单总线串口模式这两个模式的案例,而且好像是基于STM8S写的。

在这里插入图片描述

官方手册的资料

链接:https://pan.baidu.com/s/1dXXv1Ycox3a99oYSaaseBQ 提取码:abbw

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

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

相关文章

网络安全:钟馗之眼ZOOMEYE搜索引擎使用

网络安全:钟馗之眼ZOOMEYE搜索引擎 地址: 首页 - 网络空间测绘,网络安全,漏洞分析,动态测绘,钟馗之眼,时空测绘,赛博测绘 - ZoomEye("钟馗之眼")网络空间搜索引擎 zoomeye是针对互联网空间的搜索引擎,收录了互联网空间中的设备、…

103-Linux_I/O复用方法之epoll

I/O复用方法之epoll 一.epoll介绍二.epoll相关的函数1.epoll_create2.epoll_ctl3.epoll_wait 三.LT和ET模式1.LT模式2.ET模式 四.epoll实现TCP服务器1.代码(1)服务器端(2)客户端代码 2.运行结果截图 一.epoll介绍 epoll 是 Linux 特有的 I/O 复用函数。它在实现和使用上与 sel…

小程序swiper控件的使用

swiper实现左右滑动,以及tab点击,并且给swiper绑定下拉刷新事件 <view class"swiper-tab"><view class"start swiper-tab-list {{currentTab0 ? on : }}" data-current"0" catchtap"swichNav">私教课</view><vi…

sed进阶之创建sed实用工具

shell脚本编程系列 加倍行间距 sed $!G data2.txt保留空间的默认值是一个空行&#xff0c;通过G命令可以将保留空间内的内容附加到模式空间内容之后&#xff0c;但是最后一行不需要附加&#xff0c;所以通过排除命令!进行排除 对可能含有空行的文件加倍行间距 sed /^$/d;$!G …

c++11上篇

c11 1.C11简介2.列表初始化2.1 &#xff5b;&#xff5d;初始化2.2 std::initializer_list 3.变量类型推导3.1 auto3.2 decltype3.3 nullptr 4.范围for循环5.final与override6.智能指针7.新增加容器---静态数组array、forward_list以及unordered系列8.默认成员函数控制9.右值引…

C++——类和对象[中]

0.关注博主有更多知识 C知识合集 目录 1.类的默认成员函数 2.构造函数和析构函数基础 3.构造函数进阶 4.析构函数进阶 5.拷贝构造函数 6.运算符重载 7.日期类 7.1输入&输出&友元函数 8.赋值运算符重载 9.const成员函数 9.1日期类完整代码 10.取地址重载 …

pandas简介

pandas的两个主要数据结构是&#xff1a;Series&#xff08;一维数据&#xff09;、DataFrame&#xff08;二维数据&#xff09;。 Series Series是一种类似于NumPy中一维数组的对象&#xff0c;它由一组任意类型的数据以及一组与之相关的数据标签组成。 import pandas as pd…

( 数组和矩阵) 240. 搜索二维矩阵 II ——【Leetcode每日一题】

❓240. 搜索二维矩阵 II 难度&#xff1a;中等 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性&#xff1a; 每行的元素从左到右升序排列。每列的元素从上到下升序排列。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,4,7,1…

排序(快速排序 归并排序)

目录 一、快速排序 思路 动画演示 模板 注意点 二、归并排序 思路 动画演示 模板 注意点 三、习题 1.第k个数 2.数组中的逆序对* 一、快速排序 时间复杂度&#xff1a; 平均情况O(nlog2n) 最坏情况O(n^2) 思路 1. 确定分界点x (可取为q[l]、q[r]或 q[(l r) / 2])…

数据结构---堆的实现

文章目录 前言一、什么是堆&#xff1f;二、堆的实现 1.堆的结构 2.接口实现总结 前言 堆(Heap)是计算机科学中一类特殊的数据结构&#xff0c;是最高效的优先级队列。堆通常是一个可以被看做一棵完全二叉树的数组对象。 一、什么是堆&#xff1f; 现实中我们通常把堆(一种二叉…

如何借助快解析实现Tomcat的外网访问

Tomcat深受Java爱好者喜爱&#xff0c;是一个免费开源的轻量级Web应用服务器&#xff0c;是开发调试JSP程序的首选。在项目开发中&#xff0c;常遇到需要远程调试或外网演示的情况&#xff0c;在没有公网IP、路由器不做映射的情况下&#xff0c;如何将Tomcat发布到外网&#xf…

推荐5款免费好用的chatGPT平台

1 ShellGPT 这是一款出色的客户端&#xff0c;无需APIkey和科学上网即可访问chatGPT3.5以及绘画AI。项目的github地址如下&#xff1a;https://github.com/akl7777777/free-chatgpt-client-pub/&#xff0c;可在主页下载windows、linux和macOS的安装包&#xff0c;安装后即可使…

【C++】线程库互斥量库原子性操作库

文章目录 线程库thread类的介绍线程对象的构造方式thread提供的成员函数获取线程的id的方式线程函数参数join与detach 互斥量库&#xff08;mutex&#xff09;mutex的种类lock_guard和unique_lock 原子性操作库&#xff08;atomic&#xff09;条件变量库&#xff08;condition_…

Docker中应用OpenDDS

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据…

【网络】网络基础协议概念IPMAC地址

文章目录 网络基础网络的发展历程网络在哪里的问题网络协议栈各部分所处位置&#xff1a;网络协议栈各层的作用网络协议栈分层的目的 网络协议的概念 网络协议协议分层的好处理解各层之间直接通信OSI七层模型TCP/IP五层&#xff08;或四层&#xff09;模型 网络传输基本流程同局…

一个简单的servlet应用

第一个 Servlet 程序 1. 创建项目 使用 IDEA 创建一个 Maven 项目. 1.1、File -> New Project Name:javaservlet2 Location:选择要存放的路径 Language:Java Build system:Maven 点击Create按钮 1.2、Pom.xml引入依赖 依赖包来源&#xff1a; <dependencies> …

kafka 学习,笔记

前置条件&#xff0c;需要安装Java 1 去官网下载Kafka安装包 2 将安装解压缩到C盘根目录 3 在cmd命令行窗口进入kafka是根目录 cd c:\kafka_2.12-3.4.0 4 启动zookeeper服务 卡夫卡的运行需要zookeeper的支持&#xff0c;一般来说我们需要安装zookeeper&#xff0c;但是卡夫卡…

C语言程序设计研究生考试大纲

适用于全部C语言程序设计自命题院校 1.单选&#xff08;30分&#xff09;。 2.判断&#xff08;15分&#xff09;。 3.程序阅读与分析&#xff08;45&#xff09;。 4.编程题&#xff08;60分&#xff09;。 考试总分&#xff1a;150分 考试时间&#xff1a;3小时 考试内容 一…

浏览器点击下载太 LOW,如何提高下载操作的逼格?

文章目录 Part.I IntroductionChap.I 预备知识Chap.II URL Part.II 下载的方式Chap.I PythonChap.II WgetChap.III Curl Reference Part.I Introduction 用浏览器下载东西需要一个一个点击&#xff0c;当需要批量下载的时候&#xff0c;这样操作不免有些繁琐。本文整理了常用的…

指示学习(Instruct Learning)和提示(Prompt Learning)学习区别

https://arxiv.org/pdf/2109.01652.pdf 提出instruct learning的论文 指示学习是谷歌Deepmind的Quoc V.Le团队在2021年的一篇名为《Finetuned Language Models Are Zero-Shot Learners》文章中提出的思想。指示学习和提示学习的目的都是去挖掘语言模型本身具备的知识。不同的是…