Je travaille avec des micro-contrôleurs STM32. Ces micro-contrôleurs ont la possibilité de définir la broche d'entrée comme pull up ou pull down:
Auparavant, j'avais l'habitude de donner une résistance de pull up ou pull down externe là où c'était nécessaire, mais maintenant je me demande si je peux supprimer les composants externes et utiliser la fonction pull down du micro-contrôleur lui-même.
Est-ce que ce sera une bonne chose à faire?
Existe-t-il un cas d'utilisation où je devrais prendre des précautions supplémentaires ou ne pas utiliser cette fonctionnalité du tout?
Réponses:
Oui ... Vous pouvez ... C'est une fonctionnalité éprouvée. Si vous voyez la structure des broches dans le manuel de référence STM32, vous pouvez voir qu'elle a des composants requis -
Si cela répond à vos besoins, vous pouvez supprimer les composants externes.
Modifier N'oubliez pas qu'à la mise sous tension, les broches seront tristatisées. Si cela n'entrave pas votre candidature, c'est bien! C'est pourquoi il est recommandé de commencer d'abord la section IO, puis de poursuivre avec d'autres périphériques.
la source
En général, il est parfaitement possible d'utiliser les résistances internes pull-up ou pull-down.
L'inconvénient est que vous pouvez oublier de l'activer à partir d'un logiciel, ce qui peut provoquer un petit mal de tête. Les tractions externes seront toujours là. N'oubliez donc pas d'activer les internes et d'économiser beaucoup de PCB en réduisant le nombre de composants.
Vous devez toujours vérifier si votre application a besoin d'une certaine valeur de résistance pull-up ou pull-down avant d'utiliser les résistances internes. Par exemple , ne les utilisez pas avec I 2 C , car ces valeurs seront trop élevées pour cela.
la source
À moins que les résistances pullup et pulldown ne soient actives pendant la réinitialisation (je suppose qu'elles ne le sont pas, mais je ne connais pas les périphériques STM32), il y a un état de broche non défini lors de la réinitialisation. C'est une des principales raisons d'utiliser des résistances de pullup ou de pull-down externes.
la source
Comme d'autres l'ont dit, les tractions et les descentes internes sont bien aussi longtemps que:
Sur le dernier point, rappelez-vous que les entrées CMOS au niveau de la moyenne tension peuvent provoquer un courant de transfert important sur leur paire d'entrée. Cela peut provoquer un problème dans un système à faible consommation d'énergie lors du démarrage.
En général, les résistances de traction externes produiront une conception plus conservatrice.
la source
En plus des autres exceptions fines énumérées dans toutes les réponses, les résistances internes de pull-up sont trop faibles pour I²C dans de nombreux cas.
la source