Page 2 sur 2

Re: affichage liste defaut - Unity

Posté : 31 mai 2021, 02:21
par itasoft
slts,
disons que j'ai un exemple mais c'est en langage ST

Re: affichage liste defaut - Unity

Posté : 31 mai 2021, 05:41
par md42
Itasoft
Si tu veux la mettre en ligne je veux bien regarder ta solution aussi.
Merci à tous

Re: affichage liste defaut - Unity

Posté : 31 mai 2021, 08:36
par itasoft
(*-- LES DEFAUTS SONT DANS LES BITS DU MOT WDEF_N ---*)

(*Bit horloge 5s*)
TON_0(IN:=NOT H5s, PT:=t#5s, Q=>H5s);

(* Bits qui ont changés d'état dans WDEF_N *)
WXOR:=WDEF_N XOR WDEF_M;
(* Bits en apparitions*)
WAPP:=WXOR AND WDEF_N;
(* Mémoire Etat N->N-1 *)
WDEF_M:=WDEF_N;

(*Raz FIFO *)
FIFO_0 (R:=%S0 or %S1 or %S13, SET:=false,GET:=false, X:=XX,N_MAX:=128, FULL=>FIFO_PLEIN,EMPTY=>FIFO_VIDE,Y=> OUT_DEF) ;

(*Entrée des défauts en apparition dans registre FIFO *)
for XX:=1 to 16 do
if WAPP.0 then
FIFO_0 (SET:=true,GET:=false, X:=XX, N_MAX:=128, Y=>OUT_DEF) ;
end_if;
WAPP:=SHR(WAPP,1);
END_FOR;

(*Extraction des n°de défauts du FIFO pour affichage toutes les 5s *)
if H5s then
FIFO_0(SET:=false,GET:=true, X:=XX,N_MAX:=128, Y=>OUT_DEF) ;
if OUT_DEF>0 then
(*n°défaut*)
BYTE0:=INT_TO_BYTE(OUT_DEF);
(*faire l'affichage ici*)

OUT_DEF:=0;
end_if;
end_if;
02.JPG
01.JPG

Re: affichage liste defaut - Unity

Posté : 31 mai 2021, 09:40
par md42
Merci pour ton retour Itasoft.
je viens te tester :
Quand WDEF_N vaut 1 alors BYTE0 vaut 1
Quand WDEF_N vaut 2 alors BYTE0 vaut 2
mais quand WDEF_N vaut 3 alors BYTE0 vaut 2 alors que je voudrais 1 puis au bout de 5s 2 - Clignotement en alternance des défauts
Possible?

Re: affichage liste defaut - Unity

Posté : 31 mai 2021, 09:44
par itasoft
slts,
ça traite les bits en apparition donc mettre à zéro le WDEF_N avant de y mettre une nouvelle valeur

Si tu met la valeur 1 dans WDEF_N puis la valeur 2 puis la valeur 3 avec la valeur 3 ya que le bit 0 qui est apparu le bit 1 était déjà là

met 255 dans WDEF_N et tu verra BYTE0 compter de 1 à 8

Re: affichage liste defaut - Unity

Posté : 31 mai 2021, 11:35
par md42
Super Itasoft, ça fonctionne bien.
Je te remercie de ton aide :D