Forum: Mikrocontroller und Digitale Elektronik ISP und UART auf den gleichen PINs


von Markus J. (dmant)


Angehängte Dateien:

Lesenswert?

Hallo,

ich möchte gerne obige Schaltung in Betrieb nehmen. Leider ist mir jetzt 
erst noch die Idee gekommen das ganze mit Bluetooth oder USB 
auszustatten.

Ich schaute nochmal ins Datenblatt und musste feststellen das beim 
ATMega128 die Pins zum flashen und für den UART die gleichen sind. Den 
ATMega128 konnte ich bisher nur über PDI und PDO statt MISO und MOSI 
flashen. Auf den PINs hängt auch der UART.

Wie nutze ich nun beides? Kommt es nicht beim flashen zu fehlern wenn 
während dem flashen was auf dem UART "redet"?

Auf PE0 und PE1 ist TxD und RxD, gleichzeitig aber auch PDI und PDO zum 
flashen. Lasst ich die am UART hängenden Geräte erstmal "ausgeschaltet" 
und schalte es erst nach dem booten den µCs ein oder wie löse ich das 
ganze am besten?

von Frank K. (fchk)


Lesenswert?

ISP ist nur bei !RESET=0 aktiv. Nimm also einfach einen HC126, um die 
UART-Leitungen von den Pins zu trennen, wenn !RESET auf low ist.
Wenn Du den ISP auch schalten musst, weil sich der Programmer nach 
getaner Arbeit nicht hochohmig schaltet, dann nimm dafür einen HC125.

PS: Die Leiterbahnen in Deinem Layout sind unnötig dünn. Die für die 
Stromversorgung sind ZU dünn.

fchk

von Markus J. (dmant)


Lesenswert?

Also der Programmer (USBasp) ist ja nur für den Programmiervorgang 
angeschlossen, danach sind die PINs ja frei. Nur muss ich den Programmer 
dann jedesmal auch abstecken oder kann der dran bleiben und ich kann 
trotzdem mit dem UART kommunizieren?

Die Leiterbahnen sind alle 0,3mm, die Versorgungsbahnen 0,6mm. An jeden 
Transistor kommen max 6 LEDs mit einem gemeinsamen Vorwiderstand. An den 
Ebenen (PNP) hängen 36LEDs pro Ebene.

Könnte ich jetzt auch hergehen und einen weiteren PNP einsetzen und 
diesen erst nach dem Anlaufen des uC schalten? Dieser würde dann erst 
das HC06 versorgen wenn der uC geflasht und angelaufen ist

Wenn das ginge wäre super dann könnte ich noch verbauen was ich da habe.

Es soll ein 6 x 6 x 6 LED-Cube werden. Die 36 Kathoden schalte ich mit 
NPNs und die 6 Ebenen mit PNPs.

Was mir jetzt aufgefallen ist das ich bei jedem sehe das die LEDs immer 
einen gemeinsamen Vorwiderstand haben. Dies erzeugt jedoch 
unterschiedliche Helligkeiten, oder?

Wenn ich nun LED1 auf EBENE1 schalte dann bekommt diese 5V - > 100 Ohm - 
> LED. Wenn ich nun noch EBENE2 dazu schalte müssen sich beide LEDs die 
Versorgung teilen. Wie behandelt man das am besten? Ausser das ich die 
Schieberegister durch Transistoren ersetzt habe habe ich ja nichts 
anders.

von Dietrich L. (dietrichl)


Angehängte Dateien:

Lesenswert?

Hier habe ich eine Luxus-Version mit elektronischem Umschalter: siehe 
Anhang!

Der war gedacht für MISO, MOSI und SCK, und wäre dann auf Deine 
Verhältnisse umzustricken.

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.