Forum: Mikrocontroller und Digitale Elektronik Atmega328 Unterschied MOSFET<->Transistor für Last bzgl. decoupling


von Daniel U. (daniel_22)


Lesenswert?

Hallo,

auf meiner Platine habe ich einen Atmega328 im Einsatz. Dieser soll eine 
LED und ein Bluetooth-Modul (HC-05) an- bzw. ausschalten. Die LED hängt 
mit Vorwiderstand direkt an einem digitalen Pin und das BT-Modul wird 
über einen PNP-Transistor geschaltet dessen Basis (mit 
Basis-Vorwiderstand natürlich) auch an einem digitalen Pin des Atmega 
hängt. Der Code lässt die LED blinken und schaltet dann nach kurzer Zeit 
das BT-Modul noch an. Das funktioniert und hat in vorherigen Schaltungen 
auch immer ohne Probleme geklappt.

Jetzt zum Problem: Wenn ich nun den Transistor durch einen P-MOS ersetze 
(mit Pull-up Widerstand am Gate) dann bleibt der µC beim Versuch ihn zu 
schalten hängen bzw. funktioniert nicht mehr richtig. Das gleiche 
passiert wenn ich keins von den beiden eben genannten einbaue und das 
BT-Modul einfach mit einem Kabel mit VCC auf der Platine verbinde. Das 
Gate des P-MOS ist übrigens direkt mit dem Atmega verbunden, ohne 
weitere Kondensatoren oder Widerstände in der Schaltung.

Ich habe jetzt einen 100µF bzw. 22µF (2 Tests) decoupling-Kondensator 
zwischen VCC und GND auf der Platine angebracht. Das macht es zwar 
besser aber immer noch nicht 100% bulletproof.

Kann mir vielleicht jemand einen Tipp geben ob ich in die richtige 
Richtung denke mit dem Decoupling und warum es beim Transistor ohne 
Probleme funktioniert? Könnte die Anfälligkeit des Atmega generell evtl. 
auch mit der Programmierung des Arduino-Bootloaders (Fuses etc.) 
zusammenhängen? In anderen Projekten mit Attinys hat z.B. immer alles 
funktioniert trotz großer Lasten an der Spannungsversorgung.

Gruß
Daniel

von Einer K. (Gast)


Lesenswert?

Natürlich ist der Fehler da, wo du noch nicht hingeschaut hast.
Aus dem gleichen Grund hältst du ihn auch vor uns geheim.

Darum sehe ich mich außerstande dir zu helfen.

von Stefan F. (Gast)


Lesenswert?

Da wäre ein Schaltplan mit konkreten Bauteilangaben hilfreich.

Die MOSFET die ich für solche Zwecke verwende haben 1nF oder mehr Gate 
Kapazität. Wenn du die ohne Widerstand an den Ausgang des µC hängst und 
dann den Logikpegel umschaltet, fließt ein recht hoher Umladestrom. Bei 
dem ATmega und 5V kannst du Pi mal Daumen mit 50mA rechnen.

Dazu kommt die Stromaufnahme. Dieses enthält eine Menge Kondensatoren 
zwischen seinen VCC und GND Anschlüssen, die praktisch im selben Moment 
aufgeladen werden. Das sind sicher einige µF.

Jetzt ist die spannende frage, wie deine Stromversorgung auf so einen 
Lastsprung reagiert. Wahrscheinlich mit einem kurzen Absacken der 
Versorgungsspannung. Da hilft dein zusätzlicher Kondensator leider nur 
wenig.

Was du also brauchst ist quasi ein Sanft-Anlauf. Sorge dafür, dass der 
Versorgungs-Strom des Bluetooth Moduls allmählich ansteigt. Gerade 
schnell genug, dass es sauber startet. Am einfachsten erreichst du das, 
indem du einen Widerstand vor das Gate des MOSFET schaltest. Ich würde 
für den Anfang mal 10kΩ versuchen und das Ergebnis mit einem Oszilloskop 
kontrollieren.

Behalte die Temperatur des MOSFET im Auge, er wird sich beim Umschalten 
aufheizen. Nicht dass er Dir nächsten Sommer um die Ohren fliegt.

von Daniel U. (daniel_22)


Lesenswert?

Danke schonmal!

Um andere Fehlerquellen möglichst auszuschließen habe ich die Schaltung 
zusätzlich auf dem Breadboard aufgebaut mit gleichem Resultat. Die 
verwendeten Bauteile sind ausschließlich:

-Atmega328
-LED mit 100 Ohm Vorwiderstand an Pin 15 (PB1)
-HC-05 (nur VCC über den Transistor und GND angeschlossen)
-PNP-Transistor mit 600 Ohm Gate-Vorwiderstand an Pin 16 (PB2)

Versorgt über einen 5V USB-Adapter.

Hier funktioniert ein Decoupling-Kondensator soweit. Es kann an der 
Positionierung des Kondensators auf der Platine liegen dass es dort 
nicht immer (aber immerhin besser) funktioniert. Deshalb geht meine 
Vermutung dort hin. Ein wirkliches Absacken der Versorgungsspannung ist 
mit dem Oszi kaum zu beobachten, aber die Schwankungen (wenn auch sehr 
kurz) müssen ausreichen um den µC aus dem Tritt zu bringen. Außer die 
Lösung liegt eben ganz wo anders, aber da fällt mir momentan nichts ein.

Den Vorwiderstand am Gate werde ich so mal ausprobieren. Könnte es sein 
dass die elektrischen Eigenschaften des Transistors diesen "sanften" 
Anlauf der Last (bzw. des Laststroms) gewährleisten im Vergleich zum 
MOSFET?

von Stefan F. (Gast)


Lesenswert?

Hast du etwa den 100nF Abblock-Kondensator am ATmega weg gelassen?

> LED mit 100 Ohm

Ist ziemlich wenig, willst jemanden blenden oder kommt die LED aus den 
80er Jahren?

Wenn du bei dem PNP Transistor bleiben willst, brauchst du zusätzlich 
zum Basis-Vorwiderstand auch einen Kondensator zwischen Basis und 
Emitter, der den Sanftanlauf erzeugt.

Frage mich jetzt aber nicht, wie groß der sein muss. Das kann ich nicht 
schätzen und zum Ausrechnen fehlen noch einige Infos.

> Ein wirkliches Absacken der Versorgungsspannung ist
> mit dem Oszi kaum zu beobachten

Wie hast du das Gerät denn eingestellt? Ich würde dazu ein digitales 
Oszilloskop verwenden und auf das Absacken der Versorgungsspannung 
triggern. Sie sackt garantiert ab, die Frage ist nur, wie weit.

Jede weitere Diskussion bitte mit Schaltplan und konkreten Bauteilen und 
Messwerten. Sonst artet das hier zu einer wilden Glaskugel-Raterei aus.

Gute Nacht

von W.S. (Gast)


Lesenswert?

Daniel U. schrieb:
> Jetzt zum Problem: Wenn ich nun den Transistor durch einen P-MOS ersetze
> (mit Pull-up Widerstand am Gate) dann bleibt der µC beim Versuch ihn zu
> schalten hängen bzw. funktioniert nicht mehr richtig.

Ich denke mal, du hast die Gate-Source-Kapazität deines Fet's entdeckt.

Der Mechanismus zum Ausstieg des µC ist dann etwa so: das Portpin 
arbeitet gegen eine Kapazität (geschätzt 1 nF). Wenn man es schaltet, 
dann zieht das Pin zum Umladen deser Kapazität einen so großen Strom, 
daß dadurch die Brownout-Schaltung oder etwas ähnliches in deinem µC 
anspricht oder daß dadurch ein kurzer VCC-Enbruch erfolgt, der irgendwo 
den µC in die Irre leitet.

Die Abhilfe wäre ein Vorwiderstand am Gate zum Pin hin, der so groß ist, 
daß er den Umladestrom ausreichend begrenzt. Ich hatte solche Effekte 
bei den PIC16Fxx, die an jedem Pin mal eben 25 mA oder noch mehr ziehen 
können, wenn die VCC ausreichend Strom liefern kann ohne dabei in die 
Knie zu gehen.

W.S.

von Daniel U. (daniel_22)


Angehängte Dateien:

Lesenswert?

Danke euch!

Ich habe den Schaltplan mal angehängt. Er zeigt die Schaltung wenn sie 
funktioniert. Es funktioniert nicht mehr, wenn ich den Transistor 
herausnehme und manuell (im laufenden Betrieb) per Kabel VCC des HC-05 
an die Spannungsversorgung hänge oder einen MOSFET benutze. Elektrisch 
wird der Transistor dann praktisch einfach durch einen mechanischen 
Schalter ersetzt. Die Schaltung im Schaltplan kommt ohne weitere 
Kondensatoren aus und funktioniert. Und ja, 100 Ohm für die LED. Ist 
eine nicht wirklich helle, rote.

Was du mit dem 100nF Kondensator ansprichst sollte ja das sein, was ich 
mit den größeren Kondensatoren vorhin erreichen wollte, nämlich VCC am 
µC zu stabilisieren wenn kein Transistor benutzt wird.
Ich habe einen 100nF Keramik-Kondensator direkt zwischen VCC und GND 
möglichst nahe der Pins angebracht (dort wo ich bereits die 22µF und 
100µF Elkos testweise angebracht hatte). Ändert aber soweit nichts am 
Resultat. Wie gesagt, wenn da einer der beiden größeren Kondensatoren 
drin hängt dann klappt das zumindest auf dem Breadboard.

Die 2. angehängte Datei zeigt das Oszilloskop-Bild vom VCC der Schaltung 
ohne Transistor. Beim Verbinden des HC-05 mit VCC gibt es einen kleinen 
Peak nach unten von etwa 1V (also von 5V auf 4V). Dieser ist sehr kurz. 
Danach fällt VCC um etwa 0,1V bis 0,2V ab (ganz normal durch den 
Stromverbrauch des Moduls). Das ist im Bild nicht zu sehen, tritt aber 
im weiteren Verlauf genau so ein. Wenn ich nun den Transistor benutze 
dann gibt es diesen Peak nicht. Beim MOSFET gibt es ihn wieder, auch mit 
10k Ohm Widerstand am Gate.
ABER: Trotz des Peaks setzt der µC bei der Verwendung des Vorwiderstands 
am MOSFET nicht aus.

Hier nochmal in der Übersicht:
Transistor + Vorwiderstand -> kein Peak; kein Aussetzen
MOSFET + Gate Pull-up + kein Vorwiderstand -> Peak; Aussetzen
MOSFET + Gate Pull-up + Vorwiderstand -> Peak; kein Aussetzen
Schalter -> Peak; Aussetzen

Ich denke, dass die Gate-Kapazität auch eine Rolle spielt, aber die 
Kapazitäten im BT-Modul eine größere. Bleibt halt die Frage warum gerade 
der Transistor den Peak eliminiert.

von Stefan F. (Gast)


Lesenswert?

Daniel U. schrieb:
> Bleibt halt die Frage warum gerade  der Transistor den Peak eliminiert.

Weil er nur einen begrenzten Laststrom fließen lässt. leider kann ich 
Dir das nicht vor-rechnen, da du immer noch nicht verraten hast, welchen 
Transistor du verwendet hast.

Der MOSFET lässt jedenfalls mit Sicherheit wesentlich mehr Strom 
fließen, als der bipolare Transistor, so dass die Stromversorgung beim 
Einschalten des Bluetooth Moduls stärker belastet wird.

Wenn ich bei mir zuhause den alten Staubsauger einschalte, flackert in 
der ganzen Wohnung das Licht. Beim neuen Staubsauger passiert das nicht. 
Es ist hier prinzipiell der selbe Effekt. Der neue Staubsauger 
beeinträchtigt die Stromversorgung weniger, weil er sanft anläuft.

Die Sache mit dem Weglassen des Abblock-Kondensators am ATmega solltest 
du unabhängig davon nochmal überdenken. Warum, kannst du hier in gefühlt 
hunderten Beiträgen nachlesen, wo es um sporadische Ausfälle geht.

von asdf (Gast)


Lesenswert?

Schau ins Datenblatt des ATMega:

IMMER 100nF so dicht wie möglich an VCC und GND des ATMega.

In Deinem Fall brauchst Du auf jeden Fall - wie andere schon bemerkt und 
Du selbst gesehen hast - weitere Entkoppling des BT Moduls.

Ich würde den PNP (oder Mosfet) dicht am Modul plazieren und Über dem 
Emitter (source) zu GND (dicht am Modul) einen 100uF Kondensator 
anbringen.

von Daniel U. (daniel_22)


Lesenswert?

Ok, ja das verstehe ich soweit. Ich erwarte jetzt auch keine großartigen 
Berechnungen, weil es mir erstmal um die generellen Zusammenhänge und 
Bauteilverhalten geht.

Damit würde ich die Geschichte mal auf die Schaltung mit MOSFET 
beschränken. Hier sollte es also 2 Ziele geben:

1. Einfluss der Gate-Kapazität durch Gate-Widerstand verringern
2. Sanften Anlauf des BT-Moduls gewährleisten bzw. es entkoppeln

Beides dient also dazu, Kapazitäten nicht schlagartig zu schalten und 
damit VCC (kurzzeitig) heftig einbrechen zu lassen.

Wie gesagt, trotz MOSFET + Vorwiderstand konnte ich manchmal noch den 
Peak messen, der durch den Start des BT-Moduls ausgelöst wird. Der 100nF 
Kondensator an VCC hilft hier nur bedingt und reduziert den Peak 
höchstens etwas. Dabei setzt der µC aber immerhin nicht mehr aus.

Wie ist also der "sanfte" bzw. sichere Anlauf des Moduls zu realisieren? 
Ist dafür der angesprochene Kondensator an der Source?

von Wolfgang (Gast)


Lesenswert?

> Unterschied MOSFET<->Transistor ...

Ein MOSFET ist ein Transistor.
"MOSFET" steht für metal-oxide-semiconductor field-effect transistor

Genauso könntest du fragen, was der Unterschied zwischen einem Flugzeug 
und einem A320 ist.

von Michael B. (laberkopp)


Lesenswert?

Daniel U. schrieb:
> Kann mir vielleicht jemand einen Tipp geben ob ich in die richtige
> Richtung denke

Ich vermute, daß das Bluetooth Modul interne Abblockkondenstaorn 
enthält.

Der Transistor oder MOSFET oder das Dranklemmen an deine 
Versorgungsspannung verbindet nun diese Kondensatoren mit der Versorgung 
des uC und zieht viel Strom (Aufladen der Kondensatoren, im Prinzip 
unendlich).

Wenn nun auf Seite des uC KEINE Kondensatoren sind, die diesen Strom 
liefern können und mehr Ladung haben als aufzuladen ist, dann sacktz di 
Versorgungsspannung des uC zusammen, bricht ein und der uC läuft Amok, 
oder resettet.

Warum funktionierte es mit dem Transistor ? Der hat eventuell so wenig 
Basisstrom, daß er auch wenig Kollektorstrom durchlässt, so wenig daß 
die Versorgung des uC noch nicht zusammenbricht weil das Aufladen der 
Kondensatoren des Bluetooth-Moduls langsam erfolgt.

Und der MOSFET ist vielleicht so niederohmig, jedenfalls schaltet er 
schnell, daß er wie ein Dranklemmen eines Drahtes wirkt.

Was hilft: Abblocken des uC, richtig, vor allem wenn das Modul direklt 
am Ausgang des uC hängt, ohne Transistor, hast du gar keine andere 
Chance, und ein kleiner Festwiderstand in der Zuleitung zum Bluetooth 
Modul, der noch so niederohmig ist daß das Modul nicht in seiner 
Funktion gestört wird.

Abgeblockt wird der uC durch einen Kondensator praktisch direklt an VCC 
und GND, wei die andeen schon schrieben. Der sollte 10 x mehr Kapazität 
haben als die Kondensatoren auf dem Bluetooth-Modul. Eventuell 100nF + 
10uF zusammen.

von Stefan F. (Gast)


Lesenswert?

Daniel U. schrieb:
> Wie ist also der "sanfte" bzw. sichere Anlauf des Moduls
> zu realisieren?

Durch einen größeren Widerstand vor dem Gate. Dann lädt es sich 
langsamer auf, so dass der MOSFET den Laststrom allmählich ansteigen 
lässt.

Ich habe Dir weiter oben schon geschrieben, dass ich für den ersten 
Versuch mal mit 10kΩ anfangen würde. Wenn das nicht reicht, dann halt 
100kΩ oder so.

von Einer K. (Gast)


Lesenswert?

Michael B. schrieb:
> Ich vermute, daß das Bluetooth Modul interne Abblockkondenstaorn
> enthält.

Natürlich!
Muss doch!

Das Problem sind nicht die (keramischen) Abblockkondensatoren...
Die müssen sein.

Sondern die Stützkondensatoren. Die Elkos, oder der Elko, auf dem HC-05 
Board, die machen den Einbruch.
Die nehmen sich den großen Hieb aus der Stromkanne.

In dem Schaltplan sehe ich keinen Stützkondensator vor dem 
Schalttransistor.
1000µF VOR dem Transistor können hier Wunder bewirken.

Auch sind AGND und AVcc des ATMega328 auf dem Plan völlig 
verbindungslos.
Das geht so nicht. Grober Unfug, das ist.
Anschließen!
Plus Abblockkondensator.
Und an Aref, darf auch son Dingen dran.

Jedes Digital IC braucht min. einen Abblockkondensator.
Der ATMega328 sogar mindestens zwei, besser drei. (ich sehe keinen)

----

Erst die Schlampigkeiten beseitigen, dann dürfte sich das künstliche 
verlangsamen schon erledigt haben.

----

Ich befürchte, dass die beiden seriellen Leitungen NICHT zu Inputs 
gemacht werden, wenn das HC Modul abgeschaltet wird. Vermutlich wäre das 
sinnvoll. damit nicht über den Pin das Modul trotz Abschaltung weiter 
versorgt wird.

von Daniel U. (daniel_22)


Lesenswert?

Durch eure Tipps habe ich in meiner Schaltung jetzt einen 
Gate-Widerstand und (vorerst einen) 100nF Abblockkondensator zwischen 
VCC und GND. Das funktioniert nun ohne Probleme. Über weitere 
Abblockkondensatoren usw. mache ich mir (aus Platzgründen) noch 
Gedanken.

Was das Schalten größerer kapazitiver Lasten angeht bzw. Lasten mit 
höherem Anfangsstrom habe ich verstanden, dass bei Verwendung eines 
MOSFETs folgendes gemacht werden kann um einen Sanftanlauf zu erreichen:

-höherer Gate-Widerstand
-Widerstand in Zuleitung zum Bauteil

Gibt es sonst noch Möglichkeiten wenn MOSFETs verwendet werden?

Dann noch zu der Frage mit den RX und TX Leitungen:
Die bleiben beim Ausschalten des Moduls verbunden und es kann durchaus 
eine Spannung an ihnen anliegen. Das Modul wird durch die Schaltung an 
VCC aber sicher ausgeschaltet. Die Status-LED erlischt und das 
Wiederanlegen der Versorgungsspannung wird als Neustart erkannt.
Trotzdem denke ich da über eine Sicherheitsschaltung nach, die die 
seriellen Leitungen abklemmt. Über Software ist mir bisher nichts 
bekannt und über die Hardware würde ich einfach beide Leitungen mit 
Transmission-Gates (bilateral Switches) versehen und sie so 
freischalten. Aber ich kenne mich diesbezüglich (vor allem was das 
zeitliche Verhalten bei serieller Kommunikation angeht) nicht wirklich 
aus. Was gibt es da für Möglichkeiten zum sicheren Abklemmen?

von Stefan F. (Gast)


Lesenswert?

> Gibt es sonst noch Möglichkeiten wenn MOSFETs verwendet werden?

Eine starke Stromversorgung bauen, welche die Lastspitzen bedienen kann, 
ohne dabei einzubrechen.

> Dann noch zu der Frage mit den RX und TX Leitungen:
> Die bleiben beim Ausschalten des Moduls verbunden und es kann durchaus
> eine Spannung an ihnen anliegen.

Die Sache ist die: Meistens vertragen Mikrochips an ihren Eingängen nur 
Spannung zwischen 0 Volt und VCC (also 3,3V beim Bluetooth Modul). Wenn 
du aber dessen Stromversorgung unterbrichst, dann verträgt es nur noch 0 
Volt bis 0 Volt.

Deswegen solltest du dann den Tx Ausgang des Mikrocontrollers auf Low 
schalten oder deaktivieren (hochohmig). Bei AVR musst du dazu den 
seriellen Transmitter deaktivieren.

Wenn du das nicht tust, wird ein überhöhter Strom vom AVR Ausgang Tx zum 
Eingang Rx des Bluetooth Moduls fließen, dann weiter über ESD 
Schutzdioden im Bluetooth IC zu dessen VCC Pins. Die VCC leitung des 
Bluetooth Moduls wird dann auf etwas mehr als 0 Volt ansteigen, quai von 
hintern herum gespeist.

Das ist schlecht für

a) den AVR, da er nicht dazu gedacht ist, dauerhaft so hohe Ströme zu 
liefern.
b) das Bluetooth Modul, da die ESD Schutzdioden kaputt gehen können und 
dann der Schutz vor elektrostatischer Ladung verloren geht
c) für die Funktion des Bluetooth Moduls, da es danach eventuell nicht 
korrekt  startet

Wenn du Glück hast, passiert nichts. Wenn du Pech hast geht etwas 
schief. Du kannst ja mal nachmessen, wie viel Strom über die Tx->Rx 
Leitung fließt. Wenn es weniger als 1mA sind brauchst Du Dir keine 
Sorgen zu machen. Bei mehr als 10mA ist Handeln dringend empfohlen. 
Dazwischen darf man auf sein Glück hoffen, sofern von dem Projekt nichts 
wichtiges abhängt.

von Daniel U. (daniel_22)


Lesenswert?

Ich verwende Software Serial zum HC-05, d.h. kann ich leider nicht 
einfach den seriellen Transmitter deaktivieren. Deshalb strebe ich da 
eine Hardware-Lösung an. Wegen den im vorherigen Post geschilderten 
Gründen will ich RX des BT-Moduls auf jeden Fall noch schützen.

Generell muss das BT-Modul noch besser geschützt werden, da es ohne das 
übliche blaue Carrier-Board eingebaut wird und deshalb die 
Versorgungsspannung limitiert werden muss. Ein step-down Voltage 
Regulator kommt glaube ich eher nicht in Frage, weil VCC am Modul bis 
3.3V hochgehen soll aber auch bis 3V abfallen darf. Letzteres wäre bei 
einem 3.3V Regulator nicht gegeben. Aber ich weiß nicht ob das nicht ein 
eigenes Thema unabhängig von dem Thread hier ist...

: Bearbeitet durch User
von Wolfgang (Gast)


Lesenswert?

Daniel U. schrieb:
> Dann noch zu der Frage mit den RX und TX Leitungen:
> Die bleiben beim Ausschalten des Moduls verbunden und es kann durchaus
> eine Spannung an ihnen anliegen.

Und warum ist das im Schaltplan nicht so gezeichnet?

Warum schaltest du die Spannungen, die möglicherweise an RX/TX gehen, 
nicht ab, bevor du die Versorgung weg schaltest?

Wenn an TX des HC-05 von außen eine Spannung anliegt, würde ich 
allerdings über die Beschaltung noch mal ganz grundlegend nachdenken.

von Stefan F. (Gast)


Lesenswert?

Daniel U. schrieb:
> Ich verwende Software Serial zum HC-05, d.h. kann ich leider nicht
> einfach den seriellen Transmitter deaktivieren.

Einen Transmitter (in Hardware) hast du in diesem Fall nicht. Also 
kannst du einfach den Pin als Eingang konfigurieren und nach dem 
Aufwachen wieder als Ausgang konfigurieren.

von Einer K. (Gast)


Lesenswert?

Daniel U. schrieb:
> Ich verwende Software Serial zum HC-05, d.h. kann ich leider nicht
> einfach den seriellen Transmitter deaktivieren.

Unfug!

Natürlich geht das.

von Daniel U. (daniel_22)


Lesenswert?

Es ist deshalb nicht im Schaltplan eingezeichnet, weil es im Testaufbau 
zum eigentlichen Thema auch nicht verbunden ist/war. Hat also mit dem 
ursprünglichen Problem erstmal nichts zu tun. Später in der 
Gesamtschaltung auf der Platine wird es natürlich verbunden sein. Die 
Bemerkung zu den seriellen Leitungen war ja soweit ich verstanden habe 
nur eine Warnung um evtl. spätere weitere Komplikationen zu vermeiden.

Also sollte ich dann quasi per Software den Atmega-TX zu HC-05-RX Pin im 
ausgeschalteten Zustand des HC-05 LOW legen und dann wieder HIGH wenn 
das Modul an ist und serielle Daten übertragen werden können?

von Einer K. (Gast)


Lesenswert?

Daniel U. schrieb:
> Also sollte ich dann quasi per Software den Atmega-TX zu HC-05-RX Pin im
> ausgeschalteten Zustand des HC-05 LOW legen und dann wieder HIGH wenn
> das Modul an ist und serielle Daten übertragen werden können?

Ich sagte "zu Inputs gemacht werden".
Und das meinte ich auch so.
Warum du da High und Low draus machst, ist mir schleierhaft.

von Daniel U. (daniel_22)


Lesenswert?

Also einfach unter Arduino mit pinMode für die Dauer des Ausschaltens 
den Pin, der zum HC-05 textet, zum Input machen und wenn das Modul 
wieder benutzt werden soll ihn wieder zum Output deklarieren?

von Stefan F. (Gast)


Lesenswert?

ja
ja
ja
ja

Wie oft willst du noch nachfragen. Mach doch einfach mal was und 
bestaune deine Erfolge (bzw reagiere auf Misserfolge)!

Du diskutierst viel zu lange, nicht nur bei dieser Frage.

von Einer K. (Gast)


Lesenswert?

1
// bla
2
myserial.end();
3
pinMode(txpin,INPUT);
4
// hier FET abschalten
5
6
// tu was anderes
7
8
// hier FET einschalten
9
myserial.begin(9600);
10
// bla

von Daniel U. (daniel_22)


Lesenswert?

Ich teste ja immer und es funktioniert in beiden Varianten. Wenn ich den 
TX-Pin immer als OUTPUT lasse und LOW forciere oder wenn ich einen Code 
implementiere wie eben gezeigt. Nur kann man ja nicht wissen was von 
beidem besser und Fehler-unanfälliger ist. Beides sieht vom Ergebnis her 
auf dem Oszi exakt gleich aus.

Aber gut, damit hat sich die Frage denke ich mal geklärt. Danke dafür!

von Stefan F. (Gast)


Lesenswert?

Schau Dir mal an, welchen Pegel das Startbit in der seriellen 
Kommunikation hat und überlege dann mal, wie sich dann ein LOW Pegel 
auswirken kann.

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.