logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

RC5SEND atmega stan wysoki po wyslaniu kodu

manacor 10 Paź 2008 00:24 1752 6
REKLAMA
  • #1 5617098
    manacor
    Poziom 11  
    Problem jest prozaiczny a może nie?
    Mam atmega8 i wysyłam kod rc5 wszystko jest ok ale po wyjściu z procedury nadawania i wejściu w pętlę główną programu nadal na wyjściu oc1a mam stan wysoki? Jak to wyłączyć ?
  • REKLAMA
  • #2 5617189
    Pijopic
    Poziom 17  
    TCCR1A bity COM - od nich zalezy stan wyjscia...
  • REKLAMA
  • #3 5617776
    manacor
    Poziom 11  
    Dziękuję za informację dziś będę z tym walczyć i wyniki przedstawie na forum biorąc pod uwagę fakt, że w tym temacie nie ma żadnych odpowiedzi. Zastanawia mnie jedno jakiej komendy użyć. Zaznaczam, że piszę program w bascomie. Robie pilot do rolet elektrycznych 4przyciski czyli góra dół 2 sekcje i 2 przyciski przełączające podprogramy i tym samym zapalające diody informujace o danym kanale. Cztery kody na kanał.Generalnie chodzi o złuzycie baterii - w stanie wysokim mam spolaryzowany tranzystor i uklad zamiast pobierac 3,6mA na samą atmege pobiera 50mA.
  • #4 5618063
    dawid512
    Poziom 32  
    Jak nie chcesz mieć 1 na wyjściu to po każdym wysłaniu kodu ustaw ten pin w stan niski :)
  • REKLAMA
  • #5 5618098
    john_t
    Poziom 29  
    Witam.
    Nie rozumiem dlaczego interesuje Cię stan logiczny tego pinu.
    Zawsze możesz ten stan zmienić ale po co. ?? Czy wykorzystujesz jeszcze do czegoś ten pin ? Brakuje Ci innych pinów w atmedze8??? Ja robiłem wieloprzyciskowego pilota na Attiny2313 i wolne piny jeszcze zostały.
    Układ tranzystora zasilającego LED nadawczy powinien bez nadawania być w stanie zatkanym. (są tranzystory zarówno NPN jak i PNP)
  • #6 5618179
    manacor
    Poziom 11  
    Poradzilem sobie z tym stanem wysokim zerując TCCR1A.

    Zaczne od tego, że programje pilot 6 przyciskowy z usypianiem, wybudzaniem i przełączaniem miedzy podprogramami - zapalniem Led-ów. Ma 4 przyciski do wysyłania kodów i 2 do przełączania podprogramów. Do tych czterech przycisków podpięte są diody które podają też niski stan na INT0. Wyjscie OC1a podpięte jest przez rezystor do bazy tranzystora - tranzystor do diody ir i dalej wiadomo. Problem polega na tym, że w bascom gdy ustawiam przerwania to RC5SEND nie działa ale usypiam procek i wybudzam.A gdy wyłącze przerwania RC5SEND dziala wysyła kod ale po uśpieniu nie moge wybudzić procka ponieważ nie wlączyłem przerwań.I kółko się zamyka??? jak to zrobić żeby wszystko działało?
  • REKLAMA
  • #7 5623987
    manacor
    Poziom 11  
    Dzieki Pijopic bardzo mi pomogłes dziekuje wszystkim za sugestie.
    Pilocik działa jak wariat wlacza się , zlicza czas do uśpienia,usypia się, wybudza się momentalnie, wysyla kod i znów zlicza itd... Ku mojemu zdziwieniu wysyła kod na 12metrow dalej nie mierzyłem bo pomieszczenia zabrakło. Na dodatek pobiera w uspieniu ok 1uA i działa na 3v na padniętych bateriach. Bascom to oprogramowanie które trzeba czuc a nie sie go uczyc bo jest nieprzewidywalny jak kobieta ha ha.
REKLAMA