www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Low Cost µC mit Double UART und c51 core


Autor: DoubleUart (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

brauche für eine Application zwei UARTs.

Wir haben den 87C51U2 noch am Lager, soll aber nicht mehr verwendet 
werden.

Leider sind unsere Softies noch auf dem 80c51 Tripp, weil schon 
jahrelange Erfahrung.

Daher dachte ich zuerst an den P89LPC954 von NXP, könnte aber wegen nur 
16kB erasable flash etwas eng werden.

Im Post Beitrag "Microcontrollerwahl", war mal die Rede 
von MSP430xxx oder PIC18Fxx. Bei TI fand ich u. a. den LM3S628.

Wie gesagt alles schön und nich zu teuer (Schmerzgrenze, ca. 3Euro),
wenn nur nich die c51 Sache wäre.

Vielleicht gibt es doch noch einen µC mit c51 Core der 2UARTs Onboard 
hat und nicht zu teuer ist.
Hoffe mal es hat jemand schon mal so was in der Art eingesetzt und kann 
mir den Typ posten.

Autor: Tauwetter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>brauche für eine Application zwei UARTs.

Man kann auch eine 2. UART per Software realisieren. Es kommt auf die 
Datenrate und sonstige Forderungen an. 9600Bd sollten kein Problem sein.

Autor: Hans Meier (bauzi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: DoubleUart (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Tauwetter
ahja, hört sich interessant an, zweite ser. wäre RS485 für PELCO.
Habe noch keine gescheite Spec bzgl. Baudrate gefunden, soviel ich weiß 
9600bps, mein Kollege sprach aber mal davon dass sie dass in einer 
älteren App mit 56kbps betrieben haben

Autor: DoubleUart (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Hans Meier
cooler Link, muss mich jetzt mal durchquälen, sieht aber nich schlecht 
aus

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Viele 8051 haben ein PCA, damit kann man prima ne SW-UART proggen.
Welche Baudrate brauchst Du denn?


Peter

Autor: Schrotty (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und die passende Bekleidung für eure Softies gibt´s hier :-)
http://www.stylefruits.de/roecke

Autor: Frankman (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich selbst hab mit 8051 angefangen( MSC1210), bin jetzt aber zu PIC für 
industrielle Designs von Microchip übergewechselt. Wenn man sich 
"Sofwerker" eh mit Programmierung auskennt, sollte es nicht das einzige 
Argument sein.
Ein Kollege von mir Programmiert seit Jahren PIC und hat innerhalb von 
drei Tagen einen 8051 Kern programmiert. Also kann es nicht so schwer 
sein, auf eine andere Prozessorfamilie umzusteigen.

( Meine Meinung ist, wenn man erst mal mit dem 8051 klar kommt, wir man 
das eine oder andere bei Microchip mit Wohlgefallen zur Kenntnis nehmen 
und schätzen lernen.)

Für ein Industriedesign würde ich immer den Prozessor einsetzen, der für 
die Anwendung am besten passt, und nicht den, den ich "schon immer" 
verwendet habe.
Die Entwicklungsumgebung von Microchip ist übrigens kostenlos ( Bis auf 
einen Programmer für 24€ oder eine ICD2 - also Debugger/Programmer - für 
200€)

Autor: Schrotty (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Frankman:
Der Meinung bin ich auch.
Sollte ja nicht sooo schwer sein, sich mal auf einen neuen Core 
einzuarbeiten und somit auch ein wenig mit der Zeit zu gehen.
Früher oder später sind die Controller mit den uralt-Cores dann von 
Abkündigungen betroffen oder so schweineteuer geworden, dass man sie 
nicht mehr einsetzen kann. Und dann ist das Gejammer groß.

Wenn ein Softwareentwickler nicht den geistigen Sprung von einem 8051 
auf z.B. einen Cortex schafft, dann ist er meiner Meinung nach fehl am 
Platz oder einfach nur stinkfaul!

Und da hilft meiner Meinung nach nicht, sich zu verbiegen, um es diesen 
Herrschaften so bequem wie möglich zu machen, sondern mal ein gezielter 
Tritt in den Arsch, dass sie sich bewegen :-)

Autor: Ralf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Von SiLabs gibts ebenfalls 8051-Derivate, manche mit zwei 
Hardware-UARTs, die meistens laufen standardmäßig mit etwa 24,5MHz 
(interner Oscillator 0,5-2%), einige Derivate können bis zu 100Mhz.
Und viel weitere Peripherie vorhanden (SPI, ADC, DAC, I2C, PCA, USB), je 
nach Derivat eben. Falls die Jungs also auf dem 8051-Kern beharren (der 
keineswegs schlecht ist), wäre das eine Anlaufstelle...

Ralf

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frankman schrieb:
> Ein Kollege von mir Programmiert seit Jahren PIC und hat innerhalb von
> drei Tagen einen 8051 Kern programmiert. Also kann es nicht so schwer
> sein, auf eine andere Prozessorfamilie umzusteigen.

Kann ich mir gut vorstellen. Wer sogar mit dem umständlichen PIC 
klarkommt, schafft spielend auch andere MCs.

Ich hatte mal den umgekehrten Weg versucht, vom 8051 zum PIC12, hab aber 
schnell aufgeben müssen. Wenn man erstmal 8051 gewohnt ist, ist einem 
der PIC viel zu kompliziert.

Heutzutage kann man die PICs aber auch in C programmieren, da nimmt 
einem dann der Compiler viele Schrecklichkeiten (Banking, RETLW, ..) ab.

Aber manchmal möchte man doch mal im Assemblerlisting nachsehen, was der 
Compiler so macht. Bei AVR und 8051 gelingt das recht gut, PIC ist 
dagegen starker Tobak. Deshalb nehme ich auch unter C keine PICs.


Peter

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schrotty schrieb:
> Wenn ein Softwareentwickler nicht den geistigen Sprung von einem 8051
> auf z.B. einen Cortex schafft, dann ist er meiner Meinung nach fehl am
> Platz oder einfach nur stinkfaul!

Um z.B. ein paar Relais zu schalten, muß man nicht gleich nen Cortex 
nehmen, nur weil der hip ist.
Man braucht für jede CPU+Toolchain erstmal Einarbeitungszeit, aber das 
Produkt sollte möglichst schon gestern fertig sein.
Auch laufen Steuerungen oft noch in 5V-Technik, weil die auf lange 
Produktzyklen ausgelegt sind und daher noch mit alten Komponenten 
zusammenarbeiten müssen.

Beim 8051 muß man sich auch keine Sorgen wegen Abkündigungen machen, da 
kommen jedes Jahr neue Typen raus.


Peter

Autor: Schrotty (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Um z.B. ein paar Relais zu schalten, muß man nicht gleich nen Cortex
>nehmen, nur weil der hip ist.
Richtig, aber dafür braucht man auch selten zwei UARTs

Ausserdem schrieb ich ja bewusst "z.B."
es kann natürlich auch jeder andere Core sein.

Aber wenn der Cortex 1,50 kostet und der 8051 doppelt so viel, dann kann 
man schonmal drüber nachdenken.

Und wenn die Funktion so simpel ist, dann sollte es auch kein Ding sein, 
es auf jedem Core laufen zu lassen, OHNE sich vorher großartig mit dem 
Core auseinandergesetzt zu haben. Das "richtet" dann schon der Compiler. 
Okay, man muss in´s Datenblatt schauen, um zu wissen, wie man einen 
IO-Port setzt. Aber das muss ich auch, wenn ich unterschiedliche 8051 
Derivate verschiedener Hersteller verwende.
Ausserdem gibt es für jeden "modernen" Prozessor mittlerweile 
supersimple Toolchains mit ausführlichen Beispielen, wo man innerhalb 
einer Stunde imstande sein sollte, eine LED blinken zu lassen.

Was lange Produktlebeszyklen angeht, da kann ich auch ein Lied von 
singen, aber gerade DARUM rate ich, bei einer Neuentwicklung auf moderne 
Technologien zu setzen, da diese erst am Beginn ihrer "Lebensdauer" sind 
und nicht schon zum dritten mal reanimiert wurden. <-bissle übertrieben, 
ich weiss :-)

Autor: Schrotty (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nachtrag:

Die Zeit, in der DoubleUart verweifelt nach einem 8051-Derivat sucht, 
welches seinem SW-Entwickler "genehm" ist, könnte sinnvoll dazu 
verwendet werden, die Toolchain für einen anderen Prozessor in Betrieb 
zu nehmen und schonmal den einen oder anderen Blick in´s DB zu werfen.

Autor: doubleuart (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

um die Diskussion nochmal auf zugreifen:

Ich habe mir noch zwei Optionen überlegt, da die Stückzahl nun als eher 
gering eingeschätzt wird:
1.) Verwendung des 87C51U2 und Speichererweiterung, habt ihr mir dazu 
einen Link?

2.) einen µC als Master einsetzen, der die Hauptkommunikation über die 
erste RS485-Schnittstelle bewätigt und am System hängt, der zweite µC 
arbeitet als Slave und bedient lediglich die PELCO-Schnittstelle

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.