chrono agility !!!

MGU

Senior Member
Proposition câble:
En fait, les deux leds supplémentaires ont été ajoutées après et j'ai ajouté deux connecteurs.
Toutes les masses peuvent être reliées ensemble sur le panneau.
C'est le transfo prévu, multi tensions régulées ou un autre?
 

Attachments

le belge

Senior Member
ok , j'avais à peu prêt compris lol !!!

je test de suite ....

au niveau du programme , j'envoie ça comme ça ...
je sais , je suis impatient , mais j'ai hâte de voir si j'ai bien travaillé !!!!!!
 

le belge

Senior Member
Pour le transfo , je le laisse en 15V ?????



j'ai sauvegardé ça :
28x2 :
Code:
CHRONO AU 1/100 EME DE SECONDE.
; COMMANDE PAR POUSSOIR OU PAR TOP RADIO 	
; MM 06/03/2014


;		a  b  c  d  e  f  g 

	;0  1  1  1  1  1  1  0 =126
	;1  0  1  1  0  0  0  0 = 48 		a
	;2  1  1  0  1  1  0  1 =109	f		b
	;3  1  1  1  1  0  0  1 =121		g	
	;4  0  1  1  0  0  1  1 = 51	e		c	
	;5  1  0  1  1  0  1  1 = 91		d
	;6  0  0  1  1  1  1  1 = 31
	;7  1  1  1  0  0  0  0 =112
	;8  1  1  1  1  1  1  1 =127
	;9  1  1  1  0  0  1  1 =115
	
;	B	6  5  4  3  2  1  0	sorties 28X2
	
	;Ordre digit: 0,1,2,3,4
	 
#picaxe 28X2

setfreq M16
dirsB=%11111111		;Seg   X a,b c d e f g (voir tableau)
dirsA=%11111		;Digit 4,3,2,1,0 sur A.0, A.1, A.2, A.3; A.4
hsersetup B4800_16, %10 ; 4800 baud, inverted TXD

symbol depart=pinC.1	;sur sortie Départ du 14M2 ou manuel.	pinC.1=0 si Appuyé
symbol Arrive=pinC.2	;Sur sortie Arrivée du 14M2 ou manuel	pinC.2=0 si Appuyé
symbol RAZ	=pinC.3		;Sur sortie RAZ du 14M2 ou manuel		pinC.3=0 si Appuyé
symbol LCD	=C.6		;sortie Hserout

symbol chiffr=b6
symbol segm=b7  
symbol digit=b8

symbol val=w13

	table (126,48,109,121,51,91,31,112,127,115)	; segments de 0 à 9 (voir tableau)

	settimer 64911	;reglage timer 1/100 s
	;calibfreq 5

	pause 500

	Do
		
		val=0
		do
			gosub affich 
		loop while depart=1		  	
		timer=0		;	
		do 			; boucle continue d'affichage du temps
			val=timer
			gosub affich				
			if arrive=0 then exit
		loop										
		do 
			gosub affich
		loop while RAZ=1								
	loop
	
affich:	
	bintoascii val, b1,b2,b3,b4,b5				;décomposition ascii
	hserout LCD,(254,192,b1,b2,b3,",",b4,b5)	;affichage LCD	
	digit=16		;A.4 =1	
	chiffr=b5-48	;centièmes	
	gosub affchif	;affichage chiffre
	digit=8			;A.3=1	
	chiffr=b4-48	;dizièmes
	gosub affchif	
	digit=4
	chiffr=b3-48	;unité secondes	
	gosub affchif
	digit=2			;dizaines sec
	chiffr=b2-48
	gosub affchif
	digit=1			;dizaines sec
	chiffr=b1-48
	gosub affchif
	return
	
affchif:
	readtable chiffr,segm	;lecture position segment
	pinsB=0
	pinsA=digit
	pinsB=segm
	return

barrière :

Code:
  ;EMETTEUR BARRIERE
;Départ ou Arrivée par sélecteur
;Cellule sur Entrées C.0, C.1 ,C.2 
;MM 06/03/2014
;
	;les capteurs barrière sont sur C.0, C.1, C.2 sur interruption
	;La barrière est "depart" ou "arrivée" en ft de l'inverseur B.2. Départ si B.2=1 
	;Sur une barrière "Départ", le poussoir "alternate" envoie un code "Arrivée" et inversement.
	;Commut DepAriv: 1=Départ ;  0=Arrivée

	#picaxe 14M2
	dirsB= %111000
	symbol poussoir= pinC.4		;poussoir code alternatif
	symbol RAZ	=pinC.3			;poussoir code RAZ
	symbol DepAriv=pinB.2		;Inverseur barrière Départ/Arrivée 
	symbol RF=B.1				;Emetteur Radio 
	pullup %0001111100000100	;Pullup sur B2, C.0, C;1, C.2, C.3, C.4	
	setint OR %000,%111 ;interrupt sur C.0 ou C.1 ou C.2 Niveau bas	
	pwmout B.4, 25, 53	;PWM 38k
	Do 
		if RAZ=0 then
			rfout RF,("Z","Z","Z","Z","Z","Z","Z","Z")			
			high B.3	; passage barrière			
			pause 500
			low B.3
		elseif poussoir=0 then
			If DepAriv=1 then
				rfout RF,("A","A","A","A","A","A","A","A")	;si départ=1, le poussoir envoie "Arrivée"						
				else
				rfout RF,("D","D","D","D","D","D","D","D")	;sinon, il envoie "Départ"
			endif
			high B.3	; passage barrière		
			pause 500
			low B.3
		endif	
	loop	;attente interrupt	

interrupt:

	if DepAriv=1 then
		rfout RF,("D","D","D","D","D","D","D","D")	;si "depart"=1, l'interrupt envoie "depart"
	else
		rfout RF,("A","A","A","A","A","A","A","A")	;sinon, l'interrupt envoie "arrivée"		
	endif
	high B.3	; témoin passage barrière	
	pause 500
	low B.3
	
	setint OR %000,%111	
	return
réception 14M2

Code:
RECEPTEUR BARRIERE
;COMMANDE RADIO CHRONO
; MM 06/03/2014

#picaxe 14M2

	Do 
		rfin B.3,b1,b1,b1,b1,b1,b1,b1,b1
		If b1="A" then 
			high B.1	;La commande est transmise par B.1
			pause 500
			low B.1
		endif
	loop

voili voilou
 

MGU

Senior Member
C'est pas la dernière mouture, il n'y a qu'une diode pour le chrono.
Je vais reposter le total.
 

le belge

Senior Member
oupsssssssssss ,
désolé ; on peut voir ça plus tard si vous voulez ....
j'ai un peu abusé de votre gentillesse aujourd'hui ...
Et puis , j'aimerais avoir la modif pour la remise à zéro .... que le temps reste affiché jusqu'au prochain départ
 

MGU

Senior Member
Voilà déjà le programme chrono.

Il n'a pas changé, la différence sur celui que j'ai testé est la vitesse de transmission LCD.
Les LCD originaux picaxe fonctionnent sur 2400, les miens en 4800, il faut donc adapter:

Code:
; CHRONO AU 1/100 EME DE SECONDE.
; COMMANDE PAR POUSSOIR OU PAR TOP RADIO 	
; MM 15/04/2014


;		dp	a  b  c  d  e  f  g 

	;0 	 	1  1  1  1  1  1  0 =126
	;1  	0  1  1  0  0  0  0 = 48 		a
	;2  	1  1  0  1  1  0  1 =109	f		b
	;3  	1  1  1  1  0  0  1 =121		g	
	;4  	0  1  1  0  0  1  1 = 51	e		c	
	;5  	1  0  1  1  0  1  1 = 91		d
	;6  	0  0  1  1  1  1  1 = 31
	;7  	1  1  1  0  0  0  0 =112
	;8  	1  1  1  1  1  1  1 =127
	;9  	1  1  1  0  0  1  1 =115

	
;	B		6  5  4  3  2  1  0		segments sorties ports B du 28X2
	
	;Ordre digit: 0,1,2,3,4			cathodes communes sorties ports A du 28X2
	 
#picaxe 28X2

setfreq M16
dirsB=%11111111		;Seg   X a,b c d e f g (voir tableau)
dirsA=%11111		;Digit 4,3,2,1,0 sur A.0, A.1, A.2, A.3; A.4
hsersetup B2400_16, %10 ; 2400 baud, inverted TXD pour afficheur OLED 133Y
;hsersetup B4800_16, %10 ; 2400 baud, inverted TXD pour afficheur série maison
symbol depart=pinC.1	;sur sortie Départ du 14M2 ou manuel.	pinC.1=0 si Appuyé
symbol Arrive=pinC.2	;Sur sortie Arrivée du 14M2 ou manuel	pinC.2=0 si Appuyé
symbol RAZ	=pinC.3		;Sur sortie RAZ du 14M2 ou manuel		pinC.3=0 si Appuyé
symbol LCD	=C.6		;sortie Hserout

symbol chiffr=b6
symbol segm=b7  
symbol digit=b8

symbol val=w13
	; la table commence à 48 pour correspondre à la table ascii
	table 48, (126,48,109,121,51,91,31,112,127,115)	; affichage de 0 à 9 (voir tableau)

	settimer 64911	;reglage timer 1/100 s
	;calibfreq 5

	pause 500
		
	hserout LCD,(254,128," CHRONO AGILITY ")	;affichage LCD
	
	Do		
		val=0
		do			;Attente top départ
			gosub affich 
		loop while depart=1
			  	
		timer=0				;	
		do 			; Affichage du temps. Attente top arrivée
			val=timer
			gosub affich				
			if arrive=0 then exit
		loop
												
		do 			;Attente RAZ
			gosub affich
		loop while RAZ=1								
	loop
	
affich:	
	bintoascii val, b1,b2,b3,b4,b5				;décomposition ascii
	hserout LCD,(254,196,b1,b2,b3,",",b4,b5," s")	;affichage LCD
	
	digit=16		;A.4 =1		balayage de droite à gauche
	chiffr=b5		;centièmes	
	gosub affchif	;affichage chiffre
	digit=8			;A.3=1	
	chiffr=b4		;dizièmes
	gosub affchif
	digit=4
	chiffr=b3		;unité secondes	
	gosub affchif
	digit=2			;dizaines sec
	chiffr=b2
	gosub affchif
	digit=1			;centaines sec
	chiffr=b1
	gosub affchif
	return
	
affchif:
	readtable chiffr,segm	;lecture positions segments en ft du chiffre
	pinsB=0			;extinction afficheur avant changement de digit
	pinsA=digit		;selection digit de ex : %00010 = digit des dizièmes de s
	pinsB=segm		;alimentation segments	
	return
Je n'ai jamais utiliser d'OLED, mais je pense que ça fonctionne.

J'ai cramé récemment mon cordon AXE29, je bricole un cordon pour tester le reste avant de poster.

P.S. d'après le premier test, le chrono fonctionne

MM
 
Last edited:

le belge

Senior Member
merci beaucoup Michel !
je vais tester ce soir , en espérant que ma bidouille avec le jack va fonctionner ....
sinon il faudra attendre demain que je fasse un tour chez gotronic ....

Mille merci en attendant !!!
 

le belge

Senior Member
bonjour ,

alors les news ....
la programmation c'est bien passée , mon jack fonctionne ,
par contre j'ai un souci avec :
-l'afficheur : affichage avec des symboles bizarre
IMAG0670.jpg
-le chrono démarre tous seul , dès que je le branche (normal ou pas)
-les boutons : j'ai start and stop , le troisième ne fonctionne pas (du coup , je pense que c'est normal.... vu que le chrono redémarre à zéro ?)
-les leds : ne fonctionne pas ....

je vais passer aux cablages des leds IR et des TSOP , y a t'il quelque chose à savoir avant d'attaquer ?

Mike
 
Last edited:

dje8269

Senior Member
En fait on voit la probléme ligne nickel , La deuxiéme est composé du message d'accueil , superposé du temps a affiché .

Il manque soit un effacement d'ecran, ou de ligne, soit on remplace par des "espace" les caracteres .

En attendant des news de Michel essaie ca ; entre guillemet j'ai mis trois espaces pour effacés les lettres genantes. Ce n'est pas trés academiques, normalement il faudrait effacé la ligne puis ecrire .Mais je me souviens plus la ligne de code

hserout LCD,(254,196," ",b1,b2,b3,",",b4,b5," s"," ") ;affichage LCD
 

dje8269

Senior Member
Apres reflexion , je crois que tu peux effacer l'ecran avec ceci . esasie ca , ce seras plus propre comme methode

affich:
bintoascii val, b1,b2,b3,b4,b5 ;décomposition ascii
hserout LCD,(254,1)
pause 50
hserout LCD,(254,196,b1,b2,b3,",",b4,b5," s") ;affichage LCD
 

MGU

Senior Member
bonjour ,

alors les news ....
la programmation c'est bien passée , mon jack fonctionne ,
par contre j'ai un souci avec :
-l'afficheur : affichage avec des symboles bizarre
View attachment 16698
-le chrono démarre tous seul , dès que je le branche (normal ou pas)
-les boutons : j'ai start and stop , le troisième ne fonctionne pas (du coup , je pense que c'est normal.... vu que le chrono redémarre à zéro ?)
-les leds : ne fonctionne pas ....

je vais passer aux cablages des leds IR et des TSOP , y a t'il quelque chose à savoir avant d'attaquer ?

Mike
Bonjour,

Il est normal que le fonctionnement soit ce qu'il est, le 14M2 est-il programmé?
Comme le dit dje, il faut mieux effacer l'écran avant d'écrire.
J'ajouterai ça avec la modif départ chrono.

MM

MM
 

le belge

Senior Member
salut ,
merci pour ton aide !!!
je test de suite !!!

ce n'est pas forcément mieux !!!
ça scintille fort !!!
sinon je ne vois plus le texte "chrono agility"

à propos du 14M2 : oui bien sur ....
 
Last edited:

dje8269

Senior Member
Autant pour moi . Je t'ai fais effacé l'ecran après avoir affiché le message ; il faut bien sur le faire avant .

On va effacé l'ecran jsute avant le message "chrono agility" . Vire ce que je t'ai fais mettre avant meme la pause qui du coup ne sert a rien
hserout LCD (254,1) 'on efface l'ecran
pause 500

hserout LCD,(254,128," CHRONO AGILITY ") ;affichage LCD
 

MGU

Senior Member
salut ,
merci pour ton aide !!!
je test de suite !!!

ce n'est pas forcément mieux !!!
ça scintille fort !!!
sinon je ne vois plus le texte "chrono agility"

à propos du 14M2 : oui bien sur ....
Oui, mais il faut la mise à jour.
En fonction du typon, des E/S ont été modifiées et c'est le 14M2 qui gère les leds

Je poste dès que possible

MM
 

le belge

Senior Member
c'est bon , j'ai juste rajouté "sec" après le temps et je n'ai plus les symboles bizarre ...
par contre si je débranche le chargeur et que je le rebranche , je n'ai plus "chrono agility" qui s'affiche mais "serial oled" .....

bizarre ....
 

dje8269

Senior Member
Il s'agit du message d'accueil, de ce genre de module , il y as une manip pour le supprimer, Michel doit la connaitre
 

le belge

Senior Member
je vais attendre de voir avec Michel alors ....
j'essaie de voir comment on peut faire défiler un texte sur l'écran , mais ce n'est pas simple ....
j'apprends , j'apprends !!!!

@ dje8269 : tant que j'y pense , on avait parlé de la télécommande , pourrais-tu me donner la liste que tu avais ???
 

dje8269

Senior Member
Pour le mesage d'accueil , c'est quoi ton module ? le AXE133 ? as tu une prise jack derriere ?

Pour la télécommande , j'avais pas de liste mais un schéma si tu veux . J'ai fais un truc comme ca ; avec deux boutons ; Mais ca c'etait a mes tous debuts : lol .

Sans titre.JPG

Refait un cahier des charges , je pense qu'on doit pouvoir faire mieux ; Même si elle focntionne encore super bien
 

le belge

Senior Member
oui c'est le AXE 133 Y ; y a bien un jack derrière

pour la télécommande :
-bouton start
-stop
-RAZ
-on/off

c'est tout ....
 

dje8269

Senior Member
Alors, dans l'ordre pour ton afficheur .

Dans Programming editor :
Tu va dans Fichier ---> Open samples .

Tu cherche le fichier : "AXE133 Serial OLED"

Tu l'ouvre ; tu regarde a la ligne 52 et 58 . tu dois voir le message d'accueil de ton afficheur sur les deux lignes .
Tu efface et tu met juste un "espace" à la place du texte . Tu enregistre ce nouveau programme ailleurs et tu le télécharge dans ton afficheur , et normalement le tour est joué .

Pour la télécommande, mon systéme de BP etait particulier . je pourrait te le refaire ce soir, mais Michel doit avoir une idée ;

Normalement tu devrais t'en sortir . avec
Une pile
un inter ON/OFF
3 BP
3 R de 10K
3 R de 1K
un 08M2 ou 14M2 pour utilser le code lmanchester avec RFout
un condo de 100nF pour le Picaxe .
un boitier
un bout de fil (antenne)

et bien sur un emetteur, l'ideale avec la fonction Enable . Mon systeme u npeu particulier , etait fais que je voulai alimenté mon emetteur seulement quand on appui sur un BP . sinon adios les piles . suivant la porté desiré et le type de module et de budget .
 

le belge

Senior Member
impeccable pour la télécommande ...
par contre pour le message , quand je veux l'injecter il me dit "erreur à cette ligne" et rien d'autre ....
bizarre
 

dje8269

Senior Member
A quelle ligne ?

tu as bien changé ca

Code:
#ifdef use_OLED		
EEPROM $00, ("  Serial OLED   ") 	; store msg in the EEPROM memory
#else
EEPROM $00, ("   Serial LCD   ") 	; store msg in the EEPROM memory
#endif


EEPROM $10, (" www.picaxe.com ") 	; store msg in the EEPROM memory
Par ca ? :
Code:
#ifdef use_OLED		
EEPROM $00, [COLOR="#FF0000"](" ") [/COLOR]	; store msg in the EEPROM memory
#else
EEPROM $00, ("   Serial LCD   ") 	; store msg in the EEPROM memory
#endif


EEPROM $10, [COLOR="#FF0000"](" ")[/COLOR] 	; store msg in the EEPROM memory
 

le belge

Senior Member
ben , c'est ça le souci , il ne me donne pas la ligne ....

yes ....

mais même sans changer le programme , il me dit qu'il y a une erreur ...

c'est bon , ça roule .... j'ai téléchargé le firmware sur picaxe.com et je l'ai modifié ... il doit y avoir une erreur dans le sample !!!
 
Last edited:

dje8269

Senior Member
Hummm....... le petit changement ne devrait rien amener comme erreur !!!!! on remplace juste du texte par un autre , en l'occurence du vide ! lol .

Attends je regarde un truc . tu as bien le AXE133 Y ? piloter par un 18M2 ?

Je regarde si y'as pas un autre firmwire pour celui la !
 

dje8269

Senior Member
Quel boulet je suis , c'est marqué en toute lettres en plus :

Code:
; ********************************************
; Note [COLOR="#FF0000"]you must uncomment just one of these two options[/COLOR]; depending on whether you have an LCD or OLED module
;#define use_OLED
;#define use_LCD
; ********************************************
Je suis pas encore au point sur les conseils !!! .
 

le belge

Senior Member
ben , je ne suis pas meilleur si ça peut te rassurer , lol

j'essaie de comprendre comment câbler les leds ir et les tsop mais franchement , je n'y comprends rien !!!!
je voulais avancer un peu sur le câblage ....

patience est mère de sûreté .....
 

MGU

Senior Member
En attendant le branchement des TSOP, voici les mises à jour chrono et récepteur radio
le chrono, avec la modif demandée, le chrono est déclenché soit après une RAZ ou directement après une arrivée (la RAZ est implicite évidemment)
Donc, c'est comme avant, avec RAZ manuelle ou raz automatique.

Code:
; CHRONO AU 1/100 EME DE SECONDE.
; COMMANDE PAR POUSSOIR OU PAR TOP RADIO 	
; MM 15/04/2014


;		dp	a  b  c  d  e  f  g 

	;0 	 	1  1  1  1  1  1  0 =126
	;1  	0  1  1  0  0  0  0 = 48 		a
	;2  	1  1  0  1  1  0  1 =109	f		b
	;3  	1  1  1  1  0  0  1 =121		g	
	;4  	0  1  1  0  0  1  1 = 51	e		c	
	;5  	1  0  1  1  0  1  1 = 91		d
	;6  	0  0  1  1  1  1  1 = 31
	;7  	1  1  1  0  0  0  0 =112
	;8  	1  1  1  1  1  1  1 =127
	;9  	1  1  1  0  0  1  1 =115

	
;	B		6  5  4  3  2  1  0		segments sorties ports B du 28X2
	
	;Ordre digit: 0,1,2,3,4			cathodes communes sorties ports A du 28X2
	 
#picaxe 28X2

setfreq M16
dirsB=%11111111		;Seg   X a,b c d e f g (voir tableau)
dirsA=%11111		;Digit 4,3,2,1,0 sur A.0, A.1, A.2, A.3; A.4
;hsersetup B2400_16, %10 ; 2400 baud, inverted TXD pour afficheur OLED 133Y
hsersetup B4800_16, %10 ; 2400 baud, inverted TXD pour afficheur série maison
symbol depart=pinC.1	;sur sortie Départ du 14M2 ou manuel.	pinC.1=0 si Appuyé
symbol Arrive=pinC.2	;Sur sortie Arrivée du 14M2 ou manuel	pinC.2=0 si Appuyé
symbol RAZ	=pinC.3		;Sur sortie RAZ du 14M2 ou manuel		pinC.3=0 si Appuyé
symbol LCD	=C.6		;sortie Hserout

symbol chiffr=b6
symbol segm=b7  
symbol digit=b8

symbol val=w13
	; la table commence à 48 pour correspondre à la table ascii
	table 48, (126,48,109,121,51,91,31,112,127,115)	; affichage de 0 à 9 (voir tableau)

	settimer 64911	;reglage timer 1/100 s
	;calibfreq 5

	pause 500
	hserout LCD,(254,1)	;affichage LCD	
	hserout LCD,(254,128," CHRONO AGILITY ")	;affichage LCD
	
	Do		
		val=0
		do			;Attente top départ
			gosub affich 
		loop while depart=1
			  	
		timer=0				;	
		do 			; Affichage du temps. Attente top arrivée
			val=timer
			gosub affich				
			if arrive=0 then exit
		loop
												
		do 			;Attente RAZ
			gosub affich
		loop while RAZ=1 and depart=1 								
	loop
	
affich:	
	bintoascii val, b1,b2,b3,b4,b5				;décomposition ascii
	hserout LCD,(254,196,b1,b2,b3,",",b4,b5," s")	;affichage LCD
	
	digit=16		;A.4 =1		balayage de droite à gauche
	chiffr=b5		;centièmes	
	gosub affchif	;affichage chiffre
	digit=8			;A.3=1	
	chiffr=b4		;dizièmes
	gosub affchif
	digit=4
	chiffr=b3		;unité secondes	
	gosub affchif
	digit=2			;dizaines sec
	chiffr=b2
	gosub affchif
	digit=1			;centaines sec
	chiffr=b1
	gosub affchif
	return
	
affchif:
	readtable chiffr,segm	;lecture positions segments en ft du chiffre
	pinsB=0			;extinction afficheur avant changement de digit
	pinsA=digit		;selection digit de ex : %00010 = digit des dizièmes de s
	pinsB=segm		;alimentation segments	
	return
Le récepteur gère les trois leds (les poussoirs du pupitre n'allument les leds
Code:
;RECEPTEUR BARRIERE
;COMMANDE RADIO CHRONO
; MM 15/04/2014

;Sortie départ sur B.0
;Sortie arrivée sur B.1
;Sortie RAZ sur B.2 
#picaxe 14M2
symbol LedDep=	C.0		;Led top départ
symbol LedArr=	B.5		;Led top arrivée
symbol LedRaz=	B.3		;Led top RAZ
symbol TopDep=	B.0		;Sortie top départ
symbol TopArr=	B.1		;sortie top arrivée
symbol TopRAZ=	B.2		;sortie top RAZ
	high TopDep,TopArr,TopRAZ
	low LedDep,LedArr,LedRaz
	
	Do 
		rfin C.4,b1,b1,b1,b1,b1,b1,b1,b1
		
		if b1="D" then		;Sortie "Départ est transmise par B.0
			low TopDep		;début top départ
			high LedDep		;Allumage témoin
			pause 500
			high TopDep		;fin top départ
			low LedDep		;extinction témoin
		
		elseIf b1="A" then 
			low TopArr		;Sortie  "Arrivée" est transmise par B.1
			high LedArr		;Allumage témoin
			pause 500
			high TopArr
			low LedArr
		
		elseif b1="Z" then	;Sortie RAZ est transmise par B.2
			low TopRAZ		
			high LedRaz		;Allumage témoin
			pause 500
			high TopRAZ
			low LedRaz		
		endif
	loop
A suivre

MM
 

MGU

Senior Member
ça ne marche plus ,
je n'ai plus que des symboles bizarre qui défilent ....
Normal, c'est ma faute, j'ai pas inversé les options LCD/ OLED, ligne hsersetup...
Je remets le total, on va y arriver....

Code:
; CHRONO AU 1/100 EME DE SECONDE.
; COMMANDE PAR POUSSOIR OU PAR TOP RADIO 	
; MM 15/04/2014


;		dp	a  b  c  d  e  f  g 

	;0 	 	1  1  1  1  1  1  0 =126
	;1  	0  1  1  0  0  0  0 = 48 		a
	;2  	1  1  0  1  1  0  1 =109	f		b
	;3  	1  1  1  1  0  0  1 =121		g	
	;4  	0  1  1  0  0  1  1 = 51	e		c	
	;5  	1  0  1  1  0  1  1 = 91		d
	;6  	0  0  1  1  1  1  1 = 31
	;7  	1  1  1  0  0  0  0 =112
	;8  	1  1  1  1  1  1  1 =127
	;9  	1  1  1  0  0  1  1 =115

	
;	B		6  5  4  3  2  1  0		segments sorties ports B du 28X2
	
	;Ordre digit: 0,1,2,3,4			cathodes communes sorties ports A du 28X2
	 
#picaxe 28X2

setfreq M16
dirsB=%11111111		;Seg   X a,b c d e f g (voir tableau)
dirsA=%11111		;Digit 4,3,2,1,0 sur A.0, A.1, A.2, A.3; A.4
hsersetup B2400_16, %10 ; 2400 baud, inverted TXD pour afficheur OLED 133Y 

symbol depart=pinC.1	;sur sortie Départ du 14M2 ou manuel.	pinC.1=0 si Appuyé
symbol Arrive=pinC.2	;Sur sortie Arrivée du 14M2 ou manuel	pinC.2=0 si Appuyé
symbol RAZ	=pinC.3		;Sur sortie RAZ du 14M2 ou manuel		pinC.3=0 si Appuyé
symbol LCD	=C.6		;sortie Hserout

symbol chiffr=b6
symbol segm=b7  
symbol digit=b8

symbol val=w13
	; la table commence à 48 pour correspondre à la table ascii
	table 48, (126,48,109,121,51,91,31,112,127,115)	; affichage de 0 à 9 (voir tableau)

	settimer 64911	;reglage timer 1/100 s
	;calibfreq 5

	pause 500
	hserout LCD,(254,1)	;affichage LCD	
	hserout LCD,(254,128," CHRONO AGILITY ")	;affichage LCD
	
	Do		
		val=0
		do			;Attente top départ
			gosub affich 
		loop while depart=1
			  	
		timer=0				;	
		do 			; Affichage du temps. Attente top arrivée
			val=timer
			gosub affich				
			if arrive=0 then exit
		loop
												
		do 			;Attente RAZ
			gosub affich
		loop while RAZ=1 and depart=1 								
	loop
	
affich:	
	bintoascii val, b1,b2,b3,b4,b5				;décomposition ascii
	hserout LCD,(254,196,b1,b2,b3,",",b4,b5," s")	;affichage LCD
	
	digit=16		;A.4 =1		balayage de droite à gauche
	chiffr=b5		;centièmes	
	gosub affchif	;affichage chiffre
	digit=8			;A.3=1	
	chiffr=b4		;dizièmes
	gosub affchif
	digit=4
	chiffr=b3		;unité secondes	
	gosub affchif
	digit=2			;dizaines sec
	chiffr=b2
	gosub affchif
	digit=1			;centaines sec
	chiffr=b1
	gosub affchif
	return
	
affchif:
	readtable chiffr,segm	;lecture positions segments en ft du chiffre
	pinsB=0			;extinction afficheur avant changement de digit
	pinsA=digit		;selection digit de ex : %00010 = digit des dizièmes de s
	pinsB=segm		;alimentation segments	
	return
MM
 

le belge

Senior Member
désolé Michel , je dois partir , j'y regarde dès que je rentre ....
merci en attendant !!!
Mike

edit : je viens de tester ! c'est presque parfait !!!!!

les boutons fonctionnent nickel
par contre pas les leds .... il faut que je vérifie mon montage ....
j'ai aussi un souci avec le message qui reste affiché ... comme tout à l'heure !

je donne le bain à la petite et je poursuis mes recherches ....
 
Last edited:

PieM

Senior Member
Je pense que le plus simple est de supprimer tous les message préenregistrés dans le firmware du AXE133Y
 

le belge

Senior Member
juste pour être certain de ne pas faire de bétise ,
je reprends le firmware d'origine , je supprime les messages puis je les injecte ?

edit : c'est good !!! je me suis même permis de rajouter du texte ....
bientôt une petite vidéo ...lol

je mange et je regarde pourquoi les leds ne fonctionnent pas ....
 
Last edited:

PieM

Senior Member
juste pour être certain de ne pas faire de bétise ,
je reprends le firmware d'origine , je supprime les messages puis je les injecte ?
Supprimer les lignes 51 à 73
Mais surtout supprimer #define use_welcome

OK! si tu gardes un message ne fais pas ça !
 

MGU

Senior Member
juste pour être certain de ne pas faire de bétise ,
je reprends le firmware d'origine , je supprime les messages puis je les injecte ?

edit : c'est good !!! je me suis même permis de rajouter du texte ....
bientôt une petite vidéo ...lol

je mange et je regarde pourquoi les leds ne fonctionnent pas ....
Les leds ont un sens, connexion longue = anode (positive), connexion courte =cathode (négative)
Si on raccourcit les pattes, il est bon de garder le dissymétrie. Sinon, l'anode à généralement un petit plat sur le boitier.


Le boitier TSOP: voici un ex de câblage possible avec une barrette de petits dominos électriques.
Vue côté couvercle ouvert , tsop et led fixés au fond par de la colle au pistolet, dominos fixés idem.
Le câble blindé + 2 fils passe par un presse étoupe.

Faire passer les deux fils (4 ou 5 cm) à travers le blindage en écartant les mailles.



C'est quoi cet afficheur?

OK pour les modifs, tu pourras modifier tout ce que tu veux quand tout fonctionnera, sinon, en cas de problème, on ne saura plus où on en est.

MM
 

Attachments

Last edited:
Top