树莓派打造一个适合音乐制作的系统(打样测试)

2024-01-31 06:20

本文主要是介绍树莓派打造一个适合音乐制作的系统(打样测试),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

最近把PCB打样出来了,先来大图一张,左边是树莓派zero,树莓派上面是1602LCD,往下是电源,板子中间是USB声卡和USB HUB,右边上面是输入接口和话放电路,往下是ADDA。

 设计成这样主要是不想制作外壳,直接拿一个旧的设备外壳按照原尺寸画图罢了,电位器部分还没有打样。

 

PCB设计分为话放部分,解码部分,伴奏输入部分,按钮与显示部分,电源部分共5大块。

一、话放方案

话放采用THAT1510集成电路作为第一级差分输入放大,其中G1A\G1B连接增益电位器,第二级采用NJM2100运放将THAT1510单端输出转换为差分输出,随后送入ADC的差分输入端。

二、解码方案

ADC、DAC采用PCM1863和PCM5102,PCM1863指标为110dB SNR差分输入,其中VREF引脚为前面的单端转差分运放提供1.6V参考电压,MD0引脚接地配置为I2C控制模式;时钟部分依然采用11.2896M有源晶振+分频+缓冲设计,分频依然是74hc4040,缓冲采用74hc541。(原理图中晶振应为11.2896)

三、伴奏输入

由于树莓派仅有一组I2S接口,音频只能做二进二出,如果需要增加伴奏输入就只能通过外接USB声卡实现,选用X宝最便宜的V8声卡方案BP1V808,我是直接买声卡拆机移植到打样的PCB上的,对我来说,我仅需要蓝牙输入、消原唱、USB声卡功能,其余不相干的功能可悬空处理,不需要的电位器最好接地处理,该芯片由2脚提供5V电源即可工作,5脚接地即可自动开机。

 由实测的引脚图可知,我需要的引脚是

5---------------- 电源开关

15、16--------24M晶振

26、27 --------USB数据

32---------------伴奏音量(模拟量0~3.3V)

17、39---------消原唱按钮

23、24---------消原唱LED

由于树莓派zero只有一个USB,所以采用了USB HUB芯片来完成扩展

 

四、按钮与显示

按钮选用MCP23017作为IO扩展,显示选用I2C接口的LCD1602,这一部分有很多资料可查,我就不出图了。

五、电源部分

电源分为3组,一组为树莓派提供5V,一组为电容麦克风的48V幻象电源,一组为运放的正负电源,ADDA用的AVDD和DVDD、继电器电源由运放正电源通过LDO稳压至3.3V。

 

=========================================================================

上电测试,如果电路工作正常,查询I2C设备应该会看到三个设备的地址,分别是MCP23017,PCF8574,PCM1863

sudo i2cdetect -y 1

 如果USB声卡工作正常,其中sndrpicard是原生I2S声卡,audio是USB声卡,首先用原生声卡启动jack服务,然后启动终端添加一组接口

alsa_in -d hw:audio

 这样手机连接BP1V808的蓝牙以后,音频就通过USB传入alsa_in

 最后看一看THAT1510+PCM1863方案的底噪吧,基本在-90左右,个人感觉相当出色的话放。

 

这篇关于树莓派打造一个适合音乐制作的系统(打样测试)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/662826

相关文章

C#实现系统信息监控与获取功能

《C#实现系统信息监控与获取功能》在C#开发的众多应用场景中,获取系统信息以及监控用户操作有着广泛的用途,比如在系统性能优化工具中,需要实时读取CPU、GPU资源信息,本文将详细介绍如何使用C#来实现... 目录前言一、C# 监控键盘1. 原理与实现思路2. 代码实现二、读取 CPU、GPU 资源信息1.

在C#中获取端口号与系统信息的高效实践

《在C#中获取端口号与系统信息的高效实践》在现代软件开发中,尤其是系统管理、运维、监控和性能优化等场景中,了解计算机硬件和网络的状态至关重要,C#作为一种广泛应用的编程语言,提供了丰富的API来帮助开... 目录引言1. 获取端口号信息1.1 获取活动的 TCP 和 UDP 连接说明:应用场景:2. 获取硬

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

用Java打造简易计算器的实现步骤

《用Java打造简易计算器的实现步骤》:本文主要介绍如何设计和实现一个简单的Java命令行计算器程序,该程序能够执行基本的数学运算(加、减、乘、除),文中通过代码介绍的非常详细,需要的朋友可以参考... 目录目标:一、项目概述与功能规划二、代码实现步骤三、测试与优化四、总结与收获总结目标:简单计算器,设计

Debian如何查看系统版本? 7种轻松查看Debian版本信息的实用方法

《Debian如何查看系统版本?7种轻松查看Debian版本信息的实用方法》Debian是一个广泛使用的Linux发行版,用户有时需要查看其版本信息以进行系统管理、故障排除或兼容性检查,在Debia... 作为最受欢迎的 linux 发行版之一,Debian 的版本信息在日常使用和系统维护中起着至关重要的作

什么是 Linux Mint? 适合初学者体验的桌面操作系统

《什么是LinuxMint?适合初学者体验的桌面操作系统》今天带你全面了解LinuxMint,包括它的历史、功能、版本以及独特亮点,话不多说,马上开始吧... linux Mint 是一款基于 Ubuntu 和 Debian 的知名发行版,它的用户体验非常友好,深受广大 Linux 爱好者和日常用户的青睐,