Minden, ami elektronika

Elektronikával hobbi szinten foglalkozó oldal

analogWriteResolution()

2019. augusztus 20. 01:18 - raptor13

[Zero, Due & MKR család]

Leírás

Az analogWriteResolution() az Arduino Due analóg API-jának kiterjesztése. Az analogWriteResolution() beállítja az analogWrite() függvény felbontását. Alapértelmezés szerint 8 bites (0-255 közötti értéket vehet fel), az AVR alapú alaplapokkal való visszamenőleges kompatibilitás miatt.

Az Due a következő hardveres képességekkel rendelkezik:

  • 12 kimenet, amely a többi Arduino alaplaphoz hasonlóan 8 bites PWM-et használ. Ezek felbontása 12 bitre változtathatók.
  • 2 kimenet 12 bites DAC-tal (Digital-to-Analog Converter)

Ha a felbontást 12-re állítja, akkor az analogWrite() -ot 0 és 4095 közötti értékekkel használhatja a teljes DAC felbontás kihasználására.

A Zero a következő képességekkel rendelkezik:

  • 10 kimenet, amely a többi Arduino alaplaphoz hasonlóan 8 bites PWM-et használ. Ezek felbontása 12 bitre változtathatók.
  • 1 kimenet 10 bites DAC-tal (Digital-to-Analog Converter).

Ha az írási felbontást 10-re állítja, akkor a analogWrite() értékét 0 és 1023 közötti értékkel használhatja a teljes DAC felbontás kihasználására.

Az MKR táblák családjának a következő hardver lehetőségei vannak:

  • 4 kimenet, amely a többi Arduino alaplaphoz hasonlóan 8 bites PWM-et használ. Ezek felbontása 12 bitre változtathatók.
  • 1 kimenet, 10 bites DAC-tal (Digital-to-Analog Converter)

Ha a felbontást 12 bitre állítja, akkor használhatja az analogWrite() értéket 0 és 4095 közötti értékkel a PWM jelekhez; állítson be 10 bitet a DAC kimeneten, a teljes DAC felbontás kihasználásához.

Szintaxis

analogWriteResolution(bit)

paraméterek

bit: meghatározza az analógWrite() függvényben használt értékek felbontását (bitben). Az érték 1-től 32-ig terjedhet. Ha olyan felbontást választ, amely magasabb vagy alacsonyabb, mint az alaplap képessége, akkor a hardweres minimum vagy a maximum hajtódik végre. A részleteket lásd az alábbi megjegyzésben.

Eredmény

nincs

Példaprogram

Megjegyzések és figyelmeztetések

Ha az analogWriteResolution() értéket az alaplap képességeinél magasabb értékre állítja, az Arduino eldobja a további biteket. Például: a Due analogWriteResolution(16) használatával 12 bites DAC lábon csak az analogWrite() értékhez átadott értékek első 12 bitjét fogjuk használni, és az utolsó 4 bitet nem veszi figyelembe.

Ha az analogWriteResolution() értéket alacsonyabb értékre állítja, mint amit az alaplap tud, akkor a hiányzó bitek nullákkal töltődnek fel, hogy ki legyen töltve a megadott érték. Például: a Due analogWriteResolution (8) használatával egy 12 bites DAC lábon, az Arduino hozzáadja a 4 "nullás" bitet az analogWrite() által használt 8 bites értékhez, hogy megkapja a szükséges 12 bitet.

Lásd még

analogReadResolution()

analogWrite()

analogRead()

map()

Az analóg bemenet leírása

Szólj hozzá!
Címkék: funkciók arduino

A bejegyzés trackback címe:

https://electro.blog.hu/api/trackback/id/tr7815008500

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.

Nincsenek hozzászólások.
süti beállítások módosítása