步骤1:组件
Atmega8微控制器
套接字DIP28
极化电容器10uF〜50uF
连接器5x2引脚(可选)
连接器1x4引脚
石英16Mhz
陶瓷电容器33pF
电阻2k2
电阻68欧姆
Zenner Diodes 3V6
原型板
步骤2:原理图

电路图很简单。
这是用于实现USBasp编程器的标准原理图。
区别在于我们将要放入ATmega8的固件。
第3步:安装USB连接器
要安装USB连接器,我们需要制作两个2-2.5mm的孔。
步骤4:安装电阻器
步骤6:安装DIP28 Soket
。..以及电容器和16 MHz石英。
步骤7:模块已完成
安装4针连接器后模块已完成。
从左开始向右:
Pin 1-Gnd
Pin 2-Vdd
Pin 3-Rx
Pin 4-Tx
我尚未安装5x2pin ISP连接器,因为我已经可以在先前制造的模块上写入固件。
如果无法在外部写入固件该项目将必须安装ISP连接器(5x2pin)并根据示意图进行连接。
步骤8:刻录固件
要为ATmega8编写固件,我们需要一个程序员。图像中的一个是USBasp。当然,您也可以使用任何其他兼容的编程器。
MidiShield1Hex.zip仅包含十六进制文件。
MidiShield1.zip包含整个AVR Studio 4项目。
固件是MOCO/MICO的略微修改版本– USB转MIDI转换器。
。
步骤9:与Arduino配合使用
现在我们可以在Arduino开发板和USB模块之间建立连接。
实际上,这很简单。只需插入两个微控制器的串行端口和GND:
RX从Atmega8到Atmega32的TX(或Arduino的TX)
TX从Atmega8到Atmega32的RX(或Arduino的RX)
GND从Atmega8到Atmega32(Arduino)的GND
在我的设置中我未连接VCC,因为USB接口由USB供电端口(或HUB)和Arduino(Atmega32)分别供电。
现在,我们可以使用Arduino IDE进行首次测试。如您所见,它可以与标准示例文件》》示例》》通信》》 MIDI一起使用。
void setup() {
// Set MIDI baud rate:
Serial.begin(31250);
}
void loop() {
// play notes from F#-0 (0x1E) to F#-5 (0x5A):
for (int note = 0x1E; note 《 0x5A; note ++) {
//Note on channel 1 (0x90), some note value (note), middle velocity (0x45):
noteOn(0x90, note, 0x45);
delay(100);
//Note on channel 1 (0x90), some note value (note), silent velocity (0x00):
noteOn(0x90, note, 0x00);
delay(100);
}
}
// plays a MIDI note. Doesn‘t check to see that
// cmd is greater than 127, or that data values are less than 127:
void noteOn(int cmd, int pitch, int velocity) {
Serial.write(cmd);
Serial.write(pitch);
Serial.write(velocity);
}
您还可以安装以下库:https://github.com/FortySevenEffects/arduino_midi_library。
步骤10:屏幕截图



在ATmega8中刻录固件并建立连接后,我将USB电缆连接到了计算机。Windows立即检测到该设备并安装了标准驱动程序。不需要其他驱动程序(在Windows7-64bit和WindowsXP-32bit上测试)。
我还使用Fl Studio和Traktor进行了测试。
责任编辑:wv
-
接口
+关注
关注
33文章
9446浏览量
156143 -
MIDI
+关注
关注
0文章
78浏览量
16707 -
Arduino
+关注
关注
190文章
6515浏览量
195973
发布评论请先 登录
USB接口的革命性进化之路
USB 接口无法识别外接设备怎么办?
Texas Instruments USB-TO-GPIO2接口适配器技术解析
嵌入式接口通识知识之USB接口
WT588F02B-8S(B2)语音芯片MIDI版本说明V1
基于Arduino的MIDI架子鼓创建
LPC55 USB端点rx数据无响应是哪里出了问题?
极致性价比USB-C接口ESD保护方案
STM32开发板一般都会配置arduino接口,是不是基本上也都会支持arduino?
USB转JTAG&SPI&I2C,还能玩转MIDI?CH345芯片的强大功能解析
MIDI Unit:专业音频控制单元,玩转MIDI音乐制作
USB-A/C 2in1接口的未来应用前景分析

Arduino USB MIDI接口的制作
评论