ARM oder C166 für Protokoll-Converter

Gast #154070
Hallo,
stehe vor der Entscheidung eine HW für die Verarbeitung der Daten
zwischen zwei UARTs zu entwerfen. Interesse für ARM kam durch den
Preis.

Schwerpunkt sind:
  Verarbeitung der Protokolle
  UARTs mit 460kBaud und 38,4kBaud
  I/O-Pins
Habe nun in diesem Forum viele Nachteile gehört, die genau diese
Bereiche betreffen. Die XC166er sind leider noch viel zu teuer und
internes RAM und Flash sind sehr interessant für kompaktes Design.

Ist die Einarbeitung kompliziert wenn man z.B. 166 kennt?
Habt Ihr bereits Erfahrung mit ARM und 166 gemacht?

Gruß uhansen
Gast
Welchen Controller kannst Du bereits programmieren? Mit welcher
Programmiersprache hast Du bereits Erfahrungen gesammelt?

Wie komplex ist die Protokollkonvertierung; kann abgeschätzt werden,
wieviel RAM dafür erforderlich ist?

Der LPC2106 (dürfte der kleinste aller ARMe sein) hat zwei UARTs (eine
davon allerdings ohne Handshakeleitungen) und dürfte ausreichend
Rechenleistung für übliche Konvertierungsaufgaben aufweisen. Mit 128
kByte Flash-ROM dürften auch komplexere Programme realisierbar sein,
und mit 64 kByte RAM kommt man auch schon recht weit.
Ein Handicap des 2106 (das ist nicht ARM-spezifisch!) ist die
verhältnismäßig geringe Anzahl I/O-Pins, die vor allem beim Einsatz des
JTAG-Interfaces sich weiter reduziert.

Für ARMe gibt es mit gcc-arm einen erstklassigen C-Compiler; dank der
"flachen" 32-Bit-Architektur sind keine speziellen Sauereien bei der
Programmierung zu berücksichtigen (keine Harvard-Architektur, keine
Segmentierung). Über das JTAG-Interface ist auch anständiges Debuggen
möglich, wenn man denn die erforderliche Hardware hat. Aber auch ist in
der einfachsten Ausführung kein Problem; einen "Wiggler" kann man sich
leicht selbstbauen.

Die UARTs des 2106 sind kompatibel zum in PCs verwendeten Baustein
16550; wer schon mal unter "echtem" DOS diese Bausteine programmiert
hat, dürfte viel vertrautes vorfinden.

Also: Auch ohne den C166 zu kennen, würde ich einen ARM nehmen; reicht
der 2106 nicht, nimmt man halt den nächstgrößeren ...
Gast
Ich kenne den C166 nicht, aber würde auch zum LPC2106 raten.

Die Pinzahl dürfte überhaupt kein Problem sein, da es nur ein
UART-UART-Converter sein soll.

Sowas würde ja sogar in einen 8-Pinner passen (GND, VCC, XTAL1, XTAL2,
RXD0, TXD0, RXD1, TXD1).

Bzw. der LPC2106 hat dann noch 28 Portpins übrig.


Peter

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.