Hallo liebes Forum, ich bin noch Anfänger was µC angeht und bin gerade etwas verwirrt, was das Programmieren über eine Jtag-Schnittstelle angeht. Hintergrund ist folgender: An unsere FH haben wir in einem Praktikum eine Starter-Kit Platine von Silabs bekommen, die aus der Hauptplatine mit mcu und einem sog. Base-Adapter zum Übertragen des Programms auf den µC besteht. Es ist ein C8051F020 verbaut mit on-chip-debugging. Man kann demnach Breakpoints setzten oder in den single-Step Modus gehen. Als ich auf der Website des Herstellers gesehen habe dass das MCU Starter-Kit nur 40$ kostet, war ich irgendwie überrascht. 40 Dollar mit JTAG??? Die JTAG-Adapter für die AVR's sind doch unfassbar teuer! Wie passt das zusammen? Gibt es etwa für die JTAg-Adapter von Atmel noch weitere spezielle Funktionen, die die Teile so teuer machen? Oder hab ich da was ganz falsch verstanden. Mit einem einfachen ISP-adapter kann man doch keine Breakpoints setzen, oder? Es geht um das Toolstick University Starter Kit: http://www.silabs.com/products/mcu/Pages/MCUniversity.aspx (muss runtergescrollt werden) Gruß Marco
marco schrieb: > Die JTAG-Adapter für die AVR's sind doch unfassbar teuer! Das ist ein weiterer Vorteil von ARM, die Debugschnittstelle ist offengelegt. Und die nicht-offengelegte Debugschnittstelle und diese Vielzahl von (teueren) Atmel Adapter, die genau den Baustein nicht programmieren können, den Du gerade brauchst, ein entscheidendes Argument gegen Atmel. Cortex mit Debugschnittstelle geht noch viel billiger, z.B 8.87 Eure für das F3Discovery Kit bei Mouser. Wenn man zusätzlich noch die Uart Verbindung zwischen Debug CPU und F3 nutzen will, zeigt http://embdev.net/articles/ARM#JTAG_Debugging eine Umbauanleitung um die Black magic probe Firmware auszuspielen
marco schrieb: > Die JTAG-Adapter für die AVR's sind doch unfassbar teuer! Wie passt das > zusammen? Gibt es etwa für die JTAg-Adapter von Atmel noch weitere > spezielle Funktionen, die die Teile so teuer machen? Der JTAGice mkii ist deswegen so teuer, weil Atmel für das AVR Studio 4 einiges an Funktionalität von der PC-Software in die JTAG-Hardware verlegt hat, wahrscheinlich um das ganze schneller zu machen. Wenn Du so ein Teil aufschraubst, wird Dir auch ganz schnell klar, wo der Preis herkommt: zwei Mega128, ein separater USB-Chip, extra RAM etc etc. Außerdem JTAG ist nur die Schnittstelle - ähnlich wie bei einem Drucker. Die haben alle Parallelport oder USB, aber sie brauchen unterschiedliche Druckertreiber. Beim einen muss der PC mehr arbeiten, beim anderen macht der Drucker selber die meiste Arbeit. fchk
Frank K. schrieb: > marco schrieb:> Die JTAG-Adapter für die AVR's sind doch unfassbar teuer! Wie passt das> zusammen? Gibt es etwa für die JTAg-Adapter von Atmel noch weitere> spezielle Funktionen, die die Teile so teuer machen?Der JTAGice mkii ist deswegen so teuer, weil Atmel für das AVR Studio 4 einiges an Funktionalität von der PC-Software in die JTAG-Hardware verlegt hat, wahrscheinlich um das ganze schneller zu machen. Wenn Du so ein Teil aufschraubst, wird Dir auch ganz schnell klar, wo der Preis herkommt: zwei Mega128, ein separater USB-Chip, extra RAM etc etc.Außerdem JTAG ist nur die Schnittstelle - ähnlich wie bei einem Drucker. Die haben alle Parallelport oder USB, aber sie brauchen unterschiedliche Druckertreiber. Beim einen muss der PC mehr arbeiten, beim anderen macht der Drucker selber die meiste Arbeit.fchk Frank K. schrieb: > weil Atmel für das AVR Studio 4 > > einiges an Funktionalität von der PC-Software in die JTAG-Hardware > > verlegt hat, Das ist wohl auch der Grund weshalb µVision von Keil nicht kostenlos ist und Atmel Studio schon. Danke für die Infos. Da überlegt man sich gleich zweimal ob man überhaupt mit Avr's anfangen möchte. Außerdem gibts bei ARM noch das komfortable Configuration Wizard zum einstellen der SFR's. Gibt bei den Atmel glaub ich auch nicht.
> Das ist wohl auch der Grund weshalb µVision von Keil nicht kostenlos ist > und Atmel Studio schon. Keil war eine separate Firma, die mit diesen Tools ihr Geld verdient hat, und als ARM die übernommen hat, haben sie das einfach so laufen lassen, weil es profitabel war. Das AVR/Atmel Studio wird durch die Chip-Preise querfinanziert und ist daher kostenlos. > Außerdem gibts bei ARM noch das komfortable Configuration Wizard zum > einstellen der SFR's. Gibt bei den Atmel glaub ich auch nicht. "bei ARM" ist falsch. Die SFR sind zum größten Teil nicht Bestandteil des ARM-Kerns, sondern kommen von den Chipherstellern. Das ist also überall anders, quasi das wahre Chaos. Es ist wesentlich einfacher, ein System von AVR32 nach Atmel SAM irgendwas (ARM) zu portieren als von STM32 nach Atmel SAM. Im ersten Fall ist die Peripherie gleich oder zumindest sehr ähnlich, und die unterschiedlichen CPU-Kerne werden durch den C-Compiler nivelliert. Im anderen Fall ist zwar der CPU-Kern gleich, aber Du darfst die Peripherieansteuerung komplett neu schreiben, was deutlich mehr Arbeit ist. "bei den Atmel" ist auch falsch. Du meinst "bei den AVR". Atmel baut auch ARM-basierte Chips. Sei präzise in Deiner Ausdrucksweise. Wer sich ungenau oder falsch ausdrückt, denkt auch falsch. fchk
Frank K. schrieb: > Wer sich ungenau oder falsch > > ausdrückt, denkt auch falsch. Kann gut sein, hab schließlich geschrieben, dass ich noch Anfänger bin. Daher Danke für die Info. Könnt ihr mir vielleicht noch andere µC-Hersteller neben den ARM-basierten Chips nennen, bei denen die Debug-Schnittstelle offengelegt ist, damit man sie "billig" über JTAG programmieren kann und desweiteren 8-Bit breit sind. Die ARM-basierten sind doch alle 32-Bit breit, was ich als Anfänger etwas abschreckend finde.
marco schrieb: > Könnt ihr mir vielleicht noch andere µC-Hersteller neben den > ARM-basierten Chips nennen, bei denen die Debug-Schnittstelle > offengelegt ist, damit man sie "billig" über JTAG programmieren kann und > desweiteren 8-Bit breit sind. Zwar nicht offengelegt, und auch nicht 8, sondern 16 Bit: MSP430. Dafür gibt es zwei unterschiedliche Programmier- und Debugschnittstellen, 4-Draht-JTAG, das notfalls mit einem Parallelport-Frickeladapter ("Wiggler") bedient werden kann und SBW, was so eine Art "2-Draht-JTAG" ist. Das unterstützen nur neuere MSP430-Varianten, aber aus Kostengründen will man sich mit den älteren auch nicht beschäftigen. Einen USB-SBW-Adapter verkauft TI in Form des Launchpads für 4.30 USD inklusive Versand. Mit dem 'G2553 gibt es sogar einen für manche Anwendungen durchaus gut ausgestatteten Controller im Bastler- und Frickelboardfreundlichen 20poligen DIL-Gehäuse. (512 Byte RAM, 16 kByte ROM, flexible Takterzeugung mit bis zu 16 MHz Takt, die üblichen Schnittstellen, 10-Bit-ADC ...) http://www.ti.com/product/msp430g2553 Ansonsten muss man sich allerdings an SMD-Gehäuse gewöhnen, und prinzipiell auf 5V-Technik verzichten.
marco schrieb: > Die ARM-basierten sind doch alle 32-Bit breit, was ich als Anfänger > etwas abschreckend finde. Was ist denn Deiner Meinung nach der "massive" Unterschied zu 8-Bit? ARM ist sogar in Assembler wesentlich einfacher als 8051 oder AVR.
marco schrieb: > Die ARM-basierten sind doch alle 32-Bit breit, was ich als Anfänger > etwas abschreckend finde. Eigentlich ist Gegenteiliges der Fall. Du hast zwar Recht dass die meisten ARM-MCUs sehr komplexe Peripherie haben. Das liegt aber eher daran dass die Architektur solche umfangreichen SFR-Addressräume erst möglich gemacht hat und die Chiphersteller das dankend annehmen. Das allgemeine Programmiermodell eines ARMs mit seinen 4GB linearem Adressraum ist dafür Welten einfacher als auf jedem 8 bzw. 16-bitter den ich kenne. Speicherzugriff, egal auf was, ist immer gleich. Kein Paging, kein Banking, keine gesonderten Speicherbereiche und Zugriffsvarianten.
Lothar schrieb: > marco schrieb: > Was ist denn Deiner Meinung nach der "massive" Unterschied zu 8-Bit? ARM Ist doch einfach: 32 bit ist 4-mal so schwer zu handhaben...
Rufus Τ. Firefly schrieb: > Einen USB-SBW-Adapter verkauft TI in Form des Launchpads für 4.30 USD > > inklusive Versand. Und wieso ist der JTAG-Adapter beim MSP430 dann wieder so billig, wenn die Debug-Schnittstelle nicht offengelegt ist. Finde das irgedwie immer noch alles ziemlich verwirrend. Welche IDE kann man für die MSP430 verwenden? Kann ich hier Keil µVision verwenden?
>Finde das irgedwie immer noch alles ziemlich verwirrend.
Noch nie erlebt, dass "mehr" weniger kostet?
marco schrieb: > Und wieso ist der JTAG-Adapter beim MSP430 dann wieder so billig, wenn > die Debug-Schnittstelle nicht offengelegt ist. Marketing. Der Adapter wird schließlich von TI höchstselbst gefertigt; und wenn man sich die darauf befindlichen Bauteile ansieht (u.a. ein 'F1611), dann sind die alleine schon teurer als das gesamte Launchpad. marco schrieb: > Kann ich hier Keil µVision verwenden? Auch wenn Du zuviel Geld hast: Nein. Es gibt einerseits eine gcc-Portierung, und andererseits mit Rowley Crossworks, IAR Embedded Workbench und TI CodeComposerStudio auch mehrere unterschiedlich teure kommerzielle Produkte. Sowohl den CodeComposer als auch die Embedded Workbench kann man in codegrößenbeschränkter Variante kostenlos von TI beziehen.
marco schrieb: > Frank K. schrieb: >> Wer sich ungenau oder falsch >> >> ausdrückt, denkt auch falsch. > > Kann gut sein, hab schließlich geschrieben, dass ich noch Anfänger bin. > Daher Danke für die Info. > > Könnt ihr mir vielleicht noch andere µC-Hersteller neben den > ARM-basierten Chips nennen, bei denen die Debug-Schnittstelle > offengelegt ist, damit man sie "billig" über JTAG programmieren kann und > desweiteren 8-Bit breit sind. Du kannst jeden PIC nehmen, egal ob 8 (PIC18), 16 (PIC24/dsPIC) oder 32 (PIC32) Bit. Microchip verwendet zwar kein JTAG, sondern ihr eigenes ICSP, aber das zugehörige PicKIT3 kostet im Original 50€, als Nachbau 20-30€. Plus: Du verlierst nur zwei Portpins - bei JTAG sind es 4-5. Und im Gegensatz zu AVR kannst Du jeden PIC über ICSP nicht nur programmieren, sondern auch debuggen. Es gibt auch diverse Programmer zum Selberbauen. Das hat bei den kleinen PICs Tradition, da die ersten anno 198x noch kein Flash, sondern EPROM-Zellen hatten. Mit diesen "Brennern" kannst Du natürlich nicht debuggen. Heutzutage empfehle ich das daher nicht mehr. fchk
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.