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 ---
On parle des Pics, sans rapport avec le langage ou la programmation

Modérateur : Jérémy

Multiples Boutons pour une interruption
Jérémy
Administrateur du site
Administrateur du site
Messages : 2727
Âge : 45
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#1 Message par Jérémy » ven. 27 oct. 2023 22:29

Bonjour les Fantaspiciens,

Je m’interrogeais sur la meilleure façon de traiter mon cas de figure.
J'ai un PIC en veille qui doit se réveiller sur l'appui d'un des 4 boutons de commande + traiter le commande.
Bien évidemment les BP ont leur propres entrées pour leurs propres fonctionnalités.

J'utilise ce schéma :
int.bmp


Peut être que vous êtes au fait d'une meilleure façon de faire la chose en terme de fiabilité ?
En effet la broche INTerrupt ( weak-up sur mon dessin) ne voit en fait que la tension que de Vcc moins la tension Vf des schottky .

Si Vbat est un peu faible genre 2.8V, et que la tension de diode est de 0.4V la pin interupt ne voit au final que 2.4V. Peut être suis je parano mais je pourrais douter de la certitude de bien prendre en compte un niveau "haut" logique par l'interrupt.

Comment gérer vous cela de votre coté?

Merci à vous de vos conseils !
Jérémy
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
C'est en faisant des erreurs, que l'on apprend le mieux !!!

Multiples Boutons pour une interruption
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2599
Âge : 73
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#2 Message par paulfjujo » sam. 28 oct. 2023 10:08

bonjour Jeremy, et à tous


il manque pas des R (ex: 4.7K) pull down sur ton schema ?
pour avoir etat 0 avec BP ouvert.



Regarde le programme et schema chaudiere
rassemblement de 6 switches via un ou à diode sur RB0 pour gerer 1 seule interruption INT0

on pourrait aussi gerer 6 interruuptions individueles INTCx,1,2,3,4,5,6
1 par switch (sur le 18F27K42) mais ce n'et pas ce que j'ai choisi
par contre le registre IOCB contient les fronts des bits d'entré qui ont basculé ( on peut choisir front montant ou descendant)...
donc avec INT0 RB0 j'entre dans l'interruption et je lis l'etat Etat_PORTB=I0CB
pour reperer le switch actionné

On peut aussi lire des combinaisons de switch..

projet XC8 zipé dans le post projet chaudiere..

Mais il doit y avoir moultes autres possibilités ?

A+
Aide toi, le ciel ou FantasPic t'aidera

Multiples Boutons pour une interruption
gwion
Passionné
Passionné
Messages : 212
Enregistré en : février 2022

#3 Message par gwion » sam. 28 oct. 2023 10:24

Bonjour tout le monde,

Sur ton schéma les BP ont 2 circuits. Si c'est le cas dans la réalité tu peux mettre le weak-up sur le circuit inutilisé et supprimer les diodes. Autre solution intercaler un petit MOSFET.
Mais comme la tension d'alim du PIC va baisser en même temps que celle utilisée pour le réveil puisque c'est la même source, le seuil de détection de l'état haut devrait également baisser non ?

Multiples Boutons pour une interruption
Jérémy
Administrateur du site
Administrateur du site
Messages : 2727
Âge : 45
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#4 Message par Jérémy » sam. 28 oct. 2023 11:14

Bonjour,

paulfjujo a écrit :Source du message il manque pas des R (ex: 4.7K) pull down sur ton schema ?

Les pulldown sont activées en interne ( par soft) écrit au dessus du schéma lol. J'aurais du les représenter pour être plus clair.

Le schéma de la chaudière est similaire au mien en inversant la logique. Quand tu appuis sur un bouton tu as 1V ( tension Vf d'une 1N4148) sur la broche SWX. Il faut que ce 1V soit bien pris comme un zéro par l'interruption. C'était le sens de ma question savoir si il existait une façon plus "secure" .
des schottky améliore un peu cela, plus un déclenchement sur un front ne devrait pas poser de problème de détection.

gwion a écrit :Source du message Sur ton schéma les BP ont 2 circuits. Si c'est le cas dans la réalité tu peux mettre le weak-up sur le circuit inutilisé et supprimer les diodes.

Excellent ! les petits interrupteur tectiles classique 6x6mm ont quasiment tous 2 circuits distincts , c'est idéal. mdr ! je n'y avait même pas pensé. :bravo:

gwion a écrit :Source du message Mais comme la tension d'alim du PIC va baisser en même temps que celle utilisée pour le réveil puisque c'est la même source, le seuil de détection de l'état haut devrait également baisser non ?

Oui je suppose

Merci pour vos réponses constructives
C'est en faisant des erreurs, que l'on apprend le mieux !!!


Retourner vers « Généralités sur les PICs »

Qui est en ligne

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