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

[ATmega8][bascom][adc] Czujnik MOBOT-US V2.

kielon23 21 Lip 2010 14:00 1938 3
REKLAMA
  • #1 8315059
    kielon23
    Poziom 10  
    Witam
    Bawię się czujnikiem MOBOT-US V2, który posiada wyjście analogowe, na którym w zależności od pomierzonej odległości od przeszkody podaje odpowiednie napięcie zgodnie z zaleznością 1V=1m. Zakres pomiarowy czujnika 3,5m. Podpinam sonar pod zestaw uruchomieniowy ZL2AVR tak ze wyjście analogowe czujnika przyłączam do pinu PC0(ADCO). Do tego napisałem prościutki program w bascomie, który wyświetla mi pomierzoną wartość napięcia na wyświetlaczu. Problem polega na tym ze w ten sposób jestem w stanie pomierzyć odległość max 130cm (1,3V), co odpowiada wartości wyświetlonej z PC0= 255. Zauważyłem ze przetwornik w zalezności od pomierzonego dystansu podaje mi wartości z zakresu 0-255. Czy jest możliwe ustawienie tak przetwornika bym uzyskał co najmniej 2m (2V) ?? poniżej załączam kod programu.

    [ATmega8][bascom][adc] Czujnik MOBOT-US V2.

    inventco.eu - kod proszę umieszczać w znacznikach CODE
  • REKLAMA
  • #2 8315296
    mirekk36
    Poziom 42  
    Przede wszystki zmień napięcie odniesienia na wewnętrzne (Internal) zamiast AVCC to od razu zwiększy ci się zakres pomiarowy. A że internal w ATmega8 to 2,56V - dzięki temu w zasadzie będziesz chyba miał 100% zakresu od 0 do 1023. Sprawdź.

    A jak nie to jeszcze można zawsze jakiś dzielniczek rezystorowy.

    Przy okazji wybór napięcia odniesienia AVCC to w ostateczności i do prób na szybko. Generalnie to najgorszy wybór. Zawsze lepiej wewn. źródło odniesienia a gdy coś bardzo ważnego to można dać nawet zewnętrzne do nogi AREF procka.

    TYLKO MAM NADZIEJĘ !!!, że u ciebie noga AREF wisi w powietrzu albo jest (najkorzystniej) podłączona kondkiem ceramicznym 100nF do GND i nic więcej!
  • REKLAMA
  • Pomocny post
    #3 8330563
    J_Bravo
    Poziom 27  
    Wystarczy zmienić linie

    Dim Wynik as byte
    na
    Dim Wynik as word

    Poza tym nie rozumiem po co wykorzystujesz dwie zmienne ? Wystarczy jedna typu word
  • #4 8330838
    kielon23
    Poziom 10  
    Wcześniej sam na to wpadłem i rzeczywiście to rozwiązało problem. Zmiana Avcc na internal jak wcześniej sugerował kolega nie pomogła. Jednak dzięki wszystkim za zainteresowanie i pomoc.
REKLAMA