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

up/down counter BCD 0-99 sur 16f628 ?
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2600
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#11 Message par paulfjujo » mer. 19 juil. 2023 13:28

Bonjour,


elektrax a écrit :bonjour,
vous auriez pu l'écrire avec MikroC(ou autres) :-D , je n'ai pas de compilateur C pour PIC


:sifflotte: tu peux utiliser MikroC gratuit pour code <2Ko
ce qui doit pouvoir etre le cas pour ton application

ou MPLABX XC8 en plus compliqué ..mais gratuit sans limitation de traille .. mais NON OPTIMISé
Aide toi, le ciel ou FantasPic t'aidera

up/down counter BCD 0-99 sur 16f628 ?
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2624
Enregistré en : juillet 2016
Localisation : Terre

#12 Message par Temps-x » mer. 19 juil. 2023 21:22

Bonsoir elektrax, Gérard, paulfjujo, et tout le forum,

elektrax a écrit :Source du message si c'est pour me donner le HEX vous auriez pu l'écrire avec MikroC(ou autres) :-D


Dans le zip Compte99.zip se trouve le code ASM et le fichier compilé

Quand au autre langage il ne faut pas m'en parler, je trouve personnellement que c'est ballot de prendre autre que ASM ou tout est gratuit.

==> A+
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

up/down counter BCD 0-99 sur 16f628 ?
Claudius
Avatar de l’utilisateur
Passionné
Passionné
Messages : 260
Âge : 69
Enregistré en : septembre 2015
Localisation : ELANCOURT (78 - YVELINES)
Contact :

#13 Message par Claudius » jeu. 20 juil. 2023 14:02

Bonjour,
elektrax a écrit :
vous auriez pu l'écrire avec MikroC (ou autres) :-D , je n'ai pas de compilateur C pour PIC [pic16f628]

Temps-x a écrit (ou presque) :
Quant aux autres langages il ne faut pas m'en parler, je trouve personnellement que c'est ballot de prendre d'autres langages que l'ASM où tout est gratuit.

Pour le pic16f628, c'est sans compter avec notamment SDCC - Small Device C Compiler créé en mars 2007 et qui est toujours mis à jour après 16 ans d'évolution :-)

Ce compilateur C est gratuit pour moultes µC dont naturellement ceux de Microchip PIC14, PIC16 et PIC18 (vérifier les types de µC supportés après téléchargement du compilateur car malheureusement, les nouveaux types de ces familles n'ont pas été accueillis depuis longtemps). Qui plus est, tout le code source est disponible ;-)

Sur ce, je retourne en Assembleur, Langages C et C++ pour ATtiny et ATmega de Microchip où tout est également gratuit avec une communauté très dynamique (humour ;-))

up/down counter BCD 0-99 sur 16f628 ?
elektrax
Débutant
Débutant
Messages : 77
Enregistré en : septembre 2015

#14 Message par elektrax » dim. 23 juil. 2023 11:47

bonjour,
SDCC doit etre tres intéressant, merci pour l'info

hardware et asm de TempsX : OK, juste un truc : j'appuie sur le bouton il avance de 1 je relache il avance de 1 aussi, donc il avançait de 2 en 2
soit il manque un delay dans control quelque part, soit ?
j'ai contourné le probleme en augmentant tres fort le delay 10ms, j'ai aussi changé le btfss par btfsc dans le up et down, en laissant le bouton appuyé plus longtemps que le delay il avance de 1 en 1 au rythme du delay, ce n'est pas ultrarapide puisque j'ai augmenté la duree delay, mais c'est parfait pour mon application

Code : Tout sélectionner



control
      
      btfss PORTA
,2   tester si l'interrupteur est appuyé niveau logique 0
     
      call up                             ; interrupteur vers le bas enfoncé

      btfss PORTA,3                       ; testez si l'
interrupteur est appuyé
      call down                           
interrupteur vers le bas enfoncé
    
      
goto control 

;************************************ "augmenter la valeur" ************************************
up
      btfsc PORTA
,2       
      goto 
up                             ;

      
call _10ms                          anti-rebond

      movf compteur
,W                     
      
xorlw D'99' 
      
btfsc STATUS,Z                      tester si la valeur et au maximum
      
goto repasse_0                      la valeur maxi et au maximum   

      incf compteur
,F

      call trouve_abcd

      
return 


augmente duree delay

Code : Tout sélectionner


10ms
      movlw D
'206'                       
      
movwf loop1
      movlw D
'200'  pause 
      movwf loop2

      decfsz loop1
,F
      
goto  $+D'2'
      
decfsz loop2,F
      
goto $-D'3'
     
      
return 


sans doute mes modifs ne sont pas académiques

encore un grand merci à TempsX

up/down counter BCD 0-99 sur 16f628 ?
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2624
Enregistré en : juillet 2016
Localisation : Terre

#15 Message par Temps-x » dim. 23 juil. 2023 13:11

Bonjour elektrax, et tout le forum,

elektrax a écrit :Source du message j'appuie sur le bouton il avance de 1 je relache il avance de 1 aussi, donc il avançait de 2 en 2
soit il manque un delay dans control quelque part, soit ?


:roll: Je vois deux possibilité à ce problème, soit tu as des faux contacts, soit les résistances (10k) de tirage au + ni sont pas ou mal connecté

Regarde bien ton montage, fait nous une photo dessus dessous.


Histoire de voir, supprimes les btfsc, sur les deux boutons up, et down

Code : Tout sélectionner


up
      call _10ms                          
anti-rebond

      movf compteur
,W                     
      
xorlw D'99' 
      
btfsc STATUS,Z                      tester si la valeur et au maximum
      
goto repasse_0                      la valeur maxi et au maximum   

      incf compteur
,F

      call trouve_abcd

      
return 

 





==> A+
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

up/down counter BCD 0-99 sur 16f628 ?
elektrax
Débutant
Débutant
Messages : 77
Enregistré en : septembre 2015

#16 Message par elektrax » lun. 24 juil. 2023 04:05

Bonjour,

ne vous inquiétez pas, avec mes modifs c'est parfait, une photo d'un cablage sur une plaques a pastilles avec des fils qui s'entrecroisent partout vous fera perdre du temps-X :-D inutilement,
sans le btfss (et goto ) dans up et down il compte a la vitesse de 10ms
j'ai photo 308Ko mais je ne peux pas la joindre ?
j'ai fait une courte video du fonctionnement adéquat : sur youtube

tout fonctionne pour moi grand merci

up/down counter BCD 0-99 sur 16f628 ?
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2624
Enregistré en : juillet 2016
Localisation : Terre

#17 Message par Temps-x » lun. 24 juil. 2023 20:54

Bonsoir elektrax, et tout le forum,

elektrax a écrit :Source du message j'ai fait une courte video du fonctionnement adéquat : sur youtube


:bravo: la pasion de l'électronique c'est magique

==> A+
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

up/down counter BCD 0-99 sur 16f628 ?
jym83
Membre
Membre
Messages : 10
Enregistré en : novembre 2023

#18 Message par jym83 » ven. 10 nov. 2023 18:43

Bonjour,

j'ai vu que vous aviez approvisionné un peu trop de pic 16f628a. je peux peut être vous en prendre quelques uns.

Cordialement.
jym83

up/down counter BCD 0-99 sur 16f628 ?
elektrax
Débutant
Débutant
Messages : 77
Enregistré en : septembre 2015

#19 Message par elektrax » mar. 14 nov. 2023 01:59

bonjour,

je vous ai répondu par mail, l'avez vous reçu ?


Retourner vers « Langage ASM »

Qui est en ligne

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