mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Beschaltung MEGA128 mit ISP und UARD0


Autor: Thomas S. (thomass)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@all,

ich habe einen MEGA128 und layoute gerade mein Board nun bin ich bei der 
ISP Schnittstelle hängengeblieben.
Diese ist beim Mega128 an TX0(PE1),RX0(PE0) und SCK(PB1) angeschlossen.
Nun benötige ich auch die Serielle Schnittstelle UART0 um mit dem PC zu 
kommunizieren.
Die zweite Schnittstelle ist auch im gebrauch.
Wie muss ich nun den MAX232 und den ISP Stecker anschliessen kann ich 
das alles einfach verbinden oder muss ich hier eine Schutzbeschaltung 
machen.
Habe hier im Forum einen Beitrag gefunden bei dem ein Widerstand in 
Reihe zum Max geschaltet wird.
Wollte nur den alten Beitrag nicht wieder hochholen aber hier mal der 
Link.#

Beitrag "ATmega128 ISP-Pins beschaltung"

Habe auch schon eine Beschaltung mit einem MAX3222 gesehen wo man 
mittels Lötjumper die Verbindungen gesetzt werden müssen befor die 
Schnittstelle funktioniert.

Dank für Eure Anregungen.

Thomas

Autor: katzeklo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bootloader

Autor: spess53 (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Im Anhang eine Appnote von Atmel.

MfG Spess

Autor: Thomas S. (thomass)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ katzeklo,

Bootloader möchte ich nicht verwenden.

@spess53,

ich habe diese note schon gesehen in der ein Widerstand in Reihe zum SPI 
Bus eingesetzt ist.
Nur habe ich nichts gefunden was beschreibt wie zu verfahren ist wenn 
ich die TX RX leitungen beschalte.
Wenn ich nun zwischen uC RX TX und MAX232 Widerstände einlöte und die 
ISp Schnittstelle direkt mit dem uC verbinde ist das dann OK.
Welche Wert muss ich für die Widerstände nehmem?
Bin ich dann bei der Wahl der BAUD Rate eingeschränkt bzw. muss ich 
etwas beachten?

Eventuell hatte ja schonmal wer dieses Problem und eine Lösung hierzu.

Im Notfall setze ich zwei Jumper.

Gruß

Thomas

Autor: katzeklo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Bootloader möchte ich nicht verwenden.

Why?

Autor: Thomas S. (thomass)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
katzeklo wrote:
>>Bootloader möchte ich nicht verwenden.
>
> Why?

Das Hat mehrere Gründe.

1. Mein Programm ist zu 97% fertig und es müssen eigentlich nur noch 
Anpassungen gemacht werden.
2. Das Gerät ist nicht mit einem PC verbunden es sollen nur ab und an 
Daten ausgelesen werden.
3. Ich habe mich noch nicht mit einem Bootloader beschäftigt und möchte 
dies auch für dieses Projekt nicht tun da mir die Zeit fehlt und es auch 
meines erachtens nicht notwendig ist zumindest bei meinem jetzigem 
Projekt.

Sollte ich bei späteren Projekten öfters proggen müssen ist dies dann 
eine Option.

Thomas

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
UART1 ist auch keine Option?  Das ist bei uns immer der Default, weil
man damit genau diesen Spagat umgeht.  (Wobei wir am Ende eh' nur über
JTAG flashen...)

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Welche Wert muss ich für die Widerstände nehmem?
>Bin ich dann bei der Wahl der BAUD Rate eingeschränkt bzw. muss ich
>etwas beachten?

1.Hängt wahrscheinlich auch vom Programmer ab. Aber schätzungsweise 
1..2k sollten reichen.

2. Warum sollte es da Einschränkungen geben.

MfG Spess

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie wäre ein vom Reset gesteuerter Multiplexer,
der die Signale zwischen ISP und UART umschaltet?

Jens

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ups, habe gerade noch einmal nachgschaut und in der Quelle
für diese Idee gab es ein extra Signal, welches aktiv wurde
wenn ISP-Programmiert wurde. Offensichtlich bleibt der
Controller während des programmierens nicht die gesamte Zeit
im Reset, sonst könnte man das wirklich vom Reset abhängig
machen.

Jens

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jens wrote:

> Offensichtlich bleibt der
> Controller während des programmierens nicht die gesamte Zeit
> im Reset, sonst könnte man das wirklich vom Reset abhängig
> machen.

Normalerweise sollte er schon im Reset bleiben.

Autor: Thomas S. (thomass)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Jörg,

JTAG währe noch eine Option.
Ich werde es mal mit zwei in Reihe geschalteten Widerständen von 1k 
probieren und im Layout zur Sicherheit noch zwei Jumper vorsehen wo ich 
im Notfall zwei Jumper setzen kann jenachdem was ich machen will.

Werde nochmals über die Ergebnisse berichten.

Thomas

Autor: Thomas S. (thomass)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ups vergessen! :-)

@ Jörg,

Ich brauche beide Schnittstellen da die eine zum auslesen der Daten 
gedacht ist und die zweite kontinuierlich Slaves im RS485 Bus ausliest.
Somit bräuchte ich schon beide Schnittstellen.

Thomas

Autor: Ja mann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Normalerweise sollte er schon im Reset bleiben.
Naja, 1x Reset zum schreiben, 1x zum lesen (verify), am prinzipiell 
natürlich schon.
>sonst könnte man das wirklich vom Reset abhängig machen.
Wie auch immer, es funktioniert definitiv, das RESET Signal als 
Umschaltsignal zwischen RXD und MOSI (PDI) zu verwenden. Bei den Designs 
bei denen ich eh ein CPLD mit drauf habe, lasse ich das durch selbigen 
gleich erledigen, ansonstenten hilft ein TTL Käfer (Bezeichnung weiß ich 
gerade nicht auswendig), oder einfach ein Jumper zum umjumpern. Zum 
Programmieren muss man halt dann immer kurz den Jumper umsetzen, ist 
aber je nach Anwendungsfall auch nicht tragisch.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.