资料介绍
描述
曾经想根据 80 年代的旧芯片曲调构建自己的合成器吗?播放简单的复调曲调,听起来就像这些旧的 Sega Master System 和 Megadrive 视频游戏听起来像?
我有,所以,我从 ebay 订购了一些 SN76489 芯片和一个 MIDI 主机接口并试了一下。好吧,对我来说,这不是在公园里散步,但是,我很享受每一刻。
首先,我学会了如何直接连接 SN76489 并用它制造一些噪音。这有一些令人困惑的元素,但是在 The Oddbloke Geek Blog 和其他一些示例的帮助下,连同芯片规范文档,我能够开发一个简单的 arduino 库。
接下来,我必须学习如何将 MIDI 键盘与 USB 迷你主机屏蔽连接。这并不难,因为有一些可用的文档,并且存在带有清晰示例的好的库。
一旦我了解了如何控制芯片以及如何连接我的 USB MIDI 键盘,剩下要做的就是编写一些代码,将所有这些封装在一起,并允许我使用键盘来控制芯片。
在此过程中,我了解到频率低于我尝试为 0x2f MIDI 音符生成的声音听起来不正确,因此,我决定使用它来允许为 0x28 和 0x2f 之间的任何 MIDI 音符发送噪音到噪音发生器并且还允许播放带有东方阿拉伯风格的音符,用于低于 midi 0x28 的任何内容。
回顾过去,构建起来非常有趣且非常有趣。
我希望你和我一样觉得它有趣有趣,如果你自己建造一个,你会很乐意分享一些照片。
如果您喜欢这个项目,请在下方为它投票,以帮助赢得它参与的比赛。
补给品:
1 x 性能板 |
1 x arduino nano |
1 x USB 迷你屏蔽 |
1 x SN76489 声音芯片 |
1 个移位寄存器 595 |
1 x 4MHz 晶振 |
1 x 5V 稳压器 7805 |
1 x 稳压器散热器 |
3 x 10uF 电容器 |
电线|
1 x 12v 电源连接器 |
1 个开/关开关 |
一个合适的盒子(我用一个在我的储藏室里放了多年的旧抽屉做了我的)
第 1 步:准备 USB Mini Host Shield 以驱动 5V Midi 设备
由于 USB mini host shield 工作在 3.3V,而我使用的 USB midi 键盘需要 5V,所以需要通过切断连接到 USB out Vcc 的 3.3V 线来调整 shield 的输出电压,所以,我们以后可以连接它至 5V。
有很多关于如何做到这一点的教程,结果很简单:
只需切断 2k2 电阻和 Vcc 线之间的线(见附图)。我用螺丝刀刮了这条线,并测试了它是否与连续性计一起使用。
第 2 步:将 USB Mini Shield 与您的 Arduino Nano 连接
幸运的是,有很多关于如何做到这一点的信息,所以,通过谷歌搜索“Arduino Nano 和 mini USB 主机屏蔽”,我登陆了这个线程https://forum.arduino.cc/index.php?topic=603476.0
它描述了如何连接 USB mini v2.0 扩展板,在遵循它之后,我直接测试了一些 USB MIDI 示例。
接线:
Arduino主机盾
10--------------5
11--------------6
12--------------7
13--------------8
2----------------2
5V--------------1
3.3V------------9
接地-----------3
RST------------4
在这个线程中,还提到他们切断了 3.3V 引线,以便 USB 可以从 VBUS 获得 5V。
此描述和随附的图像来自此线程。
顺便说一句,这个板上的印刷品有一个错误,所以这有点令人困惑,但是,你可以看到我对此的反馈 (tyrkelko) 以及我从哪里学到的。
第 3 步:筹码有人吗?添加具有 4MHz 振荡器的 SN76489。和 595 移位寄存器
现在是时候添加产生这种惊人声音的芯片了。
我已经开发了一个库来将 arduino 与这个芯片连接起来,并且只需要按照我的说明进行操作。
该库在 GPLv3(我的第一个开源版本)下在 github 上发布。
https://github.com/tyrkelko/sn76489
76489 和 595 的连接如从库 readme.txt 文件中捕获的随附图像中所示
76489 的低电平写入启用 (NotWE) 与 nano 的引脚 3 连接,可以在代码中更改。
#define PIN_NotWE 3
595 与 nano 的连接方式如下,也可以通过编辑引脚号进行调整:
#define PIN_SER 7
#define PIN_LATCH 6
#define PIN_CLK 5
我使用的振荡器是一个有 4 条腿的 4MHz 晶体振荡器。
它在代码中配置如下,您可以将其值调整为 500kHz 和 4MHz 之间的任何振荡器频率:
#define 频率 4000000.0
连接我使用的振荡器如下:
引脚 1 - 未连接
引脚 7 - 接地
引脚 8 - 连接到 76489 引脚 14 - 时钟 osc
第 4 步:只需添加代码 - 添加库、编译和上传代码
本项目中用到的库需要添加到 Arduino IDE 中,如下:
打开 Arduino IDE
将以下库下载到 IDE 的库文件夹中(希望很快能在 IDE“工具”菜单的“管理库...”菜单下看到这些):
https://github.com/felis/USB_Host_Shield_2.0
https://github.com/tyrkelko/sn76489
使用以下 github 项目中的代码:
https://github.com/tyrkelko/usb_midi_tone
下载 usb_midi_tone.ino,编译并上传到您的 Arduino nano。
第 5 步:连接放大器和扬声器,连接 USB Midi 键盘并进行测试
现在是时候测试一切是否正常了。
为此,我们需要:
1.放大器和扬声器
2. USB MIDI 键盘
将 SN76489 引脚 7(音频输出)连接到放大器音频输入。
给放大器加电,然后给 arduino nano 加电。您现在应该能听到一秒钟的开机测试声音。
连接 USB MIDI 键盘并测试。
如果一切正常,您应该可以同时播放 3 种音调,还可以播放 8 种噪音,甚至是 24 EDO-Scale 的四分之一音。
如果它不起作用,请检查步骤以查看可能出了什么问题。
如果您觉得这是由于说明不明确造成的,请给我留言,以便我更新说明以修复它。
第 6 步:使用 5V 稳压器、12V 连接器、电源开/关开关和电源 LED 完成电路
在这一步中,您应该能够在测试电路工作正常后将其包装起来。
1.添加一个LM7805和两个10uF电容和0.1uF的电源调节器。有很多关于这方面的教程,
2. 添加一个 12V 电源连接器,Vcc 通过开/关开关连接
3. 增加一个带限流电阻的LED,用于指示何时上电。
第 7 步:装在盒子里,上色并享受您的新合成器
一旦电路经过测试并按照您的喜好工作,除了建造一个漂亮的外壳,用令人敬畏的颜色涂上它并播放一些音乐之外,没有什么可做的了。
我希望您喜欢阅读本教程,并且它启发了您构建自己的合成器或开始您正在从事的另一个项目。
如有任何问题,请在下面发表评论,如果您根据本教程构建了类似的东西,如果您能在“我做了这个!”中分享您所做的,那就太好了。区域或反馈部分。
- Arduino Atari朋克合成器
- Arduino合成器
- 基于Arduino的频率合成器 2次下载
- 基于Arduino Micro的简单USB MIDI适配器 2次下载
- 基于Arduino Nano R3的MIDI音序器—Cthulhinho 0次下载
- 基于Arduino的MIDI音序器Cthulhinho 0次下载
- Lo Fi Arduino Nano合成器模块
- 用于整桶FB3100合成器的大型MIDI控制器
- FuniFi Midistik是用于合成器的紧凑型可编程MIDI控制器
- 易于为Eurorack合成器构建无源mult
- Arduino合成器V3设计案例
- RFDM的PNP-1050-L22-G插入式窄带合成器详细资料免费下载
- 径向功率分配合成器的设计 53次下载
- 射频锁相频率合成器的设计与仿真 101次下载
- ΣΔ威廉希尔官方网站 在锁相环频率合成器中的应用
- 时钟合成器和时钟发生器的区别 587次阅读
- 关于相位锁定环(PLL)频率合成器的设计和分析 1231次阅读
- 射频合成器的主要作用 615次阅读
- 数字频率合成器的作用 841次阅读
- 如何制作一个音频合成器? 1840次阅读
- 如何创建基于DCO的音频合成器 814次阅读
- 将MAX2902与外部频率合成器组合 597次阅读
- PicScope高级函数功能应用——验证射频信号合成器的停延时间(Dwell time) 1275次阅读
- 10KW合成器拆卸的技巧有哪些 1525次阅读
- 基于AD9954和ADF4113芯片实现频率合成器的设计 3574次阅读
- 频率合成器MBl5U36的结构性能及应用分析 2521次阅读
- Mitch Altman是如何创建ArduTouch音乐合成器的? 3657次阅读
- 基于锁相环频率合成器的关于合成器的简要概述 4567次阅读
- 基于FPGA的数字示波器波形合成器研究 2745次阅读
- 基于DDS芯片和集成锁相芯片构成的宽频合成器设计 2675次阅读
下载排行
本周
- 1使用单片机实现七人表决器的程序和仿真资料免费下载
- 2.96 MB | 44次下载 | 免费
- 2Keysight B1500A 半导体器件分析仪用户手册、说明书 (中文)
- 19.00 MB | 4次下载 | 免费
- 3BT134双向可控硅手册
- 1.74 MB | 2次下载 | 1 积分
- 4一种新型高效率的服务器电源系统
- 0.85 MB | 1次下载 | 1 积分
- 5PR735,使用UCC28060的600W交错式PFC转换器
- 540.03KB | 1次下载 | 免费
- 6WTS-100(1.1) UWB 信标定位系统 彩页
- 540.48 KB | 1次下载 | 免费
- 7DV2004S1/ES1/HS1快速充电开发系统
- 2.08MB | 1次下载 | 免费
- 8MATLAB绘图合集
- 27.12 MB | 1次下载 | 5 积分
本月
- 1使用单片机实现七人表决器的程序和仿真资料免费下载
- 2.96 MB | 44次下载 | 免费
- 2UC3842/3/4/5电源管理芯片中文手册
- 1.75 MB | 15次下载 | 免费
- 3DMT0660数字万用表产品说明书
- 0.70 MB | 13次下载 | 免费
- 4ST7789V2单芯片控制器/驱动器英文手册
- 3.07 MB | 11次下载 | 1 积分
- 5TPS54202H降压转换器评估模块用户指南
- 1.02MB | 8次下载 | 免费
- 6STM32F101x8/STM32F101xB手册
- 1.69 MB | 8次下载 | 1 积分
- 7TPS92682-Q1帧定义和示例
- 891.71KB | 6次下载 | 免费
- 8HY12P65/HY12P66数字万用表芯片规格书
- 0.69 MB | 6次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935119次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420061次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233084次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191367次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183335次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81581次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73807次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65987次下载 | 10 积分
评论
查看更多