-
        

Ergebnis 1 bis 3 von 3

Thema: Frequenz zum blinken bringen - Mega8

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    03.02.2006
    Alter
    26
    Beiträge
    99

    Frequenz zum blinken bringen - Mega8

    Anzeige

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

    Ich steuere meinen Roboter mit einem Infrarotsender. (er fährt genau in die Richtung des Senders...)
    Mit Bascom hab ich den Sender so programmiert das die Infrarotdioden eine bestimmte Frequenz bekommen: (das funktioniert)
    Code:
    $regfile = "m8def.dat"
    $crystal = 16000000
    
    Config Portb.1 = Output
    
    Do
    Portb.1 = 0
    Waitus 13
    Portb.1 = 1
    Waitus 13
    Loop
    Aber wie kann ich die Dioden mit gleich bleibender Frequenz ein und ausschalten??

    DANKE jetzt schon für jede Hilfe. \/

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    02.11.2005
    Ort
    Bayern
    Alter
    48
    Beiträge
    310
    probier es einfach mit zwei Taster:
    Code:
    $regfile = "m8def.dat"
    $crystal = 16000000
    
    Config Portb.1 = Output
    Config Pinb.2 = Input                                       'Eingang für den Taster_An
    Config Pinb.3 = Input                                       'Eingang für den Taster_Aus
    Portb.2 = 1                                                 'Pullup ein
    Portb.3 = 1                                                 'Pullup ein
    Taster_An Alias Pinb.2
    Taster_aus Alias Pinb.3
    
    
    If Taster_An = 0 Then Gosub Diode_An
    If Taster_Aus = 0 Then Gosub Diode_Aus
    
    Diode_An:
       Do
          Portb.1 = 0
          Waitus 13
          Portb.1 = 1
          Waitus 13
       Loop
    
    
    Diode_Aus:
    Portb.1 = 0
    Das wäre wohl die einfachste Möglichkeit.
    Das Tastenprellen ist aber dabei nicht berücksichtigt.
    Über einen Timer wäre das Ganze aber besser...
    ### Silvio ###

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    03.02.2006
    Alter
    26
    Beiträge
    99
    Problem gelöst!

    Ich hab´s mit einem Timer gemacht, und es funktioniert. Die Infrarotdioden blinken jetzt alle 50ms ein/aus mit genau 38000 HZ.

    Für die die sich die gleiche Frage stellen:
    Code:
    $regfile = "m8def.dat"                                      'Regfile: Mega8
    $crystal = 16000000                                         '16MHz Quarz
    
    Config Portb.1 = Output
    
    Config Timer1 = Timer , Prescale = 1
    Enable Timer1
    On Timer1 Isr_von_timer1
    Enable Interrupts
    Timer1 = 65115
    
    Do
    Enable Timer1
    Waitms 50
    Disable Timer1
    Waitms 50
    Loop
    End
    
    Isr_von_timer1:
    Timer1 = 65115
    Toggle Portb.1
    Return
    http://www.roboternetz.de/wissen/ind...scom_und_Timer

    danke für die Hilfe

Berechtigungen

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