Affichage Pulsin sur axe033

Jacques ROBERT

Senior Member
Bonsoir,
Je reviens sur une question qui date du 23/10/2012 à propos de l'utilisation de Pulsin pour mesurer la durée d'un créneau de radiocommande et l'affichage sur un
AXE033. PieM,vous m'aviez bien aiguillé et ça marchait mais avec un petit défaut : l'affichage pouvant aller de 80 à 220 est bon de 100 à 220 mais dès que la valeur
passe en dessous de 100 le 0 de droite reste en place et au lieu d'afficher par ex.:95 il affiche 950;j'ai gardé cela en l'état sachant qu'il fallait lire 95.Depuis j'ai trouvé
sur A4 une liste des Cdes. d'affichage et entre autre (254,1)qui efface l'écran donc la lecture précédente donc le 0 en trop,mais voilà t'y pas que ça clignote! ce qui est normal . y-a-t-il un remède?Ci dessous mon programme actuel.
Code:
'Picaxe 08M2
'durée créneau
main:
    pulsin C.3,1,b1
    serout 1,N2400,(254,130)
    serout 1,N2400,(254,1)
    pause 30
    serout 1,N2400,("creneau:",#b1)
    pause 1000
    goto main
 

dje8269

Senior Member
Bonsoir Jacques !

Il ne faut pas prendre au pied de la lettre ce que je vais dire , et attendre confirmation d'un expert ;

J'avais rencontrer le même genre de problème sur mon chenillard !

Il me semble que tu pourrais essayé d'effacer ton écran et ensuite placer ton curseur en 130 . c'est pas un peu court 30ms de pause après MAJ ?

serout 1,N2400,(254,1)
serout 1,N2400,(254,130)
Sinon tu mets tout sur 3 chiffres 095 par exemple .

Ou alors tu ruse comme quand j'ai fais mon clignotement ; quand le chiffre est inférieur à 100, tu met " " un espace à la suite du chiffre ainsi il effacera ce maudit zéro .

J'espère avoir pus t'aidé ,mais il doit certainement existé des façons plus élégantes!
 

MGU

Senior Member
Bonsoir,
Je reviens sur une question qui date du 23/10/2012 à propos de l'utilisation de Pulsin pour mesurer la durée d'un créneau de radiocommande et l'affichage sur un
AXE033. PieM,vous m'aviez bien aiguillé et ça marchait mais avec un petit défaut : l'affichage pouvant aller de 80 à 220 est bon de 100 à 220 mais dès que la valeur
passe en dessous de 100 le 0 de droite reste en place et au lieu d'afficher par ex.:95 il affiche 950;j'ai gardé cela en l'état sachant qu'il fallait lire 95.Depuis j'ai trouvé
sur A4 une liste des Cdes. d'affichage et entre autre (254,1)qui efface l'écran donc la lecture précédente donc le 0 en trop,mais voilà t'y pas que ça clignote! ce qui est normal . y-a-t-il un remède?Ci dessous mon programme actuel.
Code:
'Picaxe 08M2
'durée créneau
main:
    pulsin C.3,1,b1
    serout 1,N2400,(254,130)
    serout 1,N2400,(254,1)
    pause 30
    serout 1,N2400,("creneau:",#b1)
    pause 1000
    goto main
Bonjour,

Cela vient du fait que #b1 écrase la valeur précédent en cadrant à gauche sans l'effacer et le dernier caractère peut rester.
Pour faire un affichage propre, il faut décomposer b1 par bintoascii et afficher les caractères un par un, il y aura un 0 devant pour les nombres < 100.

MM
 

PieM

Senior Member
Bonjour,
s'il reste une place après les 3 digits affichés, écrire simplement : serout 1,N2400,("creneau:",#b1," ")
et si on descend à une valeur <10 : serout 1,N2400,("creneau:",#b1," ")
 
Top