Arduino kapcsolások

Magyar Arduino

Magyar Arduino

Analóg kimenet (PWM) /Alapok/

2015. június 20. - Molnár Bence

Analóg kimenet (PWM)

 

Technikai értelemben ez nem egy hagyományos analóg kimenet, mert a kimeneten nem egy 0V és 5V közé eső feszültség jelenik meg. A PWM jel (impulzus szélesség moduláció) az analóg kimeneti lábra meghatározott ideig felváltva 0V-ot és 5V-ot kapcsol. A két feszültség idejének az egymáshoz viszonyított arányát változtatva tudjuk a jel kitöltési tényezőjét változtatni, ezáltal változtatni a lábon lévő átlagfeszültség szintjét. 

Az Arduino hat digitális lába képes PWM jelet előállítani (Pin 3, 5, 6, 9, 10 és 11). Az analoWrite(PWM_Pin, szám) parancsnak egy 0-255 közé eső számot adva paraméterül könnyen változtatható a PWM jel kitöltési tényezője.

analogWrite(láb, érték);  - ha egy lábat kimenetnek állítottunk be, és a láb képes PWM-re, akkor ezzel az utasítással adhatunk rá PWM jelet. A függvénynek paraméterként egy 0 - 255 közötti értéket kell megadni a kitöltési tényező beállításához (0=0%=0V, 255=100%=5V)

Az alábbi példa a PWM használatát mutatja be:

 

/*

* LED fenyerejenek valtoztatasa potenciometer-rel

*/

 

 

int potPin = 5;  // potenciometer A5-re kotve

int val;    // valtozo a mert ADC ertek tarolasara  

int ledPin = 9;  // LED Pin9-re kotve

 

 

void setup() 

pinMode(ledPin, OUTPUT);  // a LED-hez tartozo lab kimenet 

 

 

void loop() 

val = analogRead(potPin);  // ADC ertek beolvasasa 

analogWrite(ledPin,val/4);  // LED-nek PWM jel

delay(100);    // varakozas 

}

A kód megméri a potenciométer feszültségét, és egy azzal arányos kitöltési tényezőjű PWM jelet ad a LED-re. Az ADC 0-1023 közé eső számot ad végeredményül, a PWM-nek az analogWrite() utasításban viszont egy 0-255 közé eső számot kell megadni paraméterként. Ezért az ADC eredményét el kell osztani 4-el, hogy 0-255 közé eső számot kapjunk. A potencimétert tekergetve a LED fényereje változtatható. 

A bejegyzés trackback címe:

https://magyararduino.blog.hu/api/trackback/id/tr927559814

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

süti beállítások módosítása