Au secours d'un retraité

Questions de programmation / Offset FSUIPC et IOCP

Au secours d'un retraité

Messagede sertor33 » Mar 18 Oct 2016 08:35

Bonjour à tous,
A la demande de Fabien, je poste ma présentation et questions dans cette rubrique.
-----------------
De retour en région bordelaise après mes années professionnelles à Paris, je vais enfin pouvoir me consacrer à mon Rêve, la construction d'un simu !
Pilote du dimanche, un peu informaticien, la transpiration est en marche ...
Pas à pas. D'abord un banc d'essai pour tester tous les types de périphériques entrées et sorties avant install sur contreplaqué.
Le tout avec les cartes OpenCockpit, si j'ai bien compris les voix de la majorité non silencieuse.

MAIS déjà ça se corse.
J'ai reçu le matos, écris 2 programmes sioc :
- un interrupteur sur carte input qui allume une led sur carte output. Même pas utilisé FSX, y'a pas plus simple.
- une led qui s'allume quand je rentre le train

ET bien vous me croirez pas, tout fonctionne avec siocmonitor et IOCPConsole, j'allume mes led, l'inter est détecté, les valeurs changent, MAIS rien ne se passe 'en dehors', on dirait que sioc.ssi sommeille, en tous les cas, lui et FSX, ils se causent pas.

J'ai raté quelque chose ???
Merci pour votre aide.
Promis, j'abuserai pas, je suis un diesel, faut que je sois chaud, après ça va.

Cordiamicalement
Serge
sertor33
 
Messages: 44
Inscription: 24/09/16

Re: Au secours d'un retraité

Messagede fab » Mar 18 Oct 2016 08:53

Re bonjour serge,

En effet il doit te manquer quelque chose cligneoeil
.... Il te manque le lien vers FSX applaublanc

Tu nous parles d'interrupteur et de LED, mais pour inter-agir avec quoi dans FSX ?

Que doit faire l’interrupteur ?
Que doit refléter la LED ?

Ensuite on pourra t'aider grandsoleil
Fabien
Avatar de l’utilisateur
fab
 
Messages: 4414
Inscription: 26/12/12
Localisation: Roubaix

Re: Au secours d'un retraité

Messagede tabar57 » Mar 18 Oct 2016 09:38

Bonjour Serge, enfin rebonjour

Quand tu vas dans le menu de fsx, à droite est ce que tu as quelque chose du style FSUIPC dans le menu Modules ?

Cordialement

Bernard
Mon blog de construction : http://tabar57.blog4ever.com
Hémicockpit de Beechcraft B200 ( de FlightOne ) P3DV4.5 et 2 PC en réseau W7 64 bits et W10, cartes OC et FDbus, vibreur et yoke rdf de BFFsimulation, météo réelle asp4
Avatar de l’utilisateur
tabar57
 
Messages: 3651
Inscription: 29/12/10
Localisation: Dans ma cabine en Lorraine

Re: Au secours d'un retraité

Messagede sertor33 » Mar 18 Oct 2016 12:14

Ce forum est magique, j'ai déjà un bout de sioc qui marche ...

Var 0004, name gear_com, Link FSUIPC_INOUT, Offset $0be8, Length 4 // commande train
Var 0002, name gear_sw, Link IOCARD_SW, Input 27 // inter train
{
IF &gear_sw = 1
&gear_com = 0 // sorti
else
&gear_com = 16383
}

Var 0009, name Led_out, Link IOCARD_OUT, Output 16
{
IF &gear_com = 16383
&Led_out = 1
else
&Led_out = 0
}

Le train sort bien dans FSX mais la led s'allume pas.

J'ai essayé encore plus basique, sans FSX :
Var 0002, name gear_sw, Link IOCARD_SW, Input 27
Var 0009, name Led_out, Link IOCARD_OUT, Output 16
{
IF &gear_sw = 1
&Led_out = 1
else
&Led_out = 0
}

la led s'allume pas non plus.

Qu'est-ce que j'ai raté ?
C'est fou ce que je vais avoir l'air ridicule quand j'aurai la solution !

Merci à vous.
Serge

NB : désolé pour l'erreur de post, je pensais qu'il fallait d'abord passer par le topic présentation des membres
sertor33
 
Messages: 44
Inscription: 24/09/16

Re: Au secours d'un retraité

Messagede sertor33 » Mar 18 Oct 2016 12:17

Précision supplémentaire
J'allume la led avec siocmonitor, c'est donc pas un problème de câblage.
sertor33
 
Messages: 44
Inscription: 24/09/16

Re: Au secours d'un retraité

Messagede fab » Mar 18 Oct 2016 12:40

OK, alors règle numéro une : SIOC fonctionne par événements.
Le code sous une variable ne sera exécuté que si cette variable change
Pour l'inter, c'est bon puisque c'est toi qui bouge l'inter, donc le code sous la variable inter gear_sw fonctionne !

Pour la portion de code
Code: Tout sélectionner
Var 0009, name Led_out, Link IOCARD_OUT, Output 16
{
IF &gear_com = 16383
&Led_out = 1
else
&Led_out = 0
}


ne sera exécute que si tu changes la variable Led_out, et comme led_out ne change pas, le code ne s’exécute pas nondoightblanc

Je te laisse chercher ce qu'il faut faire !
Avatar de l’utilisateur
fab
 
Messages: 4414
Inscription: 26/12/12
Localisation: Roubaix

Re: Au secours d'un retraité

Messagede nuno14 » Mar 18 Oct 2016 12:51

Bonjour Serge,

essaie ceci
Code: Tout sélectionner
Var 0001, name gear_com, Link FSUIPC_INOUT, Offset $0BE8, Length 4     // commande de train

Var 0002, name gear_sw, Link IOCARD_SW, Input 27
{
  IF gear_sw = 1
  {
    &gear_com = 16383   
    &led_out = 1   
  }
  ELSE
  {
    &gear_com = 0
    &led_out = 0
  }
}

Var 0003, name led_out, Link IOCARD_OUT, Output 16


Bonne journée

Nuno.
Dernière édition par nuno14 le Mar 18 Oct 2016 14:31, édité 1 fois.
Image
Avatar de l’utilisateur
nuno14
 
Messages: 175
Inscription: 14/09/10
Localisation: Près de Lisieux, Normandie

Re: Au secours d'un retraité

Messagede tabar57 » Mar 18 Oct 2016 14:00

Bonjour,

Une petite précision ... si le train est sorti la variable $0BE8 est à 16383 et la led verte doit être allumée sinon la var $0bE8 est à 0 ou le train est en transit mais on verra çà plus tard ( led rouge )

Cordialement

Bernard
Mon blog de construction : http://tabar57.blog4ever.com
Hémicockpit de Beechcraft B200 ( de FlightOne ) P3DV4.5 et 2 PC en réseau W7 64 bits et W10, cartes OC et FDbus, vibreur et yoke rdf de BFFsimulation, météo réelle asp4
Avatar de l’utilisateur
tabar57
 
Messages: 3651
Inscription: 29/12/10
Localisation: Dans ma cabine en Lorraine

Re: Au secours d'un retraité

Messagede nuno14 » Mar 18 Oct 2016 14:32

Merci tabar57.

Code ci-dessus rectifier.

Nuno
Image
Avatar de l’utilisateur
nuno14
 
Messages: 175
Inscription: 14/09/10
Localisation: Près de Lisieux, Normandie

Re: Au secours d'un retraité

Messagede sertor33 » Mar 18 Oct 2016 15:18

Oups ! j'ai du rater un envoi de réponse. Je recommence.
@ fab, merci pour ton temps
J'ai modifié le code selon tes infos (déplacé la définition de la Var 0009 à la fin du code) et ça marche, s'allume.
Mais s'éteint tout de suite (on verra ça plus tard)
j'avais jamais vu un soft qui fonctionne différemment selon la position des définitions dans le source.
Donc pour moi sioc c'est pas clair ...
Avez-vous des liens de doc pour les nuls pour pas que je pollue trop le forum

Cdlt
sertor33
 
Messages: 44
Inscription: 24/09/16

Suivante

Retourner vers Programmation Sioc





Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 9 invités