Forum: Mikrocontroller und Digitale Elektronik Nuvoton N76E003


von Ralph S. (jjflash)


Lesenswert?

Ich bin hier in einem Thread über den N76E003 von Nuvoton "gestolpert" 
und finde den als MCS51 interessant:

- 16 MHz interner Osizillator
- 16 kByte Flash
- 1 kByte SRAM
- intern SPI, I2C
- ICP / ISP programmierfähig (und da liegt der Hund begraben)

10 Stck. bei Ebay 6 Euro

Datenblatt gibts auch aaaaaaaaaaaaaaaaaaaaber:

Nuvoton läßt sich nicht darüber aus (auch nicht im Datenblatt, oder ich 
hab was überlesen) wie man das Teil programmiert. Sie verweisen auf den 
Technical support (der sich natürlich nicht gemeldet hat).

Für das Teil würde ich gerne einen eigenen Flasher bauen (weil für 
Linux) finde aber nirgendwo im Netz Informationen darüber, wie das zu 
bewerkstelligen ist.

Das Datenblatt läßt sich nur darüber aus, wie eine Software geschrieben 
sein muß, damit das Teil sich selbst flasht (kann man dann sogar einen 
Bootloader schreiben), aber eben nicht, welche Vorgänge bei ISP / ICP 
vonstatten gehen müssen.

Hat irgendwer hierzu Informationen oder kennt einen Link die er mir 
zukommen läßt?

--------------------------------------------

By the way: Wikipedia gibt für das Unternehmen Nuvoton einen 
Jahresumsatz von 7,941 Mio. NTD (neue Taiwanische Dollar) aus, das sind 
umgerechnet nicht ganz 250.000 Euro.

Kann es sein, das ein Halbleiterhersteller sooooooo wenig Umsatz hat 
(bei 1200 Mitarbeitern) ?

von MaWin (Gast)


Lesenswert?

Ralph S. schrieb:
> Kann es sein, das ein Halbleiterhersteller sooooooo wenig Umsatz hat ?

Wenn man dessen Chips nicht programmieren kan...

von Ralph S. (jjflash)


Lesenswert?

MaWin schrieb:
> Wenn man dessen Chips nicht programmieren kan...

na ja, sie bieten ein Programmiergerät an (das mir aber zu teuer für 
eine Spielerei ist)...

von Bantun (Gast)


Lesenswert?


von Ralph S. (jjflash)


Lesenswert?

Bantun schrieb:
> http://embedded-lab.com/blog/getting-started-nuvot...

Da gibt es ausschließlich eine Codesammlung wie Software für das Teil 
geschrieben wird (und das ist nicht wirklich ein Problem), mit keiner 
Silbe wird darauf eingegangen, welches Programmiergerät verwendet wurde.

Wie bei der Schematic zu diesem Testboard zu sehen ist, dient die 
USB-Buchse (wie vermutet) ausschließlich der Spannungsversorgung

von pegel (Gast)


Lesenswert?

Dann lies gleich den ersten Satz in dem Beitrag und klicke auf das 
"here".

von Georg-G (Gast)


Lesenswert?

Für einen anderen Nuvoton Typ hatte ich eine wochenlange Korrespondenz 
mit dem Hersteller und der deutschen Vertretung. Alles war erfolglos. 
Ich habe einen anderen Hersteller genommen, obwohl der Nuvoton ideal 
erschien. Der Support is einfach unterirdisch.

von Zeit Geist (Gast)


Lesenswert?

Ralph S. schrieb:
> Ich bin hier in einem Thread über den N76E003 von Nuvoton "gestolpert"
> und finde den als MCS51 interessant:
>
> - 16 MHz interner Osizillator
> - 16 kByte Flash
> - 1 kByte SRAM
> - intern SPI, I2C
> - ICP / ISP programmierfähig (und da liegt der Hund begraben)

Was ist an diesem so interessant dass man es nicht mit einem
"beliebigen" anderen Controller auch machen könnte?

Der Preis? Ja, spare nur, koste es was es wolle.

Ansonsten fällt mir nur noch versteckte Eigenwerbung ein...

von Jim M. (turboj)


Lesenswert?

Hast Du Dir mal die EFM8 von Silabs angeschaut? Die könnte man mit einem 
(halbwegs modernen) JLink Programmieren.

Gäbe es in lötbaren Gehäuse zu ähnlichen Preisen (z.B. bei Digikey).

von Peter D. (peda)


Lesenswert?

Zeit Geist schrieb:
> Was ist an diesem so interessant dass man es nicht mit einem
> "beliebigen" anderen Controller auch machen könnte?

Der 8051 ist weit verbreitet und es gibt viele Codebeispiele, sowie 
freie C-Compiler.
Der 8051 läßt sich aber auch sehr einfach in Assembler programmieren, 
erheblich einfacher als z.B. PIC. Man merkt am Befehlssatz, daß die 
Entwickler mitgedacht haben.

von Christopher J. (christopher_j23)


Angehängte Dateien:

Lesenswert?

Der N76E003 scheint auch Pin-kompatibel zu den, bei den Chinesen zuletzt 
sehr beliebten, STM8Sxxx zu sein (z.B. STM8S103F3P6). Sieht schon recht 
interessant aus das Teil.

Auf der Produktseite findet man unter "Ressourcen" unter "Software" das 
"NuMicro_ISP_Programming_Tool_V2.05" und in dieser .zip befindet sich 
doch tatsächlich der Source-Code von dem Windows-Programming-Tool. Ich 
hab den mal ganz frech in alter Chinesen-Manier hier angehängt. Damit 
sollte sich zumindest die Arbeit des Reverseengineerings in Grenzen 
halten, wenn denn jemand vor hat so ein Flash-Tool für die Dinger zu 
schreiben.
Für mich sieht es jedenfalls so aus, als sei die eigentliche Magie in 
dem NuLink-Adapter und dieser wird einfach als HID-Device angesprochen. 
Die eigentliche Flash-Logik ist in ISPProc.h/.cpp und ISPLdCMD.h/.cpp 
relativ übersichtlich.

Vermutlich gehen die Chinesen davon aus, dass Menschen besser 
Source-Code als englische Datenblätter lesen können ;)

PS:
Ralph S. schrieb:
> By the way: Wikipedia gibt für das Unternehmen Nuvoton einen
> Jahresumsatz von 7,941 Mio. NTD (neue Taiwanische Dollar) aus, das sind
> umgerechnet nicht ganz 250.000 Euro.

Das ist ein typischer Fall von Punkt-vs-Komma als Tausendertrennzeichen. 
Der wirkliche Umsatz dürfte bei ~250 Millionen Euro gelegen haben.

: Bearbeitet durch User
von Chris (Gast)


Lesenswert?

Den nulink gibt es fur ca 15 euro beim chinamann.
Das Protokoll zum Flaschen für Novotron wurde auch schon entschlüsselt 
und ein patch für jtag Adapter gepostet, in einem RC Helikopter/Drohne 
Thread versteckt.  Es macht was proprietäres  vor dem Flaschen um das 
Flash freizuschalten.
Irgendwas invertiert oder eine andere Signalfolge. Ansonsten Standard 
Protocol.
Link eines solchen clone:
https://m.de.aliexpress.com/item/32842810688.html?trace=wwwdetail2mobilesitedetail&productId=32842810688&productSubject=Nu-Link-ICP-programmer-for-Nuvoton-all-Cortex-M0-Cortex-M4-ARM-microcontroller-emulator-downloader-support

von Christopher J. (christopher_j23)


Lesenswert?

Chris schrieb:
> Den nulink gibt es fur ca 15 euro beim chinamann.

Gibts auch für unter 10€: 
https://www.aliexpress.com/item/Special-simulator-downloader-NuLink-support-M0-M4-seires-chips/32815222785.html

Chris schrieb:
> Das Protokoll zum Flaschen für Novotron wurde auch schon entschlüsselt
> und ein patch für jtag Adapter gepostet, in einem RC Helikopter/Drohne
> Thread versteckt.  Es macht was proprietäres  vor dem Flaschen um das
> Flash freizuschalten.
> Irgendwas invertiert oder eine andere Signalfolge. Ansonsten Standard
> Protocol.

Das ist aber für Cortex-M und nicht für den 8051 um den es hier geht. 
Außerdem kann man für die Cortex-M von Nuvoton auch gleich OpenOCD mit 
einem ST-Link, J-Link oder was auch immer nehmen. Läuft natürlich auch 
unter Linux aber hier geht es explizit um den N76E003, was eben kein 
Cortex-M ist.

: Bearbeitet durch User
von Peter D. (peda)


Lesenswert?


von Christopher J. (christopher_j23)


Lesenswert?

Peter D. schrieb:
> Ich lese da immer nur M0/M4.

Es scheint trotzdem zu funktionieren, weil sie eben einfach die 
Original-Firmware auf die Clones flashen. Bei den Bewertungen zu 
folgendem Clone schreibt etwa einer konkret, dass das Ding mit dem 
N76E003 funktioniert:
https://www.aliexpress.com/item/Nu-Link-Downloader-simulator-NuLink-offline-download-function-Full-series-of-N76E003/32873175554.html

von Chris (Gast)


Lesenswert?

Ich weiss dass es um den 8032 geht, der wird aber mit derselben HW 
programmiert entweder mit den treibern für Keil welche man installieren 
muss oder mit standalone SW welche den nulink direkt anspricht. 
Zumindest mit Keil geht dieser Adapter Von dem Shop für den 76... . dass 
es diesen günstiger gibt keine Frage, ich habe ihn dort bestellt und er 
funktioniert.

von Gerd E. (robberknight)


Lesenswert?

Ralph S. schrieb:
> Ich bin hier in einem Thread über den N76E003 von Nuvoton "gestolpert"
> und finde den als MCS51 interessant:
>
> - 16 MHz interner Osizillator
> - 16 kByte Flash
> - 1 kByte SRAM
> - intern SPI, I2C
> - ICP / ISP programmierfähig (und da liegt der Hund begraben)
>
> 10 Stck. bei Ebay 6 Euro

Musst Du Dir das Leben unbedingt schwerer als nötig machen?

Ich würde als Alternative mal den STM32F030F in den Ring werfen, auch in 
TSSOP20, kosten etwas weniger als 0,50 EUR / Stück inkl. Versand:
https://www.aliexpress.com/item//32874877633.html

Für die gibt es nicht nur tonnenweise gute Dokumentation und Beispiele, 
sondern auch günstige Programmieradapter.

Und wie hier gerade erst ausführlich diskutiert:
Beitrag "Re: Controller mit größerem Flash als angegeben?"
sind das die selben ICs wie die STM32F031F6, die Dinger haben also 
gleich 32kB Flash / 4k RAM.

von pegel (Gast)


Lesenswert?

Gerd E. schrieb:
> https://www.aliexpress.com/item//32874877633.html

Ich hätte da auch schon öfter bestellt, da auf der Seite PayPal steht.
Wenn man aber weiter geht, wollen die alle meine Daten haben und von 
PayPal kein Wort mehr.

Bei anderen ist es ja so, dass man Zahlung mit PayPal drückt und die 
Lieferadresse gleich übergeben wird.

Bin ich zu dumm dazu, oder geht das wirklich nicht?

von Gerd E. (robberknight)


Lesenswert?

pegel schrieb:
> Gerd E. schrieb:
>> https://www.aliexpress.com/item//32874877633.html
>
> Ich hätte da auch schon öfter bestellt, da auf der Seite PayPal steht.
> Wenn man aber weiter geht, wollen die alle meine Daten haben und von
> PayPal kein Wort mehr.

Du musst Dich halt einmal bei Aliexpress anmelden, einen Account anlegen 
und Deine Adresse eingeben. Nicht wirklich anders als bei anderen 
Onlineshops auch.

Hinterher kannst Du mit Kreditkarte, Giropay, Sofort (igitt) zahlen, das 
ist günstiger. Paypal geht bei manchen Händlern auch, kostet aber immer 
Aufschlag.

von pegel (Gast)


Lesenswert?

Aha, danke.

von Christopher J. (christopher_j23)


Lesenswert?

Gerd E. schrieb:
> Musst Du Dir das Leben unbedingt schwerer als nötig machen?
>
> Ich würde als Alternative mal den STM32F030F in den Ring werfen, auch in
> TSSOP20, kosten etwas weniger als 0,50 EUR / Stück inkl. Versand:
> https://www.aliexpress.com/item//32874877633.html

Ich glaube der Ralph ist Ausbilder und von daher ist der 8051 von 
Nuvoton eher von pädagogischem Wert ;) Ansonsten gebe ich dir völlig 
recht.

von Ralph S. (jjflash)


Lesenswert?

Christopher J. schrieb:
> Ich glaube der Ralph ist Ausbilder und von daher ist der 8051 von
> Nuvoton eher von pädagogischem Wert ;) Ansonsten gebe ich dir völlig
> recht.

Oha, stimmt ganz genau... Woher weißt du das und kennen wir uns ?

Und natürlich hab ich den STM32F030 (andere STM32 auch) im Repertoire 
(und den mag ich sehr)... Der Nuvotron würde mein "Setup" der 
verschiedenen MCU's erweitern.

MCS-51 hab ich mit erscheinen und größer werden von AVR und dann ARM 
nicht weiter verfolgt (ich kenne auch EFM8).

Ich selbst bin mit 8080/8085 und dann eben mit MCS-48 und MCS-51 groß 
geworden und bis letztes Jahr war der verwendete Controller an der 
Berufsschule ein MCS-51 (eigentlich zu meinem Leidwesen weil wirklich 
veraltet), aaaaaaaaber:

Zum Einstieg in die Digitalelektronik war/ist ein MCS-51 aufgrund der 
Menmonic wirklich gut. Aufgrund der einfachen und extrem übersichtlich 
Struktur des Chips und der sehr überschaubaren Peripherie konnten gut 
Dinge veranschaulicht werden. Natürlich weiß ich, dass immer wieder 
gesagt wird: "Was willst du mit dem ollen Ding" und das stimmt ja in 
bestimmten Bereichen auch, aber wie gesagt, zum Veranschaulichen war das 
gut. Außerdem ist es sehr erstaunlich, wie lange sich MCS51 in seinen 
verschiedenen Derivaten bis heute hält und das, obwohl sich Intel schon 
sehr lange nicht mehr mit dem beschäftigt.

Da ich nicht nur Ausbilder bin, sondern auch Elektronik entwickle, muß 
ich sagen, dass ich in Projekte schon sehr lange keine MCS-51 mehr 
einsetze (die letzten Chips waren hier - auch schon ein paar Jahre her - 
AT89C2051.. Software wurde hier auf ATtiny2313 umgestellt und am Layout 
nur der Reset geändert).

Der Nuvotron reizt mich in sofern, dass mit diesem ein Board machbar 
wäre, dass die Abmessungen eines Arduino Uno r3 und dessen Pinconnector 
hat und eben die Leistung in etwa eines ATmega168).

Nein, ich bin kein Freund der Arduino IDE, aber Hardwareerweiterungen 
hierfür sind unschlagbar günstig und selbst ST verwendet mit den Nucleo 
Boards diesen Connector.

Auf der Arbeit existieren mittlerweile Boards in diesem Format natürlich 
mit ATmega, auch originale UNO (weil diese in der Abschlußprüfung Teil 1 
verwendet werden), Nucleo 401 und 411 sowie Eigenbauten für den 
STM8S103K, STM32F103, LPC11C24 und einem AT89S52 (der auf dem Board ein 
Tiny2313 hat, der ihn flasht).

Der Nuvoton könnte den S52 ersetzen, weil ich für diesen evtl. einen 
Bootloader schreiben kann und auf dem Board dann nur noch eine USB zu 
UART Bridge nötig wäre.

Ich habe mir ein paar Chips und einen Nu-Link bestellt... mal gucken was 
dabei herauskommt.

Was mach ich "pädagogisch" mit MCS-51 ?

Erklären was :
- Prozessorregister sind
- Flags sind
- Akku ist

und dann, das wichtigere:

Das interne Coreperipherie in jeder Dokumentation Namen hat, aber dies 
letztlich "nur" Speicheradressen sind, die mittels Pointer erreichbar 
sind und das jede Peripherie konfiguriert werden muss.

Dann wird schnell auch sichtbar, wo die Grenzen bei den Ur-Versionen des 
MCS-51 sind und dann wird auf etwas anderes umgestiegen.

Witzig fände ich hier dann schon den Vergleich von Nuvoton - STM8 und 
AVR. Hier kann man dann (speziell am Beispiel STM8) gut zeigen, dass 
neuere Architekturen so "getrimmt" werden, dass sie - im Gegensatz zu 
MCS51 - schon vom Befehlssatz her darauf ausgelegt sind, mit 
Hochsprachen programmiert zu werden.

Nein, ich denke nicht, dass ich ein "Arbeitsprojekt" mit diesen Chips 
machen werde, weil ich schlicht nicht weiß, wie lange es diese Chips am 
Markt geben wird.

von Peter D. (peda)


Lesenswert?

Ralph S. schrieb:
> Zum Einstieg in die Digitalelektronik war/ist ein MCS-51 aufgrund der
> Menmonic wirklich gut.

Und auch, weil man sich da nicht erstmal zu Tode konfigurieren muß, 
alles ist sofort bereit.
Mit einem Programm aus nur einen Befehl "CLR P1.0" leuchtet die LED an 
P1.0 auf.
Ein Kollege hat kürzlich Stunden damit verbracht, nur um das SPI auf dem 
LPC4357 zum Laufen zu bringen.

Ralph S. schrieb:
> Hier kann man dann (speziell am Beispiel STM8) gut zeigen, dass
> neuere Architekturen so "getrimmt" werden, dass sie - im Gegensatz zu
> MCS51 - schon vom Befehlssatz her darauf ausgelegt sind, mit
> Hochsprachen programmiert zu werden.

Auch wenn es sehr gerne behauptet wird, es ist falsch. Der 8051 läßt 
sich sehr effektiv in C programmieren. Ich wollte mal ein C-Programm vom 
AT89C2051 auf den ATtiny2313 portieren, aber es paßte einfach nicht mehr 
hinein und den ATtiny4313 gab es damals noch nicht.
Der 8051 kann vieles im direct RAM ausführen und der Keil C51 nutzt es 
auch sehr effizient aus. Was beim AVR die 32 Register sind, sind beim 
8051 quasi die 128 Byte direct RAM. Erst bei sehr großen Variablenmengen 
schwächelt der 8051. Er ist für Steuerungen optimiert, nicht für 
Bildverarbeitung.

: Bearbeitet durch User
von Christopher J. (christopher_j23)


Lesenswert?

Ralph S. schrieb:
> Christopher J. schrieb:
>> Ich glaube der Ralph ist Ausbilder und von daher ist der 8051 von
>> Nuvoton eher von pädagogischem Wert ;) Ansonsten gebe ich dir völlig
>> recht.
>
> Oha, stimmt ganz genau... Woher weißt du das und kennen wir uns ?

Ich glaube nicht das wir uns kennen. Du hattest das hier im Forum aber 
irgendwann mal erwähnt und ich hab dann nur noch eins und eins 
zusammengezählt ;)

von Lothar (Gast)


Lesenswert?

Ralph S. schrieb:
> N76E003 von Nuvoton

Schau Dir mal den neuesten STC 8051 an. Kann mehr, ist billiger, und 
kommt mit seriellem Bootloader. Eval Board gibt es auch:

https://jaycarlson.net/pf/stcmicro-stc8/

Die EFM8 8051 sind besser, gibt es aber nicht mehr als DIP:

https://jaycarlson.net/pf/silicon-labs-efm8/

von Christopher J. (christopher_j23)


Lesenswert?

Lothar schrieb:
> Schau Dir mal den neuesten STC 8051 an. Kann mehr, ist billiger, und
> kommt mit seriellem Bootloader. Eval Board gibt es auch:
>
> https://jaycarlson.net/pf/stcmicro-stc8/

Dazu schreibt der Autor der Seite selber hier:
https://jaycarlson.net/microcontrollers/

> Unfortunately, this part isn’t quite ready for prime-time:
> the datasheet hasn’t been translated into English yet, the errata is massive,
> and there’s limited availability of the part.

Ok, wenn es nur ums Pin wackeln geht, dann reicht vielleicht auch ein 
chinesisches Datenblatt aber für die Ausbildung fände ich das jetzt 
nicht so prickelnd, es sei denn man will seinen Schützlingen beibringen, 
dass gute Dokumentation auch sehr viel wert sein kann ;)

Lothar schrieb:
> Die EFM8 8051 sind besser, gibt es aber nicht mehr als DIP

Aber die gibts doch im lötfreundlichen SOIC-16 und die Nuvoton gibt es 
auch nicht als DIP  und einen seriellen Bootloader haben die EFM8 ja 
auch schon vorinstalliert.

von Lothar (Gast)


Lesenswert?

Christopher J. schrieb:
> this part isn’t quite ready for prime-time

Das ist ja auch der Neueste, es gibt reichlich gut dokumentierte STC

> Nuvoton gibt es auch nicht als DIP

Die STC aber schon.

> lötfreundlichen SOIC-16

Den EFM8BB1 und der kann fast nix. Der EFM8BB3 ist im QFP-32 zwar auch 
gut lötbar. Wenn hier aber die Pins nicht reichen dann kommt QFP-48 das 
ist nichts mehr für Anfänger.

von Ralph S. (jjflash)


Lesenswert?

Peter D. schrieb:
> Auch wenn es sehr gerne behauptet wird, es ist falsch. Der 8051 läßt
> sich sehr effektiv in C programmieren.

Ich habe nicht behauptet, MCS51 läßt sich nicht in Hochsprache 
programmieren (vor zig Jahren habe ich darauf sogar in Pascal 
programmieren können), ich habe nur gesagt, dass der STM8 auf 
Hochsprache getrimmt ist...

Peter D. schrieb:
> Ich wollte mal ein C-Programm vom
> AT89C2051 auf den ATtiny2313 portieren, aber es paßte einfach nicht mehr
> hinein

Das Problem hatte ich ehrlich nie...

Christopher J. schrieb:
> Du hattest das hier im Forum aber
> irgendwann mal erwähnt und ich hab dann nur noch eins und eins
> zusammengezählt

Hätte ich nicht gedacht, dass ich mit Namen in Erinnerung bleibe... 
smile, stellt sich die Frage, ob das gut oder schlecht ist !?!

Lothar schrieb:
> Schau Dir mal den neuesten STC 8051 an.

Warum auch immer (ist nicht technisch begründet) mag ich die STC Sachen 
nicht so recht ...

von Philipp Klaus K. (pkk)


Lesenswert?

Peter D. schrieb:
> Ralph S. schrieb:
>> Hier kann man dann (speziell am Beispiel STM8) gut zeigen, dass
>> neuere Architekturen so "getrimmt" werden, dass sie - im Gegensatz zu
>> MCS51 - schon vom Befehlssatz her darauf ausgelegt sind, mit
>> Hochsprachen programmiert zu werden.
>
> Auch wenn es sehr gerne behauptet wird, es ist falsch. Der 8051 läßt
> sich sehr effektiv in C programmieren. Ich wollte mal ein C-Programm vom
> AT89C2051 auf den ATtiny2313 portieren, aber es paßte einfach nicht mehr
> hinein und den ATtiny4313 gab es damals noch nicht.
> Der 8051 kann vieles im direct RAM ausführen und der Keil C51 nutzt es
> auch sehr effizient aus. Was beim AVR die 32 Register sind, sind beim
> 8051 quasi die 128 Byte direct RAM. Erst bei sehr großen Variablenmengen
> schwächelt der 8051. Er ist für Steuerungen optimiert, nicht für
> Bildverarbeitung.

Der STM8 eignet sich schon besser als Zielarchitektur für einen 
Compiler. Ein Dhrystone mit SDCC kompiliert hat für STM8 deutlich 
kleinere Codegröße als für MCS-51. Und ein STM8 bei 16 Mhz erzielt auch 
deutlich höhere Scores als ein MCS-51 bei 98 Mhz:

https://sourceforge.net/p/sdcc/code/HEAD/tree/trunk/sdcc-extra/historygraphs/dhrystone-mcs51-size.svg

https://sourceforge.net/p/sdcc/code/HEAD/tree/trunk/sdcc-extra/historygraphs/dhrystone-stm8-size.svg

https://sourceforge.net/p/sdcc/code/HEAD/tree/trunk/sdcc-extra/historygraphs/dhrystone-mcs51-score.svg

https://sourceforge.net/p/sdcc/code/HEAD/tree/trunk/sdcc-extra/historygraphs/dhrystone-stm8-score.svg

Da mag durchaus bei beiden noch Potential für weitere Optimierungen im 
Compiler sein. Aber das mcs51-Backend ist das älteste in SDCC, während 
das stm8-Backend das jüngste ist.

Die wichtigsten Aspekte:
* Effiziente SP-relative Adressierung im STM8
* Einheitlicher Adressraum im STM8
* Ein paar 16-Bit Befehle

Allerdings ist das nicht einfach ein neu vs. alt. Auch der Z80 eignet 
sich deutlich besser als Zielarchitektur im Vergleich zum MCS-51. 
Gegenüber dem Z80 hat der STM8 nur einen leichten Vorsprung.

Auch der Z80 hat den einen einheitlichen Adressraum und ein paar 16-bit 
Befehle (wenn auch nicht ganz so gute wie beim STM8); ein Indexregister 
kann als Framepointer verwendet werden (womit das Fehlen der 
SP-relativen Adressierung weniger schlimm ist). Auch die relativ vielen 
Register sind nützlich, und ldir/lddr/cpir sind für eine 
C-Implementierung auch ganz brauchbar.
Der Rabbit und eZ80 dürften mit dem STM8 gleichauf liegen, eventuell 
sogar etwas besser sein.

Philipp

von Peter D. (peda)


Lesenswert?

Philipp Klaus K. schrieb:
> Ein Dhrystone mit SDCC kompiliert hat für STM8 deutlich
> kleinere Codegröße als für MCS-51.

Nur habe ich in keiner meiner Steuerungen jemals einen Dhrystone 
benötigt.
Da sind logischen Verknüpfungn, Zählen und Vergleichen die 
Hauptaufgaben.

Verglichen habe ich nur AVR mit 8051. Mit Z80 und Z8 hatte ich zu 
DDR-Zeiten mal kurz gebastelt. Den STM8 habe ich bisher nicht gekannt. 
Ab wann gibt es denn den STM8 mit Flash?

von honk (Gast)


Lesenswert?

Peter D. schrieb:
> Verglichen habe ich nur AVR mit 8051. Mit Z80 und Z8 hatte ich zu
> DDR-Zeiten mal kurz gebastelt. Den STM8 habe ich bisher nicht gekannt.
> Ab wann gibt es denn den STM8 mit Flash?


Hast Du Dich vertippt? Den STM8 gibt es schon seit Jahren, Einführung 
2009 oder 2010 rum.

von Michael X. (Firma: vyuxc) (der-michl)


Lesenswert?

Ralph S. schrieb:

> By the way: Wikipedia gibt für das Unternehmen Nuvoton einen
> Jahresumsatz von 7,941 Mio. NTD (neue Taiwanische Dollar) aus, das sind
> umgerechnet nicht ganz 250.000 Euro.
>
> Kann es sein, das ein Halbleiterhersteller sooooooo wenig Umsatz hat
> (bei 1200 Mitarbeitern) ?

Die 1200 Mitarbeiter werden wohl auch bei Winbond beschäftigt. Es ist 
nicht ganz klar on und wo es eine Trennlinie zwischen den beiden Firmen 
gibt.

von Peter D. (peda)


Lesenswert?

honk schrieb:
> Den STM8 gibt es schon seit Jahren, Einführung
> 2009 oder 2010 rum.

Wenn er noch so neu ist, dann ist es kein Wunder, daß ich ihn nicht 
kenne.
Mit Atmel AT89C2051 habe ich 1993 angefangen, mit den AVRs 1998. Damit 
konnte ich alle Anforderungen abdecken, so daß ich nicht nach weiteren 
8Bittern geschaut habe.
Infineon ist ja mit ihren 8051 auch sehr spät (2007) von OTP auf Flash 
umgestiegen, so daß deren XC886 bei mir keine Chance mehr hatte.
Obwohl es sehr einfach ist, für den C51-Compiler ein h-File für jeden 
beliebigen neuen 8051 zu schreiben.

von Philipp Klaus K. (pkk)


Lesenswert?

Peter D. schrieb:
> Philipp Klaus K. schrieb:
>> Ein Dhrystone mit SDCC kompiliert hat für STM8 deutlich
>> kleinere Codegröße als für MCS-51.
>
> Nur habe ich in keiner meiner Steuerungen jemals einen Dhrystone
> benötigt.
> Da sind logischen Verknüpfungn, Zählen und Vergleichen die
> Hauptaufgaben.

Der Reinhold Weicker hat sich bei der Entwicklung des synthetischen 
Benchmarks Dhrystone schon Gedanken gemacht, wie er einen (für die 
damals üblichen Systeme) repräsentativen Benchmark erstellt.

Für dich mag deine eigenen Erfahrung relevanter sein¹, aber allgemein 
dürfte Dhrystone repräsentativer sein.

Wenn man sich die Zahlen für stdcbench - einem neueren Benchmark, der 
auf größeren Stücken auf heutigen kleinen Systemen eingesetzter Software 
beruht - oder Coremark (auch ein neuerer Benchmark für eingebettete 
Systeme) ansieht, sich es bezüglich MCS-51 vs. STM8 auch nicht viel 
anders aus als bei Dhrystone.

Philipp

¹ Es heißt, der beste Benchmark sei der Code, den man nachher auf dem 
Rechner einsetzen will. Allerdings ist das nicht immer praktikabel, so 
dass explizit als solche entwickelte Benchmarks durchaus ihre 
Daseinsberechtigung haben.

von Peter D. (peda)


Lesenswert?

Die meisten Benchmarks haben den Nachteil, daß sie sich nur auf die 
Rechenleistung der CPU beziehen.
In Steuerungen sind aber die IO-Zugriffe ausschlaggebend, was man auch 
am Befehlssatz des 8051 sehr gut sieht. Ports und einzelne Pins lassen 
sich sehr effektiv auswerten und manipulieren. Gerechnet wird eher 
nebenbei, z.B. für eine PID-Regelung.

von Lothar (Gast)


Lesenswert?

Der STM8 ist ein 6502 Ableger. Vergleiche einfach mal den STM8 Assembler 
im Datenblatt mit C64 Assembler :-)

von Christopher J. (christopher_j23)


Angehängte Dateien:

Lesenswert?

Lothar schrieb:
> Der STM8 ist ein 6502 Ableger. Vergleiche einfach mal den STM8 Assembler
> im Datenblatt mit C64 Assembler :-)

Sagen wir mal ein "6502 on steroids" ;) Die CPU-Register sind in der 
Breite ja doch merklich gewachsen, siehe Bilder.


Ralph S. schrieb:
> Hätte ich nicht gedacht, dass ich mit Namen in Erinnerung bleibe...
> smile, stellt sich die Frage, ob das gut oder schlecht ist !?!

Das war glaube ich in dem Zusammenhang als du einmal kurz deine 
selbstgebaute IDE vorgestellt hast. Das fand ich schon beeindruckend und 
insofern sind es also durchaus positive Erinnerungen ;)

von Ralph S. (jjflash)


Lesenswert?

Christopher J. schrieb:
> Das war glaube ich in dem Zusammenhang als du einmal kurz deine
> selbstgebaute IDE vorgestellt hast.

.. an der bastel ich immer noch, als externe Programme gibts einen 
Makefilegenerator und eine Textmodeoberfläche für AVRdude (bei den Fuses 
allerdings nur Hexzahlen, das Auswerten der XML Files von Atmel ist 
aufwändiger als gedacht) . Smile, im Archiv zum Flashershield in 
Projekte & Code ist ein Binarie für 32 und 64 Bit Linux enthalten.

von Siegfried S. (rieselkalk)


Lesenswert?

Ja, nach langem, bin ich beim suchen auf diesem Forum gelandet. Nach dem 
Durchlesen, musste ich aber die alten Probleme erkennen. Nicht das Thema 
und die Frage stehen in Vordergrund, sondern nur ein Geschwafel, wer hat 
den längsten. Jetzt möchte ich meins auch noch da zu tun, obwohl heute 
wohl die Meinung herrscht, das altes wissen nicht mehr gebraucht wird. 
Wie schon benannt, gibt es seit Jahren neue Prozessoren mit alter 
Architektur. Sie würden bestimmt nicht in diesen Massen gebaut werden, 
wenn es da für kein Markt gäbe. Was den MCS 51 betrifft, hat er heute 
auch die 1 Takt Geschwindigkeit. Viele 8 Bitter sind Energiesparer und 
beim Nuvoton N76E003 ist das besondere, 2xUart, 1xSPI, 1xI2C, 4xTimer, 
Watchdog, PWM und die Krönung ein 8x12bit ADC, alles auf einem Chip. Das 
ganze zu einen unschlagbaren Preis. Dabei gibt es noch Deutsche Oldtimer 
(Otmar Feger) Literatur, wo das wesentliche verdammt gut beschrieben 
ist. Jetzt kommt noch das wichtigste, ich brauchte für diese CPU kein 
Doktortitel um sie programmieren zu können. Und zum Nachdenken, 
Millionen von Netz Leistungsmesser, in Asien gebaut, haben einen Chip 
mit einem 8051 Kern. Fast in jeden Haushalt in Europa. Muss wohl einen 
Grund haben. z.B. V9821. Oder wurde die Leistung zu langsam angezeigt, 
so das eine 32bit ARM CPU gebraucht wird ?

: Bearbeitet durch User
von Gerhard O. (gerhard_)


Lesenswert?

Moin,

Ist zwar etwas OT, aber ich möchte mal wieder an die ZILOG Encore! uC 
erinnern. Ich befasste mich in 2009 damit und war beeindruckt wie gut 
alles funktionierte. Das freie IDE kam mit einem Debugger und 
erstklassiger Dokus.

Der uC hatte 64K Flash.

Jedenfalls ist es schade, daß sie nie so recht bekannt wurden.

Gerhard

von Siegfried S. (rieselkalk)


Lesenswert?

Na Gerhard, danke das du meine Aussage bestätigst. Und tschüss.

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
Noch kein Account? Hier anmelden.