5v des Arduino für 3.3v Shield nutzen

Hi,
ich habe ja immer noch das ENC28J60 Breakout Shield hier rumliegen - trotz, wie man öfter hört, schlechter Library, will ich mich jetzt einfach mal damit beschäftigen, vielleicht krieg ichs ja hin.

Zum Einen:
Wenn ich das richtig lese, kann ich die SPI Pins (beim MEGA 52, 50, 51 and 53) mehrfach nutzen richtig?

Muss ich da was beachten oder einfach an den PIN die unterschiedlichen Geräte parallel schalten?
Neben dem Ethernet Shield habe ich noch den TLC5490 der die SPI benötigt.

Zum Anderen:
Das Shield benötigt nur (max?) 3.3 V. Runteregeln (ich glaub das geht beim Arduino) möchte ich den 5v PIN allerdings nicht, eben weil ich andere Shields/Bauteile habe, die 5v benötigen.
Laut diesem Tutorial http://www.komputer.de/wordpress/archives/497
kann ich das auch mittels 2er 1N4007er Dioden machen. Habe allerdings nur noch 1N4001er hier rumliegen.
Kann ich die auch nutzen? Oder gibts noch ne andere Möglichkeit?

Bin gespannt, vielen Dank
Gruß
Thorsten

Aktuelle Boards sollten eigentlich nen eigenen 3.3V-Ausgang haben.

Nein nicht ganz so, SPI kann für mehrere GEräte genutzt werden wobei Clock Din un Dout paralell an alle Geräte gehen CS (chip select) braucht aber jedes Gerät privat für sich. Also braucht es n CS ausgänge für n Geräte.

Du nimmst die 5V vom 5V pin und bringst sie mit einem Spannungsstabilisator auf 3,3V.
Falls das ENC28J60 Breakout Shield weniger als 50mA braucht kannst Du es an den 3,3V pin des Arduino hängen.

Viele Grüße Uwe

Hi,
klar, könnte den 3.3v ausgang nutzen, aber laut datenblatt benötigt der wohl 250mA...kann das sein?

(siehe 16.1 / Seite 84)
VDD Supply Voltage 3.14 - 3.45 V
IDD Operating Current — 250 mA VDD = 3.45V, FCLK = 10 MHz, SO = Open
Kann ich dann überhaupt den 5v ausgang problemlos nutzen?

Nein nicht ganz so, SPI kann für mehrere GEräte genutzt werden wobei Clock Din un Dout paralell an alle Geräte gehen CS (chip select) braucht aber jedes Gerät privat für sich. Also braucht es n CS ausgänge für n Geräte.

Was heißst das?
Sowohl der Enc also auch das TLC benötigen PIN 10 (=CS). Kann ich jeden beliebligen PIN als weiteren CS PIN schalten?
Steh da grad aufm Schlauch

Danke

EDIT///
ok, scheint zu gehen:
It is possible to use a pin other than pin 10 as the slave select (SS) pin. For example, the Arduino Ethernet shield uses pin 4 to control the SPI connection to the on-board SD card, and pin 10 to control the connection to the Ethernet controller.

Allerdings find ich keine Infos dazu, wie bzw wo ich die Belegung anpasse?

EDIT 2///
Uwe, aus einem älteren Beitrag diesbzgl habe ich noch folgendes von dir als feedback erhalten:
(hatte ich irgendwie vergessen):

So wie ich das sehe benutzt das Ethernetshield die SPI Schnittstelle. Der TLC auch aber ohne CS (Chip Select) Darum können beide nicht gleichzeitig funktionieren da das TLC sich immer angesprochen fühlt.
Lösung: dem TLC mittels einiger AND Gatter auf SCLK und SIN zu einem CS verhelfen.

Ist das wirklich so? Kannst du mir beschreiben, wie ich hier so ein AND Gatter integriere?
Hier nochmal die PIN BHelegung des TLCs:
XERR : open collector, wire or-ed output that lets you know a TLC5940 is over heated or has a burnt out LED. We can ignore this as it will always be on unless you have current using elements on all of the outputs.
SOUT: serial data out from the TLC5940. Unless you wish to try to read the error bits you do not need this to come to the Arduino. If you have more than one TLC5940 this is the line you daisy chain to the SIN of the next package.
DCPRG: this selects the source of the current limiter register, you could just tie it high.
XLAT: you will need this to latch data after shifting.
SCLK: you will need this to shift data.
SIN: serial in to TLC5940, this is the output from the Arduino.
VPRG: you need this to select either the current limit registers or the duty cycle registers for writing.
GSCLK: this is the clock for the PWM. We will reprogram TIMER2 in the Arduino to make this signal. That will cost us the native PWM on that timer, digital 11 on a mega8, 11 and 3 on a mega168.
BLANK: this marks the end of a PWM cycle in addition to blanking the output. We will reprogram TIMER1 to generate this signal. That will cost us the native PWMs on digital 9 and digital 10. (Tie a real, physical pull-up resistor on this line to keep things blanked while your Arduino boots. Depending on your hardware, it is possible that the TLC5940 would come up in a configuration that would dissipate too much power.)

currymuetze:
Hi,
klar, könnte den 3.3v ausgang nutzen, aber laut datenblatt benötigt der wohl 250mA...kann das sein?
http://ww1.microchip.com/downloads/en/DeviceDoc/39662a.pdf
...

Das kann ich nur bestätigen mit den 250 mA. Ab und zu sind es sogar noch mehr.
Als Spannungsversorgung habe ich einen LM317 verwendet.

Hi Jomelo,
danke für den Hinweis.
WIe berechne ich denn die Widerstände? Habe diesen Schaltplan gefunden:

  • UIn ist sicherlich der 5v AUsgang vom Ardino richtig?
  • UOut sollte dann 3.3 V ergeben?
  • R2 geht an GND des Arduino?
  • Wie berechne ich R1 und R2? Ist R1 immer 240 Ohm? (LM317-Berechner ) Dann kann ich bei 3.3v ja als R2= 400 Ohm nehmen? Wunder mich nur, dass bei der BErechnung UIn nicht berücksichtig wird

Gruß

PS: Ist ein T220 oder ein TO92 Bauteil zu bevorzugen?

LM317 S01.GIF

currymuetze:

  • UIn ist sicherlich der 5v AUsgang vom Ardino richtig?

Ja, den kannst du nehmen. Wenn du die Schaltung extern mit 7-9V nimmst, kannst du auch diese Spannung nutzen (VIN auf dem Arduino).

  • UOut sollte dann 3.3 V ergeben?

Wenn du 3,3 Volt brauchst, ist es doch logisch, oder? :wink:

  • R2 geht an GND des Arduino?

Ja.

  • Wie berechne ich R1 und R2? Ist R1 immer 240 Ohm? (LM317-Berechner ) Dann kann ich bei 3.3v ja als R2= 400 Ohm nehmen? Wunder mich nur, dass bei der BErechnung UIn nicht berücksichtig wird

R1 und R2 bilden einen Spannungsteiler, der Mittelabgriff wird als "Einstellgröße" genutzt. Damit hast du quasi 2 Variablen R1 und R2, die die Spannung beeinflussen, sieht man auch in der Formel im Datenblatt. Nun liegt es ja nahe, eine dieser Variablen praxisgerecht festzusetzen (in dem Fall 240 Ohm) und den anderen Widerstand rechnerisch zu bestimmen.
Sinn und zweck eines Spannungsreglers ist ja, dass man unabhängig von der Eingangsspannung eine konstante Spannung herausbekommt. Ist doch beim 7805 genauso, Eingangsspannung in weiten Bereichen variabel, hinten kommen die 5V raus. Ebenso soll es sich doch auch hier verhalten.[/quote]

PS: Ist ein T220 oder ein TO92 Bauteil zu bevorzugen?

Das Datenblatt ist dein Freund. TO92 hab ich keins gesehen, dafür TO39. Wenn du mit 500 mA klarkommst, kannst du die kleinere Variante nehmen, beim TO220 sinds schon 1,5A.

sth77:
Das Datenblatt ist dein Freund. TO92 hab ich keins gesehen, dafür TO39. Wenn du mit 500 mA klarkommst, kannst du die kleinere Variante nehmen, beim TO220 sinds schon 1,5A.

Hatte mal bei Ebay geschaut, da gibt es auch die TO92er Version. http://www.ebay.de/itm/25-x-LM317LZ-LM317-Einstellb-Spannungsregler-TO92-/380195407412?pt=Bauteile&hash=item5885698634#ht_1130wt_1297
Wobei die wohl wie ich grad sehe nur bis 100mA geeinet sind. Werde einfach den großen 220er nehmen.
Alles klar-dann habe ich das mit der Spannung ja schon mal gelöst. Vielen Dank.

Bleibt noch die Frage mit der Doppelnutzung der SPI, bzw. ja nur der Nutzung des Chip Selects. Schaut dazu doch bitte noch mal in den Beitrag #3 oben.

  • Ist ein AND Gatter notwendig bei gleichzeitgem Betrieb von TLC5490 und ENC28J60? Da Uwe bei meinen POSTs bisher nie falsch gelegen hat kann ich das vermutlich direkt mit JA beantworten 8)
  • Wie genau baue ich so ein AND Gatter auf und welche Bauteile benötige ich da?

Gruß und nochmals danke
THorsten

Den LM317 kannst Du nicht nehmen um von 5V auf 3,3V zu kommen, da er 2 V Spannungsdifferenz zwischen Eingag und Ausgang braucht um richtig zu funktionieren. Du Brauchst ein LOW-Dropout Spannungsregler für 3,3V.
Den Rest beantworte ich abens.
Grüße Uwe

So gesehen hast du Recht, uwe. Ich bin aber auf dieses Produkt auf Watterott.com gestoßen: http://www.watterott.com/de/Breadboard-Spannungsversorgung-USB-5V/33V
Dort wird ebenfalls ein LM317 genutzt, um die USB-Spannung (5V) auf 3,3V zu bringen. Werten wir das als schlechtes Schaltungsdesign, was aber im Grenzbereich gerade noch funktioniert? :wink:

Hi Uwe,
dürfte dieser doch funktinoieren oder? LM3940T
http://www.lauermann.at/linear_ics_standard_lm3940t_low_dropout_reg_5v_to_3_3v_1a_40c_125,pid,6037,rid,86,kd.html
Gruß

Der sieht goldrichtig aus! ist bei Reichelt auch recht günstig.

Super - bis auf das bei Reichelt ja immer Versand ist. Nen COnrad hätte ich wenigstens um die Ecke, aber die führen den nicht.
Dann warte ich mal noch auf das Feedback von Uwe zum AND Gatter, da werd ich ja vermutlich auch Bauteile benötigen.
Gruß

@uwe
Hmm, dass mag sein, ich hab den lm317 aber auch schon in vielen Schaltungen verwendet und auch eingebaut gesehen. In welchem Fall liefert er den keine zulässige Spannung ?

Jeder Spannungsregler braucht eine bestimmte Spannungsdifferenz zwischen Eingangsspannung und Ausgangsspannung. Diese Spannung heißt auf englisch Dropout Voltage.
Für den LM317 findet ihr eine Grafik auf Seite 6, rechts mitte die Spannungsdifferenz in Funktion des Ausgangsstromes und der Temperatur. Bei 25 Grad, 200mA sind es ca 1,7V. http://www.national.com/ds/LM/LM117.pdf

Das ist genau die Spannungsdifferenz zwischen 5 und 3,3V.
Was passiert wenn diese Spannungsdifferenz nicht gegeben ist, weil ich zB nur 4,9V habe? Die Ausgangsspannung wird nicht 3,3V sein, sondern weniger und jede Spannungsänderung am Eingang wird zum Ausgang kommen. zB +/- 0,1 V Welligkeit auf 4,9V; die hast Du dann auch auf den 3,3V. Ein Spannungsregler mit genügend hoher Eingangsspannung regelt diese Welligkeit bis auf eine minimalen Wert weg. (Line Regulation: typisch 0,01% von dem Eingangswelligkeit kommt noch hinten raus).
Darum ist der LM317 als Stabilisator von 5V auf 3,3V nicht geeignet. Wenn Du von 7V startest dann ist es kein Problem.

Der LM3940T ist eine mögliche Wahl.
Der hat eine Dropout Spannung typischerweise von 0,11V, max 0,2V bei 100mA und 0,5 bzw 1V bei 1A.
Viele Grüße Uwe

sth77:
So gesehen hast du Recht, uwe. Ich bin aber auf dieses Produkt auf Watterott.com gestoßen: http://www.watterott.com/de/Breadboard-Spannungsversorgung-USB-5V/33V
Dort wird ebenfalls ein LM317 genutzt, um die USB-Spannung (5V) auf 3,3V zu bringen. Werten wir das als schlechtes Schaltungsdesign, was aber im Grenzbereich gerade noch funktioniert? :wink:

Ja würd ich so sagen, grenzbereichig und damit ein schlechtes Schaltungsdesign.
Wenn auf den 5V keine Störungen sind und die Spannung auf 5V oder 5,1V bleibt ( die bei Switchingsnetzeile meist als Sollspannung eingestellt ist) dann sind die 3,3V stabil. Aber wehe wenn die 5V etwas zusammensacken.

Praktisch funktioniert ein LM317 in den meisten Fällen, aber in den Fällen wo er nicht funktioniert wird mann verrückt den Fehler zu finden. Einen Low Dropout Regler zu nehmen, zb den LM3940, umschifft mögliche Probleme und ich glaube es ist besser sich auf leicht vermeidbare Probleme nicht einzulassen.

Viele Grüße Uwe

Hi uwe,
Vielen dank für die super erklärung. Denke damit ist das topic hier geklärt.
Auch wenn das offtopic ist möchte ich doch noch mal gerne auf die parallele nutzung eines tlc5490 und dem enc shield zurückkommen. Dein tipp war es hier mit einem and gatter zu arbeiten, was ich gerne noch mal für laien erläutert hätte.
Schon mal danke
Gruss
Thorsten

Hallo currymuetze
Ich zögere noch eine Antwort zu geben, weil mir noch nicht alle Lösungen klar sind.
Alles hängt von der Bibliothek zur Ansteuerung des TLC5940 ab. Die TLCmux-Bibliothek die ich für ein Projekt benutze (6x5-RGB-LED-Martix) definiert die Pins für die serielle Interface einfach und man kann diese einfach änderm. Mini Monome

Eine andere Bibliothek (muß aber noch suchen, um welche Bibiothek es eignetlich handelt, da ich sie vor einiger Zeit heruntergeladen hatte) Gibt als Interface-Möglichkeiten zum TLC die SPI oder eine Ansteuerung über 2 PINS mit SW-protokoll (TLC_BITBANG)
SPI ist schneller;

Daraus ergeben sich 2 Lösungen:
Ansteuerung des TLC über andere Pins, nicht die SPI-Schnittstelle.
http://blog.derouineau.fr/2011/07/tlc5940-library-ethernet-shield-arduino-mega/

Ansteuerung über die SPI schnittstelle mit emulierten CS.
Die PINS des Arduino die mit SCLK und SIN des TLC verbunden werden sollen jeweils an einen Eingang von 2 AND Gatter geben und den anderen Eingang der 2 Gatter auf den Arduino Pin der als CS Ausgang fungiert schalten. Die Ausgänge der 2 Gatter gehen auf SCLK bzw SIN. Bei CS = High werden SCLK und SIN an den TLC übertragen, bei Low sind beide Ausgänge der Gatter Low.

Beschreibung der TLC-Library:
http://students.washington.edu/acleone/codes/tlc5940arduino/html_r014/tlc__config_8h.html

Hoffe ich bin verständlich.
Viele Grüße Uwe

uwefed:
SPI ist schneller;

Was heißt schneller? Ich nutze den TLC ja, um damit meine KSQ für meine HP LEDs mit 12Bit zu steuern. Das funktioniert ja auch.
In der Regel wird da nicht im Bereich "ms" gedimmt sondern eher im Sek-Bereich. Auch manuelle Dimmung ist möglich, wenn dann allerdings die Reaktion des TLCs beim Drehen des Encoders/Poti minimal verzögert ist, ist das auch kein Problem.
Aus der Perspektive würde ich sagen, ist die Geschwindigkeit nicht relevant - je nachdem allerdings worauf du dich da genau beziehst :wink:

Ansteuerung des TLC über andere Pins, nicht die SPI-Schnittstelle.
http://blog.derouineau.fr/2011/07/tlc5940-library-ethernet-shield-arduino-mega/

Ist ja genau das was ich suche.
Welche PINs die vom TLC genutzt werden, müssen dann neu belegt werden? Alle?

TLC PINs:
Mega pin 51 (MOSI) -> SIN (Tlc pin 26)
Mega pin 52 (SCK) -> SCLK (Tlc pin 25)
Mega pin 11 (OC1A) -> XLAT (Tlc pin 24)
Mega pin 12 (OC1B) -> BLANK (Tlc pin 23)
Mega pin 9 (OC2B) -> GSCLK (Tlc pin 18)

ENC PINs:
INT Digital 2
SO Digital 12
SCK Digital 13
RESET RESET
GND GND
SI Digital 11
CS Digital 10
VCC 3,3V

Gruß

Hi,
habe mich jetzt für den LM1117 Low Dropout Voltage Regulator 3.3V entschieden.

Bin grad unsicher, welche Kondensatoren hierfür benötigt werden:
Laut Datenblatt http://www.national.com/ds/LM/LM1117.pdf brauche ich 10uF Tantalums.
Ich habe diese Kondensatoren bei mir rumliegen: Elko Tantal Perlen 22 µF 6V Tantalum Capacitors
Kann ich die alternativ zu den 10uF nehmen?
Laut SPecs müssen die an Vin&Gnd sowie Vour&Gnd.

Gruß und Danke