-
        

Ergebnis 1 bis 4 von 4

Thema: Tochterblitz

  1. #1
    Neuer Benutzer
    Registriert seit
    01.12.2006
    Ort
    Dreieich
    Alter
    63
    Beiträge
    1

    Tochterblitz

    Anzeige

    Hallo,

    Bei den einfachen Digicams ist der Blitz in der Regel sehr schwach ausgelegt. Man kann ihn aber nutzen um ein externes Blitzgerät auszulösen. Schaltungen dafür gibt's bei c't, ELV, Elektor etc. Die sind allerdings relativ Bauteilaufwendig und die Plantinen sind groß.
    Mit einem kleinen ATTiny könnte das auch gehen.

    Fototransistor löst einen Interrupt (int0, steigende Flanke) aus, der erste Blitz (Vorblitz gegen die roten Augen) wird gezählt, beim 2. Blitz wird dann über ein Portpin ein Triac (Optokoppler) geschaltet, der den Tochterblitz auslöst. Dann wird der Blitzzähler wird wieder auf 0 gesetzt (und auch wenn nach dem 1. Blitz innerhalb einer bestimmten Zeit kein zweiter folgt.)
    Eigentlich ein Vierzeiler in Bascom.

    Der Tochterblitz soll ja nahezu gleichzeitig zum Hauptblitz in der Digicam ausgelöst werden. Und der Programmablauf im uC braucht ja einige Zeit: Flanke feststellen, in Interruptroutine verzweigen, Zähler abfragen und Pin einschalten.

    Mein Frage nun:
    Ist da so ein ATTiny (interner Oszi 9,6 MHz, extern bis zu 20 MHz) schnell genug oder ist die Verzögerung für diese Anwendung zu lang?

    Gruß
    Heile

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.12.2005
    Ort
    Nähe Mainz
    Alter
    26
    Beiträge
    3.467
    20Mhz sollten eigentlich reichen. Das wären ja 20000000 Befehle pro Sekunde, die er abarbeiten kann. Das sollte reichen. Ob 9,6Mhz reichen weiß ich nicht, es sollte aber trotzdem gehen.

    jon
    Nice to be back after two years
    www.roboterfreak.de

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    17.02.2006
    Alter
    47
    Beiträge
    781
    Ich würd's in Assembler machen.
    Interrupt feststellen -> k.A. wie lange das dauert
    Verzweigung -> 4 Takte?
    Zählregister mit Wert vergleichen+entsprechende Verzweigung -> ca. 4 Takte
    Port setzen -> 2 Takte
    (Alles grob über'n Daumen gepeilt)
    Macht 10 Takte, also bei 9,6 MHz etwas mehr als 1/1.000.000 Sekunde.

    Überhaupt dürfte (also auch in Bascom) die Verzögerung nicht problematisch werden.

    Gruß,
    Dennis

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    28
    Beiträge
    1.461
    Hi

    Das geht bedenkenlos mit 9,6MHz.
    Da der AVR ein echter RISC ist, macht er tatsächlich neun komma sechs millionen Instruktionen pro Sekunde (aber Vorsicht, der interne Oszi ist mehr ein Schätzeisen als eine zuverlässige, genaue Taktquelle. (temperaturahängig etc.)

    Die Frage ist eher, ob Bascom schnell genug ist. Eigentlich hab ich da auch keine Bedenken, da Bascom einen guten Optimizer hat.

    Sonst musst du das halt in C oder ASM coden, aber der Aufwand dürfte sich auch in Grenzen halten.

    {Andere Frage: Why don't you try?}

    VLg Ts

    PS: Das alles gilt nur für den ext. Interrupt. Der ADC (z.B. Tny26) ist wesentlich langsamer!
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

Berechtigungen

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