Wouah a écrit:Merci Michel, toutes les idées sont intéressantes...mais comme tu as vu au début du sujet, je ne suis pas spécialiste en programmation, c'est la curiosité de voir un système nouveau pour moi, qui m'a fait en arriver là...
je ne suis pas non plus un spécialiste mais je pense que j'arrive maintenant à créer / modifier. car comme toi je ne connaissais rien et j'avais envie de comprendre, pour adapter à mes souhaits. L'idée est donc de t'encourager à construire de petits scripts qui te permettront de tailler le script à ton besoin. car tout repose sur le fait que
* les scripts de base sont standards
* les télécommandes de base sont standard
* les appareils aussi,
mais que quand on les met ensemble, le standard devient un peu sur mesure. et un peu plus bazar. car quand même le script de Linnar est un script à priori fait pour son camremote, système de télécommande un peu différent que tu utilises.
l'idée est donc de comprendre comment on peut adapter chaque script pour lui mettre la petite variation qui va bien sur TON bazar.
la bonne nouvelle c'est que le truc réagit, la mauvaise c'est que nous n'avons pas TA télécommande pour faire les tests. la mauvaise aussi c'est que ta télécommande semble envoyer plusieurs impulsions différentes avec un seul mouvement.
En gros le script de linnar fonctionne de la facon suivante: il attend une impulsion sur la prise usb (la commande c=get_usbpower dans la boucle permanent while...wend) et en fonction de la valeur recue il envoie à telle telle ou telle action, selon les command if c = 0 then....
donc à mon avis la première chose à faire est de reprendre ce script et de l'adapter pour juste lire les valeurs de c qui t'intéressent (ce que Gilbert avait fait dans un des scripts) cela donne quelque chose comme ca. on simplifie radicalement
- Code: Tout sélectionner
@title test radio wouah - CHDK
:cr_normal
print "CR: USB/CHDK"
while 1
do
c = get_usb_power
until c>0
print " la télécommande fait c =" c
sleep 2000
rem if c>67 then gosub "pwroff"
rem if c>58 then gosub "stop_video"
rem if c>53 then gosub "tvdn"
rem if c>48 then gosub "tvup"
rem if c>40 then gosub "avdn"
rem if c>35 then gosub "avup"
rem if c>28 then gosub "rec_video"
rem if c>21 then gosub "zout"
rem if c>13 then gosub "zin"
rem if c>8 then gosub "focusoff"
rem if c>5 then gosub "focus"
rem if c>0 then gosub "shoot"
wend
end
toutes les lignes sont inactives (le rem met la ligne en remarque, donc sans commande réelle), sauf celle qui va envoyer à l'écran la valeur reçue, quand il en reçoit une, plus une petite pause !
peux tu mettre en route le barnum, lancer ce script - que tu auras sauvegardé avec un editeur simple comme notepad++ en test.txt - , et appuyer sur les manettes avec les fonctions que tu voudrais avoir. à chaque appui, tu notes l'action(sur les manettes, telle que tu le souhaiterais, donc à priori pas celles que tu utilises pour le controle de la nacelle) et le résultat qui s'affiche à l'écran de l'apn. pour nous donner une liste qui ressemblera à ça:
manette "shoot" (par exemple manette gauche haut), valeur c =
manette "zoom + " ex man droite vers la droite, valeur c =
etc...
il y en a peut etre là dedans que tu voudras garder pour le controle de la nacelle ??? auxquels cas tu les ajoutes
ex manette "haut" ( droite haut ????) valeur c = ...
etc
il serait surementn plus simple de mettre une des manettes pour la nacelle et 'lautre pour l'apn mais tu fais comme tu veux, c'est ca l'intéret
A partir de cela on adaptera le script pour mettre les bonnes valeurs de c, qui permettront de renvoyer aux bonnes actions du script. par exemple si on constate que le shoot que tu veux faire en manette gauche haut ???) provoque une valeur c = 45, alors on modifiera le script de Linnar pour que ce soit la valeur 45 qui renvoie à la commande :shoot ....et qui finit par return pour aller attendre la prochaine impulsion.
N'hésite pas si question ou pb. sauf sur l'arduino, là c'est Gilbert