[Outils/Fab/Comp] Affichage 10 lampes - Page 17
Répondre à la discussion
Page 17 sur 19 PremièrePremière 17 DernièreDernière
Affichage des résultats 481 à 510 sur 551

Affichage 10 lampes



  1. #481
    mag1

    Re : Affichage 10 lampes


    ------

    Citation Envoyé par elwe31 Voir le message
    Corrigé !!
    Soudure des resistances 10k pas terribles, apres soudure refaite correctement, ça fonctionne nickel !
    Qu'est ce qui fonctionne nickel?

    -----
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  2. #482
    elwe31

    Re : Affichage 10 lampes

    ton test avec le petit fils !

    Nickel ! enfin presque, j'ai "partie gratuite" qui ne fonctionne pas...
    Quand je debranche le connecteur qui va aux lampes de la partie gratuite, il y a bien les 15V lorsque je fais le pont sur les pattes du support qui vont bien.

    Mais, si je branche le connecteur qui va aux lampes, pas une lampes ne s'allument. et si je mesure la tension au bornes du connecteur, j'ai moins d'un volt !!!

  3. #483
    mag1

    Re : Affichage 10 lampes

    Citation Envoyé par elwe31 Voir le message
    ton test avec le petit fils !

    Nickel ! enfin presque, j'ai "partie gratuite" qui ne fonctionne pas...
    Quand je debranche le connecteur qui va aux lampes de la partie gratuite, il y a bien les 15V lorsque je fais le pont sur les pattes du support qui vont bien.

    Mais, si je branche le connecteur qui va aux lampes, pas une lampes ne s'allument. et si je mesure la tension au bornes du connecteur, j'ai moins d'un volt !!!
    Je pense à un court circuit et au fonctionnement du polyswitch, à voir...

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  4. #484
    elwe31

    Re : Affichage 10 lampes

    ça doit allumer 2 ampoules. le polyswitch ne dit rien quand les 4 ampoules (pour le but) sont allumées...

    Il y a un truc pour trouver un court circuit ?

  5. #485
    mag1

    Re : Affichage 10 lampes

    Citation Envoyé par elwe31 Voir le message
    ça doit allumer 2 ampoules. le polyswitch ne dit rien quand les 4 ampoules (pour le but) sont allumées...

    Il y a un truc pour trouver un court circuit ?
    Vérifier la R à l'ohmmètre, (il y a des R de 30ohms et les ampoules, ça doit faire... quelques ohms). J'enlèverais les lampes, et il doit plus y avoir de résistance. Et faut chercher un peu...

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  6. #486
    elwe31

    Re : Affichage 10 lampes

    Ok, je chercherai demain...
    Merci

    Bonne nuit

  7. #487
    elwe31

    Re : Affichage 10 lampes

    Bonjour,

    c'est bien un court circuit ! je ne comprends pas exactement pourquoi....
    Il faut que je revois le cablage du "partie gratuite"....

    A suivre

  8. #488
    mag1

    Re : Affichage 10 lampes

    Ok,

    Ce problème résolu, voici un code (M2 et X2), repris de ton programme avec quelques corrections (tempo pulsout, mémoires bytes et words)
    Il doit allumer toutes les ampoules 2s et faire fonctionner le gong, en boucle

    Code:
    ;test lampes babyfoot + gong
    
    #no_data
    symbol C_BUT = b1        	 	;Compteur de buts
    symbol N_GRATUITE = b2 	 		;Partie gratuite
    symbol N_POURC_GRATUITE = b3  	; 1/N_POURC_GRATUITE 
    symbol cpt=b4					;compteur
    symbol T_DONG = w11
    symbol T_LAMPE = w12
    symbol T_PAUSE = w13  
    symbol DONG = C.2 	  		;La cloche
    symbol BT_RAZ = pinC.3    	;Bouton RAZ
    symbol L_LOGO = C.4       	;les 3 ampoules de la marque 
    symbol WIN_AD = pinC.5    	;Relié à C.1 adversaire est arrivé à 10
    symbol BT_BUT = pinC.6    	;contact quand l'equipe a marqué un but 
    symbol L_BUT = C.7        	;les 4 ampoules du gardien 
    
    dirsB= %11111111          ;Désignation des portsB
    dirsC= %10010111          ;Désignation des portsC: C.3,C.5,C.6 en entrées
    pullup %110100000000000  ;pullup sur C.3 C.5 et C6
    
    N_GRATUITE = 0   
    N_POURC_GRATUITE = 10
    
    T_DONG = 10000		; pulsout pour le dong (en x10µs), soit 100ms
    T_LAMPE = 2000		; tempo  lampes en ms
    T_PAUSE = 1000		; temps de pause en ms   
    
    initialisation:             ;Allume/eteint toutes les lampes 
    do
    	for C_BUT=0 to 9
    		high C_BUT
    		pause T_PAUSE
    		low C_BUT
    		pulsout L_LOGO, T_LAMPE
    	next
    	high L_BUT: pause T_LAMPE :low L_BUT: pause T_LAMPE: high L_BUT: pause T_LAMPE :low L_BUT	
    	pulsout DONG, T_DONG         ;test de dong	
    loop
    Après, on voit, j'ai pas tout compris sur la partie gratuite.

    MM
    Dernière modification par mag1 ; 31/07/2017 à 21h20.
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  9. #489
    elwe31

    Re : Affichage 10 lampes

    Super !! merci

    Ben, je ne sais pas pourquoi, mais je vais refaire le cablage de la "partie gratuite".

    Bonne nuit

  10. #490
    mag1

    Re : Affichage 10 lampes

    Citation Envoyé par elwe31 Voir le message
    Super !! merci
    Pas tant que ça..

    Un autre code plus en accord avec ce que j'ai dit
    2s d'allumage et 1s de pause

    Code:
    ;test lampes babyfoot + gong
    #no_data
    symbol C_BUT = b1        	 	;Compteur de buts
    symbol N_GRATUITE = b2 	 		;Partie gratuite
    symbol N_POURC_GRATUITE = b3  	; 1/N_POURC_GRATUITE 
    symbol cpt=b4					;compteur
    symbol T_DONG = w11
    symbol T_LAMPE = w12
    symbol T_PAUSE = w13  
    symbol DONG = C.2 	  		;La cloche
    symbol BT_RAZ = pinC.3    	;Bouton RAZ
    symbol L_LOGO = C.4       	;les 3 ampoules de la marque 
    symbol WIN_AD = pinC.5    	;Relié à C.1 adversaire est arrivé à 10
    symbol BT_BUT = pinC.6    	;contact quand l'equipe a marqué un but 
    symbol L_BUT = C.7        	;les 4 ampoules du gardien 
    
    dirsB= %11111111          ;Désignation des portsB
    dirsC= %10010111          ;Désignation des portsC: C.3,C.5,C.6 en entrées
    pullup %110100000000000  ;pullup sur C.3 C.5 et C6
    
    N_GRATUITE = 0   
    N_POURC_GRATUITE = 10
    
    T_DONG = 10000		; pulsout pour le dong (en x10µs), soit 100ms
    T_LAMPE = 2000		; tempo  lampes en ms
    T_PAUSE = 1000		; temps de pause en ms   
    
    initialisation:     ;Allume/eteint toutes les lampes 
    do
    	for C_BUT=0 to 9
    		high C_BUT
    		pause T_LAMPE
    		low C_BUT
    		pause T_PAUSE		
    	next	
    	high L_LOGO :pause T_LAMPE: low L_LOGO
    	pause T_PAUSE
    	high L_BUT: pause T_LAMPE :low L_BUT
    	pause T_PAUSE
    	pulsout DONG, T_DONG         ;test de dong	
    loop
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  11. #491
    elwe31

    Re : Affichage 10 lampes

    Bonjour,

    Court circuit trouvé et corrigé pour la sortie "partie gratuite" mais "BUT" et "LOGO" ne fonctionne plus.
    Surement un nouveau court circuit vu la montée en température du 7805....


    to be continu

  12. #492
    elwe31

    Re : Affichage 10 lampes

    Bonjour,
    Houra!!!! tout a l'air bon, plus de faux contact et soudure hasardeuse...

    Le code corrigé avec les bonnes entrée/sortie.

    Sinon, j'ai fait quelques tests pour le dong avec 10ms la cloche sonne bien !
    Le code est pour le M2 (Soit equipe #2) je vais faire un test avec le X2

    Code:
    ;test lampes babyfoot + gong
    #no_data
    symbol C_BUT = b1        	 	;Compteur de buts
    symbol N_GRATUITE = b2 	 		;Partie gratuite
    symbol N_POURC_GRATUITE = b3  	; 1/N_POURC_GRATUITE 
    symbol cpt=b4					;compteur
    symbol T_DONG = w10
    symbol T_LAMPE = w11
    symbol T_PAUSE_A = w12
    symbol T_PAUSE_E = w13
    
    symbol WIN_AD = pinC.2     ;Relié à C.1 adversaire est arrivé à 10 
    symbol BT_RAZ = pinC.3    	;Bouton RAZ
    symbol L_BUT = C.4        	;les 4 ampoules du gardien 
    symbol L_LOGO = C.5       	;les 2 ampoules de la marque 
    symbol BT_BUT = pinC.6    	;contact quand l'equipe a marqué un but 
    symbol DONG = C.7             ;Clocle
      	
    
    dirsB= %11111111          ;Désignation des portsB
    dirsC= %10010111          ;Désignation des portsC: C.2,C.3,C.6 en entrées
    dirsC= %10110011
          ' 76543210
    
    pullup %1100110000000000  ;pullup sur C.2 C.3 et C6
           '7654321076543210
    N_GRATUITE = 0   
    N_POURC_GRATUITE = 10
    
    T_DONG = 1000		; pulsout pour le dong (en x10µs), soit 10ms
    T_LAMPE = 2000		; tempo  lampes en ms
    T_PAUSE_A = 1000		; temps de pause en ms  Allumé 
    T_PAUSE_E = 200		; temps de pause en ms  Eteint 
    
    initialisation:     ;Allume/eteint toutes les lampes 
    do
    	for C_BUT=0 to 9
    		high C_BUT
    		pause T_PAUSE_A
    		low C_BUT
    		pause T_PAUSE_E		
    	next	
    	high L_LOGO :pause T_PAUSE_A: low L_LOGO
    	pause T_PAUSE_E
    	high L_BUT: pause T_PAUSE_A :low L_BUT
    	pause T_PAUSE_E
    	pulsout DONG, 7000         ;test de dong
    loop

  13. #493
    mag1

    Re : Affichage 10 lampes

    Bonjour,

    Quelques remarques:

    La différence entre M2 et X2 utilisée dans le code test (il y en a beaucoup d'autres) est la récupération de "serial in", pour l'allumage de "partie gratuite": DAC pour le M2 et A0 pour le X2.
    Dans le code test lampe, la partie gratuite n'est pas testée, le code était le même, sans le "#picaxe M2" ou "#picaxe X2" (nécessaire pour la vérification spécifique de la syntaxe du code).
    Pour tester "partie gratuite", il faut distinguer les codes et ajouter le test sur A0.
    Si le test sans les µC est ok pour les deux côtés, il est bon de tester l'allumage des lampes de chaque côté, avec "partie gratuite" côté X2.
    Ensuite, il faut un code spécifique complet pour chaque côté (seul différence, partie gratuite).
    Vérifier le bon fonctionnement des switchs "but".

    Et on verra...

    PS :le temps du gong dans ce code est de 70ms

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  14. #494
    elwe31

    Re : Affichage 10 lampes

    Citation Envoyé par mag1
    PS :le temps du gong dans ce code est de 70ms
    70ms ????

    Oui, le test des 2 cotés est OK sans µC
    Les switchs "But" sans Ok au multimetre
    Pour le "reset", l'interruction est sur le changement d'etat ?

  15. #495
    elwe31

    Re : Affichage 10 lampes

    Pour le dong(si j'ai bien compris)
    le M2 1000*1,25 soit 12,5ms
    le X2 1000*0,625 soit 6,25ms

    c'est bien cela ?
    avec la valeur du pulsout à 1000, le dong fonctionne plutôt pas mal avec le M2 et pas bien avec le X2.
    Dernière modification par elwe31 ; 06/08/2017 à 16h11.

  16. #496
    mag1

    Re : Affichage 10 lampes

    Citation Envoyé par elwe31 Voir le message
    70ms ????
    Ben si on est sur un 20M2, la doc dit que l'unité de temps à 4MHz (fréquence par défaut) est de 10µs
    pulsout DONG,7000
    ça fait 70000µs donc 70ms.

    Pour éviter de trop se tromper, il faut lire scrupuleusement la doc, qui dit:

    Fréquence par défaut pour la série M2 = 4MHz
    Fréquence par défaut pour la série X2 = 8MHz

    Pour "pause"
    L'unité de temps est de 1ms
    Ceci pour un M2 à 4 MHz ou un X2 à 8 MHz
    Donc, si on ne change pas les fréquences par défaut, pause 500 donne 500ms sur un 20M2 ou un 20X2

    Pour "pulsout"
    L'unité de temps est de 10µs à 4 Mhz (sans spécification de la série)
    Et donc, aux fréquences par défaut: pulsout 2000 donnera un créneau de 20ms sur un M2, mais seulement 10ms sur un X2

    Pour la commande pause, pause 500 donne sensiblement 500ms, mais pause 2 donne plutôt 3 ou 4 ms

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  17. #497
    elwe31

    Re : Affichage 10 lampes

    Petite video de l'equipe #1


    L’équipe #2 fonctionne aussi nickel !
    Je reglerai le pb du dong dans la semaine.

    Il faut que je fasse attention a ne pas faire fonctionne le dong en même temps par les 2 équipes.

    Pour les fréquences, J'ai trouvé le tableau de la page 162 du pdf manuel en fr #2 (le lien est sur ton site).
    Mais je n'avais pas tout lu du manuel fr #1

  18. #498
    mag1

    Re : Affichage 10 lampes

    Citation Envoyé par elwe31 Voir le message
    Il faut que je fasse attention a ne pas faire fonctionne le dong en même temps par les 2 équipes.
    Bon, c'est encourageant...

    Même si les deux équipes actionnent le gong en même temps (probabilité ?), il n'y a aucun problème électrique.

    J'ai un ou deux codes sous le coude, si intéressé...Mais donne d'abords les tiens.

    Mais je n'avais pas tout lu du manuel fr #1 .
    C'était bien la peine qu'on le traduise..

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  19. #499
    elwe31

    Re : Affichage 10 lampes

    C'est la peine.... Ca me sert !!!!
    merci

    Probabilité, uniquement lors du démarrage... Mais ça peut ce contourner facilement...
    Il me faut bosser la partie interruption.

    Encore merci.

  20. #500
    mag1

    Re : Affichage 10 lampes

    Citation Envoyé par elwe31 Voir le message
    C'est la peine.... Ca me sert !!!!
    merci

    Probabilité, uniquement lors du démarrage... Mais ça peut ce contourner facilement...
    Il me faut bosser la partie interruption.

    Encore merci.
    L'intérêt de l'interruption est de pouvoir l'actionner n'importe quand pour reseter le système. On détecte un changement état (haut ou bas, à ajuster en fonction du poussoir, NO ou NF).

    MM
    Dernière modification par mag1 ; 06/08/2017 à 23h43.
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  21. #501
    elwe31

    Re : Affichage 10 lampes

    Bonjour,

    Voila le code pour le M2
    Question : est-il possible de forcer la vitesse de l'horloge pour avec la meme sur M2 et X2 ? j'ai pas trouvé.

    Code:
    ;babyfoot Equipe #1
    #no_data
    symbol C_BUT = b1                           ;Compteur de buts
    symbol N_GRATUITE = b2 	 		;Partie gratuite
    symbol N_POURC_GRATUITE = b3  	; 1/N_POURC_GRATUITE 
    'symbol CPT_RAZ=b4				;compteur
    symbol T_DONG = w10
    symbol T_PAUSE_A = w11
    symbol T_PAUSE_E = w12
    symbol T_PAUSE_BUT = w13
    
    symbol L_GRATUITE = A.0
    symbol WIN_AD = pinC.2        ;Relié à C.1 adversaire est arrivé à 10 
    symbol BT_RAZ = pinC.3    	;Bouton RAZ
    symbol L_BUT = C.4        	;les 4 ampoules du gardien 
    symbol L_LOGO = C.5       	;les 2 ampoules de la marque 
    symbol BT_BUT = pinC.6    	;contact quand l'equipe a marqué un but 
    symbol DONG = C.7             ;Clocle
      	
    
    dirsB= %11111111              ;Désignation des portsB
    dirsC= %10010111              ;Désignation des portsC: C.2,C.3,C.6 en entrées
    dirsC= %10110011
          ' 76543210
    
    pullup %1100110000000000      ;pullup sur C.2 C.3 et C6
           '7654321076543210
    
    setint %00000000,%00001000       ;interruption du RAZ
    '       76543210  76543210          Port C1 à C5 
    
    N_GRATUITE = 0   
    N_POURC_GRATUITE = 10
    
    T_DONG = 14000		; pulsout pour le dong (en x5µs), soit 70ms
    T_PAUSE_A = 1000		; temps de pause en ms  Allumé 
    T_PAUSE_E = 200		; temps de pause en ms  Eteint 
    T_PAUSE_BUT = 500
    
    initialisation:     ;Allume/eteint toutes les lampes 
    	for C_BUT=0 to 9
    		high C_BUT
    		pause T_PAUSE_A
    		low C_BUT
    		pause T_PAUSE_E		
    	next	
    	high L_LOGO :pause T_PAUSE_A: low L_LOGO
    	pause T_PAUSE_E
    	high L_BUT: pause T_PAUSE_A :low L_BUT
    	pause T_PAUSE_E
    	high L_GRATUITE :pause T_PAUSE_A: low L_GRATUITE
    	pause T_PAUSE_E
    	pulsout DONG, T_DONG    
    	C_BUT=0
    
    main:              ;Procedure principale
    
    	do
    		do  while BT_BUT = 0                   'tant qu'il n'y a pas de but.
    			If N_GRATUITE > N_POURC_GRATUITE then : N_GRATUITE = 0 : else : N_GRATUITE = N_GRATUITE + 1 : endif    'incremente partie gratuite
    		loop
    	
    		do loop while BT_BUT = 1 or WIN_AD = 1     'on bloque que le but soit eteind ou que l'adversaire a gagner 
    	
    		if C_BUT > 0 then       'si ce n'est pas le premier on eteind l'ampoule du but precedant
    			b2 = C_BUT - 1
    			low b2
    		endif
    		high C_BUT			'on allume l'ampoule du But	
    		inc C_BUT	            'on incremante le compteur	
    
    	'Traitement des buts
    	If C_BUT <=9 then		    'si pas 10ieme buts -> Dong + lumiere du gardien
    		high L_BUT
    		pulsout DONG, T_DONG
    		pause T_PAUSE_BUT
    		low L_BUT
    	else
    		for b20=0 to 3        'si  10ieme buts Dong + lumiere du gardien 3 Fois
    			pulsout DONG, T_DONG            
    			high L_BUT
    			high L_LOGO
    			Pause T_PAUSE_BUT
    			low L_BUT
    			low L_LOGO
    		next
    		if N_GRATUITE = N_POURC_GRATUITE then : gosub PARTIE_GRATUITE : endif  's'il y a une partie gratuite	
    	endif
    	
    	do  while C_BUT > 9	
    		high L_LOGO
    		Pause T_PAUSE_BUT
    		low L_LOGO
    	loop
    
    	loop
    
    PARTIE_GRATUITE:
    	high L_GRATUITE 
    	pulsout DONG, T_DONG    ' 2 Dong
    	low L_GRATUITE 
    	Pause T_PAUSE_E
    	high L_GRATUITE 
    	pulsout DONG, T_DONG
    	low L_GRATUITE 
    
    ; Interruction patte C.3 (RAZ)	
    interrupt:
    	do loop while BT_RAZ=0
    	setint %00000000,%00001000       ;interruption
    	'       76543210  76543210        Port C1 à C5 
    	goto initialisation
    
    	'reset
    	return

  22. #502
    mag1

    Re : Affichage 10 lampes

    Pour la question, voir la commande setfreq

    Dans le code, y a des trucs bizarre:

    Pourquoi deux dirsC ? il y en a un de trop

    Pourquoi T_DONG=14000 , donne 70ms sur un M2 à 4 MHz alors que l'unité est 10µs

    Y a une pullup programmée sur C.7 ?
    b2 sert plusieurs fois ?

    très compliqué la partie gratuite, on peut faire beaucoup plus simple: on incrémente une variable dans la boucle d'attente du but ok, le if then else ne sert à rien. on teste cette variable à la fin (ex modulo 10=une chance sur 10; modulo 2, une chance sur 2)

    IMPORTANT: l'interruption est un sous programme, comme un gosub, il doit se terminer par un return (à moins de faire un reset) sinon: erreur de pile tôt ou tard (relire ici: http://electromag1.wifeo.com/les-pic...ur-basic-3.php)

    On verra la suite après

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  23. #503
    elwe31

    Re : Affichage 10 lampes

    Oups! c'est pour le X2 ! (Equipe 1 avec partie gratuite)

    Oui, c'est une erreur les 2 dirsC, le dernier est le bon.
    Non pas de pullup sur le C.7 exact !

    Oups le b2

    Oui Plein de solution pour la partie gratuite !

  24. #504
    mag1

    Re : Affichage 10 lampes

    Bonjour,

    Voici une suggestion pour la partie gratuite.
    Le compteur tourne pendant l'appui sur RESET. On fait un modulo (//n) , n est la chance de gagner : //2 donne une chance sur deux. Si le résultat est 0, on gagne , Ex: //5 donne une chance sur 5 . on fait le test sur 0, ou 1, ou...4, c'est pareil. Le pavé s'allume
    Le pavé "prochaine partie gratuite" reste allumé le temps de la partie et s'éteint si le tirage suivant est négatif (mais on peut faire autre chose).

    Je suggère également pour améliorer le système, une procédure à la mise sous tension pour régler les chances de gagner (le n) sans reprogrammer. Le n serait gardé en mémoire dans l'EEPROM du µC.

    Code:
    ;babyfoot elwe 08082017
    ;pour 20X2, avec partie gratuite
    ;**** nominations ports
    ;sorties B.0 à C.1 (de 0 à 9) sorties but
    #picaxe 20X2
    #no_data
    symbol PGratuite=A.0
    symbol DONG 	= C.2 	  			;La cloche
    symbol BT_RAZ 	= pinC.3   		;Bouton RAZ :ouvert=reset
    symbol L_LOGO 	= C.4       		;les 3 ampoules de la marque
    symbol WIN_AD 	= pinC.5    		;L'adversaire est arriv? ? 10
    symbol BT_BUT 	= pinC.6    		;contact temporairement fermé quand l'equipe marque un but 
    symbol L_BUT 	= C.7        		;les 4 ampoules du gardien 
    ;*** nominations variables
    symbol C_BUT 	= b1       		;Compteur de buts
    symbol cpt		=b2				;variable compteur divers
    symbol temps	=b3   			;variable temps aléatoire
    symbol T_DONG 	= w13				;tempo dong
    symbol T_LAMPE 	= w12			;tempo lampe on
    symbol T_PAUSE 	= w11			
    ;**************
    dirsB= %11111111          ;Désiagnation des ports B
    dirsC= %10010111          ;Désiagnation des ports C
    pullup %0110100000000000  ;pullup sur C.3 C.5 et C6
    setint %1000,%1000       ;interruption niveau haut sur C.3(photo)
    T_DONG = 14000		 ; pulsout pour le dong (en x5µs)
    T_LAMPE = 500        ; pulsout des lampes en ms
    T_PAUSE = 500        ; temps de pause 
    	do			
    		do 	
    		loop while BT_BUT = 0 or WIN_AD = 1     ;blocage pas de but ou advers a gagné
    		do loop while BT_BUT=1					;y a un but! attente relachement switch but 
    		if C_BUT > 0 then   					;si ce n'est pas le premier
    			cpt = C_BUT - 1					;on éteint 
    			low cpt								;le but précédent			
    		endif		
    		high C_BUT					'on allume l'ampoule du But	
    		inc C_BUT					'on incremante le compteur de but		
    		If C_BUT <=9 then					'si pas 10 buts Dong + lumiere du gardien
    			high L_BUT
    			pulsout DONG, T_DONG			
    			low L_BUT
    		else
    			for cpt=0 to 3             	'si  10 buts Dong + lumiere du gardien 3 Fois
    				pulsout DONG, T_DONG            
    				high L_BUT
    				high L_LOGO
    				Pause 200
    				low L_BUT
    				low L_LOGO
    				pause 200
    			next				
    		endif		
    		do loop while C_BUT > 9		;ON A GAGNÉ!!...attente appui sur RESET				
    	loop
    
    interrupt:
    	do
    		inc temps
    		pause 1 	;bug simu	
    	loop while BT_RAZ=1	
    		temps=temps//2 		;//x -> donne une chance sur x	
    	if temps=0 then 
    		high Pgratuite
    		pulsout DONG, T_DONG    ' 2 Dong
    		pause 100
    		pulsout DONG, T_DONG
    	else low Pgratuite
    	endif	
    	for C_BUT=0 to 9		
    		low C_BUT
    	next
    	low L_BUT
    	low L_LOGO
    	C_BUT=0
    	setint %1000,%1000       ;interruption niveau haut sur C.3		
    return
    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  25. #505
    elwe31

    Re : Affichage 10 lampes

    Bonjour,

    Merci.

    Apres réflexion, pour la partie gratuite, c'est pas au reset qu'il faut l'afficher, mais au 10ième but (de l’équipe 1 ou 2) ! non ?

    Pour le compteur peut-on s'en servir pour tester le reset ?
    Si on appuie (C.3) seconde ça reset. sinon si c'est moins ça fait juste une nouvelle partie ?

    Il faut peut-être ajouter des dong pour la partie gratuite!!

    Pour C.3, L'interruption ce fait de 1 vers 0. Ton code :
    Code:
    setint %1000,%1000       ;interruption niveau haut sur C.3(photo)
    lève l'interruption tout le temps

    Je fait une nouvelle version du code.

  26. #506
    mag1

    Re : Affichage 10 lampes

    Citation Envoyé par elwe31 Voir le message
    Apres réflexion, pour la partie gratuite, c'est pas au reset qu'il faut l'afficher, mais au 10ième but (de l’équipe 1 ou 2) ! non ?
    C'était ma première idée, il est vrai que la carte équipe 1 sait que l'adversaire a gagné.

    Donc je revois le problème avec ça.

    L'interruption se déclenche lorsque C.3 passe à 1 . Le poussoir est normalement fermé, le niveau de C.3 est 0. On appuie, il passe à 1
    Dans l'interruption, il faut tester le relâchement du poussoir pour continuer, sinon, on boucle.

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  27. #507
    elwe31

    Re : Affichage 10 lampes

    Non, comme dit plus haut (#439), le bouton reset est toujours en contact, lorsque l'on appuie sur le boutons, ça coupe.
    donc ça passe de 1 a 0.

    Le probleme qu'il y a aujourd'hui,
    C'est qu'il faut que l’équipe 1 marque un but pour voir si l’équipe 2 a marqué...
    Ne faudrait pas une interruption sur C.2 pour gerer cela ?

  28. #508
    mag1

    Re : Affichage 10 lampes

    Citation Envoyé par elwe31 Voir le message
    Non, comme dit plus haut (#439), le bouton reset est toujours en contact, lorsque l'on appuie sur le boutons, ça coupe.
    donc ça passe de 1 a 0.
    Et non....
    Le contact est (ou doit être) entre le 0v et l'entre C.3 . Le contact fermé, l'entrée est à 0v. Lorsqu'il s'ouvre, la R de pullup interne met l'entrée à 1 (5v)

    Pour l'autre problème, c'est uniquement dans ton code...

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  29. #509
    elwe31

    Re : Affichage 10 lampes

    Citation Envoyé par mag1
    Et non....
    Le contact est (ou doit être) entre le 0v et l'entre C.3 . Le contact fermé, l'entrée est à 0v. Lorsqu'il s'ouvre, la R de pullup interne met l'entrée à 1 (5v)
    Grrrrrrrr ! je pige rien !

  30. #510
    elwe31

    Re : Affichage 10 lampes

    J'ai essayé ton programme....
    Carte Equipe #1 equipé du X2 avec ton dernier programme...
    La carte #2 sans µc !!
    Le but 10 reste toujours allumé.

    Et, il y a un pb de câblage, j'ai pas croisé le cable qui va de Equipe#1 C.1 vers Equipe#2 C.2...

    Je pars en congés jeudi, je reprends les hostilités le 21 !
    Auriez-vous un peu de lecture sur ces histoires de pullup/down ?

Page 17 sur 19 PremièrePremière 17 DernièreDernière

Discussions similaires

  1. Lampes LED
    Par invitecd1de4c8 dans le forum Technologies
    Réponses: 1
    Dernier message: 10/03/2015, 08h49
  2. lampes spectrale = lampes a decharge ?
    Par invite06e14e57 dans le forum Physique
    Réponses: 9
    Dernier message: 30/04/2012, 08h24
  3. Lampes
    Par invite83414360 dans le forum Électronique
    Réponses: 13
    Dernier message: 01/08/2009, 12h53
  4. lampes
    Par invite958e172c dans le forum Physique
    Réponses: 4
    Dernier message: 03/12/2006, 13h52
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...