Hallo, ich bin auf der Suche nach einem geeigneten Startkit für einen
Cortex M3. Ich suche nun schon seit einer gefühlten Ewigkeit und habe
eigentlich nicht viele Bedingungen (CAN, USB, PWM, A/D (CAN, USB am
besten gleichzeitig nutzbar))...Standard eben. LCDs und sonstige
spielerein brauche ich nicht denke ich. Ich bin in der ARM bzw. Cortex
Geschichte ein Neueinsteiger und hoffe, dass mir eventuell jemand eine
Hilfestellung geben kann was alles benötigt wird bzw. vielleicht jemand
gute Erfahrungen mit einem Kit gemacht hat und mir dieses empfehlen kann
(allein durch die große Anzahl der Anbieter wird mir ganz anders... ^^).
Eigentlich hatte ich ursprünglich das Board "STM32-P103 HEADER BOARD FOR
STM32F103RBT6 CORTEX M3 ARM MICROCONTROLLER" von Olimex in der Engeren
Wahl, aber dort ist wie gesagt nur USB oder CAN nutzbar. Die STM haben
ja Angeblich einige Vorteile gegenüber den LCP (unter anderem mehr
Beispiele, Hilfen und ein besseres Datenblatt wenn ich richtig
informiert bin).
Momentan überlege ich alternativ etwas umfangreiches zum lernen und
etwas kleines zum Verbauen zu bestellen.
Ich weiß, dass dieses Thema schon ab und zu angestoßen wurde, allerdings
konnte ich keine neueren informativen Einträge finden.
Ich hoffe jemand hat Mitleid mit mir und kann mir etwas helfen ;-)
Danke.
Hallo, Neuling!
Richtig, bei den STM32F103ern ist USB nicht mit CAN gleichzeitig zu
betreiben, beim 105er und 107er aber - das ist die "Connectivity Line" -
geht das sehr gut. Ich verwende das STM3210C, wo ein 107VCT6 aufgelötet
ist. Es hat alle wichtigen Schnittstellen (CAN sogar beide Kanäle)
herausgeführt, ein LCD, "Touch", MicroSD und Hastenichgesehen. Mit rund
160 Euronen netto schlägt es einem Bastler (egal ob Anfänger) klar auf
die Brieftasche. Sicherlich ist es sein Geld wert, auch wenn mich der
notwendige Aufwand beim Brenn-Prozedere enttäuscht.
Da Du schriebst, Du brauchest CAN, fällt die gesamte NXP-Schiene weg.
Deren CAN-Peripherie ist fehlerüberladen, will man den Unmengen an
Erfahrungsberichten in Foren glauben. Das Datenblatt ist in der Tat
besser bei den µC von STM, aber kein Vergleich zu Atmel (war sehr von
denen angetan).
Atmel-M3er hannste knicken, weil bisher keine reguläre Ware lieferbar
ist, die auch CAN hat. Sogar der ATSAM3S4C-AU (hat kein CAN) ist seit
über eineinhalb Jahren für ab Ende 2009 als lieferbar angekündigt. Erst
jetzt, nach 30 Wochen Lieferzeit, erhielt ich die erste Schütte von 90
Stück. In Bastlermengen sind die Schusser nicht aufzutreiben. Selbst
Frau Schick von Atmel Deutschland konnte mir damals nur ein paar Muster
besorgen. Deshalb habe ich Atmel (zumindest für ARM) den Rücken gekehrt.
Meine Empfehlung also: STM3210C, siehe auch
wpö.de->Projekte->Mikrokontroller. Die einfachsten STM32F105er kosten
auch nur 2,95 € netto bei EBV, sind also erhältlich.
Gruß - Wolfgang
Wenn Du nicht unbedingt auf den konkreten Prozessorcore angewiesen bist:
PIC32MX795. Funktioniert, alles aus einer Hand und somit für den
Einstieg besser geeignet. Und der Support von Microchip und die
Verfügbarkeit entsprechender Bibliotheken ist schon ziemlich gut.
Wenn es ein M3 sein muss, kannst Du Dir auch noch die TI/Luminary Micro
Serie als Alternative anschauen und dann entscheiden.
fchk
Danke für die schnellen Antworten. Man hört momentan eben aus allen
Richtungen, dass wenn man schon in die 32 Bit Welt möchte auf Cortex M3
setzen sollte (eventuell auch auf die R-Serie). Bei mir lief es in den
letzten Tagen halt nach dem Motto: Controller gefunden ... kein gutes
Board vorhanden, Board gefunden .... Hersteller mit schlechten
Bewertungen (zu viele Fehler und schlechte Datenblätter und damit keine
Hilfe) ect.. Ich finde es relativ schwer hier die Übersicht zu behalten,
gerade weil es keine allgemeinen Vergleich gibt und jeder sein eigenes
Süppchen zu kochen scheint, Anwender wie Hersteller. Bevor ich belehrt
werde, ich weiß, dass Vergleiche schwer zu machen sind, ich dacht dabei
auch eher an solche Aussagen wie sie Wolfgang getroffen hat, oder Listen
von verfügaren Boards.
Der Preisunterschied der beiden Boards (LPC und STM) ist schon
ordentlich, ich werde mich morgen nochmal damit auseinander setzen.
Achso Wolfgang, kannst du mir bitte sagen wo du dein Board bestellt
hast, ich finde hier ständig Angebote ab 250 Euro bist weit über 400
Euronen. Evenuell gibts Unterschiede im Zubehör zwischen den
Anbietern.?. Das Entsprechende Projekt unter Wöpe scheint es leider auch
nicht mehr zu geben.
Neuling schrieb:> Danke für die schnellen Antworten. Man hört momentan eben aus allen> Richtungen, dass wenn man schon in die 32 Bit Welt möchte auf Cortex M3> setzen sollte (eventuell auch auf die R-Serie).
Ja, hört man. Gegenüber Arm7 ist der M3 eine deutliche Verbesserung.
Aber was nicht so laut gesagt wird: Der Umstieg z.B. von einem NXP
LPC1768 auf einen TI/Luminary LM3S8952 ist genauso viel Arbeit wie ein
Umstieg auf einen PIC32MX695, obwohl letzterer einen völlig anderen,
aber nicht minder leistungsfähigen Kern (MIPS) hat. Grund ist eben, dass
die gesamte Peripherie komplett unterschiedlich ist. Gut, beim Schritt
vom ARM7 auf M3 wurde schon etwas vereinheitlicht, aber bedenke, dass es
immer noch nur der Kern ist, der überall gleich ist. Nichts weiter.
Also schaue zuerst auf:
1. benötigte Peripherie
2. Herstellersupport (Bibliotheken, Tools, Support,...)
3. Lieferfähigkeit
Ich persönlich habe in den letzten Jahren Microchip lieben gelernt.
Nicht dass die Teile dort nicht auch Bugs hätten. Das gibts anderswo
genauso. Sondern die umfangreiche Verfügbarkeit von Tools und
Bibliotheken und Beispielen, und die Lieferfähigkeit. Was nützt mir der
schönste Controller, wenn der Hersteller eben mal all seine Fabs
verkauft und dann keine Foundry-Kapazitäten auf dem Markt bekommt. (Huhu
Atmel, winkewinke) Sorry, so etwas ist wirklich das ultimative
KO-Kriterium.
Was für Bytefolgen da der C-Compiler nun konkret erzeugt, ist mir
inzwischen fast egal. Heutzutage entwickelt kaum noch jemand in größerem
Stil in Assembler als dass das wirklich wichtig wäre.
fchk
Moin!
"Wöpe" ist verkehrt. Mit http://wpö.de/index.php?EK_Mikrokontroller
kommste gleich zum Ziel.
Frank: Das mit dem Verkauf der Fabriken ist allein rein kaufmännisch
gesehen eine einzige Lachnummer von Atmel gewesen. Aus der
Nichtverfügbarkeit der ARM7 und M3 habe ich diese Firma für ARM-µC
abgeschrieben, obwohl ich immer große Stücke auf Atmel gehalten habe.
Ich komme von der AVR-Schiene und da war man gezwungen, für
zeitkritische Routinen - meistenteils ISR - Assembler zu verwenden.
Nun sehe ich selbst für die leistungsfähigsten Prozessoren (i7, Opteron
usw.) noch Bedarf für Assemblerprogrammierung. Das wird sich auch mit
noch größerer Rechenleistung nicht ändern. Ich stehe nämlich auf dem
Standpunkt, die ISR-Funktionalität darf man zwar in C entwickeln, gehört
dann aber nach ASM konvertiert und optimiert. Eine ISR hat gefälligst so
schnell wie möglich zu sein. Damit gehöre ich wohl noch zur alten
Schule.
Gruß - Wolfgang
>Atmel-M3er hannste knicken, weil bisher keine reguläre Ware lieferbar>ist, die auch CAN hat. Sogar der ATSAM3S4C-AU (hat kein CAN) ist seit>über eineinhalb Jahren für ab Ende 2009 als lieferbar angekündigt. Erst>jetzt, nach 30 Wochen Lieferzeit, erhielt ich die erste Schütte von 90>Stück. In Bastlermengen sind die Schusser nicht aufzutreiben. Selbst>Frau Schick von Atmel Deutschland konnte mir damals nur ein paar Muster>besorgen. Deshalb habe ich Atmel (zumindest für ARM) den Rücken gekehrt.
bei digikey ist der erwähnte ATSAM3S4C lagernd.
gruss
gerhard
Das Erratasheet vom LPC1768 sieht eigentlich recht manierlich aus. Wenns
nicht grad völlig gelogen ist, dann hat NXP wohl aus dem Desaster mit
dem LPC2129 gelernt, denn auf dessen CAN Controller passt das Gleichnis
von startenden Löwen und landenden Bettvorleger.
Wenn Du Dir ein Starterkit besorgst kann ich Dir nur wärmstens empfehlen
ein professionelles JTAG Interface zu nutzen. J-Link von Segger gibt es
für ~60,-EUR inkl Porto: http://www.segger.com/cms/j-link-edu.html
Nutze ich privat mit STM32F107 und LPC1768 und in der Firma mit
STM32F103/STM32F100.
Als Anregung oder Alternative: Versuche nicht gleich von 0 auf
100 zu springen. Die Geschmäcker sind verschieden und eine µC
Familie die der eine ganz toll findet, kann für den nächsten
schon schlecht sein. Beispiel Datenblatt: Mit der Doku vom STM32
komme ich nicht besonders gut zurecht. Und ich glaube wer auch
immer diese Timer designed hat war auf Droge. Aber gerade die STM32
Reihe scheint sich großer Beliebtheit zu erfreuen.
Mein Vorschlag also: Sieh dir die Datenblätter und die Entwicklungs-
umgebungen für die Beispiele der jeweiligen Hersteller an.
Damit mußt du zurecht kommen. Dann besorge dir nicht gleich das
umfassendste Starterkit, sondern nimm ein kleines. Oder gleich
zwei von verschiedenen Herstellern. Die haben üblicherweise gleich
einen Debugger eingebaut. Das ist am Anfang vielleicht nicht verkehrt.
Gehe also erst in die Breite und dann in die Tiefe.
Als einfache Starterkits fallen mir spontan das STM32 Discovery und
das LPCxpresso (17xx) ein. Die kosten jeweils ca. 20€ bzw. 30€.
Frank K. schrieb:> er was nicht so laut gesagt wird: Der Umstieg z.B. von einem NXP> LPC1768 auf einen TI/Luminary LM3S8952 ist genauso viel Arbeit wie ein> Umstieg auf einen PIC32MX695, obwohl letzterer einen völlig anderen,> aber nicht minder leistungsfähigen Kern (MIPS) hat. Grund ist eben, dass> die gesamte Peripherie komplett unterschiedlich ist. Gut, beim Schritt> vom ARM7 auf M3 wurde schon etwas vereinheitlicht, aber bedenke, dass es> immer noch nur der Kern ist, der überall gleich ist. Nichts weiter.
Das Stimmt, die Verwendung der Peripherie ist doch recht
unterschiedlich. Aber bei beiden nicht wirklich schwer. Benutze bei mir
sowohl den LPC1768 und den LM3S6965. Von den Registern her finde ich es
beim LPC besser gelöst. Das entscheidende bei der Auswahl ist aber
letzten Endes die benötigte Peripherie.
Neuling schrieb:> Der Preisunterschied der beiden Boards (LPC und STM) ist schon> ordentlich, ich werde mich morgen nochmal damit auseinander setzen.
Kommt halt immer auf die zusätzliche Hardware auf dem Board an.
Stampboards wo lediglich der Cortex mit ausgeführten Pins drauf ist
gibts auch schon ab 10€ oder so. Muss man halt wissen was man haben
möchte.
Was mir bisher nicht aufgefallen ist, die aktuellen Controller haben
alle kein EEPROM. Gibt das Probleme beim speichern von z.B. Messwerten
bzw. gibt es einen Ausweg oder muss man extra noch ein externes EEPROM
anschließen? Die neuen Serien mit internem EEPROM scheinen ja alle noch
in Entwicklung zu sein -.-
Das mit dem Fehlen jeglichen EEPROMs im M3er habe ich schon bei einem
Hersteller bemängelt. Antwort: keine. Ich nutze den AT25640B-SSHL-B am
SPI (wovon die meisten M3er wenigstens zwei haben). Der ist groß und
schnell genug für so ein paar Daten zu sichern.
Gruß - Wolfgang
Neuling schrieb:> Was mir bisher nicht aufgefallen ist, die aktuellen Controller haben> alle kein EEPROM. Gibt das Probleme beim speichern von z.B. Messwerten> bzw. gibt es einen Ausweg oder muss man extra noch ein externes EEPROM> anschließen? Die neuen Serien mit internem EEPROM scheinen ja alle noch> in Entwicklung zu sein -.-
Wahrscheinlich passen die erforderlichen Halbleiterprozesse nicht
zusammen. Wenn Du aus Platz- oder sonstigen Gründen internes EEPROM
brauchst, dann musst Du einen Kern wählen, der in einem passenden
Prozess gefertigt wird.
fchk
Danke, aber die scheinen alle keinen CAN zu haben, ich denke das ist ein
externer EEPROM noch einfacher zu realisieren als den CAN irgenwie
dranzuwurschteln (wenn das überhaupt so geht), außerdem treibts mir bei
den Eval Preisen und der Auswahl die Tränen in die Augen^^.
Mann kann die Funktion von EEPROM oft durch Flash ersetzen. Das sieht
dann zwar programmtechnisch anders aus als bei EEPROM, d.h. es ist kein
direkt adressierter Zugriff möglich, ist aber für viele EEPROM-üblichen
Anwendungen wie Konfigurationsdaten ausreichend. Zu Details siehe
Appnotes der Hersteller.
Die neue LPCXpresso mit einer LPC1769 hast einer kleiner errata list
http://www.embeddedartists.com/products/lpcxpresso/lpc1769_xpr.php
25 Eur (mit mwst) für einer 100+Mhz 32-bitter , ist nicht teur.
"Minus" wann du die eingebaute debugger brauchen wollte , dan muss man
die CodeRed IDE brauchen.
Aber die Jtag Pins sind da (für einer andere debugger)
mfg
Bingo Dänemark
Da es für den LCP1769 scheinbar keine preiswerten Boards gibt (außer
Xpresso) werde ich wohl das hier entscheiden:
http://www.steitec.net/ARM-Boards/ARM-LPC1768-Cortex-M3-LCD-Board.html
Der Umstieg auf einen 69er sollte dann ja nicht so schwer sein.
Kann jemand sagen ob es Vorteile bringt das Display abnehmbar zusätzlich
zu bestellen?
Ich habe mir auch mal das mbed angeschaut, aber nur online proggen ist
eher nicht so berauschend...
Neuling schrieb:> Da es für den LCP1769 scheinbar keine preiswerten Boards gibt (außer> Xpresso) werde ich wohl das hier entscheiden:> http://www.steitec.net/ARM-Boards/ARM-LPC1768-Cortex-M3-LCD-Board.html> Der Umstieg auf einen 69er sollte dann ja nicht so schwer sein.> Kann jemand sagen ob es Vorteile bringt das Display abnehmbar zusätzlich> zu bestellen?
Die LPC1769/68/67/66/65/64/63 sind bis auf den Speicher nahezu
identisch. Gibt für die auch nur ein gemeinsames Datenblatt.
Der Vorteil ohne Display -> du kannst die dort verwendeten Pins bequem
auch für andere Dinge nutzen.
STM32 Boards gibts aus China sehr günstig.
http://shop.ebay.de/i.html?LH_AvailTo=77&_nkw=stm32
Hab mehrere
Mini STM32 Board STM32F103VET6+2.4 LCD+Touch Panel
für unter 40.- aus China gekauft. Kein Zoll oder sonst was.
War nach 20 Tagen da .
uC/II mit sourcen und GUI für KEIL MDK / IAR WB sind dabei.
Mit freundlichen Grüßen , Norman
Norman Bates schrieb:> STM32 Boards gibts aus China sehr günstig.
Habe auch ein paar von denen im Einsatz. Nicht so der Hit was die
Qualitaet anbelangt. Z.Bsp. ging plötzlich die LED nicht mehr. Ursache:
kalte Lötstelle. Dann ging plötzlich RTC nicht mehr. Ursache: kalte
Lötstelle.
Okay, bei den Preisen kann man ja nicht viel sagen.
Was mich an den China "Brettern" abgeschreckt hat sind vor allem die
Aussagen über fehlende oder Chinesische Dokumentationen. Klar ist man
mit eine Schaltplan (wenn stimmig) schon gut bedient, aber gerade als
Anfänger bin ich für jede fehlerfreie Unterstützung dankbar. Ich denke
das Minimum wird es erst mal tun (XPRESSO) leider sind die
vorgeschlagenen 1769er erst wieder im April erhältlich. Deshalb muss
wohl ein 1968er her halten. Wobei die LPC wohl auch einige Nachteile
gegenüber den SMT haben gerade in Dingen Abtastrate (oder ich bin zu
doof das Datenblatt zu lesen ... ich finde die Angaben teilweise
bisschen verwirrend^^....).
Danke noch mal an alle für die Hilfe.
Neuling schrieb:> Klar ist man mit eine Schaltplan (wenn stimmig) schon gut bedient
:D
Musste Pin für Pin nachmessen und Korrekturen im Schaltplan vornehmen.
Wie gesagt: bei den Preisen kann man nichts sagen; aber nochmals würde
ich mir das nicht mehr antun.
Also wenn nicht mal die Pinbelegungen stimmen, dann weiß ich ja was man
von den Signalwegen zu halten hat^^. Aber wenn man sieht, dass hier
Boards mit LCD Display für 50 Euro raus gehauen werden, dann würde sich
das wohl sogar lohnen wenn man das Ding nur als Bauteilspender kauft^^.
Also bei den LPC1768 Board von Seitec ist sowohl ne (kurze) Anleitung
dabei und einiges an Beispielcode. Der Schaltplan ist dort auch
verfügbar und korrekt. Also kann man sich eigentlich nicht beschweren.
Btw. ist es ja eh egal ob es Beispielprogs direkt vom Hersteller gibt.
Die Beispiele von anderen für den µC tun es ja genauso, muss man halt
nur evtl. die Pins anpassen. Aber das sollte ja kein Problem darstellen.
Beim LPC find ich auch das Manual von NXP ganz vernünftig. Damit kommt
man auch schon gut zurecht.
Großer Nachteil an LPC sind die im Vergleich schlechten A/D Wandler:
max 200kHz (STM 1MHz)
10 Bit (und davon auch noch 4 als max. Fehler) (STM 12Bit)
Da hat STM die Nase doch vorn auch was die D/A Ausgänge angeht (naja und
über Atmel die ihre Fehler noch nicht mal angeben können reden wir
besser nicht ^^)
korrigiert mich wenn ich falsch liege ;-P
(aber von den Einführungsvideos bei NXP war ich schon etwas begeistert)