Arduino USB MIDI接口的制作

网友投稿 713 2022-11-12

Arduino USB MIDI接口的制作

步骤1:组件

Atmega8微控制器

套接字DIP28

连接器5x2引脚(可选)

连接器1x4引脚

石英16Mhz

电阻2k2

电阻68欧姆

原型板

步骤2:原理图

电路图很简单。

区别在于我们将要放入ATmega8的固件。

第3步:安装USB连接器

要安装USB连接器,我们需要制作两个2-2.5mm的孔。

步骤6:安装DIP28 Soket

。..以及电容器和16 MHz石英。

步骤7:模块已完成

安装4针连接器后模块已完成。

从左开始向右:

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转换器。

现在我们可以在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() {

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);

}

步骤10:屏幕截图

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:mysql基本功能 增,删,改,查
下一篇:Nginx中AWStats日志分离的详细部署
相关文章

 发表评论

暂时没有评论,来抢沙发吧~