Hallo zusammen!
also ich möchte mich in Zukunft mit den ARM Controllern aueinandersetzen
und suche ein möglichst billiges, für Anfänger geeignetes Board.
Ich weiß, es gibt nicht nur auf dieser Seite einige Angebote, habe auch
auf der Homepage des Compilerherstellers Keil einiges gefunden.
Trotzdem möchte ich ein paar Ratschläge,was die Zuverlässigkeit der ARms
generell betrifft.
Ich habe viel darüber gelesen, dass viele Funktionen überhaupt noch
nicht funktionieren, bzw. häufig Designfehler auftreten.
Wie ist der aktuelle Stand der Technik?
Ist es für Hobbyelektroniker/Bastler interessant, sich mit den ARMs zu
beschäftigen, oder kommt außer viel Frust nicht viel dabei raus?
Ich bitte um konstruktive Ratschläge!
Danke!
Gruß
Bernd
Hallo Bernd,
das kommt darauf an, welche Vorkenntnisse Du schon von aderen µCs hast
und welche Anforderungen Du an diese Typen stellen möchtest.
Generell ist es so, daß die Problemchen der einzelnen Hersteller in der
Pheripherie liegen.
Der Core als solches ist davon nícht betroffen.
Für diese Designfehler gibts es ja dann die allseitig beliebten
Erratasheets, in denen die bis zu dem Zeitpunkt festgestellten und
zugebbaren Fehler aufgelistet sind.
Kenne keinen Hersteller wo es keine Erratas gibt (ARM).
Der ARM Core wird ja nun mittlerweile von zig Hersteller lizensiert und
jeder baut seine Pheripherie herum.
Momentaner Standard sind die ARM7(TDMI) und ARM9 Controller.
Die wohl üblichsten Hersteller hier im Forum sind:
NXP (ehemals Philips)
ATMEL
ST
ANALOG Devices
FREESCALE
Texas Instruments
usw.
Bei den NXP Controllern, gibt es schon mit der LPC2000 Serie
(LPC2101/02/03)
kleine (48 TQFP) und kostengünstige Bausteine. Die laufen sogar mit
70MHz
Können also schon relativ schnelle Aufgaben übernehmen.
Um Dir bei Deiner Auswahl zu helfen, müsstest Du vielleicht mal
beschreiben,
was Du mit den Dingern vorhast.
Günstige Testboards und Freeware gibt es auch, sowie JTAG Programmer.
Der ARM Kern hat sich ziemlich als Standard etabliert und sitzt heut in
vielen Applikationen , wie Handys PDAs Navis etc.
Support ist also gegeben
Hallo Bernd,
es ist richtig, dass einige der ARMs eine Vielzahl von Erratas
aufweisen, allerdings ist das für die meisten Anwendungen bei weitem
nicht so tragisch. Du solltest nur vorher sicherstellen, dass die
Peripherals, die du unbedingt benötigtst, auch funktionieren.
Ein Paar Beispiele für Erratas bei LPCs (die kenne ich besser als SAM7
oder STR7):
Die CAN Funktionalität ist bei vielen älteren LPC2000 eingeschränkt,
jedoch gibt es auch neuere Revisionen, in denen der Fehler behoben ist,
ebenso wie bei den LPC23xx.
Das zur Zeit wohl grösste Manko des LPC2378 ist ein Errata zum externen
Bus, bei dem das Schreiben nicht fuktioniert - wenn du also einen LPC
mit externem Bus suchst, ist der LPC2378 zur Zeit nicht die richtige
Wahl.
Wenn du kein konkretes Projekt vor Augen hast solltest du eigentlich bei
jedem LPC2000, AT91SAM7 oder STR7 zugreifen können.
Gruss,
Dominic
Nachteile von STR7: I/O nicht 5V-kompatibel und Einzelbitsteuerung der
I/O-Ports ist problematisch. Scheint so als hätten sie es gemerkt, denn
bei STR9 ist beides ok.
Gerade den Cortex-M3 würde ich einem Einsteiger nicht empfehlen -
ARMv7-M ist zur Zeit eine Einbahnstrasse. Anderer Befehlssatz (Thumb-2,
kein normales "ARM"), anderes Exception Handling etc.
Gruss,
Dominic
Danke euch allen für die Antworten!
@Dirk Hofmann:
Also ich habe bereits Kenntnisse, was AVRs betrifft. Ich natürlich kein
Profi, aber kleinere Programme habe ich bereits realisiert.
Eigentlich habe ich kein spezielles Projekt im Auge, für das ein AVR von
der Geschwindigkeit her nicht genügen würde.
Möchte mich einfach mit dieser neuen Architektur ein wenig "spielen" und
eben kleinere Home-Projecte damit realisieren.
Es gibt keine allzugroßen Anforderungen an die Peripherie, zumindest CAN
ist NICHT nötig...
Ich habe zuerst überlegt, mich mit den neuen 32-Bit AVRs
auseinaderzusetzen,hab es mir dann aber doch überlegt und möchte vorerst
nur ein kleines ARM Board zulegen ;-)
P.S.: Habe die AVRs bis jetzt immer mit WinAVR programmiert.
Ich hab gehört, die WinARM Toolchain ist ähnlich handzuhaben. Ist das
richtig so?!
Mfg
Schau doch mal in den Thread:
Beitrag "ARM9 / STR9 Dev-Kit mit Ethernet/USB/CAN für 39,-"
Ist schon der ARM9 (kein ARM7), läuft mit 96MHz, hat viel Speicher (96KB
RAM + 544Flash) und ein Dev-Kit kostet nicht die Welt (39,- Euro netto).
Dabei ist dann eine komplette Entwicklungsumgebung, Du musst also nix
mehr rumfrickeln.
Für den Preis bekommst Du diese Leistung bei keinem anderen
ARM-Anbieter.
Schau es Dir einfach mal an.
Jürgen wrote:
> Schau doch mal in den Thread:> Beitrag "ARM9 / STR9 Dev-Kit mit Ethernet/USB/CAN für 39,-">> Ist schon der ARM9 (kein ARM7), läuft mit 96MHz, hat viel Speicher (96KB> RAM + 544Flash) und ein Dev-Kit kostet nicht die Welt (39,- Euro netto).> Dabei ist dann eine komplette Entwicklungsumgebung, Du musst also nix> mehr rumfrickeln.> Für den Preis bekommst Du diese Leistung bei keinem anderen> ARM-Anbieter.> Schau es Dir einfach mal an.
Möchte nur wissen, was dieser Schrott auf USB für einen Sinn haben soll.
Was kann man mit dem Ding sinnvolles machen?
Es gibt eben sinnvolle und weniger sinnvolle Dinge.
Denke zum experimentieren würde ich wohl lieber ein Board von OLIMEX
kaufen.
Hi Bernd,
ich will auch irgendwann mal mit dem ARM7 anfangen und hab mir vor ein
paar Wochen folgendes Board besorgt:
http://www.embeddedartists.com/products/boards/lpc2103_pro001.php
Der Versand ist mit 11€ nicht ganz preiswert aber schneller als
blitzschnell.
Ich hab schon ein kleines Testprogramm in C geschrieben und bin mit der
Leitung für den Preis voll und ganz zufrieden. Ich find die ARM7
wirklich interesannt, da es auch sehr preiswerte Varianten gibt und die
etwas größeren ohne Probleme MP3 dekodieren können.
Gruß,
SIGINT
Wenn du zuverlässige ARM 7 suchst dann nimm die TMS 470 von TI
Die sind zwar vielleicht etwas teurer, werden aber seit Jahren in der
Automotive Industrie eingesetzt.
Der zwar ERRATA-behaftete CAN-Bus auf LPC2129 läuft wie geschmiert. Und
auch die restliche Anwendung auf diesem Controller. Hatte ehemals mit
dem FullCAN-Beispiel von Keil begonnen.
Ich bin noch in Gesprächen wegen des Watchdog-Designs. Während eines
ungeschützten Watchdog Feed, d.h. Watchdog Feed ohne SWI, darf kein
Interrupt auftreten, sonst Reset.
Wenn man es weiß, kann man damit umgehen. Z.B. im SWI auch FIQ sperren.
Gruß
Dietmar