Offset, byte et rotacteur

Questions de programmation / Offset FSUIPC et IOCP

Offset, byte et rotacteur

Messagede Brenne » Mer 22 Juin 2016 10:34

Je sais comment on programme un rotacteur a 3 positions comme les IRS , part contre je butte la facon d'affecter le byte
pour une position on utilise tout simplement la fonction SETBIT mais auand il y a plusieurs positions ?
La variable prends sucsessivement l'etat 0,1 ou 2 .....
dans le cas present , j'aie 3 rotacteurs , deux ont un offset a 1 seul byte , donc pas de probleme , part contre le 3 offset en a plusieurs pour des affectation differentes !!!
je vole , donc je suis......

http://perso.orange.fr/b747project/
Avatar de l’utilisateur
Brenne
 
Messages: 120
Inscription: 21/04/09
Localisation: indre

Re: Offset, byte et rotacteur

Messagede stevelep » Jeu 23 Juin 2016 22:41

Salut,

Pas exactement compris ta question, tu peux nous expliquer exactement ton câblage d'inter rotatif
et pour chaque position les valeurs d'offset désirées.

Merci

BOB
Avatar de l’utilisateur
stevelep
Administrateur du site
 
Messages: 2075
Inscription: 27/03/09
Localisation: LSGN Neuchâtel, Suisse

Re: Offset, byte et rotacteur

Messagede fab » Ven 24 Juin 2016 07:32

Oui, comme Bob, je n'ai pas tout compris gratgrat

Il me semble que tu nous parles de "bit" et non de "byte"

Bit : 1 position
Byte : 8 bits, soit 8 positions

Donc sur cette hyposèse tu fais autant de setbit ou de clearbit que tu veux changer la valeur d'une position.
Tout est là : http://www.aircockpit.com/viewtopic.php?f=135&t=4839&p=62051&hilit=setbit#p55504

Donne nous un exemple ...
Avatar de l’utilisateur
fab
 
Messages: 4414
Inscription: 26/12/12
Localisation: Roubaix

Re: Offset, byte et rotacteur

Messagede Brenne » Ven 24 Juin 2016 08:02

Bon , je viens de me taper un message pour rien , j'aie valider et il est passer a la trappe , la prochaine fois je fait un brouillion .3...
Bref ,
Voila en resume :
sur le module bled ( sous Pmagenta )
j'aie des rotacteurs avec 3 positions NORM , 1 A et B , ca je sais faire .ma variable Pack 3 vas etre succesivement a 0, 1 puis 3 suivant la position .
J'aie offset 5673 1 Pack1
offset 5674 1 Pack2
la pas de souci
Pour le 3 j'aie tout ca mais seul le 1 er m'intersesse
5675 1 Pack3
5675 .0 PackL
5675 .1 PackR
5675 .2 WingBodyL
5675 .3 WingBodyR
5675 .4 BleedTripL
5675 .5 BleedTripR

Comment on prog dans ce cas la pour utiliser le bon et pas les autres , il s'agit bien de byte ?
je vole , donc je suis......

http://perso.orange.fr/b747project/
Avatar de l’utilisateur
Brenne
 
Messages: 120
Inscription: 21/04/09
Localisation: indre

Re: Offset, byte et rotacteur

Messagede mameloose » Ven 24 Juin 2016 09:18

salut !
alors dans project majenta quand tu as un offset suivit d'un point et d'un chiffre c'est du bit !

exemple 5675 .2 WingBodyL ici setbit 2 pour activer wingbodyL et un clearbit pour le desactiver ....

si il n'y a pas de point comme ici offset 5674 1 Pack2 alors c'est une assignation toute simple de valeur ...


dans ton cas il n'y a pas de point : 5675 1 Pack3

donc c'est une assignation en gros fonction IF ton inter = 1 assignation loffset 5675 = 1 tu peux rajouter un ELSE ton interr = 0 assignation 5675 = 0

dans le cas de bit c'est pareil mais a la place d'une assignation du met une fonction SETBIT pour activer le bit et dans la fonction ELSE un CLEARBIT pour desactiver ....
Avatar de l’utilisateur
mameloose
 
Messages: 1271
Inscription: 20/04/09
Localisation: evreux

Re: Offset, byte et rotacteur

Messagede Brenne » Ven 24 Juin 2016 11:14

D'accord...
Donc si j'ai bien compris je n'aie pas a me preocuper du 1 qui se trouve derriere ?
il n'y aura pas de risque de confusion avec 5675 .1 PackR
donc ce que j'aie ecris doit etre bon , en tout cas SIOC l'accepte !!!
j'aie ecris comme ceci ;

Var 1573, name PAKCTR3OFF_SW, Link FSUIPC_INOUT, Offset $5675 , Length 2

Var 1574, name PAKCTR3NORM_SW, Link IOCARD_SW, Input 6, Type P // NORM
{
IF &PAKCTR3NORM_SW = 1
{
&PAKCTR3OFF_SW = 1
}
ELSE
{
IF &PAKCTR3NORM_SW = 0
{
&PAKCTR3OFF_SW = 0
}
}
}

Var 1575, name PACKCTR3A_SW, Link IOCARD_SW, Input 7, Type P // 3 A
{
IF &PACKCTR3A_SW = 1
{
&PAKCTR3OFF_SW = 2
}
ELSE
{
IF &PACKCTR3A_SW = 0
{
&PAKCTR3OFF_SW = 0
}
}
}

Var 1576, name PACKCTR3B_SW, Link IOCARD_SW, Input 8, Type P // 3 B
{
IF &PACKCTR3B_SW = 1
{
&PAKCTR3OFF_SW = 3
}
ELSE
{
IF &PACKCTR3B_SW = 0
{
&PAKCTR3OFF_SW = 0
}
}
}
je vole , donc je suis......

http://perso.orange.fr/b747project/
Avatar de l’utilisateur
Brenne
 
Messages: 120
Inscription: 21/04/09
Localisation: indre

Re: Offset, byte et rotacteur

Messagede mameloose » Ven 24 Juin 2016 19:01

c'est presque ca !
deja retire le type P sinon tu devra tourner plusieurs fois ton rotacteur pour desactiver la position voulut ...

ensuite sur un rotacteur pas besoin de ELSE tu peux simplifier le code comme ca :

Var 1573, name PAKCTR3OFF_SW, Link FSUIPC_INOUT, Offset $5675, Length 2

Var 1574, name PAKCTR3NORM_SW, Link IOCARD_SW, Input 6 // NORM
{
IF &PAKCTR3NORM_SW = 1
{
&PAKCTR3OFF_SW = 1
}
}

Var 1575, name PACKCTR3A_SW, Link IOCARD_SW, Input 7 // 3 A
{
IF &PACKCTR3A_SW = 1
{
&PAKCTR3OFF_SW = 2
}
}

Var 1576, name PACKCTR3B_SW, Link IOCARD_SW, Input 8 // 3 B
{
IF &PACKCTR3B_SW = 1
{
&PAKCTR3OFF_SW = 3
}
}
Avatar de l’utilisateur
mameloose
 
Messages: 1271
Inscription: 20/04/09
Localisation: evreux

Re: Offset, byte et rotacteur

Messagede Brenne » Sam 25 Juin 2016 07:11

Ok, supper ,
Mais ou as tu appris tout ca ???
J'apprends plein de trucs , dont je n'aie trouve aucune info nulle part en depit de mes recherches ....... merci affiche
je vole , donc je suis......

http://perso.orange.fr/b747project/
Avatar de l’utilisateur
Brenne
 
Messages: 120
Inscription: 21/04/09
Localisation: indre

Re: Offset, byte et rotacteur

Messagede mameloose » Sam 25 Juin 2016 07:54

La bible jean Luc ! cligneoeil
D'abord le site de Claude Kieffer excellent pour comprendre les bases puis après c'est de la pratique et voilà !
J'ai fais plein de tutos simple dans la rubrique tuto j'explique tout hésite pas à regarder...
Avatar de l’utilisateur
mameloose
 
Messages: 1271
Inscription: 20/04/09
Localisation: evreux


Retourner vers Programmation Sioc





Qui est en ligne

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