Forum: Mikrocontroller und Digitale Elektronik Funktioniert meine Schaltung? - µC mit Fotowiderstand


von Max M. (maxmicr)


Angehängte Dateien:

Lesenswert?

Guten Abend,

zum Spaß möchte ich eine kleine Platine aufbauen, deren Hauptbestandteil 
ist ein µC (der EFM8BB10F2G-A-QFN20), der über den ADC die Spannung 
eines Fotowiderstandes einliest und je nach Helligkeit LEDs leuchten 
lässt. Als Widerstand soll ein GL5516 zum Einsatz kommen. Meinen 
Schaltplan seht ihr im Anhang.

Informationen zur Verschaltung des Fotowiderstandes habe ich mir unter 
anderem von hier geholt: 
Beitrag "Re: Vorwiderstand LDR berechnen"

Welche Fehler fallen euch auf bzw. würde das so funktionieren?

Bin für jeden Tipp dankbar.

Grüße

: Bearbeitet durch User
von Jobst M. (jobstens-de)


Lesenswert?

Max M. schrieb:
> Welche Fehler fallen euch auf

Der Klassiker: Die Blocker.


Und die normalen 8051er können an ihren Ports nur unwesentlich Strom 
treiben - also LEDs nicht direkt. Kann dieser das?


Max M. schrieb:
> zum Spaß möchte ich eine kleine Platine aufbauen

Du kannst aber QFN löten?



Gruß

Jobst

von Carl D. (jcw2)


Lesenswert?

Jobst M. schrieb:
> Und die normalen 8051er können an ihren Ports nur unwesentlich Strom
> treiben - also LEDs nicht direkt. Kann dieser das?

DB sagt:
"5 mA source, 12.5 mA sink allows direct drive of LEDs"

Also geht, wenn die LED mit 5mA zufrieden sind.

von Axel R. (Gast)


Lesenswert?

Max M. schrieb:
> Informationen zur Verschaltung des Fotowiderstandes habe ich mir unter
> anderem von hier geholt:
> Beitrag "Re: Vorwiderstand LDR berechnen"

Haha, welche Informationen?
Diese haben Dich inspiriert, 3KOhm zu verwenden?
OK - wenns denn geht :)

LEDs nach VCC, nicht gegen GND. Dann kannst Du etwas mehr Strom 
"ziehen", wie man so schön sagt. Jetzt musst Du Strom "liefern"...

Wenn Du noch ein paar 100nF Kondensatoren auf der rolle hast, bau sie 
mit ein. Parallel zur Betriebsspannung gegen Plus und Minus.

StromTuner

von Max M. (maxmicr)


Angehängte Dateien:

Lesenswert?

Jobst M. schrieb:
> Du kannst aber QFN löten?

Ich habs noch nie gemacht, hab aber eine von den günstigen China 
Heißluftlötstationen da. Ebenso sind Lötpaste sowie Flussmittel und eine 
dünne Lötspitze vorhanden.

Carl D. schrieb:
> "5 mA source, 12.5 mA sink allows direct drive of LEDs"

In den absolut maximum ratings steht was von 100mA:

"Current Sourced or Sunk by Any I/O Pin or RSTb: 100mA"

Oder ist damit was anderes gemeint? Ich hab bis jetzt nur LEDs mit 20mA 
gefunden, leuchten die dann gar nicht oder schwächer? Bräuchte ich, 
falls das nicht reicht, für jede LED einen Transistor der diese mit der 
Spannungsquelle verbindet?

Axel R. schrieb:
> Haha, welche Informationen?
> Diese haben Dich inspiriert, 3KOhm zu verwenden?
> OK - wenns denn geht :)

In dem Kommentar stand, man sollte den Wert des zweiten Widerstandes mit 
dem Widerstand des Fotowiderstandes bei üblicher Nutzung besetzen. Hab 
nachgelesen, im Haus sind das so 47lux und da hat der Fotowiderstand 
sowas um 3kOhm (siehe Anhang).

Datenblatt: 
http://akizukidenshi.com/download/ds/senba/GL55%20Series%20Photoresistor.pdf

Da sind allerdings noch 4 andere Diagramme. Welchen Wert würdest du denn 
empfehlen?

Axel R. schrieb:
> LEDs nach VCC, nicht gegen GND. Dann kannst Du etwas mehr Strom
> "ziehen", wie man so schön sagt. Jetzt musst Du Strom "liefern"...

Also so? (siehe Anhang)

Axel R. schrieb:
> Wenn Du noch ein paar 100nF Kondensatoren auf der rolle hast, bau sie
> mit ein. Parallel zur Betriebsspannung gegen Plus und Minus.

Ist damit das gleiche gemeint?

Jobst M. schrieb:
> Der Klassiker: Die Blocker.

So (siehe Anhang)?

: Bearbeitet durch User
von Bussard (Gast)


Lesenswert?

Wenn die LEDs leuchten sollen, dreh sie um.
Gemeint war jedoch, sie gegen die Betriebsspannung und nicht gegen Masse 
zu schalten (dann passt die Richtung).


Gruß

von Thomas F. (igel)


Angehängte Dateien:

Lesenswert?

Max M. schrieb:
> Axel R. schrieb:
>> LEDs nach VCC, nicht gegen GND. Dann kannst Du etwas mehr Strom
>> "ziehen", wie man so schön sagt. Jetzt musst Du Strom "liefern"...
>
> Also so? (siehe Anhang)

Nö, so.

von Max M. (maxmicr)


Angehängte Dateien:

Lesenswert?

Bussard schrieb:
> Gemeint war jedoch, sie gegen die Betriebsspannung und nicht gegen Masse
> zu schalten (dann passt die Richtung).

Achso, so (siehe Anhang)?

Als Debug Gerät kommt wohl nur der SILICON LABS DEBUGADPTR1-USB ADAPTER 
in Frage. Im Datenblatt steht:

4. Minimum C2 Programming Connections
The minimum required programming connections for the C2 interface are 
C2D (pin 4), C2CK (pin 7), and ground (pins 2, 3, or 9).

Demnach benötige ich nur 3 Pins zum Programmieren, stimmt die 
Verschaltung dann so (siehe Anhang)?

Ich nehme mal an, dass der Controller Strom benötigt, um programmiert zu 
werden. Der DEBUGADPTR1 hat einen 5V Pin, da würde ich allerdings einen 
Spannungswandler auf 3.3V benötigen. Sehe ich das richtig?

Datenblatt finde ich leider keine Informationen dazu, welche Pins nun TX 
und RX für den UART sind. Ich bräuchte die zwar im Prinzip nicht 
dringend, aber um Text auf der Konsole auszugeben wärs schon ganz nett, 
so im Notfall.

Edit:

Thomas F. schrieb:
> Nö, so.

Hm, das passt mit der Aussage von Bussard nicht zusammen, oder?

: Bearbeitet durch User
von Stephan H. (stephan-)


Lesenswert?

Deine LED sind immer noch falsch rum.

von Max M. (maxmicr)


Angehängte Dateien:

Lesenswert?

Stephan H. schrieb:
> Deine LED sind immer noch falsch rum.

So nun?
Wie soll denn nun das Schalten funktionieren? Ziehe ich den Pin vom 
Controller auf GND wenn die LED leuchten soll?

von Jörg (Gast)


Lesenswert?

Max M. schrieb:
> Ziehe ich den Pin vom
> Controller auf GND wenn die LED leuchten soll?

Genau!

von Georg G. (df2au)


Lesenswert?

Max M. schrieb:
> Der DEBUGADPTR1 hat einen 5V Pin, da würde ich allerdings einen
> Spannungswandler auf 3.3V benötigen.

Schau in das Datenblatt, ob der Controller mit 3.3V programmiert werden 
kann. Betrieb und Programmierung sind zwei Paar Schuhe.

von Max M. (maxmicr)


Angehängte Dateien:

Lesenswert?

Im Datenblatt des USB Debug Adapter 
(https://www.silabs.com/Support%20Documents/TechnicalDocs/8-bit-USB-Debug-Adapter.pdf) 
steht:

"The UDA is also capable of providing power to the target device or
other circuitry via pin 10 of the connector [..]
The USB Debug Adapter can automatically change the communication voltage 
level based on the level detected
on pin 7 of the connector. As a result, this pin should be pulled high 
with a strong pull-up (~1 kΩ) for noise immunity
purposes and not pulled down to ground."

Den Pull-Up hab ich in meiner Schaltung (siehe Anhang) ja erfüllt (RSTb 
entspricht C2CK)? D.h. der Debug Adapter erkennt, welche Spannung für 
den Controller zulässig ist?

von Max M. (maxmicr)


Angehängte Dateien:

Lesenswert?

Zur Sicherheit hab ich noch einen Spannungswandler (AMS1117) 
hinzugefügt. Gibt es noch Verbesserungsvorschläge, wenn ja, bitte sagen!

Laut dem Reference Manual ist UART0-TX Pin P0.4 und UART0-RX Pin P0.5.

von Jobst M. (jobstens-de)


Lesenswert?

Wäre es evtl. noch angebracht einen RS232 Baustein ( MAX3232 ) mit auf 
das Board zu setzen!?
Ansonsten würde ich alle freien Pins auf Lötpads oder eine Stiftleiste 
führen.


Gruß

Jobst

: Bearbeitet durch User
von Max M. (maxmicr)


Lesenswert?

Jobst M. schrieb:
> Wäre es evtl. noch angebracht einen RS232 Baustein ( MAX3232 ) mit auf
> das Board zu setzen!?

Soweit ich das richtig gelesen habe, ist dieser IC für den UART? Falls 
ja: Der UART wird bei dieser Schaltung nicht wirklich genutzt werden und 
wäre nur dafür da um Fehlermeldung oder sowas auszugeben. Dafür würde 
ich dann einen UART / USB Konverter benutzen, die hab ich hier schon 
rumliegen.
Außerdem wäre ein RS232 IC nur sinnvoll, wenn am PC noch eine RS232 
Schnittstelle existiert, oder? Ist bei meinem PC allerdings nicht mehr 
der Fall.

Jobst M. schrieb:
> Ansonsten würde ich alle freien Pins auf Lötpads oder eine Stiftleiste
> führen.

Normalerweise hätte ich das auch gemacht, aber erstens soll das Board 
relativ klein werden (und eine Reihe von 2.54mm Pins nimmt doch schon 
einiges an Platz weg, wenn man die Größe der restlichen SMD Bauteile 
bedenkt) und zweitens werde ich voraussichtlich die anderen Pins nicht 
benutzen.

Das ist erstmal zum Einstieg gedacht, die Schaltung soll gar nicht viel 
können :)

Ich hab im Reference Manual gesucht, aber nichts dazu gefunden, mit 
welcher Spannung programmiert werden soll. Ich nehme daher an, dass der 
Controller ganz normal bei 3.3V an VDD programmiert wird, oder gibt es 
Informationen, die etwas anderes vermuten lassen?

Die Controller, mit denen ich bis jetzt gearbeitet haben, wurden alle 
mit ihrer Betriebsspannung programmiert (ATTiny85, STM32F103, ESP8266).

: Bearbeitet durch User
von Jobst M. (jobstens-de)


Lesenswert?

Max M. schrieb:
> Dafür würde ich dann einen UART / USB Konverter benutzen

Das ist wirklich UART, nicht RS232!?


Na wenigstens einen Massepin würde ich den UART-Pins noch spendieren.



Gruß

Jobst

von Max M. (maxmicr)


Lesenswert?

Jobst M. schrieb:
> Das ist wirklich UART, nicht RS232!?

Ja, damit programmiere ich unter anderem den ESP8266. Der IC meldet sich 
am PC als COM-Schnittstelle die man mit einem seriellen Terminal (z.B. 
dem von Atmel Studio) aufrufen kann. Sowas hier ist das:

http://www.ebay.de/itm/USB-to-TTL-Konverter-Arduino-RS232-3-3V-5V-PL2303-UART-Adapter-Seriell-Converter-/301882658387

Jobst M. schrieb:
> Na wenigstens einen Massepin würde ich den UART-Pins noch spendieren.

Wie genau wird das dann verschaltet? Immerhin besteht UART doch nur aus 
RX und TX?

von Jobst M. (jobstens-de)


Lesenswert?

Max M. schrieb:
> Wie genau wird das dann verschaltet? Immerhin besteht UART doch nur aus
> RX und TX?

8-[

Das ist jetzt nicht Dein Ernst - oder?
Sowohl Rx, als auch Tx können H oder L annehmen. Wie würdest Du das mit 
einem Messgerät messen?
Wie soll der Empfänger ohne Bezug feststellen, ob der Sender H oder L 
schickt?
Masse muss verbunden werden.


Gruß

Jobst

von Max M. (maxmicr)


Lesenswert?

Jobst M. schrieb:
> Masse muss verbunden werden.

Das hab ich verstanden. Nen GND Pin hab ich im Debug Interface schon. 
Den verbinde ich mit dem GND Pin vom Konverter, genauso wie 5V mit 5V, 
RX mit TX und TX mit RX, oder?

Jobst M. schrieb:
> Das ist jetzt nicht Dein Ernst - oder?

Ups, war das ein Fettnäpfchen? :(

: Bearbeitet durch User
von Thomas F. (igel)


Lesenswert?

Max M. schrieb:
> verbinde ich mit dem GND Pin vom Konverter ... RX mit TX und TX mit RX, oder?

Falsch.
Steht aber im Tutorial:

https://www.mikrocontroller.net/articles/AVR-Tutorial:_UART

von Max M. (maxmicr)


Lesenswert?

Thomas F. schrieb:
> Falsch.
> Steht aber im Tutorial:

Bei meiner Frage ging es nicht um den MAX232, sondern um den USB / UART 
Konverter. Bisher hab ich das so verbunden wie geschrieben und es hat 
funktioniert.

Hängen wir uns mal nicht am UART auf, der ist für mich nicht wichtig. 
Fallen euch noch Fehler bei der Schaltung auf?

: Bearbeitet durch User
von Jobst M. (jobstens-de)


Lesenswert?

Max M. schrieb:
> Nen GND Pin hab ich im Debug Interface schon.

Es ist einfacher immer dort GND zu haben, wo man es braucht. Im 
Zweifelsfall einfach überall. Das erspart viel Umsteckarbeit.


Max M. schrieb:
> Ups, war das ein Fettnäpfchen? :(

Du badest gerade darin ...



Gruß

Jobst

von Max M. (maxmicr)


Lesenswert?

Jobst M. schrieb:
> Es ist einfacher immer dort GND zu haben, wo man es braucht. Im
> Zweifelsfall einfach überall. Das erspart viel Umsteckarbeit.

Am Input hab ich auch noch GND, da der USB / UART Konverter auch einen 
5V Ausgang hat, würde es Sinn machen, diese beiden Pins mit dem Input 
des Boards zu verbinden?

Jobst M. schrieb:
> Du badest gerade darin ...

Okay, was mache ich denn falsch? Ich habe bisher immer so verbunden:

Board | USB/UART Konverter
5V (3.3V) | 5V (3.3V)
GND | GND
RX | TX
TX | RX

Und es hat funktioniert (z.B. am STM8, ESP8266).

von Thomas F. (igel)


Lesenswert?

Max M. schrieb:
> Bei meiner Frage ging es nicht um den MAX232, sondern um den USB / UART
> Konverter.

Dann stimmt es so wie du es jetzt hast.

GND ist jetzt klar: immer anschliessen.

Wenn du deine Schaltung aus den 5V des USB versorgen willst dann 
schließe 5V an. Sonst nicht.

von Max M. (maxmicr)


Lesenswert?

Thomas F. schrieb:
> GND ist jetzt klar: immer anschliessen.

Jap, danke!

Thomas F. schrieb:
> Wenn du deine Schaltung aus den 5V des USB versorgen willst dann
> schließe 5V an. Sonst nicht.

Da du das gerade schreibst: Wenn ich die Schaltung mal mit 3.7V aus 
einem Lithium Akku betreiben will benötige ich einen Spannungswandler 
mit niedrigerer Dropout Voltage, oder?

Der AMS1117 hat leider eine sehr hohe von 1V, d.h. die Eingangsspannung 
müsste minimal 4.3V betragen, damit er korrekt arbeitet?

Ich hab hier auch noch einen HT7333 rumliegen, der hat einen Vdrop von 
90mV, liefert aber maximal 250mA (wobei des für 5 LEDs reichen müsste), 
wäre dieser besser geeignet?

von Tom E. (Gast)


Lesenswert?

Max M. schrieb:
> So nun?

Was sagt das Datenblatt der LEDs über die Vf bei dem von dir gewählten 
Strom? Falls du nicht ausgerechnet blaue oder weiße LEDs verwenden 
möchtest, solltest du noch mal das ohmsche Gesetz befragen.

von Max M. (maxmicr)


Lesenswert?

Tom E. schrieb:
> Was sagt das Datenblatt der LEDs über die Vf bei dem von dir gewählten
> Strom? Falls du nicht ausgerechnet blaue oder weiße LEDs verwenden
> möchtest, solltest du noch mal das ohmsche Gesetz befragen.

Ich hatte vor, die Kalt-weißen von hier zu verwenden:

http://www.ebay.de/itm/Superhelle-LEDs-verschiedene-Grosen-Farben-SMD-LED-konvent-LED-High-Power-/231149430148

Falls Vf die Betriebsspannung bedeutet, laufen die mit ~2.7V. Das 
müssten dann 30Ohm sein, da die Betriebsspannung in einem Bereich 
angegeben war, hab ich 25 Ohm genommen.

: Bearbeitet durch User
von Thomas F. (igel)


Lesenswert?

Max M. schrieb:
> Ich hatte vor, die Kalt-weißen von hier zu verwenden:
>
> Ebay-Artikel Nr. 231149430148
>
> Falls Vf die Betriebsspannung bedeutet, laufen die mit ~2.7V. Das
> müssten dann 30Ohm sein, da die Betriebsspannung in einem Bereich
> angegeben war, hab ich 25 Ohm genommen.

Auf dieser Ebay-Seite gibts mehrere.

25 Ohm ist falsch da bei 2,7V Vorwärtsspannung der Strom dann 24mA 
beträgt und nicht 20mA. Man nimmt deshalb immmer den nächsthöheren 
Widerstand, nicht den niedrigeren.

Aber wie ich oben gelesen habe kann dein Controller gar keine 20mA 
schalten:
Beitrag "Re: Funktioniert meine Schaltung? - µC mit Fotowiderstand"

Also den Widerstand so weit erhöhen bis der Strom durch den Controller 
auch passt.

: Bearbeitet durch User
von Max M. (maxmicr)


Lesenswert?

Thomas F. schrieb:
> Aber wie ich oben gelesen habe kann dein Controller gar keine 20mA
> schalten:

Ich hatte dazu auch bereits eine Frage gestellt, ob das wirklich die 
maximale Ausgangsstromstärke ist? In den "Absolute Maximum Ratings" 
steht:

Current Sourced or Sunk by Any I/O Pin or RSTb: 100mA

von Jobst M. (jobstens-de)


Lesenswert?

Max M. schrieb:
> Okay, was mache ich denn falsch?

Nö, nö, jetzt ist's ja gut ;-)


Gruß

Jobst

von Possetitjel (Gast)


Lesenswert?

Max M. schrieb:

> Ich hatte dazu auch bereits eine Frage gestellt, ob das
> wirklich die maximale Ausgangsstromstärke ist?

Das weiss ich nicht, aber...

> In den "Absolute Maximum Ratings" steht:
>
> Current Sourced or Sunk by Any I/O Pin or RSTb: 100mA

...die "Maximum Ratings" sind GRENZWERTE , von denen
lediglich garantiert wird, dass der Chip überlebt. Eine
wie auch immer geartete korrekte Funktion ist bei deren
Ausnutzung nicht garantiert. (In einigen Datenblättern
steht das sogar ausdrücklich so drin.)

Korrkte Funktion wird bei Einhaltung der Kennwerte
zugesichert.

von Max M. (maxmicr)


Angehängte Dateien:

Lesenswert?

Possetitjel schrieb:
> Korrkte Funktion wird bei Einhaltung der Kennwerte
> zugesichert.

Okay, danke. Ich hab nun die Widerstände entsprechend angepasst und den 
AMS1117 durch den HT7333 ersetzt, da dieser eine geringere Dropout 
Voltage hat, somit kann ich auch Lithium Akkus mit 3.7V einsetzen.

Leuchten denn LEDs, die für 20mA gemacht sind, bei 5mA auch?

von Carsten (Gast)


Lesenswert?

Keine Ahnung, aber ein gecracktes Altium Designer nutzen...

von Georg G. (df2au)


Lesenswert?

Max M. schrieb:
> Leuchten denn LEDs, die für 20mA gemacht sind, bei 5mA auch?

Ja, sie sind nur etwas dunkler. Lass dich überraschen.

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
Noch kein Account? Hier anmelden.