Forum: Mikrocontroller und Digitale Elektronik Programmierschnittstelle SPI oder doch UART


von Robert W. (johnnychuo)


Angehängte Dateien:

Lesenswert?

Hallo Freunde der Zeitumstellung,

ich habe hier ein Modul mit einem ARM Cortex M4. Das Modul hat 2 UART 
Interfaces und 2 SPI Interfaces (Master+ Slave). Laut Datenblatt steht 
ein SPI Serial Flash für Upgrades und read/write Dateien System zur 
Verfügung. Daher hab ich das so verstanden, dass ich den Programmcode 
per SPI auf den uC übertrage.

Nach längerer Recherche wie denn das nun mit SPI funktionieren soll, bin 
ich auf ein Evaluation Guide gestoßen, der zeigt, dass man nun doch die 
UART Schnittstelle benutzt um per USB zu flashen (Bild1). ABER dennoch 
sind Bausteine aufgeführt, die programming als Name tragen und mit JTAG 
Signalen per SPI kommunizieren. (Bild 2).

Interessanterweise werden nun die UART und die JTAG Signale am Modul 
angeschlossen aber die UART Datenleitungen werden nochmals benutzt um 
JTAG zu generieren?

Ich habe mich soweit belesen, dass das JTAG wohl ein 
Schieberegister(Slave) ist und dabei hilft die Kommunikation zu 
synchronisieren. Aber warum werden dann die USB->UART signale trotzdem 
direkt auf den uC geführt?



Vielen Dank vorab.

: Verschoben durch User
von Frank K. (fchk)


Lesenswert?

Das Programmieren über USB-UART erfordert weniger Hardware und ist 
einfacher, aber es muss bereits Software (ein Bootloader) im Flash 
verhanden sein. In fabrikneuem Zustand oder nach einem Benutzerfehler 
mag das nicht der Fall sein.

JTAG geht immer, aber Du brauchst eben einen JTAG-Programmer.

fchk

von Robert W. (johnnychuo)


Lesenswert?

Also wird in dem Evaluation Guide JTAG für den Erstbetrieb benutzt um 
den Bootloader zu implementieren? Laut Datenblatt ist aber bereits eine 
Beispiel-app im Flash. Demnach sollte doch ein Bootloader drauf sein.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Robert W. schrieb:
> Demnach sollte doch ein Bootloader drauf sein.

Kann. Muss nicht. Bootloader sind ja auch gegenüber JTAG eine 
Einschränkung, da mit ihnen nur Programme geladen werden können, ein 
Debuggen aber nicht möglich ist.

Es wäre übrigens hilfreich, wenn Du verraten würdest, was für ein 
Modul Du da hast. Nicht jedes ist gleich, und nicht jeder Hersteller hat 
die gleichen Vorstellungen über das Anschließen von Programmier-, Debug- 
und sonstigen Schnittstellen. Deine auf das allermindeste reduzierten 
Schaltplanschnipsel lassen auch nichts weiter erkennen.

von Robert W. (johnnychuo)


Lesenswert?

Rufus Τ. F. schrieb:

> Es wäre übrigens hilfreich, wenn Du verraten würdest, was für ein
> Modul Du da hast. Nicht jedes ist gleich, und nicht jeder Hersteller hat
> die gleichen Vorstellungen über das Anschließen von Programmier-, Debug-
> und sonstigen Schnittstellen. Deine auf das allermindeste reduzierten
> Schaltplanschnipsel lassen auch nichts weiter erkennen.

Ich habe das AMW006 von Ackme-Networks(Zentri). Das ist ein Wifi Modul

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Robert W. schrieb:
> Ich habe das AMW006 von Ackme-Networks(Zentri).

Das findet man sogar im Internet:

https://zentri.ack.me/products/AMW006_Numbat

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.