[PROJEKT] Analizator dźwięku – DFRobot Gravity Audio Analyzer i KAmduino UNO
Po połączeniu wszystkich elementów projektu można przejść do omówienia oprogramowania na platformę Arduino (pełny kod znajduje się poniżej, w sekcji Do pobrania).
Na początku należy dodać biblioteki sterujące modułami. Dla Analizatora audio użyłem biblioteki dostępnej na stronie DFRobot, a dla wyświetlacza OLED – biblioteki firmy Adafruit oraz biblioteki Adafruit GFX. Dodawanie bibliotek do środowiska odbywa się w standardowy sposób: Szkic > Dołącz bibliotekę > Dodaj bibliotekę .ZIP.
Na początku należy dołączyć biblioteki konieczne w dalszej części programu. W tym przypadku, oprócz wyżej wymienionych jest to biblioteka Wire, konieczna do obsługi magistrali I2C.
#include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SH1106.h> #include <AudioAnalyzer.h>
Następnie należy zainicjować obiekty odpowiedzialne za obsługę peryferiów oraz tabelę, w której będą przechowywane aktualne wartości szczytowe sygnału w pasmach częstotliwości.
#define OLED_RESET 0 Analyzer Audio = Analyzer(4,5,0); Adafruit_SH1106 display(OLED_RESET); int FreqVal[7];
W funkcji setup następuje początkowa konfiguracja peryferiów. Wyświetlacz konfigurowany jest do sterowania za pomocą magistrali I2C
void setup() {
display.begin(SH1106_SWITCHCAPVCC, 0x3C);
Audio.Init();
}
W pętli głównej programu odczytywane są wartości z analizatora audio. Następnie generowane są prostokąty o stałej szerokości, a wysokości zależnej od mocy sygnału w danym paśmie. Maksymalna wysokość prostokąta wynosi 64 piksele, a wartość mocy w paśmie wysyłana jest jako sygnał analogowy. Na platformie Arduino zawiera się więc w przedziale 0…1023. Aby wyskalować tą wartość wystarczy podzielić ją przez 16. Wygenerowana grafika następnie jest wyświetlana na ekranie OLED.
void loop() {
Audio.ReadFreq (FreqVal); //odczyt wartości z analizatora
display.clearDisplay();
display.fillRect(1, floor (64-FreqVal[0]/16), 18, ceil (FreqVal[0]/16), 1);
display.fillRect(19, floor (64-FreqVal[1]/16), 18, ceil (FreqVal[1]/16), 1);
display.fillRect(37, floor (64-FreqVal[2]/16), 18, ceil (FreqVal[2]/16), 1);
display.fillRect(55, floor(64-FreqVal[3]/16), 18, ceil(FreqVal[3]/16), 1);
display.fillRect(73, floor(64-FreqVal[4]/16), 18, ceil (FreqVal[4]/16), 1);
display.fillRect(91, floor (64-FreqVal[5]/16), 18, ceil (FreqVal[5]/16), 1);
display.fillRect(109, floor (64-FreqVal[6]/16), 18, ceil (FreqVal[6]/16), 1);
display.display(); //wyświetlenie prostokątów na ekranie
delay(10);
}
Działanie projektu zaprezentowano na poniższym materiale wideo:


Jak kompletować zamówienie w hurtowni elektrotechnicznej przed remontem?
Od wzmacniacza nieodwracającego do integratora i wzmacniacza ładunkowego, czyli historia z zaskakującą pointą jak w dobrym kryminale
Green czy smart? Jak decyzje ESG zaczynają optymalizować procesy produkcyjne 

![https://www.youtube.com/watch?v=BgxJVTwYJ-s Zapraszamy do obejrzenia filmu i wysłuchania krótkich wypowiedzi prelegentów Hardware Forum 2026 i organizatorów majowej konferencji dla inżynierów z branży elektronicznej: Konrad Bruliński z Lemontech, prof. Krzysztof Kulpa z Politechniki Warszawskiej, Zbigniew Huber z FLC, Ewa Załupska z firmy KROK, Jerzy Kozieł z MPTECH, Grzegorz Potyralski z VIGO Photonics, dr Krzysztof Czuba z Politechniki Warszawskiej, Anna Beata Kalisz Hedegaard z Quantum Security Defence, Adrian Cichosz z Elhurt Dystrybucja Anna Kamińska z Creotech Quantum, oraz Łukasz Jaeszke i Adam Jaeszke z TEK.day [materiał redakcyjny]](https://mikrokontroler.pl/wp-content/uploads/2026/05/tytulowe-film-1.png)


