Hallo zusammen, ich habe da eine Verständnisfrage. Ich habe eine von diesen Platinen BeagleBone Black und möchte nun eine Motoransteuerung an mehreren GPIOs, die als Output konfiguriert sind, anschließen. Das Problem ist, dass die einzelnen GPIOs nicht zu viel Strom liefern dürfen. Die Dürfen max. 6 mA liefern. Nun...zwischen GPIOs und meiner Schaltung habe ich dieses Bauelement eingebaut: http://www.nxp.com/documents/data_sheet/74HC_HCT245.pdf In dem Datenblatt wird es aber nicht genannt, wie hoch die Eingangsimpedance ist. Demzufolge bin ich etwa unsicher, ob ich die GPIOs des BeableBone Black durch eine direkte Verbingung mit dem Logic Shifter verbinden darf oder nicht. Aus diesem Grund habe ich mir gedacht einen Widerstand in der Reihe einzusetzen (nach dem folgenden Schema) ---- ---------------- | | -------- R = ? ----| BBB: Pin 60 |------/\/\/\/\/\-----| Input Pin: 74HCT245 -------- ----| | | ---- | --------------- Da das System mit 3.3 V arbeitet und der max. Strom 6 mA ist, komme ich auf einen Wert von R > 550 Ohm. Ich habe also erst eine allgemeine Frage. Wie schließe ich am sichersten eine Platine wie der BBB mit einem externen elektronischen Komponent wie in dem obigen Fall? Woher weiß ich, wie viel Strom wird das Bauelement "saugen"? Gruß
Seite 7: ILI input leakage current VI = VCC or GND; VCC = 6.0 V - - ±0.1 µA Den Eingangswiderstand darfst du selber ausrechnen :) Allgemein: CMOS hat einen extrem hohen Eingangswiderstand. Du kannst also zur Sicherheit auch 1-100k dazwischen schalten, je nachdem welche Frequenzen drüber müssen. Du baust dir natürlich mit der Eingangskapazität einen Tiefpass. Notwendig ist der Widerstand nicht unbedingt, aber er schützt deinen GPIO, wenn der 74HCT abraucht oder durch andere Umstände dein GPIO irgendwohin kurzgeschlossen wird.
chris schrieb: > Allgemein: CMOS hat einen extrem hohen Eingangswiderstand. Naja...extrem hoch definiert aber keinen Wert. Danke für deine Hilfe, ich habe das Datenblatt gelesen, dennoch wusste ich es nicht, dass der Begriff "Input Current Leakage" in diesem Fall in Frage kommt. Allgemein: würdest du eine Entkopplung durch Oktokoppler oder durch das Bauteil oben?
Dave A. schrieb: > Woher weiß ich, wie viel Strom wird das Bauelement "saugen"? Ein CMOS-Eingang saugt gar keinen Strom. (Die < 0,1 µA kann man vernachlässigen.) > Naja...extrem hoch definiert aber keinen Wert. R=U/I, hier: 60 MΩ > würdest du eine Entkopplung durch Oktokoppler oder durch das > Bauteil oben? Einen Oktopoppler brauchst du nur, wenn du die Motorsteuerung vom BBB galvanisch trennen willst. Wie sieht den diese Motorsteuerung genau aus?
Dave A. schrieb: > chris schrieb: >> Allgemein: CMOS hat einen extrem hohen Eingangswiderstand. > > Naja...extrem hoch definiert aber keinen Wert. > > Danke für deine Hilfe, ich habe das Datenblatt gelesen, dennoch wusste > ich es nicht, dass der Begriff "Input Current Leakage" in diesem Fall in > Frage kommt. > > Allgemein: würdest du eine Entkopplung durch Oktokoppler oder durch das > Bauteil oben? Der 245 ist bidirektional. Brauchst Du hier nicht bzw kannst DU hier so oder so nicht nutzen. Ein HCT244 oder HCT541 wäre genau das passende, wobei der 541 layouttechnisch schöner ist. fchk
Clemens L. schrieb: > Ein CMOS-Eingang saugt gar keinen Strom. (Die < 0,1 µA kann man > vernachlässigen.) > >> Naja...extrem hoch definiert aber keinen Wert. > > R=U/I, hier: 60 MΩ Also, den Wert habe ich auch durch diese Einfache Gleichung berechnet. Allerdings frage ich mich: wenn der CMOS-Eingang keinen Strom saugt, wieso braucht man einen solchen Widerstand? Der Eingang sollte bereits hochhomig genug sein, oder???? Frank K. > Der 245 ist bidirektional. Ja, richtig. Aber die Richtung kann ich über einen Pin einstellen. Wieso ist dann das Bauteil nicht zu gebrauchen? Gruß Die Motoranschaltung habe ich nicht hier. Morgen poste ich poste den Schaltplan.
Dave A. schrieb: > Allerdings frage ich mich: wenn der CMOS-Eingang keinen Strom saugt, > wieso braucht man einen solchen Widerstand? Einen separaten Widerstand braucht man nicht.
Clemens L. schrieb: > Dave A. schrieb: >> Allerdings frage ich mich: wenn der CMOS-Eingang keinen Strom saugt, >> wieso braucht man einen solchen Widerstand? > > Einen separaten Widerstand braucht man nicht. Ok, super. Ich dachte mir, dass die einzelnen GPIO Pins mit dem HCT245 nicht direkt angeschlossen werden dürfen. Manchmal sind die Datenblätter dieser Komponenten etwa verwirrend. Obwohl drin steht, was man sucht, braucht man die richtigen Begriffe.
Dave A. schrieb: > Frank K. >> Der 245 ist bidirektional. > > Ja, richtig. Aber die Richtung kann ich über einen Pin einstellen. Wieso > ist dann das Bauteil nicht zu gebrauchen? Dave A. schrieb: > HCT245 Wenn du den '245 in Richtung BBB schaltest, dann grillst du damit die GPIOs. Warum? Weil HCTs mit für den BBB zu hoher Spannung betrieben werden. Zusätzlich musst du darauf achten, dass die GPIOs Spannungsfrei sind, wenn der BBB aus ist. Die Doku des BBB enthält diesbezüglich deutliche Warnungen.
Konrad S. schrieb: > Zusätzlich musst du darauf achten, dass die GPIOs Spannungsfrei sind, > wenn der BBB aus ist. Die Doku des BBB enthält diesbezüglich deutliche > Warnungen. Die GPIOs sind alle als Output konfiguriert. In dem BBB_SRM sind zwar interessante Informationen enthalten, aber gibt es einen Punkt, den ich sehr verwirrend finde (S. 113): /There are several precautions that need to me taken when working with the expansion headers to prevent damage to the board. 1) Do not apply any voltages to any I/O pins when the board is not powered on. 2) Do not drive any external signals into the I/O pins until after the VDD_3V3B rail is up. *3) Do not apply any voltages that are generated from external sources.* 4) If voltages are generated from the VDD_5V signal, those supplies must not become active until after the VDD_3V3B rail is up. 5) If you are applying signals from other boards into the expansion headers, make sure you power the board up after you power up the BeagleBone Black or make the connections after power is applied on both boards. Powering the processor via its I/O pins can cause damage to the processor./ Punkt 3 finde ich unklar. Meint der Author, dass keine externe Versorgungsspannung an einem GPIO angeschlossen werden darf?!?!? Falls nicht, wie kann ich 3.3 V Signale von einem anderen Board generiert einlesen?
:
Bearbeitet durch User
Dave A. schrieb: > Punkt 3 finde ich unklar. Meint der Author, dass keine externe > Versorgungsspannung an einem GPIO angeschlossen werden darf?!?!? Falls > nicht, wie kann ich 3.3 V Signale von einem anderen Board generiert > einlesen? Eine Lösung wäre zB: 74LVC1T45/2T45/8T245 http://www.nxp.com/documents/data_sheet/74LVC_LVCH8T245.pdf Die Bausteine mit T in der Funktionsgruppe sind genau dafür ausgelegt. Wenn eine der Versorgungsspannungen wegfällt, schaltet der Baustein ab. Es besteht also keine Gefahr, irgend einen Schaltungsteil über Schutzdioden etc mitzuversorgen. fchk
Dave A. schrieb: > Punkt 3 finde ich unklar. Meint der Author, dass keine externe > Versorgungsspannung an einem GPIO angeschlossen werden darf?!?!? Falls > nicht, wie kann ich 3.3 V Signale von einem anderen Board generiert > einlesen? Im Kapitel über "Capes" findet sich dieser Text: "The VDD_3V3B rail is supplied by the LDO on the BeagleBone Black and is the primary power rail for expansion boards. If the power requirement for the capes exceeds the current rating, then locally generated voltage rail can be used. It is recommended that this rail be used to power any buffers or level translators that may be used." Es läuft darauf hinaus, zwischen BBB und der "Welt da draußen" einen Interface-Baustein zu platzieren, dessen Stromversorgung vom BBB über VDD_3V3B kommt und der sicherstellen muss, dass bei abgeschaltetem BBB keine Spannungen an die GPIOs kommen, denn "Powering the processor via its I/O pins can cause damage to the processor." Die Anforderung "Versorgung über VDD_3V3B" schließt die Verwendung von HCT-Bausteinen aus, somit ist kein "billiges" Level-Shifting für Outputs möglich. Als Interface-Bausteine kommen z.B. 74HC125 oder 74HC126 in Betracht.
Frank K. schrieb: > Eine Lösung wäre zB: 74LVC1T45/2T45/8T245 Ein sehr guter Tipp für ein bidirektionales Interface.
Konrad S. schrieb: > Die Anforderung "Versorgung über VDD_3V3B" schließt die Verwendung von > HCT-Bausteinen aus, somit ist kein "billiges" Level-Shifting für Outputs > möglich. Als Interface-Bausteine kommen z.B. 74HC125 oder 74HC126 in > Betracht. Super, vielen vielen Dank. Dann noch eine Sache: ist es dann nicht einfacher optokoppler einzusetzen? Somit habe ich nicht den Streß mit dem anfänglichen Zustand der GPIO beim Boot. Ich frage nur, weil ich Angst davor habe, etwas wichtig zu übersehen.
Optokoppler sind zur Isolation gut, aber sie sind manchmal nicht die Schnellsten. Ansonsten einfach nach Schema Äff vorgehen. Einschalten: 1. Knochen mit Strom versorgen 2. Peripherie versorgen. Ausschalten: 1. Peripherie von der Versorgung trennen 2. Knochen abschalten. Aber Vorsicht: So einfach, wie es klingt ist es nicht. Die üblichen Kondensatoren können sehr nachtragend wirken. Somit stimmt dann der tatsächliche Abschaltzeitpunkt nicht mit dem des gewünschten Zeitpunktes überein.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.