Forum: Mikrocontroller und Digitale Elektronik !RESET ist nun RESET


von Christian P. (peterfrosta)


Lesenswert?

Hallo liebe Gemeinde,

ich brauch mal wieder geballte Praxiserfahrung ;)

ich hatte bisher Funkchips mit nem Atmega in betrieb (eigene Boards).
Nun habe ich eine neue Version des Funkchips bekommen, wo der 
!RESET-Eingang
nun ein RESET-Eingang ist.

Also die Logik des R-Eingangs des Funkchips hat sich geändert.
Das ist auch wirklich so! Hatte es nämlich bei dem Boardlayout NICHT 
berücksichtigt.
Erst als ich die Resetleiterbahn zum Funkchip durchtrennt hatte, konnte 
ich wieder funken.

Das Problem ist jetzt, dass ich den funkchip jedesmal abziehen muss, 
wenn ich den Atmega mit ISP flashen will.
Ich vermute, da der Funkchip nicht mit resetet wird, stört dieser 
ISPschnittstelle, da der Funkchip ja per SPI mit dem µC kommuniziert.

Was mache ich da?

Am besten wäre es ich könnte das !RESET-Signal vom Board abgreifen, in 
ein negierendens Etwas stecken und hinten kommt dann halt RESET raus. 
Das könnte ich dann an den Funkchip schließen und alles müsste super 
sein.

Gibt es sowas?

Wenn ich mir eine Lösung mit nem Portpin vom mC versuche zu überlegen, 
finde ich keine Lösung. Da ich davon ausgehe, dass beim flashen alle 
Portpins "low" sind.

über schlaue anregungen (lösungsorientiert) freue ich mich natürlich 
sehr! ;)

mfg

von Reinhard Kern (Gast)


Lesenswert?

Christian Peskov schrieb:
> Gibt es sowas?

Natürlich, angefangen von einem Transistor und 2 Widerständen über ein 
Logik-Einzelgatter bis zu einem übriggebliebenen HC04-Gatter oder sowas 
ähnliches.

Gruss Reinhard

von Stefan (Gast)


Lesenswert?

Ein Transistor negiert.

von Alex (Gast)


Lesenswert?

Du meinst
Eingang high--> ausgang low
Eingang low--> ausgang high?

Nennt sich inverter

Entweder einfacher Transistor und ein paar Widerstände oder als fertiges 
IC.

von avion23 (Gast)


Lesenswert?

pullup oder pulldown?

von Peter D. (peda)


Lesenswert?

Christian Peskov schrieb:
> Ich vermute, da der Funkchip nicht mit resetet wird, stört dieser
> ISPschnittstelle, da der Funkchip ja per SPI mit dem µC kommuniziert.

Deshalb sieht man ja für jedes /SS auch einen Pullup vor und schon sind 
alle SPI-Slaves still.

von Peter Von frosta (Gast)


Lesenswert?

Oh man. Ziemlich blöd von mir!! Auf nen Transistor hätte ich auch kommen 
sollen :-(

 recht herzlichen dank!!

von Christian P. (peterfrosta)


Angehängte Dateien:

Lesenswert?

hallo nochmal...

habe die angehängte Schaltung mir ausgeguckt.
kann mir einer tipps zur Widerstandswahl geben?

ich würde ja den vorhanden !Reset-Widerstand als Basiswiderstand 
verwenden.
Als Collector-widerstand (RESET) würde ich einen ähnlich dimensionierten 
nehmen.
Sagen wir für beide 60kΩ?!

Meine Betriebsspannung bzw High-Level ist +3V.

mfg

von Karl H. (kbuchegg)


Lesenswert?

Christian Peskov schrieb:
> hallo nochmal...
>
> habe die angehängte Schaltung mir ausgeguckt.
> kann mir einer tipps zur Widerstandswahl geben?

Wieviel Strom brauchst du bei VO ?
Ich vermute mal: wenig

Wieviel Strom darfst du bei VS voraussetzen?
Ich vermute mal: nicht allzuviel aber noch problemlos im mA Bereich.


R1 .. 10K
R2 .. 10k

Warum? Meine Standardwerte für einen 08/15 Inverter, der in 
Logikschaltungen eingeklinkt wird, bei denen es auf den Strom nicht 
weiter ankommt und nur die Pegel interessant sind. Dazu ein Wald und 
Wiesen NPN - BC337 oder ähnliches. Und die 10k Widerstände kommen aus 
dem Säckchen, das ich im 100-er Pack gekauft hab - daher nehm ich sie.

Wenn du magst, kannst du natürlich auch mit den Datenblättern die 
genauen Werte feststellen und das Ganze durchrechnen.

Wie mein alter Herr gerne sagte, wenn ich mich in der Werkstatt zu 
kompliziert anstellte (Drehen, Bohren, Fräsen): Mach kein Fest draus!

von 6A66 (Gast)


Lesenswert?

Karl Heinz Buchegger schrieb:
> Warum? Meine Standardwerte für einen 08/15 Inverter, der in
> Logikschaltungen eingeklinkt wird, bei denen es auf den Strom nicht
> weiter ankommt und nur die Pegel interessant sind. Dazu ein Wald und
> Wiesen NPN - BC337 oder ähnliches.

Oder noch einfacher: BCR133, der hat alles drinnen. Gibts sogar Dual :)

rgds

von 6A66 (Gast)


Lesenswert?

Karl Heinz Buchegger schrieb:
> Warum? Meine Standardwerte für einen 08/15 Inverter, der in
> Logikschaltungen eingeklinkt wird, bei denen es auf den Strom nicht
> weiter ankommt und nur die Pegel interessant sind. Dazu ein Wald und
> Wiesen NPN - BC337 oder ähnliches.

Oder noch einfacher: BCR133, der hat alles drinnen. Gibts sogar Dual :)

rgds

6A66 schrieb:
> der hat alles drinnen.

Sorry, den Collectorwiderstand nicht - übersehen :(

von Christian P. (peterfrosta)


Lesenswert?

BCR133
guck ich mir an!

ja ich habe wohl bvergessen zu sagen, dass das Fehler bei mehreren 
Boards eingebaut wurde.
So auch für einen Handtaster (baterriebetrieben).
Da soll natürlich, im Normalbetrieb( kein reset) so wenig Strom wie 
möglich fliesen.

Deshalb ist mein Widerstand an !RESET 60kΩ. wenn ich den selben zum als 
Collectorwiderstand nehme, habe ich doch am Collector (mein RESETsignal) 
die gleichen Bedingungen?! ALso auch geringen Stromfluss.

Und ddas Verhältnis von 1 bleibt auch gleich.

wird sich ja zeigen, ob es damit problemlos geht.

Danke

von 6A66 (Gast)


Lesenswert?

Christian Peskov schrieb:
> BCR133
> guck ich mir an!

Hallo Christian,

das mit dem BCR133 ist leider - ich gestehe da war ich zu schnell - nur 
die halbe Miete. Der braucht auch einen Collectorwiderstand. Kannst also 
alle anderen Transistoren auch verwenden, brauchts halt dann zwei 
Widerstände..

rgds

von Christian P. (peterfrosta)


Angehängte Dateien:

Lesenswert?

Hallo nochmal...

ich habe ja gedacht, dass sich das ganze gelöst ist, jedoch bin ich 
leider unfähig.

Im Anhang seht ihr dir schon beschriebene Ausgangssituation.
Reset zum IC musst getrennt werden, damit er überhaupt anläuft (Layout 
fehler).
Zum Flashen des Atmegas muss der IC abgezogen werden, da er nicht auf 
RESET gezogen wird (nervig).

Dann habe ich mich bei euch hier schlau gemacht. Eure vorschläge waren 
eindeutig und einleuchtend.
Darauf hin habe ich es wie im zweiten Anhang skiziert dran "gefrickelt".
Ätzend TTHBauteile an SMD Bauteile und ner Platine von 3*3 cm an zu 
löten und alles mit Drähten in der Luft stehen zuhaben.
Aber erst muss es einmal funktionieren, bevor das Layout angepasst wird.

Leider klappt es bei nicht. habe einige Widerstandswerte ausprobiert.
Auch  habe ich des Basis des Transistors mal einen extra Widderstand 
spendiert.
Zuviel verschiedenes (und auch durcheinander) um euch das hier 
strukturiert wieder geben zu können.

Mal kommt der !ReSET des Atmegas nicht auf 3 Volt; mal bleibt der RESET 
des ICs auf 0.

Ich hatte auch schon eine Kombination, bei der es ohne IC klappte! Also 
der Atmega ließ sich flashe und die RESET-bahn zum IC hatte dann auch 
das benötigte HIGH-Signal. Mit dem IC brach das HIGH-Signal jedoch ein.

Vllt kann einer aus dem Zweiten Anhang heraus mir sinvolle Werte für die 
Widerstände empfehlen? (ACHTUNG Batteriebetrieb)


Danke vielmals!!

von Chr. M. (snowfly)


Lesenswert?

Hast du an dem ATMega nicht noch einen Pin frei?

Wenn ja könntest du den Reset vom Funkmodul doch über den steuern,
noch einen möglichst hohen PullDown Widerstand hin und gut.

Oder hab ich noch einen Denkfehler?

EDIT: Die Portpins des AVR sind im Reset zustand hochohmig.
Und es muss natürlich ein PullUp sein...

von Peter D. (peda)


Lesenswert?

Find ich schon merkwürdig, wie krampfhaft daran festgehalten wird, die 
Symptome zu bekämpfen, statt die Ursache.

Gib jedem SPI-Slave am Chip-Select seinen Pullup, wie es sich gehört.
Dann kannste ungestört Proggen.

von Christian P. (peterfrosta)


Lesenswert?

Peter Dannegger schrieb:
> Find ich schon merkwürdig, wie krampfhaft...
Dazu fällt mir wenig freundliches ein.
Und was mache ich mit dem Pull-Up wenn ich nicht proggen will, sondern 
das teil im Betrieb haben will? wieder auslöten?
Die RESET-Logik der verbauten SPI Bauteile ist verschieden!!!!! Steht 
aber oben oft genug.
Junge es geht doch darum eine Lösung zufinden von mir aus auch mit 
zusätzlichen bauteilen aber so ne neunmalkluge aussage, welche auch noch 
null Informationsgehalt hat, hat mich nicht weiter gebracht.
Aber danke für deine tolle beteildigung!
...

Chr. Messener schrieb:
> Hast du an dem ATMega nicht noch einen Pin frei?
ja na klar! ^^

prinzipiell könnte ich das bestimmt über nen portpin steuern, jedoch 
muss ich ja im betrieb LOW am IC Slave haben und zum flashen HIGH.

Meinst du Messener, dass ich per Pull-Up den Reset auf 3 Volt lege und 
per Portpin diesen dann auf GND ziehe um den Slave in Betrieb zunehmen?
Klingt in meinen (leienhaften) Ohren recht gut.
Den Vorschlag werde ich später oder heute nacht mal aufgreifen und 
versuchen :-)
danke...
weitere infos sehr gerne!

von Felix P. (fixxl)


Lesenswert?

Christian Peskov schrieb:
> Und was mache ich mit dem Pull-Up wenn ich nicht proggen will, sondern
> das teil im Betrieb haben will? wieder auslöten?
Im Normalbetrieb sollte doch ein Pull-Up nicht stören, oder? Der sorgt 
nur dafür, dass der Chip-Select-Eingang auf High gezogen und damit der 
Slave inaktiv wird und Ruhe gibt, solange der Microcontroller im 
Resetzustand ist.

Sobald der Microcontroller fertig programmiert ist, übernimmt dann 
wieder der entsprechende Ausgang die Aktivierung/Deaktivierung des 
Slave.

von Christian P. (peterfrosta)


Angehängte Dateien:

Lesenswert?

Felix Pflaum schrieb:
> Im Normalbetrieb sollte doch ein Pull-Up nicht stören, oder? Der sorgt
> nur dafür, dass der Chip-Select-Eingang auf High gezogen und damit der
> Slave inaktiv wird und Ruhe gibt, solange der Microcontroller im
> Resetzustand ist.

hm.. entweder versteh ich deinen gedankengang nicht oder du meinst das 
so wie messener...

ALso wenn ich gleich im Labor bin würde ich es so versuchen (ich glaube 
so meinte es messener) wie im Anhang skizziert.

Meinungen?

Wenn ich nun wie von euch vorgeschlagen den Portpin des Megas als 
Ausgang definiere und auf HIGH setzte, sollte der IC ausbleiben 
(ressettet).
Wenn ich den dann auf LOW setzte sollte doch am IC auch low am RESET 
eingang sein, wa?

mfg

von Patrick W. (pawi777)


Lesenswert?

Man beachte: ChipSelect und RESET sind nicht das selbe!

Gruss pawi777

von Christian P. (peterfrosta)


Lesenswert?

Patrick W. schrieb:
> Man beachte: ChipSelect und RESET sind nicht das selbe!

dem stimme ich zu.
ich habe mit meinem chipselect aber auch keine probleme...
ich glaube du hättest weiter oben anfangen sollen zu lesen ;)
mfg

von Felix P. (fixxl)


Lesenswert?

Was Peter und ich meinen: Solange der Funkchip deaktiviert ist 
(Chip-Select-Eingang des Funkchips liegt  auf High-Pegel), reagiert er 
nicht darauf, was an den anderen Leitungen passiert, weil ihm klar ist, 
dass er nicht gemeint sein kann. Wenn man also sicherstellt, dass der 
Funkchip deaktiviert ist, während der Controller geflasht wird, funkt er 
auch nicht dazwischen.

von Peter D. (peda)


Lesenswert?

Christian Peskov schrieb:
> ich habe mit meinem chipselect aber auch keine probleme...
> ich glaube du hättest weiter oben anfangen sollen zu lesen ;)

Ich hab schon richtig gelesen.
Die Ursache für Dein Problem ist aber nicht das Reset, sondern der 
floatende Chip-Select.
Floatende Eingänge sind nie gut. Sie erhöhen zumindest den 
Stromverbrauch.

Vermutlich ignoriert der SPI-Slave den floatenden Chip-Select, wenn er 
im Reset ist. Aber das ist dann von hinten durch die Brust ins Auge.
Die allgemein gebräuchliche Lösung ist ein Pullup.
Erst wenn der MC arbeitet, überstimmt er den Pullup.

von Christian P. (peterfrosta)


Lesenswert?

so alles klar!

ich weiß nciht was ihr mit dem ChipSelecet wolltet, weil das (zumindest 
für mich) nicht deutlich wurdet worauf Ihr hinaus wolltet!

Mein ChipSelect funktierter ja. Der Zusammenhang fehlte mir.

Aber es hat gerade ebend klick gemacht.
Statt des RESETs des SPI-Slave, hänge ich den NSS (!ChipSelect) per 
Pullup auf HIGH. das PROG zieht den ohne hin bei bedarf auf LOW und bei 
flashen antwortet der Slave nicht mehr.

Habs ebend gelötet gehabt und es klappt endlich.
Danke das ist echt die optimale Lösung (so scheint ee mir im Moment). 
Ein R mehr und das RESET hänge ich dann nun an einen Portpin, statt 
!RESET.

End gut danke ;)

von Chr. M. (snowfly)


Lesenswert?

Christian Peskov schrieb:
> und das RESET hänge ich dann nun an einen Portpin, statt
> !RESET.

Vielleicht an den Reset auch noch einen PullUp,
wenn der zu floaten anfängt hilft evtl. der ChipSelect
auch nicht wenn das Funkmodul unkontrolliert Resetet(->Datenblatt)

von Michael (Gast)


Lesenswert?

Christian Peskov schrieb:
> Zum Flashen des Atmegas muss der IC abgezogen werden, da er nicht auf
> RESET gezogen wird (nervig).

Was ist das überhaupt für ein ominöses IC, bei dem der Hersteller mal 
eben das Signal auf einem Pin ändert und was sagt das Datenblatt?

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.