Sioc led avec différentes fonctions

mameloose

PILOTE DE BROUSSE
Messages
3 742
Réactions
2
Points
530
bonjour a tous

je continue mes petits tuto pour débutant avec aujourd'hui comment assigner une led.

Pour cet exemple je vais reprendre mon tuto précédent avec la commande de train et donc assigner une ou plusieurs leds 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 davant avec ma commande de train



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




OK donc pour cet exemple je vais utiliser cette led pour l'état du train gauche à  savoir que la led va s'allumer si mon train est sorti et séteindre si le train gauche est rentré c'est pour cela que je lappel LEDTRAINGAUCHE.



2 - rechercher maintenant l'offset dans le sdk qui contrôle le train gauche.



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

Maintenant il faut rajouter dans sioc cette variable detat du train gauche.



a partir de la j'ai déclarer ma led puis la variable qui va contrôler 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 lallumage de ma led

clic droit sur la variable et newcommand




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



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



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

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



ok donc on voit bien ici que j'ai déclarer mes 3 leds ainsi que chaque offset de contrôle 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 !!!!

nhesitez 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 délai d'allumage

sur certains avions pour plus de réalisme les différents trains ne sortent pas en même 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.




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
 
Super le tuto Greg, je t'ai ajouter un lien vers tes futurs tuto en bas de page de ton 1er post Premier pas avec Sioc

Tes flèches rouges sont un peu faiblarde , tavait la tremblote quand tu a fais tes flèches :D ? Bon je déconnes, dans l'ensemble c'est clair et net. Je pensais que SIOC c'étais un truc beaucoup plus compliqué que ça! Du coup comparé au prix des FDS c'est le jour et la nuit. Néamoins il te faut minimum 3/4 cartes pour faire tourner une base? genre une master, une output, une input et une expansion. La master c'est un hub pour les inputs (siwtchs et inters) ,output (leds) et encoder et lexpansion pour d'autres masters.
 
oula j'ai pas tout compris ptdr !!

en gros premier achat une carte usb expension ; sur cette carte tu peut mettre 4 master ; une master gere les inter les led et une sortie display pour les afficheur 7 segments ; il faut acheter la petite carte display a brancher sur la master et on peut mettre 4 display sur 1 master soit 16 carte sur 4 master !

tout ca sur 1 port usb

perso chez moi pour le 747 j'ai en tout 2 usb expension 8 master et 2 carte display

jallai oublié que la carte usb expension possede des petit pin qui permettent egalement de mettre des potar pour les commandes des gaz par exemple ou les volet les spoilers ect....

et oui mes fleches sont pas droite j'aime pas quand c'est droit .... :p
 
mameloose a dit:
oula j'ai pas tout compris ptdr !!

C'est la fin de la journée, ça ira mieux plus tard ;)

En plus des master t'as des inputs/outputs séparés?

OUTS_SMD_grande.jpg

3t5.01.jpg
 
ah oui alors tout depend de comment tu fais ton cablage ; l'avantage de ta photo c'est que les sortie he20 en noir sont transformées en dominos tu mets tes cables tu visse et voila .

moi j'ai pas fait comme ca jsui pas fan du domino parfois le cable se barre ou le contact est foireux ...

j'ai acheté des lignes de pin et je soude directement mes fils dessus après chacun sa technique bien sur ...
 
pour lallumage des LED ça fonctionne bien mais j'ai été obligé de dinverser les commandes
&LEDTRAINGAUCHE=0
ELSE
&LEDTRAINGAUCHE=1
à  la place de ton programme j'ai encore du me tromper quelque part :(
 
Ce n'est pas grave tout dépend de ce que lon veut, la Led lit l'état du train gauche donc si tu veux quelle soit allumé en train bas tu met 1 dans la position 16383 et le contraire on met Led =1 dans la position 0 du train ce qui veut dire train haut
 
C'est probablement tout bete mon probleme mais lorsque je selection la CONDITION ELSE le champ en bas CONDITION devient grise, en fait tout devient grise
 
Retour
Haut