PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Taster an PIC



Goblin
06.06.2004, 16:19
hi!
kann mir einer sagen, wie ich taster an nen pic schalten muss? hab gehört man kann die nicht direkt über masse an nen pin hängen, weil der pic keine pull-ups hat...

art-hightech
06.06.2004, 20:43
einfach den Taster gegen Masse hängen und einen Widerstand an den entsprechenden PIN des Microcontrollers nach plus. Irgendwas im Kiloohmbereich, so 5,6k wären doch toll ;)
Dann funktionierts scho.
MfG

Goblin
07.06.2004, 14:22
Irgendwas im Kiloohmbereich, so 5,6k wären doch toll ;)
Dann funktionierts scho.
MfG

weiss das zufällig jemand genauer?? :P

Matthias
07.06.2004, 14:33
Es macht programmtechnisch keinen Unterschied, ob du 10k oder 1k nimmst.

Ich nehme immer 10k...

recycle
07.06.2004, 15:00
art-hightech hat folgendes geschrieben::
Irgendwas im Kiloohmbereich, so 5,6k wären doch toll
Dann funktionierts scho.
MfG

weiss das zufällig jemand genauer??

Wenn du den Taster schliesst, fliesst ein Strom direkt von der 5V Spannungsquelle über den Widerstand und den Taster nach Masse.

Ohne den Widerstand wäre das ein Kurzschluss, der Sinn des Widerstands ist also diesen Strom zu begrenzen.

Mit R=U/I ergibt sich bei einem 1k Widerstand ein Strom von 5mA und bei einem 10k Widerstand ein Strom von 0.5mA.
Da dieser Strom relativ sinnlos im Widerstand verbraten wird, könnte man hier eigentlich sagen je höher der Widerstandswert desto besser.

ABER: Wenn der Taster offen ist bilden der Widerstand und der Eingangswiderstand des Controlers einen Spannungsteiler aus zwei in Reihe geschalteten Widerständen. Dei Spannungen verteilen sich proportional zu den Widerständen und der Controlerpin greift die Spannung in der Mitte ab.
Wenn Widerstand und Eingangswiderstand den gleichen Wert hätten, würde der Controlerpin die halbe Spannung, also nur 2,5 V abgreifen. Das würde der Controler dann sicherlich nicht mehr eindeutig als "high" Signal interpretieren.
Damit das "high" möglichst nah an den 5 Volt bleibt, sollte der Widerstand daher im Verhältnis zum Eingangswiderstand des Controlers möglichst klein sein.

Ergo - den optimalen Widerstandswert gibt es eigentlich nicht, sondern nur einen Kompromiss aus Stromverschwendung und Abschwächung des "High" Pegels.

Ich glaube ein Widerstand zwischen 5k und 10k ist ein ganz guter Kompromiss. Wenn du es genau wissen willst, kannst du aber auch mal im Datenblatt deines Controllers nachsehen, welchen Eingangswiderstand der hat welchen Schwellwert er für High/Low hat usw. und dir selber den Wert der dir am günstigsten erscheint ausrechen

Programmtechnisch spielt es wie Matthias schon sagt keine Rolle, solange der Controler bei geöffnetem Taster noch einen eindeutigen "High" Pegel hat.

07.06.2004, 15:38
PortB hat übrigens bei fast allen PICs integrierte Pullups.

Matthias
07.06.2004, 18:09
Kann man die da an und ausschalten?