Elektroniczny klawiszowy instrument muzyczny oparty o mikrokontroler
Electronic microcontroller-based keyboard musicial instrument
Streszczenie
Celem pracy było zaprojektowanie i zbudowanie prototypu elektronicznego instrumentu klawiszowego wytwarzającego dźwięki z zakresu jednej oktawy. Projekt oparty został na mikrokontrolerze AVR Atmega328p, który jest częścią Arduino UNO. Mikrokontroler wytwarza sygnały sinusoidalne o wyznaczonej częstotliwości oraz ma możliwość tworzenia dwóch sygnałów jednocześnie (polifonia). Sygnały cyfrowe pochodzące z mikrokontrolera zostały przekształcone za pomocą filtra antyaliasingowego zbudowanego z rezystora i kondensatora. Ponadto zastosowano wzmacniacz PAM8403 oraz głośnik o mocy 3W i impedancji 4Ω. Dźwięk 8-bitowy z dwutonową polifonią został uzyskany za pomocą trybu szybkiej modulacji szerokości impulsów. Wytwarzane dźwięki zawierają się w jednej oktawie i odpowiadają tonom c1-h1 oraz tonowi c2. Oprogramowanie zostało napisane w języku C przy użyciu zintegrowanego środowiska programistycznego Microchip Studio. W aktualnej wersji urządzenie wytwarza dźwięki z zakresu oktawy, mając jednocześnie zaimplementowaną obsługę polifonii dwunutowej. Słowa kluczowe: Mikrokontroler, Modulacja szerokości impulsów, Ośmiobitowa muzyka elektroniczna, Programowanie w języku C.
Abstract
The thesis aimed to design and build a prototype of an electronic keyboard
generating a one-octave range sound.
The project was based on the Arduino UNO AVR Atmega328p microcontroller,
which creates the sinusoidal signals of designated frequency and enables polyphony. Digital
signals are transformed by an anti-aliasing filter consisting of a resistor and capacitor. Other
elements constituting the project are PAM8403 amplifier and 3W speaker with 4Ω
impedance. The 8-bit sound with two-tone polyphony was made by fast pulse-width
modulation mode. Produced sounds correspond to the one-octave and consist of the tones
c1-h1 and tone c2. The software was developed in C programming language using
an integrated development environment – Microchip Studio.
Finally, the prototype able to make one-octave range sounds with two-tone
polyphony was obtained.
Keywords: Microcontroler, Pulse-width modulation, 8-bit music, C programming
language