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

[Réalisation] Testeur états logiques TTL avec PIC
F6FCO
Avatar de l’utilisateur
Expert
Expert
Messages : 1413
Âge : 70
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#1 Message par F6FCO » mer. 23 juin 2021 23:03

Bonsoir les gens,
En attendant de recevoir mes capteurs de pression je m'amuse avec l'ADC du 16F88. Une formule1 pour aller acheter une baguette, j'ai commandé en sample des 16F15313 en 8 pins pour ce projet.

Rappel des seuils des niveau logiques TTL:
Etat logique haut: entre 2.4v et 5v
zone transitoire non logique: entre 1.4v et 2.4v
Etat logique bas: entre 0v et 1.4v

Par convention on met une led verte pour signifier un état haut, une rouge pour un état bas. Au pro on avait des testeurs avec une led jaune pour la zone transitoire, perso je ne suis pas fan car cette led reste allumée quand le testeur est posé sur la table, çà attire l'oeil et puis au final elle ne sert pas à grand chose.
Mais je vais en mettre une dans le projet parce que c'est joli :lol:

L'algo (simplifié) du projet:

Algo1 testeur .jpeg
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Modifié en dernier par F6FCO le ven. 25 juin 2021 20:52, modifié 1 fois.
Une porte nand prend 2 bits en entrée... la cochonne !!! :langue:

[REALISATION] Testeur états logiques TTL avec PIC
Gérard
Avatar de l’utilisateur
Expert
Expert
Messages : 1640
Âge : 65
Enregistré en : septembre 2015
Localisation : Alsace - Haut-Rhin

#2 Message par Gérard » mer. 23 juin 2021 23:09

Les 2 questions du bas ne sont pas utiles.
Si à <1,4 la réponse est non puis si > 2,4 la réponse est aussi non, la LED jaune est obligatoirement allumée.
Le 18/04/19 je suis devenu papy de jumeaux, le 01/09/23 une petite cousine des jumeaux est née.

[REALISATION] Testeur états logiques TTL avec PIC
F6FCO
Avatar de l’utilisateur
Expert
Expert
Messages : 1413
Âge : 70
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#3 Message par F6FCO » mer. 23 juin 2021 23:14

Bonsoir Gérard,
Réactif :-D
Effectivement et j'en ai tenu compte dans l'algo plus détaillé:

Algo testeur TTL.jpg


Le programme vite fait ce soir, il y aura certainement des améliorations à apporter.
Partie Initialisations:

Code : Tout sélectionner

;**********************************************************************
;
                                                                     
;    NOM:    Testeur TTL 16F88                                          
;    Date:    juin 2021                                           
;    Auteur:    F6FCO  JC Buisson                                       
;         xtal:       8Mhz interne                                                 
;         
;                                                                     
;**********************************************************************
    List p=16F88                     
    
#include <p16F88.inc>

    ;__CONFIG    _CONFIG1, _CP_OFF & _CCP1_RB0 & _DEBUG_OFF & _WRT_PROTECT_OFF & _CPD_OFF & _LVP_OFF & _BODEN_OFF & _MCLR_ON & _PWRTE_OFF & _WDT_OFF  &_HS_OSC
    __CONFIG    _CONFIG1
, _CP_OFF & _CCP1_RB0 & _DEBUG_OFF & _WRT_PROTECT_OFF & _CPD_OFF & _LVP_OFF & _BODEN_OFF & _MCLR_ON & _PWRTE_OFF & _WDT_OFF  & _INTRC_IO
    __CONFIG    _CONFIG2
, _IESO_OFF & _FCMEN_OFF 
      
OPTIONVAL    EQU    H
'0008'            

; ---------------------------------------------------------------------

#define PointeTest    PORTA,2 ; 
#define LedVerte    PORTA,3 ; Etat logique haut
#define LedRouge    PORTA,4 ; Etat logique bas
#define    LedJaune    PORTA,1 ; zône transitoire

BANK0    macro
    bcf    STATUS
,RP0            ; passer banque0
    endm

BANK1    macro
    bsf    STATUS
,RP0            ; passer banque1
    endm

    CBLOCK 0x020                   
        Reg_1        
:1
        Reg_2        
:1
        Reg_3        
:1
        Reg_4        
:1
        Reg_5        
:1
        Ptouche        
:1
        Limite        
:1
    ENDC                                             

    org     0x0000            
; Adresse de départ après reset  
init
    BANK1    
    movlw    b
'01101110'
    movwf    OSCCON            ; Horloge interne à 4Mhz
    movlw    OPTIONVAL        
    movwf    OPTION_REG        
; initialiser registre option
    movlw    b
'00000100'
    movwf    TRISA
    
    
; ------------------- config ADC
    movlw    b
'00000100'        ; broche an2 en adc
    movwf    ANSEL
    movlw    b
'00000000'        ; Vref entre VDD et VSS
    movwf    ADCON1
    bcf    ADCON1
,6        ; frq 5MHz
    bcf    ADCON0
,7        ;
    bsf    ADCON0,6        ;
    BANK0

    bsf    ADCON0
,ADON        ; convertisseur ON
    
    bcf    ADCON0
,5        ; on 
    bsf    ADCON0
,4        ; échantillonne le 
    bcf    ADCON0
,3        ; canal an2
    

    clrf    PORTA            
; sorties portA à  0

    
;   vers main
    
    


Partie main:

Code : Tout sélectionner

#include <Testeur FCO_init.asm>
    
;***************************** Main ************************************

 
main    
    nop
    
v1    nop
    nop

    
; -----------------------------------
    ; conversion Analogique/Numérique de la tension issue de la LDR
    bsf     ADCON0
,GO      ; on échantillonne, la capa interne charge    
testGO    btfsc    ADCON0
,GO     ; on boucle le temps que se fasse l'échantillonnage    
     goto    testGO         ; en vérifiant quand le bit GO passe à zéro
    ; on lit le résultat stocké dans ADRESH
    movf    ADRESH,w
    movwf    Ptouche
    nop
    nop
    nop
    
    
; test état logique haut (au dessus de 2.4v)
v0    movlw    0x7a
    movwf    Limite
    movf    Ptouche,w
    subwf    Limite,w
    btfsc    STATUS,Z
    goto    v2
    btfsc    STATUS,C
    goto    v2
    bsf    LedVerte
    bcf    LedRouge
    bcf    LedJaune
    goto    v1
    
    
; test état logique bas (en-dessous de 1.4v)
v2    movlw    0x47
    movwf    Limite
    movf    Ptouche,w
    subwf    Limite,w    
    btfsc    STATUS,Z
    goto    v3
    btfss    STATUS,C
    goto    v3
    bcf    LedVerte
    bsf    LedRouge
    bcf    LedJaune
    goto    v1

; zone transitoire non logique (entre 1.4v et 2.4v)
v3    
    bcf    LedVerte
    bcf    LedRouge
    bsf    LedJaune
    nop
    nop
            
    
    
    
    
    
    
    goto    v1
    

    
    END     
        

        

Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Une porte nand prend 2 bits en entrée... la cochonne !!! :langue:

[REALISATION] Testeur états logiques TTL avec PIC
F6FCO
Avatar de l’utilisateur
Expert
Expert
Messages : 1413
Âge : 70
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#4 Message par F6FCO » ven. 25 juin 2021 20:50

J'ai reçu les 16F15313 à 8 pattes commandés spécialement pour ce projet.
Pour rien n'en faire... je n'ai pas trouvé son fichier inc dans le répertoire ASM, çà à la rigueur j'aurai pu m'en accomoder mais Pickit3 ne l'a pas dans sa liste.
:evil:
Une porte nand prend 2 bits en entrée... la cochonne !!! :langue:

[Réalisation] Testeur états logiques TTL avec PIC
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2596
Enregistré en : juillet 2016
Localisation : Terre

#5 Message par Temps-x » ven. 25 juin 2021 21:20

Bonsoir F6FCO, et tout le forum,

Il faut se servir de MPLAB X IPE v5.10, et lire ce que j'ai expliqué ICI, c'est grâce à ça !! qu'il mais possible de programmer les Pic18F27K42, on peut dire Merci ! à PEDRO qui à eu la gentillesse de nous informer de l'utilitaire de Microchip.

Au lieu de MPLAB X IPE v5.10 je te conseille d'installer la version MPLAB X IPE v5.35 qui est entièrement autonome, oops mais demande 8 Go pour installation.

F6FCO a écrit :Source du message je n'ai pas trouvé son fichier inc dans le répertoire ASM

On ce qui concerne le fichier le Voici, mais si tu installes MPLAB X IPE v5.35 il sera d'office présent, avec autre fichier récent de même catégorie.

:roll: Quelle idée d'avoir pris un pic aussi compliqué que celui-ci, regarde plutôt dans la série 18xxkxxx

==> A+
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Modifié en dernier par Temps-x le ven. 25 juin 2021 21:54, modifié 2 fois.
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

[Réalisation] Testeur états logiques TTL avec PIC
satinas
Expert
Expert
Messages : 1225
Enregistré en : novembre 2015

#6 Message par satinas » ven. 25 juin 2021 21:43

Hello everybody

Soit la méthode de Temps-x avec IPE, soit tu programmes directement depuis MpLabX avec le PicKit3.
Jusqu'à la version 5.35 de MpLabX, au delà cela se complique car l'assembleur n'est plus le même.

[Réalisation] Testeur états logiques TTL avec PIC
F6FCO
Avatar de l’utilisateur
Expert
Expert
Messages : 1413
Âge : 70
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#7 Message par F6FCO » ven. 25 juin 2021 22:16

Merci pour vos infos, mon coté intégriste me disait de rester sous MPLAB8.92 mais il semble que je doive revoir mes certitudes :wink:
Je suis plutôt du genre à garder un truc que je connais bien plutôt que d'essayer plein de choses, je vais devoir installer l'usine à gaz.

Quelle idée d'avoir pris un pic aussi compliqué que celui-ci, regarde plutôt dans la série 18xxkxxx

Je voulais un 8 pins avec ADC pour faire une sonde logique plus concise, je suis allé sur le site Microchip sur leur page de sélection et le premier qui correspondait était le 16F15313, je n'ai pas cherché plus loin.
Une porte nand prend 2 bits en entrée... la cochonne !!! :langue:

[Réalisation] Testeur états logiques TTL avec PIC
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2596
Enregistré en : juillet 2016
Localisation : Terre

#8 Message par Temps-x » ven. 25 juin 2021 23:41

Re

F6FCO a écrit :Source du message mon coté intégriste me disait de rester sous MPLAB8.92

:roll: Ça me fait plaisir, je suis plus le seule :lol: on parlant sérieusement, je te conseille de garder MPLAB 8.92 qui fait du débogage pas à pas pour ASM, puis d'installer MPLAB X IPE v5.35

Sur mon ordinateur j'ai 3 version de MPLAB : MPLAB IDE v8.92, MPLAB X IPE v5.10, MPLAB X IPE v5.35, qui cohabite sans aucun problème.

La seule chose, c'est qu'il ne faut pas les mettre dans les mêmes répertoire(dossier)

==> A+
Modifié en dernier par Temps-x le sam. 26 juin 2021 00:23, modifié 1 fois.
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

[Réalisation] Testeur états logiques TTL avec PIC
F6FCO
Avatar de l’utilisateur
Expert
Expert
Messages : 1413
Âge : 70
Enregistré en : décembre 2017
Localisation : Furtif je suis.
Contact :

#9 Message par F6FCO » sam. 26 juin 2021 00:09

Oui j'avais déjà lu des trucs sur ce sujet. Je ne suis pas fan des nouvelles versions tant que la 8.92 me convient, quitte à me creuser les neurones je préfère le faire sur des projets plutôt que perdre du temps à apprendre de nouveaux outils. Et cela juste parce qu'il me faudrait programmer un PIC 8pins avec ADC, le jeu n'en vaut pas la chandelle.
Je vais essayer juste par curiosité mais je ne pense pas approfondir, ma sonde logique restera sur un PIC 16F88.
Une porte nand prend 2 bits en entrée... la cochonne !!! :langue:

[Réalisation] Testeur états logiques TTL avec PIC
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2596
Enregistré en : juillet 2016
Localisation : Terre

#10 Message par Temps-x » sam. 26 juin 2021 00:16

Re

Si tu veux un pic sympa a 8 broches PIC12F675 avec 4 ADC, il est très simple à programmer, de plus compatible avec Pickit3 Standalone programmer

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


Retourner vers « Langage ASM »

Qui est en ligne

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