PWM z Arduino
PWM w Arduino ma szeroką gamę aplikacji używanych do sterowania urządzeniami analogowymi za pomocą sygnałów cyfrowych. Wyjście cyfrowych pinów Arduino można podzielić na dwa poziomy napięcia albo wysokie, czyli 5 V lub niskie, co oznacza 0 V. Za pomocą PWM w Arduino możemy wygenerować sygnał o stałej częstotliwości, ale o zmiennej szerokości impulsu. Najczęstszym przykładem użycia PWM w Arduino jest kontrolowanie jasności diody LED i kontrolowanie prędkości silnika.
Sygnał modulacji szerokości impulsu ma następujące dwie cechy:
PINS PWM na Arduino Uno
Arduino Uno ma w sumie 14 cyfrowych pinów wyjściowych, z tych cyfrowych pinów 6 pins jest dostępnych na płytce Arduino Uno. Na Arduino UNO Digital Pins I/O 3, 5, 6, 9, 10 i 11 to szpilki PWM. Liczba pinów PWM różni się w zależności od tablicy.
Kontr -prędkość w Arduino określa częstotliwość sygnałów PWM. W Arduino uno zegar jest równy zegar systemu podzielony przez wartość Prescalers. Trzy przewodniczący przechowują wartość rejestru kontrataków. Te trzy prescale są znane jako: CS02, CS01 i CS00. Ponieważ całkowita liczba pin PWM wynosi 6, więc w Arduino UNO używane są trzy rejestry liczników.
Rejestry timera/licznika | PINS PWM |
---|---|
TCCR0B | Kontroluje pin 6 i 5 |
Tccr1b | Kontroluje pin 9 i 10 |
Tccr2b | Kontroluje pin 11 i 3 |
Każdy z tych trzech rejestrów może skonfigurować trzy różne zakresy częstotliwości dla sygnałów PWM. Zwykle domyślnie Arduino Uno mają następujące częstotliwości dla pin PWM:
Pins Arduino | Częstotliwość PWM |
---|---|
5 i 6 | 980 MHz |
9, 10,11 i 3 | 500 MHz |
Jak używać pinów PWM w Arduino
Cyfrowe szpilki na Arduino można skonfigurować za pomocą za pomocą pinmode (), DigitalRead () I DigitalWrite (). Tutaj funkcja pinmode () ustawia pin jako wejście i wyjście. Kiedy konfigurujemy cyfrowe szpilki jako funkcja wejściowa cyfrowa () jest używana podczas ustawiania pinu jako funkcji wyjściowej cyfrowej ().
anogwrite ()
Aby skonfigurować piny PWM, których używamy anogwrite () funkcjonować. Ta funkcja zapisuje wartość analogową do cyfrowej szpilki. Może ustawić cykl pracy sygnałowej PWM. Gdy funkcja analogwrite jest wywoływana na określonym styku, generowana jest stała fala kwadratowa z zdefiniowanym cyklem pracy. Ta fala kwadratowa pozostanie tam, dopóki nie wywołamy nowej funkcji AnaLogwrite () dla tego pinu lub zapisu nowej wartości za pomocą funkcji DigitalRead () lub DigitalWrite ().
Składnia
analogwrite (pin, wartość)
Funkcja anogwrite () przyjmuje dwa argumenty:
Kolejnym argumentem, który jest opcjonalny w przypadku PWM jest częstotliwość. Jeśli nie jest to określone domyślnie, wynosi 500 Hz.
Wartość analogwrite () określa cykl pracy dla sygnałów PWM:
Wniosek
PWM w Arduino to technika lub metoda kontrolowania urządzeń analogowych za pomocą sygnałów cyfrowych. Wszystkie tablice Arduino mają piny PWM na pokładzie. 6 pin PWM jest obecnych w ONZ z ogółem 14 cyfrowych szpilków. Tutaj omówiliśmy, w jaki sposób możemy skonfigurować te piny za pomocą funkcji anogwrite () w Arduino Uno.