Hallo,
ich habe bisher Intel- und SilLab-Mikrocontroller über USB und RS232
programmiert. Unter OCD kann ich mir gar nichts vorstellen, Wikipedia
hilft hier auch nicht weiter.
Braucht man nicht noch einen weiteren IC um einen uC per SPI
programmieren zu können? Was für eine Verbindung habe ich dann
letztendlich am Toostick?
Ich denke da an einen AT89LP6440.
Vielen Dank!
Welche Frage?
OCD ist ein Begriff, der im Zusammenhang mit dem JTAG-Interface für ARMe
auftaucht. Ursprünglich von der Firma Macraigor entwickelt, ist jetzt
meistens von OpenOCD die Rede, das wiederum ist eine Softwarelösung, um
mit einem aus einem FT2232 gebauten USB-JTAG-Adapter zu arbeiten.
Andere Controller haben andere Programmier- und Debugschnittstellen und
werden je nach Controller entsprechend angesteuert.
Was exakt hast Du vor und was ist Dir jetzt unklar?
Hallo,
@Rufus
Ist es korrekt, dass die Atmel Controller den OCD (OnChip Debug) für's
Programmdebuggen und Speichermanipulieren benutzten und zusätzlich eine
SPI Schnittstelle für die Flashprogrammierung benutzt wird ?
@Walter
OCD auf den AT89LP6440 ist einfach das Kürzel für "On-Chip Debug".
Allgemein betrachtet ist es so wie Rufus sagt.
Bei modernen Prozessoren wird die JTAG oder eine serial-wire-debug
Schnittstelle für Programmieren und Debug benutzt. Die Wiggler sind
meist nur Schnittstellenkonverter von USB. Mehr Intelligenz benötigen
die Tools im Falle von Tracemöglichkeit, die zusätzliche Pins am Chip
und Logik auf dem Chip benötigt. So ungefähr jedenfalls.
Auch von mir, was ist jetzt nochmal die Frage gewesen ?
Gruß
PS: ISD ist quasi wie OCD?
Michael Leusink schrieb:> Ist es korrekt, dass die Atmel Controller den OCD (OnChip Debug) für's> Programmdebuggen und Speichermanipulieren benutzten und zusätzlich eine> SPI Schnittstelle für die Flashprogrammierung benutzt wird ?
Wer sind "die Atmel Controller"?
Atmel stellt ziemlich viele Controller her, die aus /vollkommen
unterschiedlichen/ Familien kommen, die vom Hersteller abgesehen nichts
gemeinsam haben:
MSC-51
AVR und AVR32ARM
Du müsstest also schon etwas präziser werden.
Ja, vielleicht war meine Frage für das was ich wollte wirklich etwas
kompliziert zu verstehen.
-----------
Parametric Product Table für 8051 von Atmel:
Ich schaue mir da die Spalte zu ISP an. Ich verstehe diese Spalte so,
daß dort beschrieben wird, welche Schnittstelle ich zur Programmierung
des Mikrocontrollers zur Verfügung habe.
Programmierung über UART (RS232) oder USB kann ich mir vorstellen.
Unklar ist mir wie SPI/OCD z.B. beim AT89LP6440 realisiert wird.
Wie sieht das hier aus?
Für mein Verständnis spricht man mit SPI andere ICs an. Daher vermute
ich, daß man zur Programmierung über SPI über einen weiteren uC/IC
programmiert, der vielleicht USB oder UART zur Verfügung stellt. Ist das
so?
Rufus t. Firefly schrieb:> OCD ist ein Begriff, der im Zusammenhang mit dem JTAG-Interface für ARMe> auftaucht.
Mit Rufus seiner Aussage entnehme ich, daß OCD für JTAG steht.
Der uC wird also entweder über einen weiteren IC programmier oder über
JTAG, richtig?
------------
OK, nun komme ich zu den ATmegas:
Hier fällt mir am Product Table auf, daß die Spalte ISP völlig fehlt.
Ist es richtig, daß diese uC alle eine einheitliche
Programmierschnittstelle haben? Ist dies JTAG?
Vielen Dank für Eure Antworten.
Hi
>OK, nun komme ich zu den ATmegas:>Hier fällt mir am Product Table auf, daß die Spalte ISP völlig fehlt.>Ist es richtig, daß diese uC alle eine einheitliche>Programmierschnittstelle haben? Ist dies JTAG?
Nein. Alle AVRs haben ISP. Bei neueren ATTinys nennt sich das TPI.
Zusätzlich ist, bei fast allen, Debugwire oder JTAG zu Debuggen
vorhanden.
MfG Spess
Rufus t. Firefly schrieb:> Wer sind "die Atmel Controller"?
Sorry, ich gebe zu, dass die Frage nicht präzise genug formuliert war.
Schließlich gibt es von Atmel mindestens fünf verschiedene
Produktgruppen. Ich kann leider auch jetzt nicht mehr nachvollziehen
welches Datenblatt ich auf hatte. Ich vermute ATmega48. Ich komm'
nochmal, wenn ich's genau weiß.
XmegaD3 gibt es ja jetzt sogar mit PDI, um die Liste der verschiedenen
Schnittstellen noch zu verlängern.
Gruß
Sorry, ich stolpere immer wieder über den Begriff ISP. Bitte korrigiert
mich ob ich falsch liege.
Einmal verstehe ich Ihn mehr als Oberbegriff oder Prinzip, neben der
HV-Programmierung.
Zum anderen kann man mit Ihm glaube ich auch eine physikalische
Schnittstelle beschreiben, wie dies unter
http://www.mikrocontroller.net/articles/AVR_In_System_Programmer#Atmel_AVRISP_MKII
in der Einleitung kurz und bündig der Fall ist.
Wird die hier beschriebene Schnittstelle vielleicht auch C2 oder 2wire
genannt?
Mit Two Wire Interface ist meistens I²C oder SM-Bus gemeint.. .
Worauf willst du mit deiner Fragestellung hinaus?
Bisher ist mir noch nicht klar was du eigentlich wirklich wissen
möchtest.
> Sorry, ich stolpere immer wieder über den Begriff ISP. Bitte korrigiert> mich ob ich falsch liege.> Einmal verstehe ich Ihn mehr als Oberbegriff oder Prinzip, neben der> HV-Programmierung.
Ja, das ist richtig. Das Kürzel ISP steht für "in system programmable".
Das weist nur darauf hin, dass das Bauteil zum Programmieren in der
Schaltung verbleiben kann und nicht extern programmiert werden muss -
wär bei eingelöteten SMD Bauteilen auch schwierig (es sei denn man macht
das vor dem Einlöten).
Damit ist keine Aussage über die technische Realisierung der
Schnittstelle verbunden, die muss noch getrennt beschrieben sein.
Dieter Werner schrieb:> Damit ist keine Aussage über die technische Realisierung der> Schnittstelle verbunden, die muss noch getrennt beschrieben sein.
Wunderbar, d.h. ISP hat nur eine Bedeutung und kann nicht mißverstanden
werden! Ich bin nur immer wieder ins Straucheln gekommen, weil ISP z.B.
neben JTAG genannt wurde. Daher hatte ich zuerst vermutet, daß ISP auch
als Realisierung zu deuten ist. Aber diese Frage ist ja nun zum Glück
abgeschlossen!
--------------
Nachtaktiver schrieb:> Mit Two Wire Interface ist meistens I²C oder SM-Bus gemeint.. .
C2 ist mir nur in den Sinn als mögliche Realisierung gekommen, weil ich
so bei SilLab-Mikrocontrollern programmiert habe. Aber dieser Teil
erledigt sich ja nun, wie oben beschrieben auch.
Vielen Dank!