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

[ATiny25] [ATiny25][Bascom] - Niezgodne odczyty ADC po migracji z ATmega8

T-play 25 Lip 2013 11:11 2094 4
REKLAMA
  • #1 12559094
    T-play
    Poziom 14  
    Witam.

    Mam problem z uC ATtiny25, który podaje błędne odczyty z ADC, wszystko wcześniej było testowane na ATmega8 z wyświetlaczem i odczyty się zgadzały, teraz dysponując tylko jedną LED'ą, sprawdziłem, że odczyty się nie zgadzają, cała elektronika w przypadku ATmegi i ATtiny się nie zmieniają, jedynie drobne zmiany w kodzie.

    Kod: text
    Zaloguj się, aby zobaczyć kod


    Kod z ATmega8 + wyświetlacz.
    Kod: text
    Zaloguj się, aby zobaczyć kod


    Zmieżyłem napięcia, na wejściu ADC, w przypadku ATmega8 było to 0,66V, czyli prawidłowo, w przypadku ATtiny25 napięcie wynosi 0,02, tak jak by było zwarcie do masy.
  • REKLAMA
  • Pomocny post
    #2 12559710
    dr.hannibal
    Poziom 22  
    Atmega8 ma przetwornik ADC na Porcie C, natomiast Attiny25 ma ADC na Porcie B który deklarujesz jako wyjście i tu może być problem.
    T-play napisał:
    Internal_2.56_extcap

    Czy w związku z tym na AREF masz podłączony kondensator do masy?
    Tak w ogóle to daj schematy, bo Atmega8 i Attiny25 to dwa różne układy więc napisanie że są tak samo podłączone jest mylące i błędne.
  • REKLAMA
  • #3 12560558
    T-play
    Poziom 14  
    [ATiny25] [ATiny25][Bascom] - Niezgodne odczyty ADC po migracji z ATmega8
    Jak widać na załączonym schemacie podłączam kondensator do GND

    To wyjście (PortB2) idzie do optoizolatora.

    Jest to schemat połączenia ATtiny25 (jak można zauważyć), do ATmega8 nie daję, bo nie ma sensu, powiem tylko, że wyjścia ADC są na porcie C, którego nie konfiguruję w kodzie.

    A całą elektronikę po prostu przepinam, z jednego uC do drugiego, zasilanie jest tak samo podłączane, jeżeli będzie naprawdę konieczny schemat to go mogę narysować.
  • REKLAMA
  • #4 12560641
    yokoon
    Poziom 29  
    T-play napisał:
    Witam.

    Mam problem z uC ATtiny25, który podaje błędne odczyty z ADC, wszystko wcześniej było testowane na ATmega8 z wyświetlaczem i odczyty się zgadzały, teraz dysponując tylko jedną LED'ą, sprawdziłem, że odczyty się nie zgadzają, cała elektronika w przypadku ATmegi i ATtiny się nie zmieniają, jedynie drobne zmiany w kodzie.

    Kod: text
    Zaloguj się, aby zobaczyć kod


    Kod z ATmega8 + wyświetlacz.
    Kod: text
    Zaloguj się, aby zobaczyć kod


    Zmieżyłem napięcia, na wejściu ADC, w przypadku ATmega8 było to 0,66V, czyli prawidłowo, w przypadku ATtiny25 napięcie wynosi 0,02, tak jak by było zwarcie do masy.


    Witam.

    Ostatnio również robiłem odczyt napięcia z dwóch kanałów ADC na Atmega8 i tak:

    Napięci referencyjne Internal = 2.56V.

    Przetworniki ADC w kanałach od 0 do 3 są 10-cio bitowe.

    Krok przetwornika to 2,56 / 1024 = 0,0025

    V = ADC * 0,0025

    Skąd się wzięło 0,0142 ?

    Jakie jest napięcie referencyjne w Attiny25 ?
  • #5 12560715
    T-play
    Poziom 14  
    dr.hannibal - Dziękuję, bardzo mi pomogłeś, rzeczywiście, błąd polegał na złej konfiguracji...

    Teraz wygląda to tak:
    Kod: text
    Zaloguj się, aby zobaczyć kod


    Jak widać każdy pin z osobna został zadeklarowany jako output, te od ADC zostawiłem w spokoju.

    yokoon, mam jeszcze na wejściu dzielnik napięcia, o dzielniku 5,66

    V = (2,56 / 1024) * 5,66 - znaczy coś koło tego, bo jeszcze każdy z dzielników, trzeba ręcznie zmierzyć bo rezystory nie są idealne...
REKLAMA