Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Przetwornik ADC+UART Atmega8

05 Maj 2011 17:15 1509 4
  • Poziom 9  
    Witam, mam problem z przetwornikiem analogowo-cyfrowym i wysyłaniem danych przez UART na Atmega 8. Echo UARTU działa poprawnie. Dla uproszczenia próbowałem wysyłać tylko ADCL- odpowiedzią jest zawsze FF w Hex. Podłączałem bateryjke pod wejścia, jak również zostawiałem bez niczego- efekt ten sam. Chciałem skorzystać z wewnętrznego Aref. Proszę o pomoc, co robię źle? Oto kod:
    Kod: c
    Zaloguj się, aby zobaczyć kod


    Z tego zamieniania na float nie korzystam, ale od razu na przyszlość pytam, czy to zadziała. Korzystałem z różnych poradników dlatego jest troche bałagan.
  • Poziom 38  
    Kod: c
    Zaloguj się, aby zobaczyć kod


    a gdzie obsługa przerwania?
  • Poziom 9  
    Ale ja nie obsługuje UART poprzez przerwanie. W kodzie zamieściłem wysłanie z powrotem wysyłanej danej i to działa, także myśle że coś z ADC albo przetwarzaniem typów zmiennych, ale już kompletnie nie wiem co.
  • Poziom 38  
    Włączasz przerwanie i nie realizujesz jego obsługi. Wiesz czym to się kończy?
  • Poziom 9  
    to nie wiedziałem, że to w czymś przeszkadza. W każdym razie wywaliłem już RCIE i dalej to samo.

    Dodano po 2 [godziny] 52 [minuty]:

    Nie miałem podpiętego kondensatora na Aref więc to mógł być problem. Teraz daje 3,3V po stabilizatorze i problem w tym że otrzymane dane są bardzo mocno losowe. Odbieram na ADC1- przy niczym nie podłączonym ADCH=0 ale ADCL są mocno różne. Przy podłączonej baterii która ma na voltomierzu 0,82 czasem pokazuje wogóle 0, a czasem ADCH=3 także całkowita losowość. Co może być przyczyną?

    Teraźniejszy kod:
    Kod: c
    Zaloguj się, aby zobaczyć kod