Sommario:
- Passaggio 1: elenco delle parti
- Passaggio 2: codice C
- Passaggio 3: cablaggio iniziale (fare riferimento alla foto del progetto per indicazioni)
Video: Registrazione/riproduzione/sovraincisione MIDI con connessioni a 5 pin: 3 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:03
* Utilizza un chip ATMega-1284 funzionante a 8 MHz, con 4 kByte di RAM e 4 kByte di eeprom
* Utilizza i vecchi connettori DIN a 5 pin
* Consente la registrazione e la riproduzione, oltre alla sovraincisione: registra insieme a qualcosa che hai registrato in precedenza.
* Menù completo
* Possibilità di nominare e memorizzare un file in eeprom
* Tempi e tempi in chiave modificabili
* Quantizzazione rudimentale
Utilità* Proof of concept: potresti trovare questo progetto impegnativo.
Cosa include questo tutorial:
* Elenco delle parti
* Report del progetto (allegato a questo pannello)
Contiene molte informazioni che devi sapere sul progetto
* Link al codice C su GitHub
github.com/sugarvillela/ATMega1284
* Istruzioni passo passo per costruire il progetto e adattare il codice
Passaggio 1: elenco delle parti
Alcune parti le ho prese a scuola con uno sconto. Alcuni li ho presi in un negozio e li ho pagati troppo. Se hai tempo, scarica tutto questo online.
1 tagliere, qualsiasi modello, delle stesse dimensioni di quello nella foto introduttiva, $ 20
1 Microprocessore, modello ATMega1284, $5
Questo è un chip versatile con grandi caratteristiche. Trovi la scheda tecnica qui:
ww1.microchip.com/downloads/en/devicedoc/atmel-42718-atmega1284_datasheet.pdf
1 alimentatore da 5 Volt
1 ATMEL-ICE
Questa è l'interfaccia tra il computer e il microprocessore. È inoltre necessario un software di modifica del codice (un IDE) e un compilatore in grado di eseguire la compilazione incrociata del C nell'architettura del chip ATMega. Atmel fornisce un ambiente, Atmel Studio, che soddisfa questi requisiti. Scaricalo qui:
1 fotoaccoppiatore, modello 6N138 o equivalente, $ 5
Questo è per l'input; lo standard midi richiede che i dispositivi siano isolati l'uno dall'altro per evitare loop di massa. Ho usato il chip equivalente NEC con la stessa disposizione dei pin. Vedi la foto sopra per informazioni o semplicemente google '6n138 pinout'. Se utilizzi un modello con diverse assegnazioni dei pin, trova i pin corrispondenti (con attenzione).
2 schermi LCD, modello 1602A1, $ 3 ciascuno
Ho usato display 2*16, il che significa che hanno 2 righe, ciascuna larga 16 caratteri. Il codice è scritto appositamente per questi, quindi prova a usare gli stessi. I collegamenti sono: 8 linee dati e 2 linee di controllo. È possibile condividere le linee dati tra i due schermi, ma sono necessarie 2 linee di controllo per ciascuno, per un totale di 4 linee di controllo. Il mio progetto utilizza il bus C per le linee dati LCD e il nibble superiore del bus D per le linee di controllo. Se colleghi il tuo in modo diverso, cambia i bus di uscita nel tuo codice.
1 altoparlante
Per l'uscita del metronomo; qualsiasi oratore andrà bene. Gli alimenterai onde quadre da 3-5 volt, quindi non ha bisogno di suonare bene. Puoi anche collegarti a un amplificatore esterno.
1 Condensatore, per ammorbidire l'uscita dell'onda quadra all'altoparlante
2 connettori DIN a 5 pin, maschio o femmina
Ho usato cavi maschi e li ho cablati alla scheda. Per una soluzione più elegante, usa connettori femmina e collega i cavi maschio ad altri dispositivi. (Ricorda che i numeri dei pin sono all'indietro a seconda di come guardi il connettore!)
Resistori, 180-330 Ohm, 1k-10kOhm
Potrebbe essere necessario sperimentare i valori dei resistori per fare in modo che l'accoppiatore ottico tenga traccia dell'ingresso abbastanza rapidamente
LED
Il design richiede un diodo attraverso l'ingresso dell'isolatore ottico, ma un LED lo farà. Usa un LED per il metronomo, per lampeggiare a tempo con l'altoparlante che suona. Tieni più LED a portata di mano per il debug dell'output se ne hai bisogno.
Fili, tanti fili
Calibro 20-22, fili pieni, lunghi, corti e minuscoli.
Passaggio 2: codice C
Vai su github per ottenere il codice:
* Assicurati di leggere e comprendere il codice perché potresti doverlo modificare per adattarlo a hardware diverso.
* Il report del progetto nel pannello introduttivo contiene descrizioni dettagliate dei moduli software e di come interagiscono.
* Nessun copia-incolla. Interagire con il codice; sperimentare; riscrivere. Probabilmente puoi migliorarlo.
Passaggio 3: cablaggio iniziale (fare riferimento alla foto del progetto per indicazioni)
Note sulla foto del progetto prima di iniziare
Nella foto l'accoppiatore ottico è l'ultimo chip a destra e il processore è il chip più grande a sinistra.
Noterai altri due chip in mezzo con un mucchio di resistori collegati. Ignorali per favore. Questi sono registri a scorrimento, che non vengono utilizzati in questo progetto. Se hai mai voglia di aggiungere un array di LED, scoprirai a cosa servono.
La cosa nera rotonda è l'altoparlante (un cicalino piezo).
I pulsanti sono in alto a sinistra. È abbastanza lontano dall'autobus A in basso a destra del chip.
Lo schermo LCD a sinistra è LCD 0. Quello a destra è LCD 1.
In queste istruzioni, presumo che tu stia utilizzando la parte esatta specificata (ovunque sia indicato un numero di modello nell'elenco delle parti).
Collegare l'alimentazione
La breadboard ha binari di alimentazione attorno ai bordi e tra le sezioni. Usa fili corti per collegarli tutti insieme e per collegarli all'alimentazione. Ora puoi accedere al positivo e al terreno da qualsiasi punto della scacchiera.
Patatine fritte
Installa il Chip ATMega, facendo attenzione a non piegare i pin (una buona precauzione per qualsiasi chip) e assicurandoti che sia inserito fino in fondo.
Installare l'accoppiatore ottico adiacente al processore.
Collegare i binari dell'alimentatore ai pin appropriati sul processore e all'accoppiatore ottico.
LCD
Leggere il file LCDhookup.pdf incluso (sotto) per assistenza nel collegamento di un LCD.
Ogni schermo ha due collegamenti di alimentazione e tre collegamenti di terra.
Il pin 3 è un controllo della luminosità che, se impostato in modo errato, renderà invisibile il contenuto dello schermo. Se hai un potenziometro a portata di mano, usalo per regolare la tensione di controllo. Puoi anche provare resistori fissi, per ottenere la tensione a circa 1/2 di VCC.
I pin 4 e 6 sull'LCD 0 si collegano a D4 e D5 sul processore. Questi sono usati per abilitare e ripristinare lo schermo.
I pin 4 e 6 sull'LCD 1 si collegano a D6 e D7 sul processore.
I pin 7-17 su entrambi gli LCD si collegano a C0-C7 sul processore. Questo è un bus dati condiviso. Ogni schermata ignorerà i dati finché non arriva un segnale di controllo sui pin 4 e 6.
Leggi: Info LCD e altre informazioni per capire come funzionano gli schermi LCD.
pulsanti
Collega i quattro pulsanti a A2-A4 sul processore. (Ho lasciato A1 aperto per l'ingresso del convertitore A/D, ma non l'ho usato.)
Su qualsiasi tipo di chip logico, un ingresso non connesso fluttua alto, il che significa che il processore vedrà un 1 su quell'ingresso. Per controllarlo, è necessario collegare i pin a massa tramite un resistore. Ho collegato i pulsanti a terra (attraverso il resistore) quando non vengono premuti e in alto quando vengono premuti. Utilizzare qualsiasi resistore da 330 a 1k per questo scopo.
In alternativa, e forse in modo più efficiente dal punto di vista energetico, è possibile cablare i pulsanti in modo che siano alti quando non vengono premuti e bassi quando vengono premuti. Dovresti cambiare il codice (buttonBus.c) per cercare ~PINA invece di PINA.
Consigliato:
Connessioni al campus: 8 passaggi
Connessioni al campus: dichiarazione del problemaLa fine del semestre è spesso un periodo stressante dell'anno per gli studenti dell'Università dell'Indiana poiché si preoccupano degli esami finali e dei voti. L'Università dell'Indiana offre già alcune strategie per alleviare lo stress come Balance at Kelley
Dettagli e connessioni dell'adattatore LCD I2C: 5 passaggi
Dettagli e connessioni dell'adattatore LCD I2C: l'adattatore lcd I2C è un dispositivo contenente un chip PCF8574 microcontrollore. Questo microcontrollore è un espansore I/O, che comunica con altri microcontrollori con protocollo di comunicazione a due fili. Utilizzando questo adattatore chiunque può controllare un 16x2
ARUPI - un'unità di registrazione automatizzata a basso costo/unità di registrazione autonoma (ARU) per ecologisti del paesaggio sonoro: 8 passaggi (con immagini)
ARUPI - un'unità di registrazione automatizzata a basso costo/unità di registrazione autonoma (ARU) per ecologisti del paesaggio sonoro: questa istruzione è stata scritta da Anthony Turner. Il progetto è stato sviluppato con molto aiuto dallo Shed in the School of Computing, University of Kent (il signor Daniel Knox è stato di grande aiuto!). Ti mostrerà come costruire un sistema di registrazione audio automatizzato
Arduino parlante - Riproduzione di un MP3 con Arduino senza alcun modulo - Riproduzione di file Mp3 da Arduino utilizzando PCM: 6 passaggi
Arduino parlante | Riproduzione di un MP3 con Arduino senza alcun modulo | Riproduzione di file Mp3 da Arduino usando PCM: in questo tutorial impareremo come riprodurre un file mp3 con arduino senza utilizzare alcun modulo audio, qui useremo la libreria PCM per Arduino che riproduce PCM a 16 bit di frequenza 8kHZ, quindi facciamolo
Registratore di riproduzione con Raspberry Pi: 7 passaggi (con immagini)
Registratore di riproduzione con Raspberry Pi: Ciao a tutti, in questo tutorial spiego come ho realizzato un registratore di riproduzione usando Raspberry Pi. Il dispositivo è un Raspberry Pi modello B+, con 7 pulsanti sulla parte superiore, un altoparlante collegato a una delle porte USB del Pi e un microfono collegato a un'altra