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
Guest
Confirmé
Confirmé
Messages : 800
Enregistré en : mars 2017

#11 Message par Guest » sam. 24 sept. 2016 19:22

je ne connais pas ta platine donc.....

Passe la tempo 2ms a 10ms
TEMPS1 EQU .10000000
a+

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

#12 Message par Guest » sam. 24 sept. 2016 19:30

j'ai pas bien compris les globales, on en reparle apres que cela soit OK :wink: car cela va être BON BON :lol:

il y a quand même, une petite chose qui ne travaille :wink: ou sont tes transistors de commande de tes afficheurs car une sortie d'un Port est limite a 25mA et toi tu dois passer suivant le cas 8 par exemple 6x20mA.Tu vas cramer ton pic a ce rythme.

A j'ai compris, après un certain temps plus ou moins long .Tu as finalement de la chance,pourquoi tu n'as pas cramé ton PIC:

Le Port B c'est les segments donc les anodes des LED(segments).Les commandes des LED( commande des digits) c'est les cathodes, donc le Port C ne dois pas être a 1 pour activer le digit mais a ZÉRO
IL FAUT PASSER PAR DES TRANSISTORS NPN comme exemple de jeremy est la pour activer digit PORTC a 1 si transistors PNP alors PORTC a 0.
Pour activer le digit, sans transistor PORTC a zéro, active le digit et -> destruction du PIC
Modifié en dernier par Anonymous le sam. 24 sept. 2016 21:39, modifié 1 fois.

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

#13 Message par Guest » sam. 24 sept. 2016 21:35

Bon j'ai trouvé pour les globales spécifique au 16F.
Je te dis tout demain

Je vais me coucher

A+

compteur décompteur sur 7 segments
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2618
Enregistré en : juillet 2016
Localisation : Terre

#14 Message par Temps-x » sam. 24 sept. 2016 21:41

Je sors je vous laisse tous les deux. dehors!!
Modifié en dernier par Temps-x le dim. 25 sept. 2016 15:50, modifié 7 fois.
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

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

#15 Message par JMarc » dim. 25 sept. 2016 00:41

Bonjour Maï et temps-x


Ma platine, la voici

Image

Lors de mes premiers post, je voulais transformer un compteur semblable a celui que nous essayons de créer et qui fonctionne sur ma platine mais avec un 16f84, programme de mon livre de cour écrit par Tavernier. Je n'arriveai pas à le transformer pour un 16f877. Je voulais la ligne des segments sur Portc, les commande afficheur sur porta et le portb pour mes entrées avec utilisation des résistances et des interruptions. D'où mon premier post sur ce forum et maintenant ça fonctionne. Il me reste à trouver le problème de celui de Maï. Je suis têtu et j'y arriverai même si c'est impossible :mur:

Apparement trop de call donc trop d'empillage sur mon prog (heu celui de Tavernier) et nous sommes parti pour un nouveau prog auxquels je ne veux pas copier un autre prog mais faire fonctionner ce dernier car c'est bon exercice pour apprendre avec debug.

Jean-Marc, mais ils sont fou ces romains humour!!



Image

Les cathodes sont communes, pour allumer un segment, je le relis a +5 volts et pour mètre l'afficheur en fonction qui est commandé par l'intermédiaire d'un transistor, je le relis également a +5 volts
Modifié en dernier par JMarc le dim. 25 sept. 2016 01:29, modifié 1 fois.

compteur décompteur sur 7 segments
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2618
Enregistré en : juillet 2016
Localisation : Terre

#16 Message par Temps-x » dim. 25 sept. 2016 01:19

Je sors je vous laisse tous les deux. dehors!!
Modifié en dernier par Temps-x le dim. 25 sept. 2016 15:51, modifié 5 fois.

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

#17 Message par JMarc » dim. 25 sept. 2016 08:10

Bonjour temps-x

C'est juste un problème de tempo de l'ordre de commande de l'afficheur. Je devine les chiffre qui s'éclaire faiblemet avec un Flach toute les secondes

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

#18 Message par Guest » dim. 25 sept. 2016 08:21

Bonjour
tient j'ai trouvé mon erreur j'ai pas fait évolué le programme ,je suis resté sur 2 digts) et deux 3 :sifflotte:

Code : Tout sélectionner

;********************** Boucle principale *************************************   
BouP   MOVLW   0X0A         ;on test si 10fois 100mS
   SUBWF   Temp,W
   BTFSS   STATUS,Z
   GOTO   AFFI         ;NON
   CLRF   Temp         ;RAZ compteur temp
   INCF   ComptSu         ; oui compteur seconde +1


on ne faisait pas le rafraîchissement de l'affichage faire un goto AFFI et NON BouP
c'est du maî et JMarc pas sortie de tout fait :wink: c'est comme cela que je fonctionne

A+

PS: affaire reglé pas la platine :sifflotte:

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

#19 Message par JMarc » dim. 25 sept. 2016 09:21

bonjour

Hé, moi aussi j'ai cherché :sifflotte:

Code : Tout sélectionner

   BSF   T1CON,TMR1ON      ;arrêt TMR1    bit a 1
   
   MOVLW    TEST
;*********************** Affichage sur 4 digits ********************************
AFFI   
 BouP
;  CLRF    Temp
   BSF   PORTC
,0         ;allumage digit0
   MOVFW   ComptSu         
;charge la donnée
   CALL   LedTable      
;recherche donnée
   MOVWF   PORTB         
;envoi donnée
   CALL   Tem2ms         
;petite tempo 2ms   
   BCF   PORTC
,0         ;arrêt digit0


l'étiquette BouP remis au bon endroit, ça fonctionne :-D :-D :-D

Allez, vite la suite :roll: je rajoute une entré avec interruption ?

Consommation d'un segment= 12ma
consommation commande afficheur = 0.8 ma

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

#20 Message par Guest » dim. 25 sept. 2016 10:04

bonjour

un petit conseil quand même passer par un (buffer, 'tempon, transistor etc..) car les pointes de conso a l'allumage des segments c'est pour le PIC.
et pour finir:

LES GLOBALES
les globales ne sont pas la, pour que tu puisses visualiser avec option variables le contenu de celle ci,c'est un détour, une façon de faire .
Les globales sont la pour transmettre des données dans les 2 sens d'un fichier projet vers des fichiers objets, issus d'une librairie par exemple dans ma réalisation (volet roulant)j'ai mon projet volet roulant avec une librairie objet pour l'afficheur 16x2 LCD.et je passe des données du projet au fichier LCD

le compilateur place ses globales ou bon lui semble

Code : Tout sélectionner

   GLOBAL   ComptSu
   GLOBAL   ComptSd
   GLOBAL   ComptMu
   GLOBAl   ComptMd
 udata    
ComptSu   res 1            ;comteur seconde
ComptSd   res 1
ComptMu   res 1            ;compteur minute
ComptMd   res 1

le plus simple pour lui et sous 16F il les places en début de la banque0 c'est a dire en 0x20, le problème c'est que nous avons un CBLOK sur 0x20

Code : Tout sélectionner

    CBLOCK   0x20
    Sauv
    Sauv1
    Temp            ;compteur temps
    i,j               ;temporaire boucle
   
   ENDC

donc Sauv vient écraser ComptSu et pour les 4 globales même sort.A l'int elle sont écrasé .C'est pour cela que cela planté.
Solution déplacer les globales sur une adresse bien précise
comment

Code : Tout sélectionner

   GLOBAL   ComptSu
   GLOBAL   ComptSd
   GLOBAL   ComptMu
   GLOBAl   ComptMd
 udata    0x30
ComptSu   res 1            ;comteur seconde
ComptSd   res 1
ComptMu   res 1            ;compteur minute
ComptMd   res 1


A+ la suite dessous


Retourner vers « Langage ASM »

Qui est en ligne

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