-         

Ergebnis 1 bis 3 von 3

Thema: ad wandler

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    31.03.2010
    Beiträge
    33

    ad wandler

    Anzeige

    hallo zusammen,
    ich mache gerdade ein Beispiel mit 2 poti,ich gebe die 2 werte zu zwei kanäle zu einem Ad wandler, die werden verglichen, und wenn die gleich sind muss led1 leuchten, und wenn die wert 1 kleiner als wert 2 muss led2 leuchten, und wenn wert 1 grösser als wert 2 muss led3 leuchten. aber das funktinniert nicht ganz sauber.


    cp Plow0,Plow1
    cpc Phigh0,Phigh1
    breq spg_gleich
    brlo diode1_an
    brsh diode2_an

    spg_gleich: ; Diode an Pin 0 einschalten
    cbi portb,2
    cbi portb,1
    sbi portb,0
    rjmp main

    diode1_an: ;Diode an Pin 1 einschalten
    cbi portb, 0
    cbi portb, 2
    sbi portb, 1
    rjmp main

    diode2_an:
    cbi portb,1
    cbi portb,0
    sbi portb, 2
    rjmp main
    weiß jemand vielleich wo der fehler oder die fehler sind?
    danke

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    21.05.2008
    Ort
    Oststeinbek
    Alter
    27
    Beiträge
    607
    Was heißt "nicht ganz sauber"?

    Gruß, Yaro

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    26.08.2006
    Beiträge
    84
    Mahlzeit!

    Die reale Welt ist nicht binär

    Zwei "gleiche" Spannungen sind meistens doch etwas unterschiedlich und die ad Wandler sind auch nicht fehlerfrei.

    Darum sollte man um zu entscheiden, ob 2 Spannungen gleich sind, nicht alle 10Bit vergleichen. Eine Reduktion auf 6 oder 8 Bit vor dem Vergleich ergibt eine Bandbreite, in der die Spannungen noch als "gleich" anzusehen sind und der auch abundzu mal zutrift.

    LSR Phigh0
    ROR Plow0
    LSR Phigh0
    ROR Plow0
    LSR Plow0
    LSR Plow0

    cp Plow0,Plow1
    breq spg_gleich
    brlo diode1_an

    diode2_an:
    cbi portb,1
    cbi portb,0
    sbi portb, 2
    rjmp main

    spg_gleich: ; Diode an Pin 0 einschalten
    cbi portb,2
    cbi portb,1
    sbi portb,0
    rjmp main

    diode1_an: ;Diode an Pin 1 einschalten
    cbi portb, 0
    cbi portb, 2
    sbi portb, 1
    rjmp main

    Phigh1/Plow1 natürlich auch nach rechts schieben

    PS: Der code für die Wandlung kann natürlich auch fehlerhaft sein...

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •