Taula de continguts:

Midi Record / Play / Overdub amb connexions de 5 pins: 3 passos
Midi Record / Play / Overdub amb connexions de 5 pins: 3 passos

Vídeo: Midi Record / Play / Overdub amb connexions de 5 pins: 3 passos

Vídeo: Midi Record / Play / Overdub amb connexions de 5 pins: 3 passos
Vídeo: Top 5 Best Keyboard Workstations For Musicians & Producers 2024, De novembre
Anonim
Midi Record / Play / Overdub amb connexions de 5 pins
Midi Record / Play / Overdub amb connexions de 5 pins

* Utilitza un xip ATMega-1284 que funciona a 8 MHz, amb 4 k bytes de RAM i 4 kBytes d'eeprom

* Utilitza els antics connectors DIN de 5 pins

* Permet gravar i reproduir, així com overdub: gravar juntament amb alguna cosa que hàgiu gravat abans.

* Menú complet

* Capacitat de nomenar i emmagatzemar un fitxer a eeprom

* Temps editables i signatures temporals

* Quantització rudimentària

Utilitat * Prova del concepte: és possible que aquest projecte sigui un repte.

Què inclou aquest tutorial:

* Llista de peces

* Informe del projecte (adjunt a aquest panell)

Conté molta informació que heu de saber sobre el projecte

* Enllaç al codi C a GitHub

github.com/sugarvillela/ATMega1284

* Instruccions pas a pas per construir el projecte i adaptar el codi

Pas 1: llista de peces

Llista de peces
Llista de peces

Algunes parts les vaig aconseguir a l’escola amb un descompte. Alguns els vaig aconseguir en una botiga i en vaig pagar massa. Si teniu temps, feu-ho tot en línia.

1 Tauler de pa, qualsevol model, aproximadament de la mateixa mida que la de la foto de presentació, 20 dòlars

1 microprocessador, model ATMega1284, 5 dòlars

Es tracta d’un xip versàtil amb excel·lents funcions. Trobeu el full de dades aquí:

ww1.microchip.com/downloads/en/devicedoc/atmel-42718-atmega1284_datasheet.pdf

1 font d'alimentació de 5 volts

1 ATMEL-ICE

Aquesta és la interfície entre l’ordinador i el microprocessador. També necessiteu un programari d'edició de codi (un IDE) i un compilador que pugui compilar de forma creuada C amb l'arquitectura del xip ATMega. Atmel proporciona un entorn Atmel Studio que compleix aquests requisits. Descarregueu-lo aquí:

1 optoacoblador, model 6N138 o equivalent, 5 dòlars

Això és per a l'entrada; l'estàndard midi requereix que els dispositius estiguin aïllats entre si per evitar bucles de terra. He utilitzat el xip equivalent NEC amb la mateixa disposició de pin-out. Consulteu la foto de més amunt per obtenir informació o simplement google '6n138 pinout'. Si utilitzeu un model amb diferents assignacions de pins, busqueu els pins corresponents (amb cura).

2 pantalles LCD, model 1602A1, 3 dòlars cadascuna

He utilitzat pantalles de 2 * 16, és a dir, que tenen 2 files de 16 caràcters cadascuna. El codi està escrit específicament per a aquests, així que intenteu utilitzar els mateixos. Les connexions són: 8 línies de dades i 2 línies de control. Podeu compartir les línies de dades entre les dues pantalles, però necessiteu 2 línies de control per a cadascuna, per a un total de 4 línies de control. El meu projecte utilitza el bus C per a les línies de dades LCD i la mordassa superior del bus D per a les línies de control. Si connecteu el vostre de manera diferent, canvieu els busos de sortida del vostre codi.

1 altaveu

Per a la sortida del metrònom; ho farà qualsevol orador. L’alimentareu d’unes ones quadrades de 3-5 volts, de manera que no cal que soni bonic. També podeu connectar-vos a un amplificador extern.

1 condensador, per suavitzar la sortida d'ona quadrada a l'altaveu

2 connectors DIN de 5 pins, mascle o femella

Vaig fer servir cables masculins i els vaig connectar a la placa. Per obtenir una solució més elegant, utilitzeu connectors femella i connecteu cables masculins a altres dispositius. (Recordeu que els números de pin es retrocedeixen en funció de la forma de mirar el connector.)

Resistències, 180-330 Ohm, 1k-10kOhm

És possible que hàgiu d’experimentar amb valors de resistència per aconseguir que l’optoacoblador faci un seguiment prou ràpid de l’entrada

LEDs

El disseny requereix un díode a través de l'entrada opto-aïllant, però un LED sí. Utilitzeu un LED per al metrònom per parpellejar a temps amb l’altaveu sonor. Teniu a mà més LED per depurar la sortida si els necessiteu.

Filferros, molts fils

Calibre 20-22, cables sòlids, llargs, curts i diminuts.

Pas 2: Codi C

Aneu a github per obtenir el codi:

* Assegureu-vos que heu llegit i entès el codi perquè és possible que hagueu d’alterar-lo per adaptar-lo a maquinari diferent.

* L'informe del projecte al tauler d'introducció conté descripcions detallades dels mòduls de programari i de com interactuen.

* Sense copiar-enganxar. Interactua amb el codi; experimentar; reescriure. Probablement el podeu millorar.

Pas 3: cablejat inicial (consulteu la foto del projecte per obtenir orientació)

Cablatge inicial (consulteu la foto del projecte per obtenir orientacions)
Cablatge inicial (consulteu la foto del projecte per obtenir orientacions)
Cablatge inicial (consulteu la foto del projecte per obtenir orientacions)
Cablatge inicial (consulteu la foto del projecte per obtenir orientacions)

Notes sobre la foto del projecte abans de començar

A la foto, l'optoacoblador és l'últim xip de la dreta i el processador és el gran xip de l'esquerra.

Notareu altres dos xips entremig amb un munt de resistències connectades. Ignoreu-los, si us plau. Són registres de torns, que no s’utilitzen en aquest projecte. Si mai teniu ganes d’afegir una matriu de LEDs, descobrireu per a què serveixen.

El negre rodó és l’altaveu (un zumbador piezoelèctric).

Els botons són a la part superior esquerra. Està força lluny de l’autobús A a la part inferior dreta del xip.

La pantalla LCD de l'esquerra és LCD 0. La de la dreta és LCD 1.

En aquestes instruccions, assumiré que utilitzeu la peça exacta especificada (sempre que es doni un número de model a la llista de peces).

Cablegeu la font d'alimentació

El tauler de suport té rails elèctrics al voltant de les vores i entre seccions. Utilitzeu cables curts per enllaçar-los tots i connectar-los a la font d'alimentació. Ara podeu accedir a positiu i a terra des de qualsevol lloc del tauler.

Xips

Instal·leu el xip ATMega, tenint cura de no doblegar els pins (una bona precaució per a qualsevol xip) i assegurant-vos que estigui assegut completament.

Instal·leu l’acoblador opto adjacent al processador.

Connecteu els rails de la font d’alimentació als pins adequats del processador i de l’acoblador opto.

LCD

Llegiu el fitxer inclòs LCDhookup.pdf (a continuació) per obtenir ajuda per connectar un LCD.

Cada pantalla té dues connexions d'alimentació i tres connexions a terra.

El pin 3 és un control de brillantor que, si s’estableix malament, farà que el contingut de la pantalla sigui invisible. Si teniu un potenciòmetre a mà, utilitzeu-lo per ajustar la tensió de control. També podeu provar resistències fixes per obtenir la tensió aproximadament 1/2 de VCC.

Els pins 4 i 6 de la pantalla LCD 0 es connecten a D4 i D5 al processador. S'utilitzen per habilitar i restablir la pantalla.

Els pins 4 i 6 de la pantalla LCD 1 es connecten a D6 i D7 al processador.

Els pins 7-17 de les dues pantalles LCD es connecten a C0-C7 del processador. Es tracta d’un bus de dades compartit. Cada pantalla ignorarà les dades fins que aparegui un senyal de control al pin 4 i 6.

Llegiu: Informació LCD i més informació per ajudar a entendre el funcionament de les pantalles LCD.

Botons

Connecteu els quatre botons a A2-A4 del processador. (Vaig deixar A1 obert per a l'entrada del convertidor A / D, però no el vaig fer servir).

En qualsevol tipus de xip lògic, una entrada no connectada flota alt, el que significa que el processador veurà un 1 en aquesta entrada. Per controlar-ho, heu de connectar els pins a terra mitjançant una resistència. Vaig connectar els botons perquè estiguessin a terra (a través de la resistència) quan no es premien i alts quan es premen. Utilitzeu qualsevol resistència 330 a 1k per a aquest propòsit.

Alternativament, i potser amb una eficiència energètica més elevada, podeu connectar els botons per estar alts quan no es premen i baixos quan es prem. Haureu de canviar el codi (buttonBus.c) per buscar ~ PINA en lloc de PINA.

Recomanat: