www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik RS232-Kommunikation mit Infineon XE164


Autor: Jens Sch (jenser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Morgen,

ich arbeite zur zeit an einem kleineren Projekt und soll mit Hilfe eines 
XE164-Controllers eine Kommunikation mittels RS232 ermöglichen.

Dabei sollen mittels HyperTerminal o.ä. Befehle zum Controller gesandt 
und vom Controller gewisse Daten zum PC zurück geschickt werden.

Die Hardware ist vorhanden und funktionsfähig!

Da ich bisher noch keine Erfahrungen mit Infineon-Controllern sammeln 
konnte, hoffe ich auf einige nützliche Tipps eurerseits.

Danke.

Autor: Carsten St. (carsten)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jens,
nimm dir das kostenlose Initialisierungstool Dave und richte dir damit 
den gewünschten USIC-Kanal auf UART (heißt bei Infineon ASC) ein. Dort 
kannst du auch das Interruptverhalten bestimmen und einfache 
Senderoutinen erzeugen lassen.

Auf den Starterkit-CDs sind typischerweise auch Beispiel mit 
UART-Nutzung dabei (z.B. Hello World an ein Terminal senden).

Gruß
Carsten

Autor: Rothaus Bier (tannenzaepfle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jens,

auf der Übersichtsseite 
(http://www.infineon.com/cms/en/product/channel.htm...) 
des Controllers sind auch zwei Hans-on Trainings.
Die beschreiben dir Schritt für Schritt was Du machen sollst.
Eines davon ist auch noch für UART (ASC-Link).
Schaus Dir mal an, das dürfte weiterhelfen.
Gruß
Tannenzäpfle

Autor: Jens Sch (jenser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, heute habe ich mal wieder ein wenig Zeit gefunden, mich mit dem 
XE164 zu beschäftigen.

Danke eurer Hilfe und dem "U0C0_ASC_vSendData"-Befehl kann ich nun Daten 
zum HyperTerminal schicken.

Jetzt will ich ein ankommenes Datenpaket (vom Hyperterminal) zerlegen 
und auswerten. D.h. ich will ankommende Daten in festgelegten Variablen 
kopieren und diese auswerten.

Habt ihr sowas schon mal gemacht? Oder habt ihr bessere Ideen?

Autor: Rothaus Bier (tannenzaepfle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also wenn Du schon das Makro ASC_vSendata gefunden hast, dann ist ja der 
Weg zum ASC_uwGetData auch nicht mehr weit. Wie gesagt, eine Schritt für 
Schritt Anleitung gibt es auch beim bereits erwähnten Hands-on training 
ASC-Link.

Autor: Jens Sch (jenser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, mein Projekt mit dem XE164 geht gut vorran und ich kann mittels 
RS232 Befehle zum µC schicken und Daten empfangen. Jetzt zu meinem neuen 
Problem:

Ich will mit Hilfe eines Befehls (via RS232) den Controller reseten bzw. 
in einen Boot-Modus versetzen. Kennt ihr euch mit sowas aus?

Autor: Rothaus Bier (tannenzaepfle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was möchtest Du denn machen?
Nur Reset oder aber Reset+Bootstraploader anschmeissen?
Und wenn Reset was für einer, ein HW Reset (also ein Power On Reset) 
oder ein SW Reset (bei Infineon gibt es den dafür schicken Namen 
"Application Reset").
Gruß
Tannenzäpfle

Autor: Jens Sch (jenser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Grüße Rothaus Bier,

ich möchte einen HW-Reset realisieren und zusätzlich den Bootstraploader 
anwerfen.

Hast du damit Erfahrung?

Autor: Rothaus Bier (tannenzaepfle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich wäre mir da nicht so sicher ob ein Power on Reset + BSL 
funktioniert.
Hintergrund ist der, dass Du bei einem _PORST sämtliche Register auf 
Default Wert setzt. Und genau darin liegt das eigentliche Problem. Denn 
um einen BSL zu starten, kannst Du entweder Deine HWCFG Pins am Port 10 
so einstellen, dass der gewünschte BSL Modus nach einem _PORST 
angefahren wird.
Das würde jedoch heissen, dass Du nach einem bestimmten UART 
Datum/Befehl Deine HWCFG Pins Manuell (und mit Manuell meine ich 
wirklich HÄNDISCH) einstellen müsstest und anschliessend ein _PORST 
auslösst. Kann ja nicht wirklich die Zielführung sein, oder???
Also ich weiss nicht was Du vor hast, aber logischer scheint mir doch, 
dass Du nach dem besagten UART Befehl dann den Baustein nochmal neu 
hochfahren lässt OHNE dabei händisch die HWCFG Pins ändern zu müssen.
Ist das so?

Autor: Peter Schneider (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jens,
ich habe so etrwas schon mal mit dem C167 gemacht. Problem damals war 
das ich in einer bestehenden Hardware ohne umstecken von Jumpern oder 
Reset Taste drücken von außen über RS232 Software in das internen Flash 
schreiben mußte. Da ich keine Ahnung vom Flash programmieren hatte, habe 
ich folgendes gemacht :
1. Eigene Funktion (BootStrapLoader())schreiben die den Bootstraploader 
per Software simuliert (warte auf 00 über RS232 dann Prozessorkennung 
senden, die nächsten 32 Byte über RS232 empfangen und diese dann als 
Funktion abarbeiten).
2. Damit ich den Prozessor in den simulierten Bootstraploeder Mode 
bekoome, habe ich ein Befehl definiert der über die serielle 
Schnittstelle empfangen wird. Der Befehl hat dann die Funktion 
BootStrapLoader() ins internen RAM kopiert und von dort aus gestartet.
3. Den Rest hat dann ein DOS Tool von Siemens erledigt über das man per 
Bootstrap Loader HEX Files flaschen konnte.

Beim XE müsste das doch so ähnlich möglichs sein.

Gruß
Peter

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.