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

Debug in-circuit et pins input
F6FCO
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 626
Âge : 64
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#1 Message par F6FCO » dim. 14 janv. 2018 15:35

Je me trompe ou j'ai trouvé une limite au debuggage in-circuit, (je préfererai la première solution)

16F876
TRISA en input
Pickit3 branché et réglé en mode Debugger.
PORTA en watch.
Sur le hard: un poussoir sur A0 et un poussoir sur A1, les deux avec pull-up.
Repos pin=1, pressé pin=0, vérifié par mesures sur A0 et A1.
Donc quand je presse les poussoirs les pins du PIC change bien d'état mais ce n'est pas retranscrit sur PORTA dans la fenêtre Watch. En clair le Pickit ne semble pas faire remonter les infos dans MPLAB.
J'ai essayé sur d'autres pins du port A et c'est pareil.

Testé avec Pickit officiel et Pickit chinois.
Une porte nand prend 2 bits en entrée... cochonne va !!!

Debug in-circuit et pins input
Temps-x
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 993
Enregistré en : juillet 2016
Localisation : Terre

#2 Message par Temps-x » dim. 14 janv. 2018 16:14

Bonsoir,

Si c'est un PicKit3 chinois, voir avec le vrai
Quand la souris nargue le chat, c'est que son trou n'est pas loin.

Debug in-circuit et pins input
F6FCO
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 626
Âge : 64
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#3 Message par F6FCO » dim. 14 janv. 2018 16:19

relis ma dernière phrase :wink: j'ai testé avec les deux.
Une porte nand prend 2 bits en entrée... cochonne va !!!

Debug in-circuit et pins input
Temps-x
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 993
Enregistré en : juillet 2016
Localisation : Terre

#4 Message par Temps-x » dim. 14 janv. 2018 16:24

oops Désolé javais pas vu,

Quelle bootloader as tu chargé dans ton Pic, et as tu mis ton firmware à jour pour ton PIcKit3
Modifié en dernier par Temps-x le dim. 14 janv. 2018 17:00, modifié 1 fois.
Quand la souris nargue le chat, c'est que son trou n'est pas loin.

Debug in-circuit et pins input
F6FCO
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 626
Âge : 64
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#5 Message par F6FCO » dim. 14 janv. 2018 16:49

Bootloader je ne sais pas, pour l'instant mes connaissances se limitent à ce que j'ai appris sur le 16f84 :wink: et j'en suis seulement aux premières pages du cours de BigOnOff sur le 876.
Le firmware du Pickit s'est mis à jour tout seul quand je l'avais branché sur MPlab.
Il faut se connecter chez Microchip pour les dernières versions ?
Une porte nand prend 2 bits en entrée... cochonne va !!!

Debug in-circuit et pins input
JMarc
Confirmé
Confirmé
Messages : 551
Enregistré en : août 2016
Localisation : Dans le Sud...

#6 Message par JMarc » dim. 14 janv. 2018 18:08

Bonjour F6FCO et temps-x

As tu reçu tes pics?
As tu fait les essais sur ta platine, si oui met le source si tu veux que l’on essais aussi

Te sert tu de bigonoff
l’adresse 0x2004
?

Debug in-circuit et pins input
F6FCO
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 626
Âge : 64
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#7 Message par F6FCO » dim. 14 janv. 2018 23:55

Bonsoir Jmarc,

Non pas encore reçu les PIC, je travaille avec un 16F876 que j'avais en stock. Le source ne fait pas grand chose à part une rotation sur le PORTB, c'est juste un petit programme que j'ai fais pour tester le Pickit3 en débug in-circuit, et c'est là que je me suis aperçu que le mien ne prends pas en compte ce qui remonte du circuit.

Code : Tout sélectionner


    LIST      p
=16F876A            ; Définition de processeur
    
#include <p16F876A.inc>        ; fichier include
    radix dec                      ; on travaille en décimal par défaut

__CONFIG   _CP_OFF 
& _DEBUG_OFF & _CPD_OFF & _LVP_OFF & _BODEN_OFF & _PWRTE_OFF & _WDT_OFF & _HS_OSC 


OPTIONVAL    EQU    B
'00000000'
ADCON1VAL    EQU    B'00000110' ; PORTA en mode digital

BANK0    macro                
; passer en banque0
        bcf        STATUS
,RP0
        bcf        STATUS
,RP1
    endm

BANK1    macro                
; passer en banque1
        bsf        STATUS
,RP0
        bcf        STATUS
,RP1
    endm

    CBLOCK    0x20        
; Début de la zone (0x20 à 0x6F)
    ENDC                ; Fin de la zone                        

PORTA    EQU H
'05'
PORTB     EQU H'06'        ; adr PORTB
PORTC    EQU H
'07'

    org     0x000         ; Adresse de départ après reset

    BANK1
    movlw   ADCON1VAL    
; PORTA en mode digital/analogique
    movwf   ADCON1        
; écriture dans contrôle A/D
    movlw   OPTIONVAL    
; charger masque
    movwf   OPTION_REG    
; initialiser registre option
    movlw   b
'11111111'    ; Direction PORTA
    movwf   TRISA        
; écriture dans registre direction
    clrf    TRISB        
; portB en sortie
    clrf       TRISC        
; écriture dans registre direction
    BANK0
    clrf    PORTB        
; sorties PORTB à 0
    clrf    PORTC  
   
;*****************************************************************************
;
                      PROGRAMME PRINCIPAL                                   *
;*****************************************************************************

start
    nop
    movlw     b
'00010000'    
    movwf    PORTB        
; anodes des LED
    movlw     b
'00000000'
    movwf    PORTC        ; cathodes des LED
    
boucle
    rlf PORTB
    goto     boucle        
    
    END


PS: je ne répondrai pas demain et ce ne sera pas de l'impolitesse, je serai absent jusqu'à jeudi :wink:
Une porte nand prend 2 bits en entrée... cochonne va !!!

Debug in-circuit et pins input
mazertoc
Passioné
Passioné
Messages : 201
Enregistré en : juillet 2015
Localisation : Auvernha

#8 Message par mazertoc » lun. 15 janv. 2018 10:47

Faut savoir que le debugger in-circuit est parfois buggé (!) et incomplet.
-> changements d'états inopérants, modules non fonctionnels, . . .

Je ferais davantage confiance à un dialogue avec le PC qui affiche les valeurs reçues, par un programme dans le PIC qui envoie des états de registres.

Debug in-circuit et pins input
Temps-x
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 993
Enregistré en : juillet 2016
Localisation : Terre

#9 Message par Temps-x » jeu. 18 janv. 2018 01:01

F6FCO a écrit :Source du message

Il faut se connecter chez Microchip pour les dernières versions ?


Jérémy pourra ton parler mieux que moi, si il le veut bien, car il a eut un soucis avec, regarde ICI

Malheureusement, je peux pas t'en dire plus.

==> A+
Quand la souris nargue le chat, c'est que son trou n'est pas loin.

Debug in-circuit et pins input
F6FCO
Avatar de l’utilisateur
Confirmé
Confirmé
Messages : 626
Âge : 64
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#10 Message par F6FCO » ven. 19 janv. 2018 13:41

mazertoc a écrit :Faut savoir que le debugger in-circuit est parfois buggé (!) et incomplet.
-> changements d'états inopérants, modules non fonctionnels, . . .


Je confirme, j'ai eu quelques surprises avec mes essais, le programme qui ne se comporte pas de la même façon en réel vs débug-in-circuit.
Une porte nand prend 2 bits en entrée... cochonne va !!!


Retourner vers « Langage ASM »

Qui est en ligne

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