Forum: Mikrocontroller und Digitale Elektronik RFM12 einschalten über AVR


von P. F. (pfuhsy)


Lesenswert?

Hallo zusammen,

ich hab eine Platine mit Atmega88 und RFM12 über ein Netzteil (3A) mit 
3,3V versorgt, die ein Protokoll sendet. Das funtkioniert super. Jetzt 
wollte ich so schlau sein und den RFM12 über den Atmega88 per Port ein- 
un ausschalten. Da bekomme ich Probleme. Ich schalte den RFM12 per µC 
ein, messe an Versorgungspin VDD des RFM12 mit dem Ossi 3,3V. Kaum 
sendet er ein Protkoll bricht die Versorgungsspannung auf 2,6V ein und 
das Modul hängt sich auf. Jetzt habe ich sogar ein 100µF Elko direkt an 
das Moduls gehangen, doch auch da bricht die Spannung nach dem Senden 
ein. Sobald ich den RFM12 wieder direkt an die Platinenversorgung 
anschliesse (nicht über µC), bleibt alles stabil. Laut Datenblatt kann 
der Controller Strom bis zu 40mA pro Port liefern. Der RFM12 soll laut 
Datenblatt max. 25mA verbrauchen.

Hat jemand eine Idee voran das liegen könnte ?

Gruss
Peter

von holger (Gast)


Lesenswert?

>Hat jemand eine Idee voran das liegen könnte ?

Am Datenblatt? Laut Disgramm kommen bei Vcc = 3.3V
bei 20mA nur noch 2.2V raus.

von Wolfgang (Gast)


Lesenswert?

Peter F. schrieb:
> Der RFM12 soll laut Datenblatt max. 25mA verbrauchen.

Dann ist das wohl der RFM12B

> Jetzt habe ich sogar ein 100µF Elko direkt an das Moduls gehangen, doch
> auch da bricht die Spannung nach dem Senden ein.

Und was sagt der ATmega zu dem Einschaltstrom bei 100µF Last?
Das gibt einen satten Einschaltstrom. Vielleicht ist der Portpin schon 
matschig.

Wenn sich das Modul aufhängt, spricht das für einen kurzen 
Versorgungsspannungseinbruch. Probier mal 100nF am Modul, evtl. auch 
zwei Portpins parallel - aber Vorsicht.

von P. F. (pfuhsy)


Lesenswert?

holger schrieb:
>>Hat jemand eine Idee voran das liegen könnte ?
>
> Am Datenblatt? Laut Disgramm kommen bei Vcc = 3.3V
> bei 20mA nur noch 2.2V raus.

Echt ? Wo denn ? Hab ich da was übersehen ?

von Mike A. (Gast)


Lesenswert?

Peter F. schrieb:
> Echt ? Wo denn ? Hab ich da was übersehen ?

29.2 DC Characteristics Table 29-1.

VOH Output High Voltage

IOH = -20 mA, VCC = 5V  min 4.2V
IOH = -10 mA, VCC = 3V  min 2.3V

von Fahnun (Gast)


Lesenswert?

> Echt ? Wo denn ? Hab ich da was übersehen ?

Deine Mama hat dir doch gesagt, dass du nicht plenken sollst.

---

Nimm zwei oder besser drei Pins zum Ein-/Ausschalten des RFM12 oder 
gleich einen geeigneten Transistor.

von Mike A. (Gast)


Lesenswert?

... und
Figure 30-117 (S.395).
ATmega88A: I/O Pin Output Voltage vs. Source Current (Vcc = 3 V)

von P. F. (pfuhsy)


Lesenswert?

Mist, das hab ich übersehen. Danke.

Fahnun schrieb:
> Nimm zwei oder besser drei Pins zum Ein-/Ausschalten des RFM12

Ist das so üblich, hab ich noch nie gemacht ?
Mach ich damit nicht Miniaturkurzschüsse beim Umschalten ? Wenn der eine 
Port auf high geschalten wird und der andere in der Codezeile noch nicht 
soweit ist, hab ich doch für sehr kurze Zeit einen Kurzschluss.

von P. F. (pfuhsy)


Lesenswert?

Noch was. Müsste der Elko nicht den Spannungseinbruch entgegen wirken 
???

von Fox Mulder (Gast)


Lesenswert?

Peter F. schrieb:
> Jetzt
> wollte ich so schlau sein und den RFM12 über den Atmega88 per Port ein-
> un ausschalten.

Wozu eigentlich den Quatsch machen, den RFM kann man in den Sleep-Mode 
schicken.

von P. F. (pfuhsy)


Lesenswert?

Fox Mulder schrieb:
> Wozu eigentlich den Quatsch machen, den RFM kann man in den Sleep-Mode
> schicken.

Ich weiß. Damit wollte ich eigentlich das Modul ein und ausschalten 
falls er irgendwo hängt. Mit den SW-Reset hat das nicht so ganz 
geklappt.

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Peter F. schrieb:
> Noch was. Müsste der Elko nicht den Spannungseinbruch entgegen
> wirken
> ???

Ja schon, aber dazu muss er erstmal aufgeladen sein. Ein leerer Elko 
bildet im Einschaltmoment quasi einen Kurzschluss ...

von P. F. (pfuhsy)


Lesenswert?

Frank E. schrieb:
> Ja schon, aber dazu muss er erstmal aufgeladen sein. Ein leerer Elko
> bildet im Einschaltmoment quasi einen Kurzschluss ...

Das ist schon klar. Aber ich Messe doch 3,3V bevor er sendet. Also gehe 
ich davon aus das das Teil geladen ist. Vielleicht sollte ich einfach 
etwas warten und eine Sekunde später senden lassen?

von P. F. (pfuhsy)


Lesenswert?

Kann es sein dass die 100uF gar nicht reichen ? Wenn ich F = C/V rechne, 
brauche ich min. 378uF (0,025A x 0,05 s / 3,3 V).

von Carsten R. (kaffeetante)


Lesenswert?

Peter F. schrieb:
> Fox Mulder schrieb:
>> Wozu eigentlich den Quatsch machen, den RFM kann man in den Sleep-Mode
>> schicken.
>
> Ich weiß. Damit wollte ich eigentlich das Modul ein und ausschalten
> falls er irgendwo hängt. Mit den SW-Reset hat das nicht so ganz
> geklappt.

Dafür hat das Ding einen Reset-Anschluss in Hardware!

Ich musste den Eingangstext zweimal lesen bis ich bemerkt hatte, daß Du 
das Modul nicht per Portpin schalten, sondern versorgen willst. Dafür 
ist die Last einfach zu hoch. Das Modul ist mit allem ausgestattet um 
das was du willst zu machen, ohne derartige Klimmzüge.

Wenn Du auf derartige Turnübungen bestehst, solltest du einen separaten 
Transistor nehmen der den Strom ohne großen Spannungseinbruch liefern 
kann und diesen dann per Portpin schalten.

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.