Πληκτρολόγιο μουσικής DIY USB για τον υπολογιστή σας. Φτιάχνουμε ηλεκτρονικό πιάνο από πληκτρολόγιο MIDI με τα χέρια μας. Κύκλωμα πληκτρολογίου Midi MKC64 v1.54

Νομίζω ότι όσοι έχουν προσπαθήσει να δουλέψουν με ήχο σε υπολογιστή έχουν πιθανώς ακούσει για συσκευές όπως τα midi controllers. Και πολλοί άνθρωποι, μακριά από τη δημιουργία μουσικής, είχαν την ευκαιρία να δουν καλλιτέχνες σε παραστάσεις με ποικίλες «ανατροπές» και «σπρώξεις» σε απίστευτη τιμή. Πώς μπορείτε να αποκτήσετε ένα τόσο χρήσιμο πράγμα χωρίς να ξοδέψετε μια δεκάρα; Μια αξιοπρεπής επιλογή είναι ένα σπιτικό πληκτρολόγιο MIDI.

Ένα μικρό εκπαιδευτικό πρόγραμμα για midi controllers

Ο ελεγκτής Midi (από την αγγλική συντομογραφία "MIDI" - χαρακτηρισμός της διεπαφής που χρησιμοποιείται στα προγράμματα) είναι μια συσκευή που σας επιτρέπει να επεκτείνετε τις δυνατότητες του υπολογιστή σας όσον αφορά την επικοινωνία midi.

Τι μπορούν να κάνουν αυτές οι συσκευές;

Οι ελεγκτές MIDI σάς επιτρέπουν να αλληλεπιδράτε τόσο με ένα πρόγραμμα δημιουργίας και εγγραφής μουσικής (sequencer, tracker κ.λπ.) όσο και να συνδέσετε το λογισμικό με εξωτερικές μονάδες υλικού. Το τελευταίο αναφέρεται σε διάφορους τύπους κονσολών, μηχανικών μίξερ και touchpad.

Το κύριο πρόβλημα αυτής της κατηγορίας "gadgets" για έναν αρχάριο μουσικό είναι η υψηλή τιμή τους: το μέσο κόστος ενός πλήρους νέου οργάνου πληκτρολογίου MIDI είναι 7 χιλιάδες. Το ποσό βέβαια είναι γελοίο αν δουλεύεις κάπου και βγάζεις καλά χρήματα. (Εξάλλου, στη Ρωσία ο κατά κεφαλήν μισθός είναι 28 χιλιάδες, μετρώντας τον εργαζόμενο πληθυσμό των βρεφών και των συνταξιούχων).

Αλλά εάν, για παράδειγμα, είστε φοιτητής, τότε μια τέτοια τιμή θα σας «τσιμπήσει». Λόγω αυτής της πτυχής, η χρήση ενός σπιτικού πληκτρολογίου MIDI γίνεται η βέλτιστη λύση στο πρόβλημα.

Τι πρέπει να κάνετε για να αποκτήσετε ένα σπιτικό πληκτρολόγιο midi;

Ας ξεκινήσουμε με το γεγονός ότι πρέπει να έχετε εγκατεστημένο ένα sequencer στον υπολογιστή σας. (Όλες οι αποχρώσεις θα συζητηθούν χρησιμοποιώντας το παράδειγμα του Fl Studio sequencer και του προγράμματος εξομοιωτή πληκτρολογίου Vanilin MIDI, ενός από τα πιο δημοφιλή στην κατηγορία του).

  1. Πρέπει να κατεβάσετε και να εγκαταστήσετε το πληκτρολόγιο Vanilin MIDI. Μπορείτε να βρείτε το πρόγραμμα στην επίσημη ιστοσελίδα του.
  2. Ας πούμε ότι έχετε ήδη εγκαταστήσει αυτήν (ή μια παρόμοια) εφαρμογή, τώρα επιστρέψτε στην επιφάνεια εργασίας σας - θα πρέπει να εμφανιστεί μια συντόμευση εκεί. Χρησιμοποιώντας αυτήν τη συντόμευση, εκκινήστε τον εξομοιωτή και μεταβείτε στις ρυθμίσεις.
  3. Εάν ο υπολογιστής έχει μια τυπική κάρτα ήχου ενσωματωμένη στο chipset, τότε αφού κάνετε κλικ στο στοιχείο μενού "Συσκευή" θα πρέπει να δείτε δύο επιμέρους στοιχεία: "Συσκευή επαναχαρτογράφησης MIDI" και "Συνθέτης ήχου λογισμικού". Κάντε κλικ στο MIDI Remapper.
  4. Ελαχιστοποιήστε το πρόγραμμα. Το οικείο εικονίδιο προγράμματος θα πρέπει να εμφανίζεται στην κάτω δεξιά γωνία της γραμμής εργασιών (κάπου δίπλα στο ρολόι).
  5. Ξεκινήστε το sequencer. Επιλέξτε το μενού Επιλογές και κάντε κλικ στο υποστοιχείο ρυθμίσεων MIDI
  6. Στη σειρά MIDI Output, επιλέξτε MIDI Remapper

Αφού ολοκληρώσετε όλα αυτά τα απλά βήματα, δημιουργήστε κάποιο είδος εργαλείου και προσπαθήστε να πατήσετε οποιοδήποτε πληκτρολόγιο. Εάν τα κάνατε όλα σωστά και δεν ρυθμίσατε ένα άδειο (ή σε σίγαση) όργανο, θα πρέπει να ακούσετε έναν ήχο.

Αυτό ήταν, τώρα έχετε ένα πραγματικό όργανο πληκτρολογίου στα χέρια σας! Τώρα μπορείτε όχι μόνο να δείτε και να ακούσετε τον ήχο, αλλά και να αισθανθείτε το άγγιγμα των πλήκτρων του δικού σας πιάνου.

  • Ήχος
  • Σαν παιδί είχα ένα πιάνο, αληθινό, σοβιετικό, περίπου 300 κιλά μου άρεσε να χτυπάω πάνω του και μετά την αποφοίτησή μου από τη μουσική σχολή έπαιζα κιόλας. Το πιάνο είναι δροσερό, αυθεντικό, αλλά καθόλου πρακτικό. Και για να το κάνετε πραγματικά σωστό για την ψυχή, χρειάζεστε επίσης ένα drum kit, ένα σετ αξεσουάρ για ηλεκτρική κιθάρα, ένα κλαρίνο, ένα σιτάρ και λούπες δείγματος...

    Φυσικά, τώρα δεν χρειάζεται πλέον να μετατρέψετε το διαμέρισμά σας σε στούντιο γκαράζ με ένα αυγό φωλιάς έξι μισθών το μόνο που χρειάζεται να κάνετε είναι να εγκαταστήσετε ένα δωρεάν πρόγραμμα επεξεργασίας μουσικής στον υπολογιστή σας. Αλλά όλο αυτό είναι άβολο.

    Ένα πληκτρολόγιο υπολογιστή δεν μοιάζει καθόλου με ένα πληκτρολόγιο, όλα είναι διαφορετικά εδώ. Επιπλέον, αυτό δεν είναι καθόλου κατάλληλο για τη διδασκαλία ενός παιδιού. Φαίνεται ότι δεν υπάρχει άλλη επιλογή από την αγορά ενός συνθεσάιζερ. Αλλά εξακολουθώ να έχω αμφιβολίες.

    Τι είναι ο συνθεσάιζερ; Μια μεγάλη συσκευή, με μουσικό πληκτρολόγιο, που κάπου θα έπρεπε να πιάνει πολύ χώρο. Το οποίο έχει ενσωματωμένη ακουστική, αλλά έχω ήδη δέκτη με ηχεία. Το οποίο έχει ενσωματωμένο κακό υπολογιστή, αλλά εγώ έχω έναν καλό υπολογιστή.

    Αποδεικνύεται ότι για 40 χιλιάδες αγοράζω αυτό που έχω ήδη στην καλύτερη ποιότητα, με εξαίρεση το πληκτρολόγιο. Αυτό είναι μόνο ένα μέγιστο των παράλογων δαπανών.

    Ενώ έψαχνα για ένα ξεχωριστό πληκτρολόγιο, συνάντησα μια τέτοια κατηγορία συσκευών όπως το πληκτρολόγιο USB MIDI.
    Πάντα μου φαινόταν ότι το MIDI ανήκει στον χώρο της επαγγελματικής μουσικής δραστηριότητας.
    Τώρα όμως όλη η μουσική γίνεται σε υπολογιστή, σε οποιοδήποτε βολικό μέρος, πράγμα που σημαίνει ότι οι μουσικοί χρειάζονται κινητά μουσικά πληκτρολόγια που μπορούν εύκολα να χωρέσουν σε ένα σακίδιο.

    Ένα σχέδιο σχηματίστηκε αμέσως στο κεφάλι μου. Συνδέουμε ένα πληκτρολόγιο MIDI σε ένα οικιακό κέντρο πολυμέσων που βασίζεται στο Raspberry Pi 3, όπου εκτελείται ένας συνθεσάιζερ λογισμικού, επιτρέποντας σε οποιονδήποτε να εκτελέσει το επόμενο αριστούργημά του ανά πάσα στιγμή. Τέτοια πληκτρολόγια MIDI έχουν συνήθως ένα σετ χειριστηρίων και πρόσθετα κουμπιά που είναι προγραμματισμένα για διάφορα εφέ ή πρόσθετα μουσικά όργανα. Φαίνεται και ακούγεται πολύ ωραίο!

    Υπάρχουν όλο και μικρότερες συσκευές, άλλες πιο ακριβές και άλλες φθηνότερες. Διάλεξα την επιλογή για περίπου 5 γραμμάρια. Έχει δύο οκτάβες, πλήκτρα κανονικού μεγέθους, κουμπιά για ντράμερ, κουμπιά κουρδίσματος, δηλαδή όλα όσα θα μπορούσε να ονειρευτεί ένας αρχάριος ηλεκτρονικός μουσικός.

    Δεν είμαι ειδικός στη δημιουργία μουσικής σε υπολογιστή, οπότε ήταν δύσκολο να ψάξω τρόπους για να πραγματοποιήσω την ιδέα μου. Οι πληροφορίες έπρεπε να συλλέγονται λίγο-λίγο. Το παζλ άρχισε σταδιακά να διαμορφώνεται και κατάφερα να φτιάξω μια λειτουργική λύση, την οποία μοιράζομαι μαζί σας. Παραδόξως, η τυπική διανομή Raspbian/Debian περιείχε όλα όσα χρειαζόσουν, δεν χρειαζόταν καν να συνδέσεις εξωτερικά αποθετήρια.

    Το Fluidsynth χρησιμοποιείται ως sequencer (εφαρμογή που αναπαράγει αρχεία MIDI).
    Το πληκτρολόγιο MIDI εντοπίζεται αμέσως μέσω ALSA και είναι διαθέσιμο για σύνδεση με το sequencer.
    Για την αναπαραγωγή των ήχων διαφόρων οργάνων, χρησιμοποιούνται ανοιχτά δείγματα βάσεων δεδομένων σε μορφή SoundFont2. Αρχικά, ας εγκαταστήσουμε όλα αυτά.

    Sudo -s apt-get ενημέρωση apt-get -y install alsa-utils fluid-soundfont-gm fluidsynth
    Συνδέουμε ένα πληκτρολόγιο MIDI στο Raspberry και εκκινούμε το sequencer σε λειτουργία διακομιστή:

    Fluidsynth -i -s -a alsa -g 3 /usr/share/sounds/sf2/FluidR3_GM.sf2
    Εκτελούμε την εντολή:

    Aconnect -ο
    Ως αποτέλεσμα, θα δούμε μια λίστα με τους διαθέσιμους πελάτες MIDI:

    Πελάτης 14: "Midi Through" 0 "Midi Through Port-0" πελάτης 20: "VMini" 0 "VMini MIDI 1" 1 "VMini MIDI 2" πελάτης 128: "FLUID Synth (1628)" 0 "Θύρα εισόδου Synth (1628 ) :0)"
    Εδώ είναι σημαντικό να θυμόμαστε τους αριθμούς πελάτη του πληκτρολογίου και του sequencer, ώστε να μπορούμε στη συνέχεια να τους συνδέσουμε με την εντολή:

    Σύνδεση 20:0 128:0
    Τώρα είμαστε όλοι έτοιμοι να παίξουμε στο Yamaha Piano (αυτό είναι το προεπιλεγμένο όργανο). Διαβάστε το εγχειρίδιο fluidsynth, υπάρχουν πολλές ενδιαφέρουσες εντολές εκεί, για παράδειγμα, να αλλάξετε το όργανο σε ντραμς ή πνευστά, να ορίσετε την ποσότητα αντήχησης ή ρεφρέν.

    Ας κάνουμε το συνθεσάιζερ λογισμικού μας βολικό. Για να μην συνδέουμε χειροκίνητα το πληκτρολόγιο στο sequencer κάθε φορά, θα γράφουμε έναν απλό δαίμονα που θα το κάνει αυτόματα κατά την εκκίνηση.

    Cat > /etc/init.d/fluidsynth<< EOF #!/bin/bash ### BEGIN INIT INFO # Provides: fluidsynth # Required-Start: $all # Required-Stop: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Fluidsynth deamon to play via MIDI-keyboard ### END INIT INFO startDaemon() { sleep 30s && fluidsynth -i -s -a alsa -g 3 --load-config=/home/osmc/midi-router >/var/log/fluidsynth & sleep 60s && aconnect 20:0 128:0 & ) stopDaemon() ( pkill -9 fluidsynth &> /dev/null ) restartDaemon() ( stopDaemon startDaemon ) case "$1" in start) startDaemon ; ;
    stop) stopDaemon ;;

    επανεκκίνηση) restartDaemon ;;
    κατάσταση) ;;

    *) startDaemon esac έξοδος 0 EOF

    Καταχωρίστε τον δαίμονα για autorun:

    Προεπιλογές Chmod 755 /etc/init.d/fluidsynth update-rc.d fluidsynth

    Λάβετε υπόψη ότι τώρα κατά την εκκίνηση του sequencer αποστέλλεται ένα αρχείο διαμόρφωσης (/home/osmc/midi-router) που περιέχει εντολές που μετατρέπουν το πληκτρολόγιό μας σε πραγματικό συνθεσάιζερ.<< EOF # загружаем стандартные инструменты и ударники, найденные где-то на просторах Сети load /usr/share/sounds/sf2/FluidR3_GM.sf2 load /home/osmc/241-Drums.SF2 # связываем инструмент каждый со своим каналом select 1 2 128 0 select 2 1 0 0 # по умолчанию звук идет на канал 0 # перенаправляем события с квадратных клавиш на канал с ударными router_begin note router_chan 0 0 0 1 router_par1 36 48 1 0 router_end # события с остальных клавиш перенаправляем на канал с пианино router_begin note router_chan 0 0 0 2 router_par1 0 35 1 0 router_end router_begin note router_chan 0 0 0 2 router_par1 49 255 1 0 router_end # события с ручек мэпим на события, которые понимает секвенсер, # полный их список есть в документации на сайте fluidsynth router_begin cc router_chan 0 0 0 2 router_par1 14 14 0 98 router_end router_begin cc router_chan 0 0 0 2 router_par1 15 15 0 11 router_end router_begin cc router_chan 0 0 0 2 router_par1 16 16 0 91 router_end router_begin cc router_chan 0 0 0 2 router_par1 17 17 0 93 router_end # выключаем громкость на канале 0, # иначе при нажатии на клавишу # разные инструменты будут звучать одновременнно cc 0 7 0 EOF
    Εδώ είναι το θέμα. Κάθε πλήκτρο και κουμπί στο πληκτρολόγιο στέλνει ορισμένα συμβάντα με τον δικό του αριθμό. Όπως καταλαβαίνω, δεν υπάρχουν ειδικά πρότυπα εδώ, οπότε ο κάθε κατασκευαστής κάνει ότι θέλει. Για παράδειγμα, θέλω τα τετράγωνα πλήκτρα να ακούγονται σαν ντραμς, τα υπόλοιπα πλήκτρα να ακούγονται σαν πιάνο και τα κουμπιά να ελέγχουν την ένταση, την αντήχηση και το ρεφρέν.

    Επομένως, πρέπει να αντιστοιχίσω τους κώδικες συμβάντων από το πληκτρολόγιο σε διαφορετικά όργανα και τους κώδικες από τα πόμολα σε κώδικες που κατανοεί ο sequencer. Στο fluidsynth αυτό γίνεται με χρήση router. Αυτές οι εντολές περιέχονται στο αρχείο ρυθμίσεων.
    Ακολουθεί ένα παράδειγμα του αρχείου ρυθμίσεων μου, με σχόλια σχετικά με το τι κάνει.

    Cat > /home/osmc/midi-router

    Για να μάθετε ποιους κωδικούς δημιουργεί η συσκευή σας, πρέπει να χρησιμοποιήσετε αυτό το βοηθητικό πρόγραμμα:

    Aseqdump -p 20:0

    Πλαίσιο. Απαιτείται το πρώτο και βασικότερο, είναι δύσκολο να βρεις το σωστό. Αγόρασα μια θήκη για το cue για αυτό το σκοπό.
    - Πληκτρολόγιο USB, κατά προτίμηση όχι πολύ παλιό, γιατί η καλωδίωση μπορεί να μην λειτουργεί.
    - Κλειδιά (αυτά που σήκωσα): PBS-16B (FEET), SPA-101B4 (ADOPS), PBS-15B push ON (ON). Όλα χωρίς στερέωση. Μπορείτε να το αγοράσετε στο Chip and Dip.
    - Σύρματα. Πολλά μονοπύρηνα. Νομίζω ότι το στριφτό ζευγάρι είναι το καλύτερο για αυτό. 2 μέτρα πίσω από τα μάτια. Είναι απλά άβολο να χαλαρώνεις.
    - Λοιπόν, νομίζω ότι σχεδόν όλοι όσοι αποφασίζουν να συναρμολογήσουν αυτήν τη συσκευή έχουν κολλητήρι.
    - Εργαλεία για την κατασκευή οπών στο περίβλημα. Εάν είστε βολικοί με οτιδήποτε, μπορείτε να χρησιμοποιήσετε ακόμη και μια βίδα με αυτοκόλλητη βίδα και στη συνέχεια να χρησιμοποιήσετε ένα μαχαίρι για να το επεξεργαστείτε, αλλά και πάλι, νομίζω ότι όλοι έχουν ένα τρυπάνι.

    Λοιπόν, ας ξεκινήσουμε. Το πρώτο πράγμα που πρέπει να κάνετε είναι να σημειώσετε και να ανοίξετε τρύπες στη θήκη:

    Τώρα ας περάσουμε στο πιο επιβλαβές μέρος της κατασκευής του ποδοδιακόπτη μας. Συγκολλάμε τα καλώδια σύμφωνα με το διάγραμμα, μην ξεχάσετε να κρεμάσετε φύλλα αναγνώρισης με αριθμούς εισόδου στις εισόδους από το πληκτρολόγιο:

    Θα πρέπει να μοιάζει κάπως έτσι:

    Τώρα θα ξεκινήσει η πολύ περίτεχνη διαδικασία συγκόλλησης στον ελεγκτή από το πληκτρολόγιο USB. Επιτρέψτε μου να σημειώσω ότι εάν είστε αρκετά τυχεροί να αγοράσετε / βρείτε / αφαιρέσετε ένα πληκτρολόγιο με ένα χειριστήριο όπως αυτό στο διάγραμμα που επισυνάπτεται παραπάνω, τότε δεν μπορείτε να κάνετε χωρίς σταθμό συγκόλλησης. Μπορείτε να στερεώσετε τη σανίδα στη θήκη με σχεδόν οποιοδήποτε διαθέσιμο μέσο, ​​υγρά καρφιά, βίδες με αυτοκόλλητες βίδες, υπερκόλλα, σιλικόνη και γενικά, αν δεν την κλωτσήσετε πολύ δυνατά, θα κρατήσει, αλλά εξαρτάται από το θήκη, το συνεστραμμένο ζεύγος πιέζει σφιχτά τη σανίδα.

    Κάνουμε καλλυντικές βελτιώσεις, κολλήστε μια δίοδο στη θήκη από το NUB LOCK... Κάντε μια τρύπα για το καλώδιο και δρομολογήστε ξανά το καλώδιο USB. Το τελικό αποτέλεσμα:

    Φάση 2: Ρύθμιση λογισμικού. Ελπίζω ότι αυτό δεν θα είναι πρόβλημα για όλους όσους κατασκεύασαν αυτήν τη συσκευή. Για το Guitar Rig, όλα δεν θα μπορούσαν να είναι πιο απλά, ενεργοποιήστε το NUM Lock, ενεργοποιήστε το rig, ανοίξτε το OPTIONS - CONTROLLER, πατήστε MENU, αναζητήστε την απαιτούμενη ενέργεια, κάντε κλικ στο κουμπί Learn και επιλέξτε το κατάλληλο κουμπί στον ελεγκτή μας. Στη συνέχεια, κάντε κλικ στο Προσθήκη ελεγκτή και εκτελέστε ξανά τις ίδιες λειτουργίες. Και ούτω καθεξής μέχρι να πληκτρολογήσουμε όλα όσα χρειαζόμαστε ή να μας τελειώσουν τα κλειδιά. Μπορείτε επίσης να αντιστοιχίσετε ένα κλειδί σε σχεδόν οποιαδήποτε ενέργεια στην 3η εγκατάσταση, κάντε δεξί κλικ στο αντικείμενο και πατήστε ξανά Μάθετε.

    Αλλά τώρα αν σας ενδιαφέρει να ρυθμίσετε όλο αυτό το πνευματικό τέκνο στην εντολή Midi, τότε θα πρέπει να διασκεδάσετε λίγο περισσότερο.
    Αυτό σημαίνει ότι χρειαζόμαστε λογισμικό που συνδέει κλειδιά με εντολές midi. Και υπάρχει ένα τέτοιο πρόγραμμα, αν και δεν έχω δει κανένα ανάλογο, ευτυχώς δεν υπάρχει λόγος να θεραπεύεται η απληστία. Ονομάζεται Virtual Midi Controller, η βασική ενέργεια διαμορφώνεται στην καρτέλα C IN, εγκατάσταση - Ρύθμιση - Επόμενο - Επόμενο. Εδώ είναι ο σύνδεσμος.


    Περιλαμβάνεται επίσης ένα εικονικό καλώδιο MIDI, ώστε να μην χρειάζεται να κάνετε περιττές κινήσεις. Για τους πραγματικά τεμπέληδες, δημοσιεύω μια προεπιλογή τράπεζας για τον ποδοδιακόπτη: τράπεζα - θα πρέπει να αντικαταστήσουν το αρχείο στη ρίζα του φακέλου του προγράμματος, από προεπιλογή C:\Program Files\Virtual Midi Controller\, μετά την έξοδο από το VMC. Για ευκολία, στο SETUP, επιλέξτε το πλαίσιο ελέγχου Εκτέλεση στο παρασκήνιο και στο κύριο παράθυρο VMC, κάντε κλικ στο γράμμα K, μετά από το οποίο το πρόγραμμα θα δέχεται εντολές σε λειτουργία ελαχιστοποίησης. Τώρα για να βγείτε από το πρόγραμμα πρέπει να το αφαιρέσετε από το δίσκο. Και από εδώ και πέρα ​​θα μπορείτε να ελέγχετε τόσο το Nuendo όσο και το Sonar από τον ποδοδιακόπτη. Λοιπόν, φυσικά, το TH1 μας αρπάζει και το πληκτρολόγιο μέσω midi.

    Οποιεσδήποτε ερωτήσεις, επικοινωνήστε με...

    Επόμενα προγραμματισμένα έργα:
    - Θωράκιση κιθάρας.
    - Do-it-yourself combo.

    Καλή επιτυχία στις μουσικές σας δραστηριότητες...

    Αυτό είναι ένα απλό κύκλωμα πληκτρολογίου MIDI σχεδιασμένο για χρήση με τυπική κάρτα ήχου υπολογιστή με θύρα MIDI/Game. Το πληκτρολόγιο τροφοδοτείται απευθείας από τη θύρα του παιχνιδιού, δεν απαιτείται παροχή ρεύματος.

    Κύκλωμα πληκτρολογίου Midi MKC64 v1.54



    Σετ εξαρτημάτων


    Μικροκυκλώματα: Ελεγκτής PIC16F84 ή PIC16C84. Αποκωδικοποιητής 74LS138 ή αναλογικός K555ID7.
    Αντηχείο χαλαζία: ZQ1 = 4 MHz.
    Πυκνωτές: C1= 47mF; C2, C3=27pF; C4=0,1mF
    Αντιστάσεις: R1,R2,R4 = από 1 έως 10Kom; R3 = 270Ω για προστασία εξόδου MIDI. R5 = 2k2
    Διόδους: D1-D64 = KD522 (Οποιοσδήποτε τύπος τυπικών διόδων)
    Συνδέσεις: DB15

    Υλικολογισμικό


    Εάν χρησιμοποιείτε το υλικολογισμικό MKC1.4 χωρίς jumper jmp1, τότε τα πλήκτρα ξεκινούν από τη σημείωση DO (C) με το jumper από τη νότα FA (F)
    Εάν χρησιμοποιείτε υλικολογισμικό MKC1.54, τότε jmp1 εμφανίζεται το μαλακό κουμπί S1, το οποίο σας επιτρέπει να ελέγχετε ορισμένες λειτουργίες
    Για να ελέγξετε, πρέπει να πατήσετε το κουμπί S1 και ενώ το κρατάτε πατημένο, πατήστε ένα από τα 16 αριστερά πλήκτρα στο πληκτρολόγιο.

    Πίνακας πλήκτρων ελέγχου λειτουργίας:
    1 Αλλαγή καναλιού MIDI -1 (1..16)
    2 Αλλαγή καναλιού MIDI +1 (1..16)
    3 Κάτω οκτάβα -1 (1..11)
    Αύξηση 4 οκτάβας +1 (1..11)
    5 Σημείωση σκανδάλης -1
    6 Ενεργοποιήστε τη σημείωση +1
    7 Μείωση ταχύτητας -1 (1..127)
    8 Αύξηση ταχύτητας +1 (1..127)
    9 All Notes On μήνυμα Ενεργοποίηση
    10 Μήνυμα Απενεργοποίηση όλων των σημειώσεων Απενεργοποίηση
    11 NoteOn (ταχύτητα = 0)
    12 Σημείωση Απενεργοποίηση
    13 Πρόγραμμα MIDI -1
    14 Πρόγραμμα MIDI +1
    15 τράπεζα MIDI -1
    16 MIDI Bank +1



    Το πληκτρολόγιο έχει σχεδιαστεί για σύνδεση με εξωτερική μονάδα ήχου ή υπολογιστή (εάν υπάρχει κατάλληλη διεπαφή) χρησιμοποιώντας το πρωτόκολλο MIDI - για εγγραφή μουσικής σε πρόγραμμα sequencer ή ζωντανή απόδοση. Ο αριθμός των πλήκτρων στην προτεινόμενη έκδοση είναι 48, αλλά μπορεί να αυξηθεί σε 64 χωρίς να αλλοιωθεί το κύκλωμα Ένα χαρακτηριστικό γνώρισμα του προτεινόμενου πληκτρολογίου είναι η ευαισθησία του στη δύναμη πρόσκρουσης στο πλήκτρο.

    Ιστορικό της συσκευής

    Πριν από λίγο καιρό, σε σχέση με την αγορά ενός διαμερίσματος, αναγκάστηκα να χάσω ένα πολυτελές όργανο που χρησίμευε ως πληκτρολόγιο MIDI για μένα - ήταν το θρυλικό YAMAHA DX-7. Όταν η θλίψη υποχώρησε, γεννήθηκε το ερώτημα σε όλη της τη σοβαρότητα και την ασχήμια: τι να δουλέψουμε; Ήταν αυτή τη στιγμή που, μέσω των προσπαθειών του φίλου μου, ένα μισοσυναρμολογημένο κύκλωμα για τον KR1816BE39 (σε αντίθετους όρους αυτός ο επεξεργαστής ονομάζεται 8048) έπεσε στα χέρια μου. Το κύκλωμα συναρμολογείται και ρυθμίζεται εύκολα και, το πιο σημαντικό, ήρθε στο χέρι την κατάλληλη στιγμή. Συναρμολόγησα το πληκτρολόγιο με τη μορφή μήτρας 8x6 χρησιμοποιώντας KR1533ID7 και KR1533KP7. Υπήρχε επίσης μια μύγα στην αλοιφή - δύο μειονεκτήματα αυτού του σχήματος σκοτώνουν όλα τα πλεονεκτήματά του μέχρι θανάτου: η έλλειψη ευαισθησίας στην ταχύτητα πληκτρολόγησης (ηχεία) και ο τροχός PITCH WEEL. Λοιπόν, κάποτε προγραμματίστηκα στο Z-80 (και μάλιστα έφτιαξα ένα λειτουργικό sequencer) και αποφάσισα να αποτινάξω τα παλιά. Απέρριψα αποφασιστικά το Z-80 ως CPU ως ηθικά απαρχαιωμένο. Επιπλέον, δεν ήθελα να κάνω πολλές κολλήσεις και αποφάσισα να πάρω αυτήν την ίδια συσκευή στο KR1816BE39 ως βάση, εξοπλίζοντάς την με έναν άλλο πολυπλέκτη για τις σπάσιμους (επάνω) επαφών των κλειδιών. Βρήκα τεκμηρίωση (δεν θα το πιστέψετε - στη βιβλιοθήκη, το βιβλίο "Σχεδίαση ψηφιακών συσκευών σε μικροεπεξεργαστές ενός τσιπ") για το assembler KR1816BE39 και έγραψα ένα πρόγραμμα... Και μετά αποδείχθηκε ότι ο προγραμματιστής ROM ενός φίλου είχε πέθανε, και απλά δεν υπήρχε τίποτα για να αναβοσβήνει το πρόγραμμα... Από τη στεναχώρια μου, έχασα το μυαλό μου και αποφάσισα να ξαναγράψω τον ίδιο αλγόριθμο για το PIC. Σε μισή μέρα συγκολλήθηκε ο προγραμματιστής (LUDIPIPO), μετά φτιάχτηκε ένα πρωτότυπο από πρίζα, KR1533ID7 και ζεύγος KR1533KP7 και όλη η εγκατάσταση έγινε από την MGTF χωρίς καμία σφραγίδα. Και η διαδικασία ξεκίνησε...

    Αρχικά, κυκλοφόρησε μια μη δυναμική έκδοση του προγράμματος (το παρουσιάζω και για όσους έχουν πληκτρολόγιο με μία επαφή ανά πλήκτρο). Στη συνέχεια ξεκίνησε η δυναμική έκδοση. Και τότε ήρθε η ιδέα να προσθέσουμε κουμπιά και μια ένδειξη. Το γεγονός είναι ότι είχα ένα WAVEBLASTER (ένα θυγατρικό συνθεσάιζερ wavetable για πολύ παλιά ηχητικά συστήματα) που βρισκόταν σε αδράνεια για μεγάλο χρονικό διάστημα. Συνδέοντάς το με τη δημιουργία μου, πήρα κάτι στο οποίο μπορείτε να παίξετε (στο μέτρο των δυνατοτήτων και του ταλέντου σας) χωρίς υπολογιστή, κάτι που μερικές φορές είναι αρκετά βολικό. Αυτό καθόρισε το σύνολο των λειτουργιών στα κουμπιά - μπορεί να είναι χρήσιμο κατά τη σύνδεση σε μονάδες ήχου κατά τη διάρκεια της "ζωντανής" αναπαραγωγής. Οι λειτουργίες των κουμπιών αλλάζουν εύκολα γράφοντας τους δικούς σας χειριστές και χρησιμοποιώντας τις διαδικασίες ψηφοφορίας και εμφάνισης μου. Κάπως έτσι, το πληκτρολόγιο που συναρμολογήθηκε σε μια σιδερένια θήκη αποδείχθηκε πιο βολικό από το YAMAHA PSS (ακόμα πλήκτρα πλήρους μεγέθους, ένα πεντάλ και, το πιο σημαντικό, δυναμική!). Στη μέση της δημιουργικής διαδικασίας, προέκυψε μια δύσκολη επιθυμία να φτιάξουμε μια έκδοση του πληκτρολογίου MIDI αποκλειστικά για τον υπολογιστή - η ένδειξη και τα κουμπιά είναι προαιρετικά, αλλά χρειάζονται οι τροχοί PITCH WEEL και MODULATION. Το πάλεψα για λίγο, αλλά τελικά τα παράτησα και άνοιξα ξανά το κολλητήρι. Τα ηλεκτρονικά δεν είναι δύσκολο να συναρμολογηθούν, αλλά η μηχανική είναι κάπως πιο δύσκολη και άρχισα να ζαρώνω το μέτωπό μου πάνω από το σχέδιο του τροχού. Μετά από λίγη σκέψη, αποφάσισα να εγκαταλείψω τον δεύτερο τροχό - ούτως ή άλλως, ποτέ δεν περιστρέφω και τα δύο ταυτόχρονα, συνήθως γράφω σημειώσεις και πίνω πρώτα και μετά προσθέτω διαμόρφωση. Το λιγότερο σημαντικό ήταν η μείωση στο μισό του όγκου της μηχανικής εργασίας που μου άρεσε τόσο πολύ. Για τους λιγότερο τεμπέληδες, θα εξηγήσω παρακάτω πώς να φτιάξετε δύο τροχούς σχεδόν χωρίς πολυπλοκότητα. Για να μπορώ ακόμα να γράφω διαμόρφωση, αποφάσισα να οργανώσω τρεις τρόπους λειτουργίας του τροχού: βήμα για 2 ημιτόνια, βήμα για 1 ημίτονο (βολικό) και διαμόρφωση. Μπορείτε να τα αλλάξετε όλα αυτά με ένα κουμπί και να υποδείξετε τη λειτουργία με ένα ζευγάρι LED. Για να απλοποιήσω το κύκλωμα, εξάλειψα τα υπόλοιπα κουμπιά και δείκτες, όλα αυτά δεν χρειάζονται για να δουλέψουμε με σύγχρονα προγράμματα ακολουθίας.

    Ο τροχός φυσικά πρέπει να μπει στον άξονα του ποτενσιόμετρου, αυτό είναι κατανοητό, αλλά με τι πρέπει να συνδεθεί; Η πρώτη μου σκέψη ήταν να χρησιμοποιήσω μια λήψη στο χρονόμετρο 555, αλλά οι υπολογισμοί έδειξαν ότι θα ήταν δύσκολο να επιτευχθεί ακρίβεια και σταθερότητα στη μέτρηση της διάρκειας παλμού όταν προσπαθούσαμε να παράσχω έναν αποδεκτό ρυθμό δειγματοληψίας τροχού, καθώς ο επεξεργαστής είναι απασχολημένος κυρίως με τη μέτρηση. ο χρόνος εναλλαγής των επαφών του πληκτρολογίου. Ο μόνος τρόπος που απομένει είναι να χρησιμοποιήσετε έναν μετατροπέα αναλογικού σε ψηφιακό (ADC). Εφόσον χρησιμοποίησα ένα Pic16F84 χωρίς ενσωματωμένο ADC, θυμήθηκα το μηχανολογικό μου υπόβαθρο (και το εγγενές εργοστάσιό μου) και έφτιαξα ένα ADC από πολλές αντιστάσεις με έναν συγκριτή (και ένα κομμάτι προγράμματος). Αποδείχθηκε απλό, φθηνό και αρκετά ακριβές.

    Παρουσιάζω και τα δύο διαγράμματα - και με κουμπιά και με τροχό, καθώς και προγράμματα για αυτά. Εάν είναι επιθυμητό, ​​και τα δύο κυκλώματα μπορούν να συνδυαστούν εύκολα αλλάζοντας ελαφρά τις διευθύνσεις των εξωτερικών συσκευών, απλά πρέπει να θυμάστε ότι η λειτουργία CHORUS (STEREO) χρησιμοποιεί τον τόνο για να επιτύχει τον αποσυντονισμό και πρέπει είτε να το αφαιρέσετε είτε να ανησυχείτε για τη μετάδοση του τόνου με τον αποσυντονισμό. σε όλα τα κανάλια.

    Έτσι - το πραγματικό πληκτρολόγιο

    Διάγραμμα συσκευής

    Η πρώτη που εμφανίστηκε ήταν μια μη δυναμική έκδοση, μη ευαίσθητη στη δύναμη της πρόσκρουσης στο κλειδί - για να δοκιμάσετε τη λειτουργικότητα της διάταξης.

    Χρησιμοποίησα το PIC16F84 ως επεξεργαστή για διάφορους λόγους: αυτό το τσιπ είναι διαθέσιμο, φθηνό και εύκολο στον προγραμματισμό, επιπλέον, ήταν αυτό που είχα στα χέρια μου. Προσοχή: Το PIC16C84 δεν είναι κατάλληλο - έχει μόνο 36 κελιά μνήμης RAM και το πρόγραμμα δεν θα λειτουργήσει. Ωστόσο, το κύκλωμα του τροχού χρησιμοποιεί λιγότερες κυψέλες RAM και το πρόγραμμά του μπορεί να συμπιεστεί στο PIC16C84 μειώνοντας μερικά ακόμη κελιά, για παράδειγμα MIDCH (αναθέτοντας ένα σταθερό κανάλι MIDI σε όλα τα μεταδιδόμενα δεδομένα).

    Το διάγραμμα ενός δυναμικού πληκτρολογίου με ένδειξη φαίνεται παρακάτω:

    Το κύκλωμα είναι παραδοσιακό από πολλές απόψεις - είναι δύσκολο να εφεύρουμε ξανά ένα ποδήλατο χωρίς πεντάλ και τροχούς. Το πιο σημαντικό bit χρησιμοποιείται για την έξοδο δεδομένων MIDI σε σειριακό κώδικα - η μετατροπή και η έξοδος γίνονται σε λογισμικό. Επομένως, ο κρύσταλλος πρέπει να είναι στα 4 MHz, εκτός αν θέλετε να ξαναγράψετε τη ρουτίνα εξόδου byte MIDI. Τα δύο λιγότερο σημαντικά bit της θύρας A λειτουργούν για λήψη - λαμβάνουν σήματα από τους πολυπλέκτης των επαφών πλήκτρων "απελευθερωμένη" και "πατημένη" και τα τρία πιο σημαντικά bit καθορίζουν τη διεύθυνση της εξωτερικής συσκευής (μέσω ενός άλλου αποκωδικοποιητή KR1533ID7). Στο κύκλωμα με τον τροχό, εγκατέλειψα τον αποκωδικοποιητή διευθύνσεων της εξωτερικής συσκευής για να απλοποιήσω το κύκλωμα και να ελευθερώσω το υψηλό bit της θύρας PA4 για εισαγωγή δεδομένων από τον συγκριτή, επομένως οι διευθύνσεις του πληκτρολογίου και των κουμπιών είναι διαφορετικές. Κατά τον συνδυασμό των κυκλωμάτων, αυτό το μικροκύκλωμα θα πρέπει να επιστραφεί, για να αποκρυπτογραφήσει τη διεύθυνση, να χρησιμοποιήσει τα bits θύρας PA2 και PA3 και να διευθύνει συσκευές 4: πληκτρολόγιο, κουμπιά, καταχωρητής δεδομένων δυναμικής ένδειξης και καταχωρητής εξοικείωσης δυναμικής ένδειξης. Η ένδειξη λειτουργίας τροχού θα πρέπει να ξαναγραφτεί.

    Το κύκλωμα με τον τροχό PITCH WEEL / MODULATION μοιάζει με αυτό:

    Μια δίοδος είναι εγκατεστημένη σε κάθε κλειδί για αποσύνδεση. Οι αντιστάσεις στις εισόδους των πολυπλέκτη δεν πρέπει να είναι περισσότερες από 8k, διαφορετικά είναι πιθανές δυσλειτουργίες λόγω της χωρητικότητας τοποθέτησης. Ένδειξη - οποιαδήποτε με κοινή άνοδο για 3 ψηφία, εάν οι ακροδέκτες των τμημάτων κάθε ψηφίου εξάγονται χωριστά, πρέπει να συνδυαστούν οι ακροδέκτες των τμημάτων με το ίδιο όνομα - η ένδειξη είναι δυναμική και τα ψηφία ανάβουν διαδοχικά. Οποιαδήποτε κουμπιά, χωρίς κλείδωμα, η αναπήδηση επαφής ελέγχεται από λογισμικό. Οι λυχνίες LED είναι εγκατεστημένες κοντά στα κουμπιά με το ίδιο όνομα και υποδεικνύουν την ενεργοποίηση των αντίστοιχων λειτουργιών, τα κουμπιά "+" και "-" δεν έχουν LED. Τα τρανζίστορ στον δείκτη είναι οποιασδήποτε αντίστροφης αγωγιμότητας χαμηλής ισχύος και υψηλής συχνότητας. Δύο καταχωρητές KR1533IR23 χρησιμοποιούνται για την εναλλακτική μανδάλωση της διεύθυνσης και του κωδικού του τρέχοντος ψηφίου ένδειξης (τα LED ομαδοποιούνται επίσης σε δύο σχεδόν ψηφία). Χρησιμοποίησα ένα τυπικό πληκτρολόγιο από σοβιετικά ηλεκτρικά όργανα με 48 πλήκτρα (παράγεται επίσης ξεχωριστά ως σχεδιαστής ραδιοφώνου "START" και είναι αρκετά διαδεδομένο). Για να μειωθεί το ύψος του πληκτρολογίου και το πάχος του οργάνου, έμειναν δύο από τις έξι ομάδες επαφών κάτω από κάθε πλήκτρο και το όλο πράγμα κόπηκε και ξανακολλήθηκε. Σε γενικές γραμμές, μια ομάδα μεταγωγής ανά κλειδί είναι αρκετή, αλλά ήταν πιο βολικό να το κολλήσετε με αυτόν τον τρόπο. Οι ράβδοι διαύλου των επαφών "απελευθέρωσης" και "πιεσμένων" επαφών έχουν μήκος 8 πλήκτρων. Εάν θέλετε, μπορείτε επίσης να χρησιμοποιήσετε ένα πληκτρολόγιο όπου, αντί για μια ομάδα εναλλαγής επαφών, χρησιμοποιούνται δύο ζεύγη επαφών κλεισίματος - το ένα ζεύγος κλείνει στην αρχή της κίνησης του πλήκτρου, το άλλο στο τέλος (όπως στα όργανα YAMAHA). Σε αυτήν την περίπτωση, το σήμα στο PA0 πρέπει να παρέχεται από την αντίστροφη έξοδο του πολυπλέκτη (ακίδα 6). Χωρίς αλλαγές στο κύκλωμα, μπορείτε να χρησιμοποιήσετε ένα πληκτρολόγιο με 64 πλήκτρα (κανονικό – 61, δηλαδή 5 οκτάβες). Εάν είναι απαραίτητο, ο αριθμός των κλειδιών μπορεί να αυξηθεί σε τουλάχιστον 127 για να γίνει αυτό, πρέπει να εισαγάγετε έναν άλλο αποκωδικοποιητή KR1533ID7 στο κύκλωμα.

    Είναι πολύ σημαντικό να ρυθμίσετε καλά τη μηχανική - οι επάνω επαφές ΠΡΕΠΕΙ να κλείνουν όταν απελευθερωθούν τα κλειδιά. Εάν αυτό δεν γίνει, το πρόγραμμα θεωρεί ότι τέτοια πλήκτρα πρέπει να πατηθούν και προσπαθεί να τα επεξεργαστεί, οπότε το να πατήσετε ξανά αυτά τα πλήκτρα δεν παράγει ήχο. Επιπλέον, ο μέγιστος αριθμός νότων που μπορούν να παιχτούν ταυτόχρονα είναι 10 (αν κάποιος έχει μεγαλώσει περισσότερα δάχτυλα στα χέρια του, αυτός ο αριθμός μπορεί εύκολα να αλλάξει) και η μη απελευθέρωση των πλήκτρων μειώνει αυτόν τον αριθμό. Για τους ίδιους λόγους, ο αριθμός των πλήκτρων που καθορίζεται στη διαδικασία ψηφοφορίας με πληκτρολόγιο πρέπει ΠΡΕΠΕΙ να ταιριάζει με τον αριθμό των πραγματικών πλήκτρων. Η αναπήδηση επαφής καταστέλλεται από λογισμικό.

    Για μια μήτρα αντίστασης R-2R ADC, συνιστάται να επιλέξετε αντιστάσεις με ακρίβεια 1–2%, και οι απόλυτες τιμές μπορεί να είναι διαφορετικές, η αναλογία είναι σημαντική. Ωστόσο, δεν θα πρέπει να αυξήσετε πολύ την ονομαστική τιμή, αυτό θα αυξήσει τον χρόνο μετατροπής λόγω της χωρητικότητας εισόδου του συγκριτή. Χρησιμοποίησα αντιστάσεις SMD χωρίς να ταιριάζουν, αν και οι μετρήσεις έδειξαν ότι σε μία λωρίδα στερέωσης οι αντιστάσεις συνήθως ταιριάζουν με ακρίβεια άνω του 1%. Είμαι σίγουρος ότι το κύκλωμα θα λειτουργήσει με ανακριβείς αντιστάσεις, αλλά η γραμμικότητα του χαρακτηριστικού θα επιδεινωθεί. Ο ίδιος ο τροχός είναι κατασκευασμένος από μια λαβή μιας παλιάς τηλεόρασης και έχει ένα ελατήριο στον άξονα του ποτενσιόμετρου που τον επαναφέρει στη μεσαία θέση. Για τη διευκόλυνση της ρύθμισης των μηχανικών, όταν ενεργοποιείτε την τροφοδοσία με πατημένο το κουμπί λειτουργίας, ενεργοποιείται ένα πρόγραμμα εντοπισμού σφαλμάτων που ανάβει το LED όταν ο τροχός βρίσκεται στη μεσαία θέση, αυτό σας επιτρέπει να ρυθμίσετε με ακρίβεια τη θέση μηδέν του τροχού στον άξονα του ποτενσιόμετρου. Εάν υπάρχει ανάγκη και επιθυμία να κατασκευαστεί ένας ξεχωριστός τροχός MODULATION, πρέπει να συνδεθεί σε ένα ελεύθερο στοιχείο σύγκρισης (υπάρχουν τέσσερα από αυτά) και η μήτρα R-2R είναι κοινή και για τους δύο τροχούς. Για να αλλάξετε τις εξόδους των συγκριτών, είναι καλύτερο να χρησιμοποιήσετε ένα πρόσθετο μικροκύκλωμα και να χρησιμοποιήσετε το PA2 ως σήμα ελέγχου.

    Εάν θέλετε, μπορείτε να συναρμολογήσετε μια δυναμική έκδοση του πληκτρολογίου χωρίς ένδειξη, κουμπιά και τροχό PITCH WEEL / MODULATION - απλά χωρίς να συναρμολογήσετε το αχρησιμοποίητο τμήμα του κυκλώματος. Όλες οι μεταβαλλόμενες παράμετροι θα οριστούν στις προεπιλογές όταν ενεργοποιηθεί η τροφοδοσία...

    Όλα αυτά μπορούν να τροφοδοτηθούν από οτιδήποτε, η κατανάλωση ρεύματος εξαρτάται από τον συγκεκριμένο δείκτη και δεν υπερβαίνει τα 100 mA. Έχω σταθεροποιητή 7805 ακριβώς πάνω στην πλακέτα χωρίς ψύκτρα (φαίνεται καθαρά στη φωτογραφία). Χρειάζεται ένα μικρό καλοριφέρ εάν τροφοδοτούνται περισσότερα από 9v. Ο συγκριτής τροφοδοτείται από τάση 9 - 12 v, κατά προτίμηση σταθεροποιημένη. Ναι, χρησιμοποίησα μικροκυκλώματα σοβιετικής κατασκευής από παλιά αποθέματα - υπάρχει μεγάλος αριθμός σύγχρονων αναλόγων τους, η αντικατάσταση είναι δυνατή και ακόμη και επιθυμητή - τα σύγχρονα ανάλογα έχουν χαμηλότερη κατανάλωση.

    Πρόγραμμα

    Ο αλγόριθμος για την επεξεργασία πατημένων πλήκτρων προέρχεται από αυτόν που προτείνεται στο περιοδικό «Microprocessor Tools and Systems» Νο. 5, 1986. Ήταν αυτή η δημοσίευση (ή μάλλον, ένα σφάλμα στο προτεινόμενο πρόγραμμα) που με ώθησε να μελετήσω το assembler. Στην πραγματικότητα, η μόνη ιδέα που ελήφθη από εκεί ήταν να καταγραφεί ο αριθμός κάθε πατημένου πλήκτρου σε μια ειδικά εκχωρημένη περιοχή της RAM (CHAN), έτσι ώστε όταν το πληκτρολόγιο πληκτρολογηθεί ξανά, να μην επεξεργαστεί ξανά το ήδη επεξεργασμένο πλήκτρο. Έχω δύο κελιά RAM που έχουν εκχωρηθεί για καθένα από τα πατημένα πλήκτρα (όχι περισσότερα από 10 συνολικά): στο πρώτο καταγράφεται ο αριθμός του πατημένου πλήκτρου, στο δεύτερο - η VELOCITY του (ταχύτητα πατήματος). Επαναλαμβάνω - υπάρχουν μόνο 20 από αυτά τα κελιά και η αρχική διεύθυνση δίνεται με το όνομα CHAN. Το σύμβολο ενός ελεύθερου ζεύγους είναι το πιο σημαντικό κομμάτι του πρώτου κελιού. Το πιο σημαντικό bit του δεύτερου κελιού που έχει οριστεί σημαίνει ότι το NOTE ON για αυτό το κλειδί έχει ήδη μεταδοθεί και δεν χρειάζεται περαιτέρω επεξεργασία.

    Δεν θα περιγράψω λεπτομερώς ολόκληρο το πρόγραμμα, ο πηγαίος κώδικας είναι γεμάτος με σχόλια και είναι αρκετά προσβάσιμος σε ένα εκπαιδευμένο άτομο. Για τα υπόλοιπα, δίνω αμέσως έτοιμο firmware στα αρχεία Dinamic.hex και Pitchmod.hex. Θα εξηγήσω μόνο μερικά μη προφανή σημεία. Λοιπόν, πρώτα απ 'όλα, σχετικά με τη δυναμική: τη στιγμή που ανοίγουν οι επάνω επαφές ενός κλειδιού, ο αριθμός του γράφεται στο πρώτο κελί του πρώτου ελεύθερου ζεύγους από την περιοχή CHAN, επαναφέροντας ταυτόχρονα το σύμβολο ελεύθερου ζεύγους. Η αρχική τιμή VELOCITY = 127 γράφεται στο δεύτερο κελί Η ευαισθησία του πληκτρολογίου καθορίζεται από τη συχνότητα διακοπής, καθώς η επεξεργασία διακοπής μειώνει τις τιμές VELOCITY για όλα τα πλήκτρα για τα οποία δεν έχει μεταδοθεί ακόμη η ΣΗΜΕΙΩΣΗ ON. Οι διακοπές προκαλούνται από ένα ενσωματωμένο χρονόμετρο. Τη στιγμή που οι κάτω επαφές του κλειδιού είναι κλειστές, το σύμβολο «μεταφερθεί» τοποθετείται στο αντίστοιχο κελί CHAN και το NOTE ON μεταδίδεται με την τρέχουσα VELOCITY. Για να βελτιωθεί η καμπύλη ευαισθησίας, οι τιμές VELOCITY μειώνονται σύμφωνα με έναν λογαριθμικό νόμο: το 1/16 του τμήματός του, μειωμένο κατά 1, αφαιρείται από την τρέχουσα τιμή VELOCITY, ενώ το κλειδί μετακινείται από την επάνω επαφή στην κάτω πρώτον, η τιμή VELOCITY στο αντίστοιχο κελί CHAN μειώνεται σύμφωνα με τον λογαριθμικό νόμο και όσο πιο γρήγορα κινείται το κλειδί, τόσο μεγαλύτερη είναι η VELOCITY τη στιγμή που κλείνουν οι χαμηλότερες επαφές του κλειδιού και μεταδίδεται η ΣΗΜΕΙΩΣΗ ON. Οι διακοπές ελέγχουν επίσης τη δυναμική οθόνη, αυτό γίνεται για να εξαλειφθεί το τρεμόπαιγμα της ένδειξης.

    Λειτουργίες κουμπιού: TRANSPOSE – όλα τα πλήκτρα μειώνονται στα αγαπημένα σας ελάσσονα: εύρος +/- 15 ημιτόνια. Το PRG εκχωρεί ένα ηχόχρωμο (όργανο) σε μια δεδομένη προεπιλογή (UP1-UP5) και το VOL εκχωρεί την ένταση του ήχου. Η τρέχουσα παράμετρος εμφανίζεται στην ένδειξη και μπορεί να αλλάξει χρησιμοποιώντας τα κουμπιά "+" και "-" Το TWIN εμφανίζει ένα "διπλό" ηχόχρωμα - μία από τις προεπιλογές (UP1-UP5) και, ταυτόχρονα, την προεπιλογή LOWER. ήχος ταυτόχρονα. Το STEREO εξάγει τον ήχο της τρέχουσας προεπιλογής στα δεξιά και στα αριστερά στερεοφωνικά κανάλια με ένα ελαφρύ «αποσυντονισμό» (εφέ «ρεφρέν»). Το κουμπί SPLIT δεν είναι ενεργοποιημένο. Το πεντάλ SUSTAIN έχει σχεδιαστεί κυκλικά καθώς ένα από τα κουμπιά δεν πρέπει να είναι πολύ μεγάλη. Οι διευθύνσεις των χειριστηρίων κουμπιών συλλέγονται σε έναν πίνακα στην αρχή του προγράμματος όταν αλλάζετε τις λειτουργίες των κουμπιών, μπορείτε να αντικαταστήσετε τις δικές σας.

    Το ADC του τροχού είναι μισό λογισμικό, λειτουργεί χρησιμοποιώντας έναν διαδοχικό αλγόριθμο προσέγγισης, ο πίνακας R-2R εκτελεί τη μετατροπή ψηφιακού σε αναλογικό. Πρώτον, ένα 1 στο πιο σημαντικό ψηφίο εφαρμόζεται στον πίνακα R-2R και ο συγκριτής καθορίζει αν είναι πολύ ή λίγο. Αν είναι λίγο, το 1 παραμένει στο πιο σημαντικό bit, αν είναι πολύ - 0. Τότε το ίδιο συμβαίνει με κάθε επόμενο bit χαμηλής τάξης (6 βήματα συνολικά) και παίρνουμε έναν αριθμό έξι bit που αντιστοιχεί στο γωνία περιστροφής του τροχού. Αυτή η ακρίβεια μου φαίνεται επαρκής, αλλά μπορείτε να προσθέσετε ένα ακόμα bit αυξάνοντας τη μήτρα και το πρόγραμμα μετατροπής.

    Σχέδιο

    Ως το πραγματικό πληκτρολόγιο, χρησιμοποίησα ένα σοβιετικό κατασκευαστή "Start" τώρα, ίσως είναι πιο εύκολο να βρω ένα παλιό, μη λειτουργικό Yamaha ή Casio, αυτό θα λύσει επίσης το πρόβλημα της κατασκευής της υπόθεσης - εάν, φυσικά, το παλιό όργανο είναι σχετικά άθικτο...

    Δεν αναπτύχθηκε πλακέτα τυπωμένου κυκλώματος - θεώρησα ακατάλληλο να αφιερώσω χρόνο στην καλωδίωση και να φτιάξω μια πλακέτα για να δημιουργήσω ένα μόνο αντίγραφο της συσκευής και η διάταξη έγινε σε μια πλακέτα κυκλώματος χρησιμοποιώντας βραχυκυκλωτήρες MGTF. Ως σύνδεσμος και καλώδιο στο πληκτρολόγιο, χρησιμοποιήσαμε ένα καλώδιο από μονάδες δισκέτας από υπολογιστή με αντίστοιχο βύσμα σε κάθε πλευρά - αυτό διευκολύνει τη συναρμολόγηση/αποσυναρμολόγηση της τελικής συσκευής.

    Στην περίπτωσή μου, το σώμα ήταν λυγισμένο από λεπτό φύλλο χάλυβα (αυτό που υπήρχε) - με ξύλινες πλευρές (όπως παλιά σοβιετικά όργανα).

    Λοιπόν, εν ολίγοις, αυτό είναι όλο. Δημιουργική επιτυχία!

    Κριτική