[TUTO SIOC] Ajouter une led

Tous les tutoriels sur la programmation SIOC, le language des cartes Opencockpits

[TUTO SIOC] Ajouter une led

Messagede mameloose » Mar 10 Mar 2015 14:12

bonjour a tous

je continue mes ptits tutos pour débutant avec aujourd'hui comment assigner une led

Pour cet exemple je vais reprendre mon tuto précedent avec la commande de train et donc assigner une ou plusieurs led avec cette commande

1 - déclarer la led dans sioc !

nous allons donc connecter une led sur la carte master sur l'entrée n°15 pour l'exemple

je reprend le code d'avant avec ma commande de train

Image

voila maintenant je vais crée une nouvelle variable pour declarer ma led : donc EDIT NEW VAR

Image
Image

OK donc pour cet exemple je vais utiliser cette led pour l'etat du train gauche a savoir que la led va s'allumer si mon train est sorti et s'eteindre si le train gauche est rentré c'est pour cela que je l'appel LEDTRAINGAUCHE

Image

2 - rechercher maintenant l'offset dans le sdk qui controle le train gauche

Image

VOILA ici l'offset $0BF4 longueur 4 nous dit que si le train gauche est rentré alors le bit de commande est a zero et au contraire si il est sortie la commande sera de 16383

Maintenant il faut rajouter dans sioc cette variable d'etat du train gauche

Image

a partir de la j'ai declaré ma led puis la variable qui va controller cette led .

ATTENTION dans sioc la led est controllé par soit un inter soit une variable fsuipc mais la led ne peut pas commander un etat il faut donc assigner la commande soit dans une variable fsuipc soit dans un inter declaré .

3 - programmer la commande d'allumage de la led

donc la variable ETATTRAINGAUCHE va commander l'allumage de ma led

clic droit sur la variable et newcommand

Image
Image

maintenant il faut assigner la fonction allumage de la led puisque l'ont veut qu'elle soit allumé train sorti et eteinte en rentré donc reclic droit sur la fonction IF et NEWCOMMAND

Image

et maintenant le contraire avec la fonction ELSE clic droit sur LA VARIABLE et NEWCOMMAND

Image

ET VOILA !! donc on pourra constater que quand je rentre le train la led va seteindre et quand je le sort elle s'allumera je peux egalement dans le cadre d'un boeing 737 par exemple continuer pour les led du train droit et du train avant

voila donc ce que ca donne avec le train complet et 2 autres led cablé sur les entrées 16 et 17

Image

ok donc on voit bien ici que j'ai declaré mes 3 leds ainsi que chaque offset de controle du train ( avant gauche et droit) et que les commandes partent des variables fsuipc

par ailleurs on constate aussi que ca deviens vite le bordel pour un bouton et trois led donc je vous laisse imaginer le code complet d'un 747 par exemple !!!!

n'hesitez pas a ranger votre code pour vous y retrouver et meme ecrire dans les case description a quoi correspond votre assignation c'est mieux ....

4 - AJOUTER UN DELAI DALLUMAGE

sur certains avion pour plus de realisme les differents train sortent pas en meme temps du coup on peut remplacer la fonction assignation par la fonction DELAY qui va retarder notre allumage pour plus de realisme !!

ICI dans cette exemple je crée un delai d'une seconde pour le train gauche

Image
Image

voila un retard d'une seconde sur le train gauche on pourra faire pareil sur le train droit avec 0.5 seconde par exemple et le train avant avec 2 secondes c'est comme on veux

a+ greg
Avatar de l’utilisateur
mameloose
 
Messages: 1271
Inscription: 20/04/09
Localisation: evreux

Re: tuto sioc ajouter une led

Messagede C6_Pat » Sam 11 Avr 2015 13:36

Hello Mameloose !

C'est donc non sans une certaine fierté que je t'annonce avoir programmé avec succès ma premiére led, à savoir une led verte qui s'allume lorsque le train est sorti :

Image

On voit donc que ma led est sur la sortie 40, qu'elle s'allume après cinq secondes lors de la sortie du train, s’éteint immédiatement lors de la rentrée.

Pour enrichir le débat, je souhaite utiliser une led orange sortie 42 en plus de la verte sortie 40.
Cette led doit s'allumer durant toute la phase de rentrée/sortie du train c'est à dire cinq secondes.

Comment programmerais tu la led orange sortie 42 Mameloose ?

EDIT / Je pense avoir trouvé et ferais un retour ce soir ici.
" Tout arrive à l'homme qui sait attendre "
.....enfin pas trop longtemps quand même.....
Mon pit' P47 Razorback https://www.checksix-forums.com/viewtopic.php?f=286&t=156962
Avatar de l’utilisateur
C6_Pat
 
Messages: 834
Inscription: 20/12/11
Localisation: Devant l'nordinateur en Alsace

Re: tuto sioc ajouter une led

Messagede mameloose » Sam 11 Avr 2015 14:42

alors attention ! dans ton code tu as mis DELAY 5 500 c'est pas ca c'est DELAY 1 500 (1 pour allumer la led et pas 5)

tu peux utiliser la variable $0BEC par exemple qui lit letat de ton train avant

et sur cette variable tu lui donne deux assign avec ta led en lui disant que si la valeur est entre 0 et 16383 donc on va dire a partir de 1 jusqua 16380 la led sallume

comme ca :

Image
Avatar de l’utilisateur
mameloose
 
Messages: 1271
Inscription: 20/04/09
Localisation: evreux

Re: tuto sioc ajouter une led

Messagede C6_Pat » Sam 11 Avr 2015 20:57

Et voilà c'est fait et fonctionne aux petits oignons !

merci affiche

Image
" Tout arrive à l'homme qui sait attendre "
.....enfin pas trop longtemps quand même.....
Mon pit' P47 Razorback https://www.checksix-forums.com/viewtopic.php?f=286&t=156962
Avatar de l’utilisateur
C6_Pat
 
Messages: 834
Inscription: 20/12/11
Localisation: Devant l'nordinateur en Alsace

Re: tuto sioc ajouter une led

Messagede mameloose » Sam 11 Avr 2015 23:33

Cool !! Bon courage pour la suite
Avatar de l’utilisateur
mameloose
 
Messages: 1271
Inscription: 20/04/09
Localisation: evreux

Re: tuto sioc ajouter une led

Messagede Brenne » Dim 19 Juin 2016 08:44

J'ai bien lu le topic , malgres tout ca ne fonctionne pas et je vois vraiment pas pourquoi SIOC ne reconnais pas la commande ?
J'ai meme mofifie le script pour le simplifier

Var 6001, name ETATDISHON, Link FSUIPC_INOUT, Offset $564D, Length 2
{
&DISH1ON_SW = TESTBIT &ETATDISHON ,0
}

Var 1648, name DISH1ON_SW, Link IOCARD_SW, Device 11, Input 2, Type P
{
IF &DISH1ON_SW = 1
{
&ETATDISHON = SETBIT 0
}
ELSE
{
&ETATDISHON = CLEARBIT 0
}
}

Var 3177, name DISH1A_LED,Link FSUIPC_INOUT, Offset $563C, Length 2

Var 1529, name DISH1BTLA_SW, Link IOCARD_SW, Input 14
{
IF &DISH1BTLA_SW = 1
{
    &DISH1A_LED = DELAY 1 ,600
}
ELSE
{
    &DISH1A_LED = 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: tuto sioc ajouter une led

Messagede pierre01 » Dim 19 Juin 2016 09:52

Ne manque t-il pas un espace après la virgule dans la ligne :
Brenne a écrit:Var 3177, name DISH1A_LED,Link FSUIPC_INOUT, Offset $563C, Length 2

Après le nom de la variable devant "link" ?

Essaie de supprimer complètement la ligne et de la retaper (s'il y a un caractère spécial qui s'y serait glissé) !
Essaie de mettre le n° de variable à la place du nom !

Normalement ta commande est bonne (Bernard, les virgules ne sont pas obligatoires, en tout cas je n'en met pas pour cette commande avec notepad++).
A+
Pierre.
Avatar de l’utilisateur
pierre01
 
Messages: 1769
Inscription: 19/04/09
Localisation: Vers Vesoul (Haute Saône)

Re: tuto sioc ajouter une led

Messagede fab » Dim 19 Juin 2016 10:05

Oui, ça marche chez moi :
- J'ai copier ton script directement de ton post,
- j'ai collé dans le bloc note
- j'ai sauvegardé en testbrenne.txt
- j'ai importé dans SIOC

tout est OK gratgrat
Avatar de l’utilisateur
fab
 
Messages: 4414
Inscription: 26/12/12
Localisation: Roubaix

Re: tuto sioc ajouter une led

Messagede jacquesvde » Mar 21 Juin 2016 14:02

Bonjour mameloose, grandsoleil
Je trouve tes tuto génial applaublanc pour la simple raison que tu aides les personnes à régler leur problème avec la théorie en Sioc via la pratique, ce qui est plus facile à comprendre la programmation en Sioc via FSUIPC. Moi-même je suis de près tes tuto malgré une certaine connaissance du sujet.

bonne journée,
Jacques cligneoeil
Avatar de l’utilisateur
jacquesvde
 
Messages: 1226
Inscription: 20/04/09
Localisation: Courcelles Belgique

Re: tuto sioc ajouter une led

Messagede mameloose » Mar 21 Juin 2016 15:39

Merci Jacques grandsoleil
Avatar de l’utilisateur
mameloose
 
Messages: 1271
Inscription: 20/04/09
Localisation: evreux


Retourner vers Les TUTOS SIOC





Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité