-         

Ergebnis 1 bis 5 von 5

Thema: zwei externe Interrupts

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    15.12.2004
    Ort
    Lohr am Main
    Alter
    36
    Beiträge
    43

    zwei externe Interrupts

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Hallo!

    Ich bin gerade dabei meinem Robby das genaue Geradeausfahren bei zu bringen. Dazu habe ich jedem Motor eine Gabellichtschranke verpasst die jede Umdrehung zwei Impulse abgibt.
    Um die Sachen zu testen habe ich folgendes Programm geschrieben:

    Code:
    $baud = 19200
    $regfile = "m8def.dat"
    $crystal = 4000000
    Config Pinb.1 = Output
    Config Pinb.2 = Output
    
    
    Ddrd = &B11000011                                           'PD2+3+4 Eingang, Rest Ausgang
    
    
    On Int0 Rad 1                                               'Interrupt-Routine für motor1
    On Int1 Rad 2                                               'Interrupt-Routine für motor2 1
    Config Int0 = Falling                                       'Interrupt 0 bei H/L-Flanke auslösen
    Config Int1 = Falling                                       'Interrupt 1 bei H/L-Flanke auslösen
    
    Dim Um1 As Integer
    Dim Um2 As Integer
    
    Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 1
    
    Enable Interrupts
    
    Enable Int0                                                 'Externen Interrupt 0 einschalten
    Enable Int1                                                 'Externen Intterrupt 1 einschalten
    
    
    Pwm1a = 100
    Pwm1b = 140
    
    
    Do
    
    
    Waitms 200
    Print Um1 ; " " ; Um2 ; "*"
    
    
    
    Loop
    
    
    Rad1:
    Incr Um1
    Return
    
    
    Rad2:
    Incr Um2
    Return

    (Die Pull-up´s hab ich mit Absicht nicht an da das meine externe Beschaltung alles Übernimmt (OP).)


    Das Problem bei meinem Code ist leider, dass sich nur Um1 erhöht und Um2 nur wenn der Motor 1 (Um1) steht.

    Ich bin mir sicher Ihr könnt mir da helfen!


    Gruß Georg

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    16.11.2003
    Beiträge
    355
    hallo, auf den ersten blick seh ich nen fehler im source:

    On Int0 Rad 1

    sollte On Int0 Rad1 sein, deine subs heisen auch so auserdem geht es in Bascom soweit ich weis nicht mit leerzeichen zwischendrin

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    15.12.2004
    Ort
    Lohr am Main
    Alter
    36
    Beiträge
    43
    Oh mann, ja das war es!

    Jetzt scheint es zu gehen!

    Echt ein ärgerlicher Fehler!

    Vielen Dank für Dein waches Auge!!

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    16.11.2003
    Beiträge
    355
    np komsich nur Bascom bringt bei jenem source bim kompilieren genau da einen fehler

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    15.12.2004
    Ort
    Lohr am Main
    Alter
    36
    Beiträge
    43
    Komisch hats bei mir nicht gemacht..
    Naja jetzt gehts ja.

Berechtigungen

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