Hallo Andreas,
zunächst einmal herzlich willkommen hier im Forum sowie viel Freude mit Deiner SX40!
Die grundlegende Unterstützung von CHDK für USB-FBs ist ohne Verwendung von Skripten nur rudimentär und ermöglicht eigentlich nur, auch ohne Verwendung von Skripten überhaupt eine Auslösung möglich zu machen.
Für Deine gewünschten Aufnahmen im Serienmodus muß also ein Skript für Deine USB-FB her, welches eine dauerhafte gedrückte Taste SHOOT simuliert, damit Du zu möglichst schnellen Bildfolgen bei aktiviertem Serienmodus kommen kannst.
Anders ausgedrückt muß so ein Skript also genau das nachstellen, was Du ansonsten (skriptlos) an der SX40 bei Serienaufnahmen machen würdest.
Ich habe dazu eben ein Lua-Skript für Dich geschrieben, welches genau das machen soll. Damit Du dieses Skript nachvollziehen kannst habe ich dabei eine Vielzahl von sogenannten "Kommentaren" (erkennbar an vorangestelltem --) eingefügt.
Hier der Code:
- Code: Alles auswählen
--[[
*********************
Author: Werner_O
*********************
@title Serienaufnahme
]]
--Definition der Hilfsvariable "Aufnahme":
--false = Taste SHOOT ist momentan nicht gedrückt
--true = Taste SHOOT ist momentan gedrückt
Aufnahme = false
--Definition der Unterfunktion "restore()"; verwendet bei Skriptabbruch via Taste SHOOT oder MENU:
--Stellt sicher, daß die Aufnahmetaste bei Skriptende wieder losgelassen wird
function restore()
if Aufnahme == true then --Wahr wenn die Aufnahmetaste aktuell gedrückt ist
release("shoot_full") --Aufnahmetaste wieder loslassen
end
end
repeat --Anfang der Hauptschleife, welche durch die Tasten SHOOT oder MENU beendet werden kann
x = get_usb_power() --Warte auf einen USB-Impulses
if x > 0 then --Starte eine der beiden folgenden Aktionen nach erkanntem USB-Impuls
if Aufnahme == false then --Wahr wenn die Aufnahmetaste nicht gedrückt ist
press("shoot_full") --Aufnahmetaste komplett durchdrücken
Aufnahme = true --Ändern der Variable "Aufnahme" auf true
cls() --Lösche bisherige Textausgaben am Display
print("Aufnahme aktiv;") --Textausgabe am Display
print("Warte auf neuen USB-Impuls") --Textausgabe am Display
print("(Press MENU to EXIT)") --Textausgabe am Display
else --Wahr wenn die Aufnahmetaste gedrückt ist
release("shoot_full") --Aufnahmetaste wieder komplett loslassen
Aufnahme = false --Ändern der Variable "Aufnahme" auf false
cls() --Lösche bisherige Textausgaben am Display
print("Aufnahme inaktiv;") --Textausgabe am Display
print("Warte auf neuen USB-Impuls") --Textausgabe am Display
print("(Press MENU to EXIT)") --Textausgabe am Display
end
end
until is_pressed("menu") --Beenden des Skriptes durch Drücken von Taste MENU
restore() --Führe Unterfunktion "restore()" aus
Alternativer Download von meiner eigenen Homepage:
http://www.studio4all.de/foren/chdk/Serie.lua(Bitte mit dem Namen "Serie.lua" im Unterordner CHDK/SCRIPTS speichern).
Dieses (sehr einfach gestrickte) Skript setzt dabei voraus, daß an der Kamera die Funktion "Serienaufnahme" auch aktiviert wurde.
Nach dem Starten führt jeder USB-Impuls zum Starten bzw. dem Abbrechen einer Serienaufnahme.
Textausgaben am Display zeigen dabei den aktuellen Modus des Skriptes an.
Ãœber die Tasten SHOOT oder MENU kann dieses Skript beendet werden.
Skripte müssen dabei immer im "Alt-Modus" geladen werden und können auch nur im "Alt-Modus" über die Taste SHOOT gestartet werden. Weitere Infos dazu gibt es im CHDK-Handbuch.
Notwendige Einstellungen für dieses Skript im Menü CHDK Einstellungen/USB-Fernbedienung-Parameter (wichtig!):1) USB-Fernbedienung = An
2) Schalter-Typ = None
Liebe Grüße
Werner_O