Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---
Forum général sur l'Assembleur !

Modérateur : mazertoc

compteur décompteur sur 7 segments
JMarc
Confirmé
Confirmé
Messages : 605
Enregistré en : août 2016
Localisation : Dans le Sud...

#121 Message par JMarc » mar. 29 nov. 2016 11:31

Bonjour

Il n'y a pas tmr1 de mon fichier a moi, donc c'est ok

Pour ma tempo anti rebond de mon bp, si je met 2ms, il y aura forcément au milieu de ma tempo au moins 1 interruption de tmr0 (1ms) qui appelle elle même 4 tempo de 2ms :shock: donc ma tempo du départ se transforme de 2ms en 10ms :sifflotte:

compteur décompteur sur 7 segments
Guest
Confirmé
Confirmé
Messages : 800
Enregistré en : mars 2017

#122 Message par Guest » mar. 29 nov. 2016 13:15

Si tu le veux bien. Je reprend avec toi ,les tempos que j'ai ici( modifié depuis la dernière fois)
J'ai :
/TIMER1
-en programmation temps 200ms pour clignotement digit (avant j'avais 400ms ) et 400ms pour basculer en décomptage
-en décomptage 100ms
/TIMER0
déclenche une int toute les 1ms cela pour effet:
mise en route affichage des 7 segments et donne donc, après affichage (allez un tuyau, c'est la que l'on remet l'int timer0 en service que l'on efface le flag et que l'on recharge le timer0 pour 1ms) les 1ms pour le traitement des BP et du décomptage son largement suffisante.
/Tempo en boucle
-de 1ms c'est le temps pour le multiplexage de afficheur ( j'ai raccourci avant 2 ms)
-de 800µs anti rebond des BP

Donc si tu veux utiliser le TIMER0 pour autre chose, amha pour cette application c'est une mauvaise idée mais bon....

A+

PS toutes ces modifications, sont uniquement pour mon goût perso .pour la tempo boucle de 1ms, on peut descendre encore ,mais attention au type d'afficheurs, après on risques de voir des étoiles :sifflotte:

compteur décompteur sur 7 segments
Guest
Confirmé
Confirmé
Messages : 800
Enregistré en : mars 2017

#123 Message par Guest » jeu. 1 déc. 2016 18:23

bonsoir

je ne sais pas ou tu en es ,et comme tu maîtrises l'organigramme, j'ai refait celui des BP, tu peux toujours t'en inspirer

BP.png

A+
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.

compteur décompteur sur 7 segments
JMarc
Confirmé
Confirmé
Messages : 605
Enregistré en : août 2016
Localisation : Dans le Sud...

#124 Message par JMarc » ven. 2 déc. 2016 09:44

Bonjour Maï

JMarc a écrit :

mon idée etait l'appuis sur valid (il fallait trouvé un nom, j'ai mis valid) pour sortir du chrono et entrée dans la parti correction des unités avec l'allumage que des unités, alors si appuie du bouton plus = incrementation des unités de 0 a 9 et repassage a 0. si appuie sur valid = passage sur les dizaines puis les centaines puis les milliers puis retour au chrono.

si chrono affiché, si appuie sur plus alors demarage du chrono, nouvel appuis arret



J'essaie de faire l'organigramme mais cela va demander du temps :sifflotte:



Et il y a toujours le problème du call dans l'interruption, je le laisse ou bien je l'enlève ?

compteur décompteur sur 7 segments
Guest
Confirmé
Confirmé
Messages : 800
Enregistré en : mars 2017

#125 Message par Guest » ven. 2 déc. 2016 14:52

JMarc a écrit :J'essaie de faire l'organigramme mais cela va demander du temps :sifflotte:
mais la du temps tu en as de moins en moins dans 15 jours je post :sifflotte:
Et il y a toujours le problème du call dans l'interruption, je le laisse ou bien je l'enlève ?
fait comme tu le sens.Perso j'ai une macro donc, sans appel a la pile.(call et return).

Si tu as 5 minutes, regarde sur le net programmation modulaire. c'est ce que nous avons fait pour affichage 7 segments et que je comptais faire avec le module de décomptage, mais je crois que c'est un peu trop tot .plus tard, on en reparle :wink:

A+

compteur décompteur sur 7 segments
JMarc
Confirmé
Confirmé
Messages : 605
Enregistré en : août 2016
Localisation : Dans le Sud...

#126 Message par JMarc » ven. 2 déc. 2016 15:05

maï a écrit :.Perso j'ai une macro donc, sans appel a la pile.(call et return).



Mais si dans ta macro il y a des call, c'est de cela que je parle

compteur décompteur sur 7 segments
Guest
Confirmé
Confirmé
Messages : 800
Enregistré en : mars 2017

#127 Message par Guest » ven. 2 déc. 2016 16:21

Dans mon projet j'ai cela

Code : Tout sélectionner


Digit1  MOVFW   ComptSu            
;charge la donnée
        CALL    LedTable        
;recherche donnée    
        MOVWF   PORTC            
;envoi donnée
        delay_ms .1            
;petite tempo 1ms   
        BCF    PORTA
,0x0        ;arrêt digit0


delay_ms.1 et une macro avec comme paramètre 1 ->1ms et comme tu n'as pas les macros soit tu laisses ton call soit tu transformes ton call en macro mais AMHA laisse comme cela :sifflotte:

Donc le seul call que j'ai c'est pour la recherche des segments suivant donnée ,quoi on peut aussi mettre cela en flash et recuperer, la donnée. Mais c'est une autre page :wink:

A+

compteur décompteur sur 7 segments
Guest
Confirmé
Confirmé
Messages : 800
Enregistré en : mars 2017

#128 Message par Guest » ven. 2 déc. 2016 16:59

tient ici la modification pour ne pas avoir de call de tempo

Code : Tout sélectionner

Tem2ms    MACRO
    LOCAL T1
    MOVLW 0x3
    MOVWF MEM1
    MOVLW 0x98
    MOVWF MEM
T1    DECFSZ MEM
, F            ; source issue de la macro delay_ms .2
    GOTO T1
    DECFSZ MEM1
, F
    GOTO T1
    
    ENDM

;*********************** Affichage sur 4 digits ********************************
;
;*********************
 avec gestion du digit selectionné ***********************    
Aff7S    MACRO
    BSF    PORTA
,0x0        ;allumage digit0    
Digit1    MOVFW   ComptSu            
;charge la donnée
    CALL    LedTable        
;recherche donnée    
    MOVWF   PORTC            
;envoi donnée
    Tem2ms                
;petite tempo 2ms   
    BCF    PORTA
,0x0        ;arrêt digit0



mais amha c'est des details a voir plus tard

A+

compteur décompteur sur 7 segments
JMarc
Confirmé
Confirmé
Messages : 605
Enregistré en : août 2016
Localisation : Dans le Sud...

#129 Message par JMarc » ven. 2 déc. 2016 23:31

Merci, je comprend mieux les macros.

La programmation modulaire serai comme pleins de macro ?

compteur décompteur sur 7 segments
Guest
Confirmé
Confirmé
Messages : 800
Enregistré en : mars 2017

#130 Message par Guest » sam. 3 déc. 2016 08:14

JMarc a écrit :La programmation modulaire serai comme pleins de macro ?
OUI et NON c'est des modules , de sous programme ou des macros voir des fichiers objets
Tu connais macro et spg .J'ai fait un fil, sur le fichier hex et comment on obtient sa réalisation .Voir ici pour objet viewtopic.php?f=11&t=358

j'ai perso, des bibliothèques de tout cela, des modules que tu prends et incorpore dans un projet comme font les langages évolues C, C++ etc.... avec leurs librairies.Ils n'ont pas inventés, le fil à couper le beurre :lol: Tient un module en C ou en ASM par exemple c'est la gestion d'un LCD, donc les fils sont sur Fantas Pic. En C une librairie, en ASM un fichier objet.Un module et un bout de code, une fois fait, tu ne le retouches PLUS tu peux lui passer des paramètres

Bon le but, même si c'est intéressant .C'est de finir, ce minuteur, pour la cuisine :sifflotte:

la gestion de tes boutons on en es OU?

A+


Retourner vers « Langage ASM »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 45 invités