Keresés

Hirdetés

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

  • atesss

    addikt

    válasz DarkByte #19005 üzenetére

    Kandón Atmega 128-on tanultam (múlt félévben is foglalkoztam ezzel), szóval talán valamit hozzá tudok tenni.
    Csak az a gond, hogy fél év alatt is eléggé el tudom felejteni...
    Meg az, hogy most nincs túl sok időm erre, szívesen utánanéznék, meg érdekel is; sőt nyáron akartam én is ezzel foglalkozni, de legkorábban hétvégén tudok esetleg 1-2 órát utánanézni.

    Doksit, egyéb leírást tudnál linkelni ?

    Az első észrevételem:
    OCR2A és OCR2B regisztereket állítasz be a kódban, utána pedig arról beszélsz, hogy ez túlcsordulás. Ez így biztos nincs rendben, mert a túlcsordulás 256-ra (ha 8 bites) megy végbe, és nem tudod állítani. Az előosztókat tudod állítani csak - de az látszik, hogy túlcsordulással nem igazán lehet pontosan belőtt frekvenciát csinálni.

    OCR = Output Compare Regiszter
    Vagyis a compare interrupt "szintjét" tudod vele beállítani.

    Arra is lehet hogy figyelni kell, hogy a (második, vagyis a 48-as) compare match-re történő interrupt után valószínűleg szükséges lenullázni a timert (de lehet arra is figyelni kell, milyen módon; hogy ne essen ki a szinkronból).

    Magyarul szerintem neked két darab compare interruptod van.
    És az OCR2A és OCR2B nem tudom pontosan mit jelent (elvileg 2 külön interrupt "szintje"), de hogy pontosan hogyan lehet használni az A-t és B-t külön.
    Ezt doksiból kell már kinézni.
    Én elsőre azt hittem volna hogy az A és a B az az alsó és a felső bájt - vagyis itt egy 16 bites timerről van szó, aminek "4824"-et állítasz be compare interrupt szintnek.
    De írja az első sorban, hogy a Timer2 8 bites.

    Ja és nekem az Atmega 128 doksijában sikerült egy hibát találnom - pont az interruptok működésével kapcsolatban volt talán 2 regiszter összekeverve. Illetve csak elírás, ha figyelmesen nézed észre lehetett venni hogy hülyeséget írtak, de egy kezdő ha csak kimásolja, és nem gondolja át, akkor könnyen belefuthat (mint én is annó).

    Hirtelen ennyi ment fejből, a legnagyobb gondban pl. a logikai műveletekkel vagyok (most így fejből).
    Mit is jelentenek ezek ? :
    |
    &=
    ~

    [ Szerkesztve ]

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