eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaNieposłuszna Atmega nie zmienia stanu liniiNieposłuszna Atmega nie zmienia stanu linii
  • Data: 2013-09-01 21:53:27
    Temat: Nieposłuszna Atmega nie zmienia stanu linii
    Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Mam dziwny problem z Atmegą.
    W układzie dwie linie są wykorzystywane do sterowania kluczami CD4066.
    Makrodefinicje włączające i wyłączające klucz wyglądają standardowo:

    #define ON1 PORTC |= _BV(2)
    #define OFF1 PORTC &= ~_BV(2)
    #define ON2 |= _BV(7)
    #define OFF2 PORTD &= ~_BV(7)

    Jeśli na początku programu ustawię którąś z linii w konkretnym stanie -
    wszystko jest ok. Napięcie na porcie się pojawia, albo nie. Sygnał jest
    puszczany, albo nie.

    Dziwna rzecz zaczyna się dziać, gdy w nieskończonej pętli próbuję zrobić
    cykliczne włączanie i wyłączanie klucza:

    int main (void)
    {
    while(1)
    {
    ON1;
    _delay_ms(1000);
    OFF1;
    }
    }

    Program z uporem maniaka trzyma się stanu ustawionego na początku i za
    nic nie chce go zmienić...

    Jaką przyczynę typujecie? Błąd w programie, uszkodzony port Atmegi, a
    może CD4066 coś miesza?

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: