Ich bastle gerade mit einem Atmega 328 herum und bin da auf eine
merkwürdige Sache gestoßen. Programmiert wird per ISP. Die MISO MOSI und
SCK Pins verwende ich aber auch noch anderweitig. Jeder von ihnen einen
NPN in Emitterschaltung an, der als Schalter dient. Als Basiswiderstand
habe ich 1,2 k und parallel Basis-Emitter 470k geschaltet.
Ich halte mich also an die AVR Hardware Application Note und diese Wald
und Wiesen Schaltstufe benutze ich so oder so ähnlich auch des Öfteren
in meinen Projekten.
Jetzt stehe ich plötzlich vor dem Rätsel, dass ich mit der Beschaltung
keine Verbindung zwischen AVR MKII Programmer und uC mehr herstellen
kann. Selbst mit ISP-Takt 2 kHz kann ich nicht mal die Device ID
auslesen. Wenn ich nur die Transistoren wieder auslöte, klappt es
wieder.
Dummer Weise hat mein Oszi sich vor einigen Wochen verabschiedet und ich
kann mir die Signalverläufe nicht anschauen. Weiß jmd was was ich nicht
weiß und kann mir auf die Sprünge helfen?
Wilma Streit schrieb:> Weiß jmd was was ich nicht weiß und kann mir auf die Sprünge helfen?
Löte doch mal statt der Transistoren die 1k2 Widerstände raus und miss
nach, welchen Widerstand die tatsächlich haben. Wenn es c.a 1,2kOhm
sind, dann löte da mal 10k Widerstände rein...
Hannes J. schrieb:> und die Schaltung entspricht dem auch so wie ich das sehe.
Jetzt muss nur noch der Programmieradapter in etwa dem entsprechen, wie
der, den der Ersteller der Appnote vor sich hatte...
Lothar M. schrieb:> Wilma Streit schrieb:>> Weiß jmd was was ich nicht weiß und kann mir auf die Sprünge helfen?> Löte doch mal statt der Transistoren die 1k2 Widerstände raus und miss> nach, welchen Widerstand die tatsächlich haben. Wenn es c.a 1,2kOhm> sind, dann löte da mal 10k Widerstände rein...
Jupp die 1k2 stimmen. Mit 10k klappt die Verbindung für f(ISP) < 64 kHz.
Ich hab noch ein älteres Layout ausgekramt wo die selbe Schaltung
funktioniert. Der Unterschied hier ist, dass ich da noch genug Platz
hatte um zwischen den Leiterbahnen Masseflächen zu erzeugen.
Habe mal zwei Ausschnitte gemacht. Die alte Variante funktioniert? :(
Wilma Streit schrieb:> Als Basiswiderstand> habe ich 1,2 k und parallel Basis-Emitter 470k geschaltet.
Die 1,2k wirken als Pulldown, das ist aber nicht spezifiziert.
Lt. Manual ist nur ein Pullup >820Ω erlaubt.
Die 470k spielen keine Rolle, sie werden durch die BE-Diode überbrückt.
Kannste auch weglassen.
Lothar M. schrieb:> Wilma Streit schrieb:> Die alte Variante funktioniert?>> Hast du das ISP-Kabel zwsichen ISP-Stecker und Programmer irgendwie> verlängert?
Naja, verlängert nicht. Ich benutze tatsächlich einzelne Verbinder von
ca 10 cm, da ich kein Kabel mit 6pol Wannenstecker habe.
Peter D. schrieb:> Die 1,2k wirken als Pulldown, das ist aber nicht spezifiziert.> Lt. Manual ist nur ein Pullup >820Ω erlaubt.
Achso, daran habe ich ja tatsächlich gar nicht gedacht. Ja dann war es
wohl reines Glück dass es bisher so oft funktioniert hat. Hmm, eine Idee
wie ich die Schaltung trzd noch benutzen könnte? Wohl nur indem ich den
Basis Vorwiderstand so groß wie möglich wähle?
Und in Zukunft dann an der Stelle die Schaltung etwas ummodeln um einen
PNP benutzen zu können. Oder direkt einen Mosfet nehmen? Wie würdet ihr
das machen? Geht um eine einfache PWM von ca 5 kHz.
Peter D. schrieb:> Die 470k spielen keine Rolle, sie werden durch die BE-Diode überbrückt.> Kannste auch weglassen.
Der soll im RESET für definiertes Potenzial sorgen..
Ich hab fast das was du willst in Betrieb: Mega8 MOSI/MISO über 1k auf
die Basis des Transistors, aber ich steuere PNP-Transistoren an. Ich
multiplexe damit ein 5x7-LED-Display.
Wie schon gesagt wurde, glaube ich auch, daß der Progger das können muß.
Harry schrieb:> Wie schon gesagt wurde, glaube ich auch
Wie schon gesagt, Glaube gehoert in die Kirche, das hier ist Technik, da
wird berechnet. Vielleicht auch noch gemessen, aber dann ist Schluss!
;-)
wendelsberg
Peter D. schrieb:> Die 1,2k wirken als Pulldown, das ist aber nicht spezifiziert.> Lt. Manual ist nur ein Pullup >820Ω erlaubt.
Wo steht das?
In der weiter oben verlinkten APnote steht lediglich etwas von mind. 330
Ohm in jeder Leitung, egal, wohin sie danach führen.
M.A. S. schrieb:> Peter D. schrieb:> Die 1,2k wirken als Pulldown, das ist aber nicht spezifiziert.> Lt. Manual ist nur ein Pullup >820Ω erlaubt.>> Wo steht das? In der weiter oben verlinkten APnote steht lediglich etwas> von mind. 330 Ohm in jeder Leitung, egal, wohin sie danach führen.
Nein, das steht da nicht. Die 330Ohm sind nur zum Schutz des Proggers
gedacht.
In der AppNote steht genau genommen gar nichts zu den Widerständen.
Evtl. findet man was in den Daten des Proggers zu dessen Treiberleistung
Wilma Streit schrieb:> Der soll im RESET für definiertes Potenzial sorgen..
Ein BJT braucht Basisstrom, d.h. er sperrt auch ohne Pulldown. Nur ein
FET braucht einen Pulldown.
BJTs benutze ich nur noch sehr selten, FETs habe oft bessere
Eigenschaften.
Peter D. schrieb:> Ein BJT braucht Basisstrom, d.h. er sperrt auch ohne Pulldown. Nur ein> FET braucht einen Pulldown.> BJTs benutze ich nur noch sehr selten, FETs habe oft bessere> Eigenschaften.
Kommt drauf an was man will, nicht? Per se würde man wohl erstmal keinen
Unterschied bemerken und die Schaltung würde genauso funktionieren wie
ohne diesen Widerstand. Allerdings war die allererste Version der
Schaltung und des Layouts vor vielen Monden mal eine Projektarbeit im
Fach EMV-gerechtes Schaltungsdesign. Und wenn es um maximale
Störfestigkeit geht hat der Widerstand dann eben auch beim BJT seine
Berechtigung. Aber ja, in der jetzigen Anwendung hätte man ihn auch
streichen können.
Wilma Streit schrieb:> Allerdings war die allererste Version der> Schaltung und des Layouts vor vielen Monden mal eine Projektarbeit im> Fach EMV-gerechtes Schaltungsdesign.
Wenn der Transistor auf einem Programmierpin liegt, dann wird er beim
Programmieren eh lustig hin- und herschalten, da hilft auch der
Widerstand nicht. Und im Betrieb ist der Ausgang des MCs niederohmig
(Push/Pull).
Peter D. schrieb:> Wilma Streit schrieb:> Allerdings war die allererste Version der> Schaltung und des Layouts vor vielen Monden mal eine Projektarbeit im> Fach EMV-gerechtes Schaltungsdesign.>> Wenn der Transistor auf einem Programmierpin liegt, dann wird er beim> Programmieren eh lustig hin- und herschalten, da hilft auch der> Widerstand nicht. Und im Betrieb ist der Ausgang des MCs niederohmig> (Push/Pull).
Richtig. Das hast du gut erkannt. Und U = R/I. Und trzd kannst du ohne
Kenntnis der restlichen Schaltung kaum pauschal sagen, ob der Widerstand
nun dort gebraucht wird oder nicht. Zumal es nichts zum Thema beträgt.
Trotzdem vielen Dank für deine Mühe.
Der Widerstand hat unter EMV Gesichtspunkten auf jeden Fall eine
Berechtigung. Jeder der was anderes behauptet hat entweder keine Ahnung
oder hat nicht lang genug nachgedacht.
Die Schaltung sollte so auf jeden Fall tun. Probiere Mal einen anderen
Programmer.
wendelsberg schrieb:> Harry schrieb:>> Wie schon gesagt wurde, glaube ich auch>> Wie schon gesagt, Glaube gehoert in die Kirche, das hier ist Technik, da> wird berechnet. Vielleicht auch noch gemessen, aber dann ist Schluss!> ;-)>> wendelsberg
Da du anscheinend alle Progger dieser Welt kennst: berechne es. Meiner
kann es und das glaube ich nicht, ich weiß es ;-)
Joachim B. schrieb:> Wilma Streit schrieb:>> Und U = R/I.>> darüber würde ich echt streiten wollen!>> V = V/A² ???
Ironie funktioniert im Internet einfach nicht..
----------------------
Update: Es war wirklich der Programmer. Hatte hier noch einen Arduino
rumliegen und habe den mal als ISP Programmer ausprobiert. Danke nochmal
für die Hilfe. :)
Bei den IO Pin, speziell bei Mehrfachnutzung sollte man immer bedenken :
- Es gibt ein Leben vor dem ersten Programmieren. Die meisten
Pins sind dann Tristate. Ist dieser Zustand sicher ?
- MISO, MOSI & SCK haben eine eigene funktion wenn Reset = 0 ist.
Ist dieser Zustand sicher ?
Speziell im Hinblick auf Ausgangsstufen. Faengt da ein Motor an zu
drehen? faengt eine Heizung an zu Heizen ?
Proletikus schrieb:> Bei den IO Pin, speziell bei Mehrfachnutzung sollte man immer> bedenken :> - Es gibt ein Leben vor dem ersten Programmieren. Die meisten> Pins sind dann Tristate. Ist dieser Zustand sicher ?> - MISO, MOSI & SCK haben eine eigene funktion wenn Reset = 0 ist.> Ist dieser Zustand sicher ?>> Speziell im Hinblick auf Ausgangsstufen. Faengt da ein Motor an zu> drehen? faengt eine Heizung an zu Heizen ?
Warum erzählt hier ständig irgendjemand etwas, was weder gefragt war
noch sonst irgendwas beiträgt? Ist das hier so ein Spiel?
Ich mach mit... Wenn man delay.h benutzen will, sollte man mit #define
F_CPU den Takt festlegen.
Wilma Streit schrieb:> Warum erzählt hier ständig irgendjemand etwas, was weder gefragt war> noch sonst irgendwas beiträgt? Ist das hier so ein Spiel?
offensichtlich
Wilma Streit schrieb:> Und U = R/IWilma Streit schrieb:> Ironie funktioniert im Internet einfach nicht..
hat hier einer nach Ironie gefragt?