Forum: Mikrocontroller und Digitale Elektronik Sind Renesas Controller zu empfehlen?


von Heinz (Gast)


Lesenswert?

Hallo,

ich möchte ein Hobby-Projekt machen und benötige

ca. 60kB Flash ROM
1x SPI
1x I2C
2x DMA
1x AD Wandler
Speicherinterface f. 512kB
1x RS232
in Circuit Flashbar
möglichst über RS232 zu debuggen

Später sollen ggf Varianten ohne externes RAM entstehen...

Beim Studium der Datenblätter der verschiedenen Optionen (NXP, ATMEL, 
Renesas)
bin ich beim M16C24 hängengeblieben.

Was für Erfahrungen habt ihr gemacht?

von Dirk (Gast)


Lesenswert?

Zum einen ist Renesas sicherlich nicht umsonst Marktführer. Die Teile 
sind also nicht schlecht.

Zum anderen solltest Du mal sagen, welches Projekt Du machen möchtest. 
Insbesondere weil Du 2*DMA brauchst.
Und welches Speicherinterface brauchts Du? 32Bit oder SPI oder was?
Ein paar mehr Details, bitte.

von Heinz (Gast)


Lesenswert?

>und welches Speicherinterface brauchts Du?
im Moment 16Bit breit (2x8Bit K6X SRAM)

>Zum anderen solltest Du mal sagen, welches Projekt Du machen möchtest.
>Insbesondere weil Du 2*DMA brauchst.
wollte das Forum nicht mit Details belästigen, habe deswegen die 
benötigten
HW-Schnittstellen aufgeschrieben. Hat jedenfalls mit Datenerfassung und 
Netzwerk-Zeug (SPI, ENC28J60) zu tun..

von Martin (Gast)


Lesenswert?

Ich bin ganz zufrieden mit den Renesas MCs. Ich habe bereits mit des 
R8C/23 und den M16C/6NK gearbeitet. In Circuit flashen und debuggen geht 
über RS232 (USB per FT232) wunderbar.

von Gonzo (Gast)


Lesenswert?

Hi zusammen,

bin soweit eigentlich auch ganz zufrieden mit den Dingern. Wie sieht es 
eigentlich mit der Beschaffbarkeit der Controller für Privatleute aus? 
Gibt es gute Quellen?

Gruß,
Gonzo

von Thomas B. (thomasb)


Lesenswert?

Ich arbeite schon seit gut 3 Jahren mit den Teilen und bin sehr 
zufrieden damit. Man findet für jede Anwendung den passenden Controller 
z.B. R8C, M16C/28 oder M16C/62P (mit den dreien hab ich schon 
gearbeitet) - jeweils mit verschiedener Speicherausstattung erhältlich. 
Nur mit den ganz großen Controllern von Renesas (M32C...) hab ich noch 
nichts gemacht - da braucht man leider einen anderen Compiler.

Du schreibst, dass du den ENC28J60 verwenden willst: den hab ich damals 
- als ich mich damit gespielt habe - über Hardware SPI nicht zum Laufen 
gebracht. Dazu gibt es hier im Forum übrigens auch ein paar Beiträge. 
Über Software-SPI gings dann aber problemlos.

von Heinz (Gast)


Lesenswert?

Der ENC hat in frühen Revisionen Probleme mit SPI Clock kleiner 8MHz...

von Andreas K. (a-k)


Lesenswert?

Bei 512K RAM liegt eine Architektur, die ohne Klimmzüge nur 64KB RAM 
adressieren kann, nicht unbedingt nahe. Denk dabei nicht nur an die 
Hardware, sondern auch wie das programmiert werden soll.

von Obelix X. (obelix)


Lesenswert?

@Andreas

> Bei 512K RAM liegt eine Architektur, die ohne Klimmzüge nur 64KB RAM
> adressieren kann, nicht unbedingt nahe.

Was meinst du damit?

von Heinz (Gast)


Lesenswert?

Laut Datenblatt kann ich beim M30245 (M16C24) im Memory Expansion Mode 
über CS0 von 30000h bis D0000h (also rund 655k) addressieren. Der 
Addressbuss geht von A0 bis A19 (524k).

@Andreas
Welche Klimmzüge meinst du?

von Andreas K. (a-k)


Lesenswert?

Dass du es anschliessen kannst mag sein. Ansprechbar wird es auch sein.

Aber der C Compiler wird normale Daten mit 16-Bit Zeigern adressieren, 
und damit sind diese Daten nicht erreichbar. Daten jenseits 0000-FFFF 
sind nur mit speziell attributierten Zeigern ansprechbar. Ob/wie das 
geht hängt vom verwendeten Compiler ab (NB:welcher?), und besonders 
effizient sind die M16C dabei nicht.

von Heinz (Gast)


Lesenswert?

@Andreas
Der Renesas Compiler unterstützt far Pointer.
Der Datentransfer in meinem Programm läuft über DMAs,
also nicht besonders viel far-Overhead...

von Thomas B. (thomasb)


Lesenswert?

@Heinz
Soviel ich mich noch erinnere, hatte das Problem mit SPI und dem ENC 
nichts mit diesem 8MHz Bug zu tun, sondern damit, dass die erforderliche 
SPI-Betriebsart von den Renesas-Controllern nicht unterstützt wird - 
zumindest nicht für die SI/Os die ich dazu benutzt habe.
Per Software-SPI klappte es dann einwandfrei.

von Andreas K. (a-k)


Lesenswert?

Ok, wenn dieser Datenraum nur per DMA oder speziellen Codemodulen 
angesprochen wird und der Compiler damit umgehen kann - kein Problem. 
Zum Ärger wird so etwas, wenn man bestehenden Code anpassen muss, 
beispielsweise einen TCP/IP-Stack.

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.