Kurs publikowany w Elektronice Praktycznej [PL]

Filmy są ilustracją dla kursu publikowanego w Elektronika Praktyczna od grudnia 2019.

1. Bramki logiczne

Rozgrzewka: bramki logiczne

cały odcinek kod źródłowy

2. Licznik

Implementacja licznika w języku SystemVerilog. Wynik jest prezentowany na diodach LED.

cały odcinek kod źródłowy

3. Rejestr przesuwny

Rejestr przesuwny sterowany za pomocą przycisków. Jego stan jest prezentowany na diodach LED.

cały odcinek kod źródłowy

4. Encoder

Obsługa enkodera inkrementalnego w języku SystemVerilog. Aktualna wartość jest wyświetlana w kodzie BCD na diodach LED.

cały odcinek kod źródłowy

5. UART Tx

UART jest popularnym interfejsem. Jego implementację zaczniemy od prostrzej części: nadawania.

cały odcinek kod źródłowy

6. UART Rx

Odbieranie danych z portu szeregowego.

cały odcinek kod źródłowy

7. PWM

PWM - modulacja szerokości impulsu (pulse width modulation) jest popularną i prostą techniką pozwalającą sterować analogowym odbiornikiem za pomocą cyfrowego wyjścia. My użyjemy jej do sterowania jesnościa diody LED.

cały odcinek kod źródłowy

8. NCO

NCO - oscylator sterowany cyfrowo (numerically-controlled oscillator) To generator cygnału cyfrowego. W naszym przypadku będziemy tworzyć sygnały sinusoidalne o zadanym okresie. Użyjemi ich do sterowania membraną piezzo.

cały odcinek kod źródłowy

9. ADC

ADC - przetwornik analogowo-cyfrowy (analog to digital converter) pozwala na pomiar napięcia. W tym odcinku nauczymy się używać przetwornika wbudowanego w ukłąd Intel Max10.

cały odcinek kod źródłowy

10. SignalTap

SignalTap to narzędzie, któe pozwala zajrzeć do środka układu FPGA. Tworzy ono, kożystając z zasobów układu FPGA, analizator stanów logicznych. Wyniki są pobierane poprzez JTAG i prezentowane na wykresach.

cały odcinek kod źródłowy

11. Karta dźwiękowa

Zbudujemy kartę dźwiękową. Sygnał z mikrofonu jest zbierany przez przetwornik analogowo-cyfrowy. Następnie dane są wysyłane portem szeregowym do komputera. Dzięki krótkiemu skryptowi Pythonowemu zmienimy je w plik dźwiekowy.

cały odcinek kod źródłowy

12. FFT

FFT, czyli szybka transformata Fouriera jest algorytmem, który pozwala obliczać transformatę Fouriera ze złożonością nlogn. Przygotowane są dwie implementacje: przepływowa oraz iteracyjna. Amplitudy poszczególnych częstotliwości są prezentowane jako jasność diod LED.

cały odcinek kod źródłowy

13. VGA

VGA to analogowy interfejs video. Za pomocą Rysino będziemy wyświetlać obraz o rozmiarze 640x480 pikseli. Każdy z nich może mieć jedne z 8 kolorów.

cały odcinek kod źródłowy

14. PONG

PONG jest klasczną grą komputerową. A na dodatek łątwo ją zimplementować w układzie FPGA. Miłego grania!

cały odcinek kod źródłowy

15. Wyświetlanie terminala alfanumerycznego

Wyświetlanie terminala alfanumerycznego na monitorze. Font został zaczerpnięty z projektu UEFI.

cały odcinek kod źródłowy