;**********************************************************************
;    Nom de fichier:  freq-347y.asm                                      *
;    Date:            9-05-2024                                       *
;    Version:         0.01                                            *
;    Auteur:       pierre GENET                                       *
;**********************************************************************
;    Notes:    logiciel de gestion d'un fréquencemètre sur un
;			tiroir 5A15N. Le tiroir fonctionne normalement, comme
;			à l'origine et le signal visualisé est prélevé
;			en sortie trigger (borne A4). L'affichage est de la
;			forme F>xxxxyHZ
;			xxxx : valeur sur 3 chiffres signif + point décimal
;			y : lettre multiple (K, M) ou blanc
;			il y a 5 formats possibles :
;			0 : _123 HZ
;			1 : 1.23KHZ
;			2 : 12.3KHZ
;			3 : _123KHZ
;			4 : 1.23MHZ
;			le tiroir 5A15N ne monte qu'à 2MHz, donc le fréquencemètre
;			n'a pas besoin d'afficher mieux que 9.99MHZ
;			suivant le format, on ouvre la porte de comptage pendant
;			100µs, 1ms, 10ms, 100ms ou 1s
;			le choix est automatique grâce à 2 indicateurs à bascules JK :
;			sup9 passe à 1 dès que le compteur passe de 999 à 000
;			sup0 passe à 1 lorsque le compteur passe de 099 à 100
;			en fin de comptage,
;			si sup9=1, on passe au calibre au-dessus (si possible)
;			si sup0=0, on passe au calibre du dessous (si possible)
;**********************************************************************

;***** constantes ********************************************************
;(htr0= 100us)
;(htr1= 1ms)
;(htr2= 10ms)
;(htr3= 100ms)
;(htr4= 500ms
;(htr5= 1s)	

;htr0:
;-------------------------------------------
;	si calibre = 4
;	alors
;		si etat = att_tempo_mesure
;		alors
;			fermeture porte
;			etat = fin_mesure
;		finsi
;		si etat = debut_mesure
;		alors
;			RAZ cpt et bascules
;			ouverture porte
;			etat = att_tempo_mesure
;		finsi
;	finsi
;--------------------------------------------

;htr1:
;--------------------------------------------
;	si calibre = 3
;	alors
;		si etat = att_tempo_mesure
;		alors
;			fermeture porte
;			etat = fin_mesure
;		finsi
;		si etat = debut_mesure
;		alors
;			RAZ cpt et bascules
;			ouverture porte
;			etat = att_tempo_mesure
;		finsi
;	finsi
;--------------------------------------------

;htr2:
;--------------------------------------------
;	si calibre = 2
;	alors
;		si etat = fin_mesure
;		alors
;			fermeture porte
;		finsi
;		si etat = debut_mesure
;		alors
;			RAZ cpt et bascules
;			ouverture porte
;			etat = att_tempo_mesure
;		finsi
;	finsi
;--------------------------------------------

;htr3:
;--------------------------------------------
;	si calibre = 1
;	alors
;		si etat = fin_mesure
;		alors
;			fermeture porte
;			etat = fin_mesure
;		finsi
;		si etat = debut_mesure
;		alors
;			RAZ cpt et bascules
;			ouverture porte
;			etat = att_tempo_mesure
;		finsi
;	finsi
;--------------------------------------------

;htr4:
;--------------------------------------------
;	activation transfert relais
;	si etat = fin_mesure
;	alors
;		etat = att_tempo_500ms
;		si sup9 = 1
;		alors
;			n_calibre++ mod 5
;			calcul format
;		finsi
;		si sup0 = 0
;		alors
;			n_calibre-- mod 5
;		finsi
;	finsi
;	si etat = att_tempo_500ms
;	alors
;		etat = debut_mesure
;	finsi
;--------------------------------------------

;htr5:
;--------------------------------------------
;	si calibre = 0
;	alors
;		si etat = att_tempo_mesure
;		alors
;			fermeture porte
;			etat = fin_mesure
;		finsi
;		si etat = debut_mesure
;		alors
;			RAZ cpt et bascules
;			ouverture porte
;			etat = att_tempo_mesure
;		finsi
;	finsi
;--------------------------------------------

