-         

Ergebnis 1 bis 9 von 9

Thema: Countdown unter Bascom

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    27.01.2006
    Beiträge
    82

    Countdown unter Bascom

    Anzeige

    Hallo!
    gibt es einen fertigen code für einen Coundown?
    habe beim Googln nichts gefunden.
    also wenn der Countdown auf 0 ist, soll er was auslössen.
    danke

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    28.05.2007
    Ort
    Mannheim
    Alter
    30
    Beiträge
    270
    Eine etwas genauere Beschreibung wäre schon notwendig...

    Was soll passieren? Soll der Countdown angezeigt werden? Wenn ja wo? LCD Display Dotmatrix oder Grafik oder auf einer 7-Segment Anzeige mit einer oder 2 oder 3 Stellen.
    Von wo soll der Countdown beginnen?

    ansonsten in etwa so:

    for a = 10 to 0 step -1
    wait 1
    next a

    gosub jetzt_passiert_was


    Gruß Robodriver

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    27.01.2006
    Beiträge
    82
    also ohne ausgabe vom Countdown selbst.
    er soll mit 23 Stunden und 45 minuten anfangen..
    wenn er bei null ist, soll ein ralais für 15 minuten anziehen.

    hast du den kompleten code? für eien AtTiny2313.

  4. #4
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    28.05.2007
    Ort
    Mannheim
    Alter
    30
    Beiträge
    270
    Was für einen Takt verwendest du denn?
    Interner Takt, Externer Quarz oder externer Oszillator?
    Weil nach dem richtet sich der quellcode (nach der Taktrate)

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    27.01.2006
    Beiträge
    82
    Externer Quarz, 16 MHz

  6. #6
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    28.05.2007
    Ort
    Mannheim
    Alter
    30
    Beiträge
    270
    Code:
    Do
    for a = 1 to 100
    wait 855
    next a
    
    set pinx.x
    
    wait 900
    reset pinx.x
    Loop
    
    End
    kommt halt auch drauf an wo das Relais dran hängt.
    Hast du auch an die Leistungsverstärkung gedacht?

    Gruß

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    28.10.2005
    Ort
    Berlin
    Beiträge
    116
    Also erstmal verstehe ich nicht, warum du lieber mehrere Threads mit den gleichen Grundlagen Fragen aufmachst, als einmal in den Wissen Bereich zu sehen. Da ist im Bereich Timer wunderbar erklärt, wie man sowas macht. Außerdem gibt es dort ein Programm nahmens RN-AVR mit dem man sich die benötigten Werte wie Prescaler, Vorgabewert... berechnen lassen kann.
    Das kommt bei deiner Aufgabenstellung dann raus:
    Code:
    $regfile = "2313def.dat"
    $crystal = 16000000
    
    Config Timer1 = Timer, Prescale = 256    'Hier wird der Timer und der Teiler festgelegt
    
    'Der Port mit der dritten LED auf RN-Control wird als Ausgang programmiert
    Config Pinc.2 = Output
    'Hier geben wir der Definition einen schöneren Namen
    Led3 Alias Portc.2
    
    'Hier wird das Unterprogramm festgelegt, das
    'in dem von ihnen eingestellten Intervall aufgerufen wird
    On Timer1 Timer_irq
    
    'Diese Vorgabe wurde berechnet um die genaue Intervallfrequenz zu erreichen
    Const Timervorgabe = 3036
    
    
    'Hier werden die Timer aktiviert
    Enable Timer1
    Enable Interrupts
    
    'Hier ist die Programmhauptschleife
    Do
    'Hier könnte Ihr Hauptprogramm stehen
    Loop
    
    
    
    'Dies ist der Programmteil, der in dem von ihnen gewählten
    'Intervall aufgerufen wird
    Timer_irq:
      Timer1 = Timervorgabe
    
    
       Toggle Led3
    
       Return
    Der Programmteil generiert ein 1Hz Signal und lässt jetzt die LED3 im Sekundentakt an und aus gehen. Du kannst jetzt eine Variable in der Timer_irq bis auf 85500 hochzählen lassen in deinem Hauptprogramm fragst du die Variable ab mit " if variable = 85500 then set lüfter"
    Das gleiche Spiel machst du dann für die 15 Minuten und schaltest genauso wieder aus.

    mfg milkbubi

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    05.02.2006
    Ort
    München
    Beiträge
    111
    Vielleicht wäre es besser Dj_Beat kauft sich eine digitale Zeitschaltuhr für die Steckdose. Damit läßt sich so was ganz einfach schalten.

  9. #9
    Erfahrener Benutzer Robotik Einstein Avatar von Vitis
    Registriert seit
    06.01.2005
    Ort
    Südpfalz
    Alter
    43
    Beiträge
    2.240
    oder über Uhrenquarz, dann Timer Interrupt jede Sekunde
    und internene Oszillator.
    Vor den Erfolg haben die Götter den Schweiß gesetzt

Berechtigungen

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