Indholdsfortegnelse:

Midi Record/Play/Overdub Med 5-pins tilslutninger: 3 trin
Midi Record/Play/Overdub Med 5-pins tilslutninger: 3 trin

Video: Midi Record/Play/Overdub Med 5-pins tilslutninger: 3 trin

Video: Midi Record/Play/Overdub Med 5-pins tilslutninger: 3 trin
Video: Joué Play - Review 2024, Juli
Anonim
Midi Record/Play/Overdub med 5-pins tilslutninger
Midi Record/Play/Overdub med 5-pins tilslutninger

* Bruger en ATMega-1284-chip, der kører ved 8 MHz, med 4 k Bytes RAM og 4 kBytes eeprom

* Bruger de gamle DIN 5-polede stik

* Tillader optagelse og afspilning samt overdub: optagelse sammen med noget, du har optaget før.

* Fuld menu

* Mulighed for at navngive og gemme en fil i eeprom

* Redigerbare tempoer og tidssignaturer

* Rudimentær kvantisering

Nyttighed* Bevis for koncept: du kan finde dette projekt udfordrende.

Hvad denne vejledning indeholder:

* Liste over dele

* Projektrapport (vedhæftet dette panel)

Indeholder en masse information, du har brug for at vide om projektet

* Link til C -koden på GitHub

github.com/sugarvillela/ATMega1284

* Trin-for-trin instruktioner til opbygning af projektet og tilpasning af koden

Trin 1: Deleliste

Liste over dele
Liste over dele

Nogle dele fik jeg på skolen med rabat. Nogle fik jeg i en butik og betalte for meget. Hvis du har tid, kan du få alt dette online.

1 brødbræt, enhver model, omtrent samme størrelse som det på introduktionsbilledet, $ 20

1 mikroprocessor, model ATMega1284, $ 5

Dette er en alsidig chip med gode funktioner. Find databladet her:

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

1 5-volts strømforsyning

1 ATMEL-ICE

Dette er grænsefladen mellem din computer og mikroprocessoren. Du har også brug for noget koderedigeringssoftware (en IDE) og en compiler, der kan krydskompilere C til arkitekturen i ATMega-chippen. Atmel leverer et miljø, Atmel Studio, der opfylder disse krav. Download den her:

1 optokobling, model 6N138 eller tilsvarende, $ 5

Dette er for input; midi -standarden kræver, at enheder isoleres fra hinanden for at forhindre jordsløjfer. Jeg brugte NEC-tilsvarende chip med identisk pin-out-arrangement. Se billedet ovenfor for info eller bare google '6n138 pinout'. Hvis du bruger en model med forskellige pin -tildelinger, skal du finde de tilsvarende pins (omhyggeligt).

2 LCD -skærme, model 1602A1, $ 3 hver

Jeg brugte 2*16 displays, hvilket betyder, at de har 2 rækker, hver 16 tegn bred. Koden er skrevet specielt til disse, så prøv at bruge de samme. Forbindelser er: 8 datalinjer og 2 kontrollinjer. Du kan dele datalinjerne mellem de to skærme, men du har brug for 2 kontrollinjer for hver, i alt 4 kontrollinjer. Mit projekt bruger bus C til LCD -datalinjer og den øvre nibble af bus D til kontrollinjer. Hvis du kører din på en anden måde, skal du ændre outputbusserne i din kode.

1 højttaler

Til metronomudgang; enhver højttaler vil gøre. Du fodrer den med 3-5 volt firkantede bølger, så det behøver ikke at lyde smukt. Du kan også tilslutte til en ekstern forstærker.

1 kondensator, for at blødgøre firkantbølgens output til højttaleren

2 5-polede DIN-stik, han eller hun

Jeg brugte hankabler og sluttede dem til brættet. For en mere elegant løsning, brug hunstik og tilslut hankabler til andre enheder. (Husk stiftnumrene er bagud, afhængigt af hvilken måde du ser på stikket!)

Modstande, 180-330 Ohm, 1k-10kOhm

Du skal muligvis eksperimentere med modstandsværdier for at få optokobleren til at spore input hurtigt nok

LED'er

Designet kræver en diode på tværs af opto-isolatorindgangen, men en LED vil klare det. Brug en LED til metronomen til at blinke i takt med den bipende højttaler. Har flere LED'er til rådighed til fejlfinding af output, hvis du har brug for dem.

Ledninger, masser af ledninger

20-22 gauge, massive tråde, lange, korte og bittesmå.

Trin 2: C -kode

Gå til github for at få koden:

* Sørg for at læse og forstå koden, fordi du muligvis skal ændre den for at passe til anden hardware.

* Projektrapporten på intropanelet indeholder detaljerede beskrivelser af softwaremodulerne og hvordan de interagerer.

* Ingen kopi-indsæt. Interagere med koden; eksperiment; omskrive. Du kan sikkert forbedre det.

Trin 3: Første ledningsføring (se vejledning til projektfotoet)

Første ledningsføring (se projektfotoet for vejledning)
Første ledningsføring (se projektfotoet for vejledning)
Første ledningsføring (se projektfotoet for vejledning)
Første ledningsføring (se projektfotoet for vejledning)

Noter om projektfotoet, inden vi starter

På billedet er optokobleren den sidste chip til højre, og processoren er den store chip til venstre.

Du vil bemærke to andre chips imellem med en masse modstande tilsluttet. Ignorer dem venligst. Det er skifteregistre, som ikke bruges i dette projekt. Hvis du nogensinde har lyst til at tilføje et LED -array, finder du ud af, hvad de er til.

Den runde sorte ting er højttaleren (en piezo -summer).

Knapperne er øverst til venstre. Det er temmelig langt fra bus A nederst til højre på chippen.

LCD -skærmen til venstre er LCD 0. Den til højre er LCD 1.

I disse instruktioner vil jeg antage, at du bruger den nøjagtige del, der er angivet (hvor som helst der er angivet et modelnummer på delelisten).

Tilslut strømforsyningen

Brødbrættet har strømskinner rundt om kanterne og mellem sektioner. Brug korte ledninger til at forbinde dem alle sammen og til at slutte dem til strømforsyningen. Nu kan du få adgang til positiv og jord overalt på tavlen.

Chips

Installer ATMega Chip, pas på ikke at bøje stifterne (en god forsigtighed for enhver chip) og sørg for, at den sidder helt ind.

Installer optokobleren ved siden af processoren.

Tilslut strømforsyningsskinnerne til de relevante ben på processoren og optokobleren.

LCD -skærme

Læs den medfølgende fil LCDhookup.pdf (nedenfor) for at få hjælp til at forbinde en LCD.

Hver skærm har to strømforbindelser og tre jordforbindelser.

Pin 3 er en lysstyrkekontrol, der, hvis den er indstillet forkert, vil gøre skærmindholdet usynligt. Hvis du har et potentiometer til rådighed, kan du bruge dette til at justere styrespændingen. Du kan også prøve faste modstande for at få spændingen omkring 1/2 af VCC.

Stifter 4 og 6 på LCD 0 forbindes til D4 og D5 på processoren. Disse bruges til at aktivere og nulstille skærmen.

Stifter 4 og 6 på LCD 1 tilsluttes D6 og D7 på processoren.

Pins 7-17 på begge LCD'er tilsluttes C0-C7 på processoren. Dette er en delt databus. Hver skærm ignorerer dataene, indtil der kommer et kontrolsignal på pin 4 og 6.

Læs: LCD -oplysninger og mere info for at hjælpe med at forstå, hvordan LCD -skærmene fungerer.

Knapper

Tilslut de fire knapper til A2-A4 på processoren. (Jeg lod A1 stå åben for A/D -konverterindgang, men brugte den ikke.)

På enhver form for logisk chip flyder en ikke -forbundet input højt, hvilket betyder, at processoren vil se en 1 på denne input. For at kontrollere dette skal du tilslutte stifter til jorden via en modstand. Jeg tilsluttede knapperne til jorden (gennem modstanden), når den ikke blev trykket, og høj, når den blev trykket på. Brug en hvilken som helst modstand 330 til 1k til dette formål.

Alternativt, og måske mere strømeffektivt, kan du koble knapperne til at være høje, når de ikke trykkes ned, og når de trykkes ned. Du bliver nødt til at ændre koden (buttonBus.c) for at lede efter ~ PINA i stedet for PINA.

Anbefalede: