2009-10-26 5 views
4

Je suis un gars CS qui commence avec Arduino. C'est probablement une question d'électronique très basique mais en passant par les didacticiels arduino tout est connecté à l'arduino avec une résistance.Arduino et périphériques externes

Eh bien, puisque je suis les tutoriels je sais quel type de résistance je devrais utiliser, mais ce que je ne sais pas est pourquoi je devrais en utiliser un? et quel type de résistance choisir je dois faire quelque chose qui n'est pas couvert dans un tutoriel.

Répondre

8

La résistance sert simplement à limiter le courant dans ou hors d'une broche dans le cas où quelque chose va de travers. Si votre AVR décide de sortir haut sur une broche que quelque chose d'autre veut bas (ou vice-versa), de grands courants dommageables peuvent se produire si ce n'est limité par une certaine résistance. La limite de courant pour les AVR est d'environ 20 milliampères, et étant donné que les tensions sont généralement de 5V, quelque chose de plus grand que 250 ohms "fonctionnerait".

Pour donner une marge de sécurité, 1-10k est un excellent choix; pour les signaux numériques, cela importe peu, sauf si vous utilisez des applications à très haut débit (au-delà de la capacité de l'AVR). Pour les entrées analogiques, une résistance similaire serait également recommandée, car la quantité de courant que l'ADC prend pour échantillonner est négligeable lorsque votre résistance est dans la gamme de quelques kilo-ohms.

6

Le principe sous-jacent que vous voulez apprendre est Ohm's Law, qui décrit la relation entre la tension, la résistance et le courant dans un circuit.

5

Les résistances sont utilisés pour

  1. limite de courant,
  2. devide voltage
  3. protection contre les surtensions
  4. pull-up, tirer vers le bas
  5. courant à la conversion tension
  6. etc ..

1) courant de sortie limite, le courant max absolu par IO est 40mA, une LED typique fonctionne sur ± 2V 20mA.
la valeur de résistance peut être calculée par (5V - 2V)/(0,02A) = 150Ω habituellement une résistance de 220Ω est utilisée, car: elle consomme moins d'énergie, ne coule pas 20 milliampères, et il n'y a pas de différence notable lumière émise. 2) si vous avez une tension analogique qui varie entre 0 et 10 volts, vous aurez besoin d'un diviseur de tension de 1/2. choisir par l'exemple z2 10k et calculer z1 par 10k * (Vin, max/5V -1). prendre une valeur de résistance supérieure à l'original calculé. et recalculez le nouveau Vout.

3) placer une résistance de 10k en série entre l'entrée analogique de l'arduino et le « pour mesurer la tension »

3) si vous avez à mesurer un courant analogique, vous placer une résistance à la masse et la calculez la résistance par Z = 5V/ampères. 4) si vous connectez un bouton à l'arduino, vous devrez placer une résistance de tirage vers le haut ou une résistance de tirage vers le bas. Si vous n'utilisez pas de résistance, l'entrée est flottante et peut prendre n'importe quelle valeur (haute ou basse). ou vous pouvez activer le pull faible interne. par pinMode (xx, INPUT); digitalWrite (xx, HIGH) ;. et désétiquetage par digitalWrite (xx, LOW); par défaut, le pull-up est désactivé.