Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
Ten przewodnik pokaże Ci, jak używać FPGA do tworzenia wyzwalanego przez czujnik ruchu światła o różnym kolorze tak długo, jak trwa ruch. Poziomy czerwonego, niebieskiego i zielonego są kontrolowane przez zatrzaskiwanie wartości dla każdego indywidualnego koloru. Ten projekt został stworzony przez Timmy'ego Nguyena i Ryana Luke'a do końcowego projektu klasy CPE 133.
Krok 1: Części
Zbierz następujące części:
-1 płyta FPGA Basys 3
-1 deska do krojenia chleba
-1 analogowa dioda LED RGB
-3 npn/n-kanałowe tranzystory MOSFET
-1 rezystor 220 omów, -1 czujnik ruchu PIR
-wiele kabli rozruchowych
Krok 2: Zaprogramuj FPGA Basy 3
W tym projekcie używamy modulacji szerokości impulsu (PWM) do sterowania jasnością i kolorem diody LED RGB, która włącza się i wyłącza na podstawie sygnału wyjściowego czujnika PIR wykrywającego ruch. Jeśli czujnik wykryje ruch, dioda LED włączy się na około 4 sekundy, co jest funkcją czujnika.
W tej sekcji znajdują się wszystkie pliki niezbędne do tego projektu.
Moduły:
Dzielnik zegara: zegar pokładowy Basys 3 ma częstotliwość 100 MHz, więc chcemy obniżyć tę częstotliwość do 10 kHz, aby lepiej zarządzać nią w liczniku.
Licznik: Licznik wykorzystuje zredukowane 10 kHz jako wejście i zlicza do 255, gdy jest włączony przez czujnik ruchu.
3 D Flip Flops: Użytkownik przerzuci dowolny z 8 przełączników na płycie, a te przerzutniki, po włączeniu przez naciśnięcie przycisku włączania tego przerzutnika, zatrzasną wartość przełączników w komparatorze. Ta zatrzaśnięta wartość określa cykl pracy lub szerokość impulsu sygnału wyjściowego, który trafia do diody LED.
3 komparatory: 8-bitowe wyjście z licznika trafia do każdego z komparatorów oddzielnie i jest porównywane z 8-bitowym wyjściem przerzutnika. Jeśli wyjście licznika jest mniejsze niż zatrzaśnięta wartość z D Flip Flop, komparator wygeneruje jednobitową wartość High; jeśli wyjście licznika jest większe niż zatrzaśnięta wartość, komparator wygeneruje jednobitową wartość Low. Komparator wysyła następnie swoją wartość do dekodera czujnika.
3 Dekodery czujnika: Dekoder czujnika wyśle wartość komparatora, jeśli czujnik wykryje ruch (1), lub niskie napięcie (0), jeśli nie ma ruchu. Te wyjścia trafiają bezpośrednio do diody LED RGB.
Po pobraniu plików VHD:
Po pobraniu plików i umieszczeniu ich w projekcie zsyntetyzuj, zaimplementuj i zapisz strumień bitów dla projektu. Następnie podłącz płytkę bases 3 i zaprogramuj urządzenie.
Krok 3: Zbuduj obwód na płytce do krojenia chleba
Możesz postępować zgodnie ze schematem i zdjęciami tworząc obwód. Masy są wspólne w całym obwodzie, a dodatkowe rezystory można dodać szeregowo z mosfetami, aby jeszcze bardziej przyciemnić sygnały czerwonego, niebieskiego lub zielonego.
Krok 4: Podłącz komponenty do płyty Basys 3
Możesz użyć schematu i odnośników na zdjęciach, aby podłączyć swoją płytkę Basys 3 do płytki stykowej.
Krok 5: Jak używać
Możesz wprowadzić wartość binarną reprezentowaną przez przełączniki SW0-SW7. Gdy masz tę wartość, możesz nacisnąć przyciski BTN_L (czerwony), BTN_C (niebieski) i BTN_R (zielony), aby zatrzasnąć tę wartość na kolor wybrany przez przycisk. W międzyczasie czujnik ruchu uruchomi diodę LED, aby zaświecić się przy każdym ruchu.