BC547 und ATMega 328- Kein Kollektorstrom

Gast #4562765
Lesenswert?

Hallo zusammen,

ich verstehe gerade meine eigene Schaltung nicht mehr und benötige mal 
einen Denkanstoß von außen.
Ich möchte eine Spannung oberhalb der Versorgungsspannung des ATMega 328 
dazu nutzen einen Eingang von Low auf High zu setzen.

Versorgungsspannung des 328: 3,7 - 4,2 V
Zu erkennende Spannung: 4,7-6V

Um zu verhindern das am Port eine Spannung anliegt, die höher ist als 
die Versorgungsspannung habe ich einen BC547 verwendet.

Sein Kollektor hängt an der Versorgungsspannung des 328, der Emitter am 
Port des 328. Der Port wird über einen 10kOhm R auf Masse gezogen.

Die Basis des 547 hängt über einen 1k Ohm R an der "zu erkennenden 
Spannung".

Es funktioniert soweit alles. Jedoch auch wenn ich den Kollektor 
abklemme. Es scheint als das der Basis-Emitter Strom bereits ausreicht 
um den Port am ATMega328 auf High zu schalten.

Ist das ein Problem? Oder kann ich das so lassen?
Gemessen habe ich:
UBE=0,65V UCE=5,8mV IC=0,12mA IBE=0,2mA

Danke!
#4562768
Lesenswert?

Michael schrieb:
> Es scheint als das der Basis-Emitter Strom bereits ausreicht
> um den Port am ATMega328 auf High zu schalten.

Klar.
Nur könntest du den Transistor dann auch noch weglassen, und einen 1K 
Widerstand zwischen dein Signal und den Port setzen.

Besser wäre, einen 10K Pullup vom Kollektor nach VCC, und deinen Port an 
den Kollektor anzuschließen.
Emitter an GND, und Basis wie gehabt mit Basiswiderstand (kann ruhig 
auch 10K sein) an dein Signal.
Das ganze invertiert dein Signal zwar, schützt aber auch wesentlich 
besser.
#4562769
Lesenswert?

Michael schrieb:
> Die Basis des 547 hängt über einen 1k Ohm R an der "zu erkennenden
> Spannung".

Dann liegen an dem Pin aber trotzdem deine 6V-U_BE, also etwa 5,3V an.

Michael schrieb:
> Es funktioniert soweit alles.

Wahrscheinlich begrenzen die Schutzdioden am Eingang des Pins. Da der 
10kΩ den Strom begrenzt funktioniert das.
Besser wäre es jedoch, den Emitter auf GND zu legen, deine Fremdspannung 
über einen 10kΩ Widerstand auf die Basis zu legen und den Kollektor an 
den Pin des Atmega. Dann entweder den Pullup einschalten oder einen 
externen Pullup verwenden.
Das Signal ist dann allerdings invertiert.
Gast #4562782
Lesenswert?

Danke! Klingt gut.. Invertiertes Signal allerdings nicht so sehr, das 
ist recht aufwändig umzuschreiben da es nur so mit Sleepmode und 
Interrupt sicher klappt. Ich habe aber auch noch ein paar 557 hier 
rumliegen- das hilft nicht, oder?
Gast #4562811
Lesenswert?

Krass, geht! Ich danke euch!

Habe jetzt zwei 547 hintereinander.. klappt.
Schottky Dioden hab ich leider nicht hier. Die zu messende Spannung kann 
eigentlich nur nicht da sein, oder +4,7-6V Sein. Es ist ein USB 
Anschluss, den ich überwache. Stecker drin-Stecker raus und noch ein 
wenig Sicherheit bei abweichenden USB Ladern.

Grüße
Gast #4562819
Lesenswert?

Weil die tiefere Spannung dann nicht mehr ausreicht um einen Interrupt 
auszulösen und weil ich die dann auch nicht sicher auswerten kann. Die 
Schaltung ist Batteriegespeist und daher etwas komplizierter was das 
Einlesen von Spannungen angeht. Es geht bestimmt..nur mir sind zwei 
bc547 lieber als noch zwei Seiten Code (und vor allem 2 Wochen Code 
schreiben-wenn ich das schreiben muss) :-)
Gast #4563980
Lesenswert?

Ruhestrom..ja das war nicht optimal. Ich habe es nun mit einem BC547 
gebaut, wie oben beschrieben, Controller und Pullup am Kollektor. Das 
Signal ist zwar invertiert, der 328 schafft den Interrupt aber auch aus 
dem Sleepmode mit fallender Flanke. Da war ich mir nicht ganz sicher, da 
ich nicht die beiden IR Ports nutze sondern das über PinChangeInterrupt 
mache. Glücklicherweise läuft der Code mit nur minimalen Veränderungen 
wieder:-)
Und ich habe mir auch alles in meine kleines Entwicklerbüchlein 
geschrieben was hier an Tipps gekommen ist- echt gut! Danke
#4563996
Lesenswert?

Michael schrieb:
> Weil die tiefere Spannung dann nicht mehr ausreicht um einen Interrupt
> auszulösen und weil ich die dann auch nicht sicher auswerten kann. Die
> Schaltung ist Batteriegespeist und daher etwas komplizierter was das
> Einlesen von Spannungen angeht. Es geht bestimmt..nur mir sind zwei
> bc547 lieber als noch zwei Seiten Code (und vor allem 2 Wochen Code
> schreiben-wenn ich das schreiben muss) :-)

Schon mal drüber nachgedacht einen ADC-Eingang zu benutzen? Das braucht 
auch keine zwei Seiten Code ;)
#4564494
Lesenswert?

A. K. schrieb:
> Gleiches Problem wie bei der Diode. Das Signal hat entweder Spannung
> oder ist offen. Es kann also keinen Strom aufnehmen, nur liefern.

Verdammt, das ist mir entgangen ...

Also Zusammenfassung:
- Eingang ist offen oder hat Spannung, zieht aber nicht runter.
- Eingangsspannung geht über die Rails.
- Keine Phasendrehung des Signals. (Wegen IRQ)
- Zu erkennende Spannung: 4,7-6V
- Darf im Ruhezustand keinen Strom verbrauchen.
- Darf nur aus NPN + PNP + Glue bestehen.
1
+3,7-4,2V o-+--,
2
            |  |
3
            R  |
4
            |  E
5
            +-B  BC557
6
USB o--,    |  C
7
       |    R  |
8
       R    |  +----> µC
9
       |    C  |
10
       +---B   | BC547
11
       |    E  |
12
       R    |  R
13
       |    A  |
14
       |    K  |
15
       |    |  | 2x 1N4148
16
       |    A  |
17
       |    K  |
18
       |    |  |
19
       '----+--'
20
          GND

Alle R = 10kΩ



M. K. schrieb:
> Schon mal drüber nachgedacht einen ADC-Eingang zu benutzen? Das braucht
> auch keine zwei Seiten Code ;)

Genau, und wenn der ADC einen bestimmten Wert erreicht, wird der 
Prozessor aufgeweckt ...


Gruß

Jobst
Gast #4564535
Lesenswert?

Wäre in dem Fall gut gewesen, wenn die Controller-Vcc nicht 
darunterfallen könnte. Müßte aber auch einfach mit einem Spannungsteiler 
z.B. 5k:100k zum Portpin gehen? Die internen Portschutzdioden schaffen 
jeweils ca. 1mA.
Gast #4564589
Lesenswert?

Die D1 liegt dann parallel zur internen Portschutzdiode. Die schafft das 
1.) eigentlich alleine und 2.) gibts da bei offenem Anschluß keinen 
definierten Pegel und 3.) würde mit der Flußspannung von D1 alleine evt. 
das Vcc+0.5V Pin-Limit überschritten.

Schlicht:

USB--+
     |
     5k
     |
     +----->Port
     |
     100k
     |
    ---
    GND

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren