-         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Variablen zusammenrechnen

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    06.06.2013
    Beiträge
    12

    Variablen zusammenrechnen

    Anzeige

    Hallo liebe Leute
    Ich bin Bascomneuling und habe ein kleines Problem mit den zusammenrechnen von Variablen.

    Hier mein Code:

    $regfile = "m8def.dat".dat "
    $crystal = 1000000



    Config Pind.4 = Input
    Config Adc = Single , Prescaler = Auto , Reference = Avcc

    Start Adc


    Dim Druck As Word
    Dim Impulslaenge As Word
    Dim Raus As Word




    Do
    Bitwait Pind.4 , Reset
    Pulsein Impulslaenge , Pind , 4 , 0
    Impulslaenge = Impulslaenge
    Getadc(0) = Druck
    Impulslaenge + Druck = Raus

    If Raus <= 2500 Then
    Portb.1 = 1 : Waitms 1 : Portb.1 = 0
    Elseif Raus > 2500 And Raus <= 10000 Then
    Portb.1 = 1 : Waitms 5 : Portb.1 = 0
    Elseif Raus > 10000 And Raus <= 15000 Then
    Portb.1 = 1 : Waitms 10 : Portb.1 = 0
    End If

    Loop

    Ich möchte die Variable Impulslaenge und Druck addieren
    und in Raus speichern.
    Kann mir jemand weiterhelfen?

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.03.2011
    Beiträge
    1.487
    Raus = Impulslaenge + Druck

    ???????

    MfG Klebwax
    Strom fließt auch durch krumme Drähte !

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    06.06.2013
    Beiträge
    12
    Moin
    Was hast nicht verstanden?

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    26.11.2004
    Beiträge
    451
    Das ist die Lösung deines Problems. Bzw. musst du GetADC(0) auch noch umdrehen

    Das Ganze ist wie in C aufgebaut und das Ergebnis steht vor dem Gleichheitszeichen
    Ergebnis = Operation

    Sprich, aus:
    Getadc(0) = Druck

    Impulslaenge + Druck = Raus

    wird:

    Druck = Getadc(0)
    Raus = Impulslaenge + Druck

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    06.06.2013
    Beiträge
    12
    Danke für die Antwort.Hat geklappt.
    Ist wohl Anfängerfehler

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    06.06.2013
    Beiträge
    12
    Hallo Leute
    Habe hier noch eine Anfängerfrage:
    Ich möchte hier den Eingang Pind.3 mit der Pulsein Pind.4 verzögern und über Portd.5 ausgeben
    Und das mit der If then Anweisung.
    Kann mir jemand zeigen wie ich das mache?


    Config Pind.3 = Input
    Config Pind.4 = Input
    Config Portd.5 = Output


    Do

    Bitwait Pind.4 , Reset
    Pulsein X , Pind , 4 , 0
    X = X * 100




    If X <= 2500 Then
    Portd.5 = 1 : Waitms 1 : Portd.5 = 0
    Elseif X > 2500 And X <= 10000 Then
    Portd.5 = 1 : Waitms 2 : Portd.5 = 0
    Elseif X > 10000 And X <= 15000 Then
    Portd.5 = 1 : Waitms 3 : Portd.5 = 0
    End If

    Loop

  7. #7
    Erfahrener Benutzer Begeisterter Techniker Avatar von Picojetflyer
    Registriert seit
    03.08.2004
    Ort
    Sauerland
    Beiträge
    247
    If X <= 2500 Then
    Portd.5 = 1
    Waitms 1
    Portd.5 = 0
    endif
    If X > 2500 AND X <= 10000 Then
    Portd.5 = 1
    Waitms 2
    Portd.5 = 0
    Endif
    if X > 10000 AND X <= 15000 Then
    Portd.5 = 1
    Waitms 3
    Portd.5 = 0
    End If

    So würd ich es mal probieren, achte beim AND auf die Großschreibung! Bascom ist da nachtragend.

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    06.06.2013
    Beiträge
    12
    Hallo
    Das habe ich soweit verstanden.Aber jetzt möchte ich das Eingangssignal von pind.3 über diese Anweisung verzögern.

  9. #9
    Erfahrener Benutzer Begeisterter Techniker Avatar von Picojetflyer
    Registriert seit
    03.08.2004
    Ort
    Sauerland
    Beiträge
    247
    Zitat Zitat von Horst12 Beitrag anzeigen
    Hallo Leute
    Habe hier noch eine Anfängerfrage:
    Ich möchte hier den Eingang Pind.3 mit der Pulsein Pind.4 verzögern und über Portd.5 ausgeben
    Und das mit der If then Anweisung.
    Kann mir jemand zeigen wie ich das mache?


    Config Pind.3 = Input
    Config Pind.4 = Input
    Config Portd.5 = Output

    ........

    ........

    Horst12
    Hallo
    Das habe ich soweit verstanden.Aber jetzt möchte ich das Eingangssignal von pind.3 über diese Anweisung verzögern.


    Loop
    Könnte an der frühen Stunde liegen, aber mir erschließt nicht ganz was du damit meinst. Was möchtest du denn an oder mit Pind.3 verzögern? Als Input kannst du ja nur auf ein Signal warten/hoffen, aber warum verzögern??? Wofür soll das denn sein?

    Gruß

    Matthias

  10. #10
    Neuer Benutzer Öfters hier
    Registriert seit
    06.06.2013
    Beiträge
    12
    Hallo Matthias
    Also es geht um eine Zündanlage die mit einem Hallsensor ausgerüstet ist. Mit Pulsein möchte ich die Drehzahl messen und mit diesem Wert den Ausgang verzögern.
    Deshalb mit Pind.4 die Zeit messen des lo Signals
    Über Pind.3 kommt das Hi und lo Signal rein.
    Das lo Signal will ich mit Hilfe des Drehzahlwertes verzögern.

    Ich weiß es gibt noch andere Lösungen, aber eins nach dem andern.

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Variablen ändern sich durch Berechnung anderer Variablen
    Von Amri im Forum C - Programmierung (GCC u.a.)
    Antworten: 0
    Letzter Beitrag: 03.05.2013, 17:30
  2. Variablen in Funktionen
    Von Martinius11 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 6
    Letzter Beitrag: 21.07.2010, 12:37
  3. Variablen zusammenführen
    Von infosystems im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 12.10.2006, 15:51
  4. Assembler Variablen
    Von ExtreamCoder im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 1
    Letzter Beitrag: 17.06.2006, 21:20
  5. Variablen
    Von Xeus im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 10
    Letzter Beitrag: 24.05.2005, 16:50

Berechtigungen

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