Hirdetés

Új hozzászólás Aktív témák

  • DarkByte

    addikt

    válasz atesss #19006 üzenetére

    Leginkább ez alapján a doksi alapján indultam el: [SecretsOfArduinoPWM]
    Illetve próbáltam már a PWM-et egy Sony távirányító kód emulátorral: [MultiIR]
    Ez utóbbi elég hasonló kód az enyémhez, csak ő IR kódokat állít elő az időzítőkkel (az interrupt-ban kapcsolgatja ki-be a PWM jelet attól függően hogy most melyik bit-et vagy szóközt kell küldenie). Ki is próbáltam, IR LED-et rádugva az Arduino-mra vígan tudom irányítani az erősítőmet vele.

    A logikai operátorok jelentése (remélem nem keverem el valamelyiket):

    |
    Logikai vagy. Pl. 0100 | 0001 = 0101

    &
    Logikai és. Pl. 0101 | 0001 = 0001

    &= és |=
    A baloldal változó/regiszter tartalmát lecseréli arra az eredményre amelyet a bal oldalt + logikai és/vagy + jobb oldal kiértékelés ad.
    Pl. TCCR2A |= _BV(COM2B1);
    Ez a TCCR2A regiszterben lévő bitekekhez hozzá "vagyolja" a COM2B1-hez tartozó bitmaskot = 1-re állítja valamelyik bitet (vagy ha olyan a bitmask akkor biteket nyilván).

    ~
    Logikai tagadás. Pl. ~(0101)=1010

    Igazából a kombinálás nem tiszta. Pl. a Timer2 egyszerre két pin-hez is generál jelet, amelyeknek a frekvenciájuk közös csak a duty cycle-t tudom szabályozni egymástól függetlenül. Viszont ha lemész a SecretsOfArduinoPWM cikk aljára, a "Varying the timer top limit: fast PWM" részben írja hogy van lehetőség arra hogy a számlálónak mondjak egy TOP értéket ameddig mennek. Ha ez aktív akkor az A rész nem a klasszikus értelemben használja, hanem az OCR2A mondja meg a top értéket ameddig a számláló megy. Legalább is ha jól értem. Kár hogy ilyenkor nincs valami szkópom amin le tudom rendesen mérni hogy mit is csinálnak a tűk. PC hangkártyáján keresztül nézem opto csatolásos módon hogy mi történik (IR LED az Arduino tűjén majd fototranzisztor a PC mikrofonbemenetére) de ez nem az igazi. Bár tény hogy ha ez sem lenne akkor végképp sehogy sem tudnám ellenőrizni. Ez már túl gyors ahhoz hogy LED-en lássam a különbséget.

    [ Szerkesztve ]

Új hozzászólás Aktív témák