Forum: Mikrocontroller und Digitale Elektronik Noch ein Cortex M3 SiLabs


von Arc N. (arc)


Lesenswert?

Auch wenn's wie Werbung klingt...
Wer die 8051er von SiLabs kennt, wird die neuen Cortex-M3 mögen.
- doppelte Crossbar d.h. man kann die Pin/Peripheriezuordnung relativ 
frei festlegen.
- Low power: < 1uA RTC on
- div. interne Oszillatoren, PLL (Dithering etc.), Low-Power, RTC 
(interne, einstellbare Lastkapazität), USB (kein externer Takt/Quarz 
nötig)
- 2x 12-Bit ADC (synchronisierbar, Puls/Phasen, einstellbar/generierbar, 
je 1 MSPS @ 10-Bit)
- Strom/Spannungs-Wandler, IDAC, 2x Komparator
- CapSense <1 uA wake-on-touch
- 5V tolerante IOs, interne LDOs + VREF
- 6 Pins bis 6V die bis zu 300 mA einzeln einstellbar erlauben, zusammen 
max. 400 mA, P/N-Kanal, Slew-rate und Strombegrenzung einstellbar
- 2x I2C, 1x I2S, 3x SPI, 2x USART, 2x UART
- 2x Timer/Counter Array (PCAx) + 1x EPCAn
- DMA, CRC, AES, EMIF
- Verfügbar
- Z.Z. nur im QFN-40/64, QFP-64/80 und LGA-92-Gehäuse erhältlich

Tools: kostenlos, Eclipse-basiert (code-red), GCC
AppBuilder: Pin-Definitionen, Definition verschiedener Modi (Code für 
die Übergänge wird z.T. autom. generiert)
Si32Library (CMSIS, USB (Audio, HID, MSC, DFU), Speicherverwaltung, 
kooperatives "Multitasking" etc)

IMO zusammen mit der intuitiven Software ein wirklich gutes Paket.

http://www.silabs.com/products/mcu/Pages/32-bit-microcontrollers.aspx

von Erwin R. (er-tronik)


Lesenswert?

Was das interessante an diesen Controllern ist, man kann mit sehr 
geringem Aufwand eine USB-Schaltung erstellen. Kein 3,3V 
Spannungsregler, keine Vorwiderstände, Pullup-Widerstände und 
Transistoren für USB und sogar kein Quarz erforderlich. Nur den 
Controller mit ein paar 100nF Kondensatoren direkt an die USB-Buchse, 
fertig.

An Peripherie ist fast alles vorhanden, lediglich CAN vermisse ich noch. 
Auf nachfragen auf der Embedded-World sagte man mir dort, dass CAN erst 
für Ende 2013 geplant ist. Leider waren keine Development-Boards mehr 
verfügbar, so dass ich die Controller selber noch nicht testen kann, 
wird mir aber in den nächsten Tagen zugeschickt.

Programmieren lassen sich die Controller nur über JTAG oder SWD, sie 
haben keinen eingebauten Bootloader, wie man es vom STM32 oder den 
LPC-Controllern gewohnt ist.


Erwin

von Arc N. (arc)


Lesenswert?

Erwin Reuss schrieb:
> An Peripherie ist fast alles vorhanden, lediglich CAN vermisse ich noch.
> Auf nachfragen auf der Embedded-World sagte man mir dort, dass CAN erst
> für Ende 2013 geplant ist.

AEC-Q100 und bis 125 °C?

> Leider waren keine Development-Boards mehr
> verfügbar, so dass ich die Controller selber noch nicht testen kann,
> wird mir aber in den nächsten Tagen zugeschickt.

Die Tools sollte man aus dem großen Paket installieren...zumindest hier 
hat es der Web-Installer nicht geschafft, das gesamte Paket zu 
installieren (IDE+AppBuilder liefen zwar, die Si32Library fehlte 
allerdings).

> Programmieren lassen sich die Controller nur über JTAG oder SWD, sie
> haben keinen eingebauten Bootloader, wie man es vom STM32 oder den
> LPC-Controllern gewohnt ist.

Hat SiLabs einen Termin für die Debugger genannt?
Z.Z. scheint es die nur im Paket mit einem Eval-Board zu geben.

von Ralf (Gast)


Lesenswert?

Was die Debug-Hardware betrifft:
Wer bereits von den 8051ern her einen Debug-Adapter sein eigen nennt, 
braucht "nur" ein anderes Kabel... Aber psst, ist geheim :) Quelle: Hab 
ich mir auf der embeddedWorld sagen lassen.

Ralf

von Cell85 (Gast)


Lesenswert?

Das hört sich doch gut an!

Kein Quarz, kein Spannungsregler!

Wie schauts denn aus mit Std. Peripherial Library oder am besten gibts 
irgendwelche API's oder muss man alles schwer erarbeiten?

Viele Grüße

von Arc N. (arc)


Lesenswert?

Cell85 schrieb:
> Das hört sich doch gut an!
>
> Kein Quarz, kein Spannungsregler!
>
> Wie schauts denn aus mit Std. Peripherial Library oder am besten gibts
> irgendwelche API's oder muss man alles schwer erarbeiten?

s.o. bzw.
Low-Level: CMSIS + HAL von SiLabs
High-Level: si32Library, C99, objektorientiert
http://www.silabs.com/Support%20Documents/TechnicalDocs/AN672.pdf
Build (Assertions, Speicherdebugging), Logging, Speicherverwaltung, Io 
(I2C, SPI, USART) synchron/asynchron bzw. blockierend/nicht-blockierend, 
Timer, einfache, kooperative Multitaskingunterstützung, USB (MSD, Audio, 
DFU, HID)
Sieht von der Beschreibung und den Quellen bislang gut aus, wie gut das 
in der Praxis ist, wird sich zeigen

von Cell85 (Gast)


Lesenswert?

Und wieviel bekommst du dann an PRovision ? :-D

Ich hab mir mal ein Dev Board bestellt.

von Martin M. (capiman)


Lesenswert?

Cell85 schrieb:
> Ich hab mir mal ein Dev Board bestellt.

Kannst Du einen Link und Preis für das Dev Board posten?

von Arc N. (arc)


Lesenswert?

Cell85 schrieb:
> Und wieviel bekommst du dann an PRovision ? :-D

Null, mir gefällt das Gesamtpaket z.Z. nur besser, als das, was die 
anderen M3/M4-MCU-Hersteller liefern.

> Ich hab mir mal ein Dev Board bestellt.

Martin Maurer schrieb:
> Cell85 schrieb:
>> Ich hab mir mal ein Dev Board bestellt.
>
> Kannst Du einen Link und Preis für das Dev Board posten?

http://de.mouser.com/ProductDetail/Silicon-Labs/SiM3U1xx-B-DK/?qs=sGAEpiMZZMtPzP3zsh8uzBBwkCu5GKx7
http://www.silabs.com/products/mcu/udp/Pages/SiM3U1xx-DK.aspx
Mouser und SiLabs ~99€ inkl. USt.

von Sascha (Gast)


Lesenswert?

Ja super, das hört sich ja super an.
Ist nur noch die Frage was die Chips dann kosten sollen.

Hat schon jemand die IDE am laufen, bzw. gehen die Standard Tools wie 
JLink ?
Gruß Sascha

von Harald B. (haraldino)


Lesenswert?

ja ich hab auch gemousert, unsere firma hat da bissl rabatt.

von Harald B. (haraldino)


Lesenswert?

omg ein cortex M3 mit 40pin ... =)  da gibts bald was schönes von mir 
wenn das funktioniert.

Wird aber wohl noch dauern bis der rauskommt. Gibt auch noch keine 
Samples oder Schematics von dem DEV BOard

von Harald B. (haraldino)


Lesenswert?

ne hab alles gefunden, sehr schönes reference manual!

Wo gibts denn den hier SiM3U164? Ich will den jetzt haben verdammt!



GRUSS
H.P

von Erwin R. (er-tronik)


Lesenswert?

Harald B. schrieb:
>
> Wo gibts denn den hier SiM3U164? Ich will den jetzt haben verdammt!

Ich habe gerade die ersten SiM3U167 im 80-poligen LQFP-Gehäuse von 
Mouser bekommen. Werde in den nächsten Tagen mal eine Schaltung mit dem 
Teil aufbauen.

Sehr interessant diese Controller, wenn jetzt noch CAN und Ethernet drin 
wären, wären sie Perfekt.

Erwin

von Ralf (Gast)


Lesenswert?

> Sehr interessant diese Controller...
Ich würd ja auch gern (bin seit Jahren auf den SiLabs 8051ern 
unterwegs), aber wenn ich den Preis mit anderen M3 vergleiche bin ich 
doch etwas abgeschreckt (oder der SiLabs M3 hat irgendwas was ihn 
absolut von anderen abhebt, ich seh's jedenfalls grad nicht). Freilich 
sind solche Features wie DoubleCrossbar etc. ganz nett, aber m.E. lohnt 
sich eine kommerzielle Verwendung nur, wenn man weiss, dass man in 
Zukunft mehrere Schaltungen bauen wird, in denen der SiLabs M3 jedesmal 
geeignet ist. Und das Teilchen für Hobby-Schaltungen verwenden, die man 
anderen zur Verfügung stellen will schreckt evtl. durch den Preis allein 
für die MCU dann doch etwas ab, denke ich.

Ralf

von Harald B. (haraldino)


Lesenswert?

NENN MIR MAL einen Hersteller von Cortex M3 die einen so kleinen chip 
haben? 40 pins und ich kann 2 i2c's und 2 uarts benutzen + USB

von Michael G. (let)


Lesenswert?

^ Sorry aber Silabs hat den auch nicht. Oder kann man so einen Chip von 
denen irgendwo kaufen?

von Ralf (Gast)


Lesenswert?

>> Cortex M3 die einen so kleinen chip haben? 40 pins und ich kann 2 i2c's
>> und 2 uarts benutzen + USB
> Sorry aber Silabs hat den auch nicht. Oder kann man so einen Chip von
> denen irgendwo kaufen?
Türlich haben sie den: Die Crossbar macht's möglich.

Ralf

von Harald B. (haraldino)


Lesenswert?

Hab mal hier die footprints gemacht für zwei für mich interessante 
Versionen.

Könnt gerne mal schauen ob das so richtig ist:


Beitrag "Review: SIM3U164-B-GM QFN40 6x6 EAGLE Lib"

von Ralf (Gast)


Lesenswert?

@Harald:
Hast du mittlerweile etwas mit den Teilchen zaubern können?

Ralf

von Harald B. (haraldino)


Lesenswert?

Ja und zwar ein Winkelgeber mit USB.
Gab garkeine Probleme hab hier noch ein Paar "chips" über falls die 
jemand haben mag. Wäre schade wenn die an Lötbarkeit verlieren.

von Ralf (Gast)


Lesenswert?

@Harald:
> Ja und zwar ein Winkelgeber mit USB.
Cool.

> Gab garkeine Probleme hab hier noch ein Paar "chips" über falls die
> jemand haben mag. Wäre schade wenn die an Lötbarkeit verlieren.
Was die ICs betrifft: Welche sind's, und was magst du dafür haben?

Was "gar keine Probleme" angeht, wie hast du's implementiert, also 
welche USB-Klasse, etc.? Hast du die HAL usw. verwendet?
Ich vermute du hattest schon USB-Kenntnisse?
Ist dein Code "open-source"? Falls gewünscht können wir auch gern per PN 
weiter machen.

Ralf

von Martin M. (capiman)


Lesenswert?

Ralf schrieb:
> Falls gewünscht können wir auch gern per PN weiter machen.

Ich hoffe, es bleibt bei einer öffentlichen Diskussion... :-)

von Ralf (Gast)


Lesenswert?

@Martin:
>> Falls gewünscht können wir auch gern per PN weiter machen.
> Ich hoffe, es bleibt bei einer öffentlichen Diskussion... :-)
Von meiner Seite aus nix dagegen, ich weiss nur nicht, ob er das wissen 
teilen darf, falls es sich beim Winkelgeber um ein kommerzielles Produkt 
handelt.
Mich hätte ja auch nur der USB-Teil interessiert, da seh ich nix 
kritisches :)

Ralf

von Harald B. (haraldino)


Lesenswert?

Hab den SIM3U164-B-GM verwendet. Hab noch 6 Stück übrig.
Kannst mir gerne eine PN senden, wenn du die haben magst.
Hab auch noch einen SIM3U167-B-GM.

Ja hab schon viel mit USB gemacht, hab erstmal versucht das USB von Keil 
zu benutzen, ging auch gut.

Bin dann aber komplett mit der HAL und den Tools von Silabs ausgekommen. 
War wirklich nicht schwer.

SWD Pins raus und dann mit dem ULINK2 drauf und los gings!

mein Programm hatte ich schon auf einem STM32 laufen, ich habs dann nur 
noch auf den SIM3U migriert.

Die Schaltung samt USB hab ich auf 11mm x 14mm bekommen :) da man für 
USB ja keinen externen Quarz benötigt.

Ich kann einmal mein Projekt in Keil und einmal in der Silabs IDE mit 
USB VCOM als Template hochladen, das ist glaub ich kein Problem.

von Harald B. (haraldino)


Lesenswert?

übrigens als ich damals das hier gesehen hatte musste ich kichern,

void USB0_enter_default_mode()
{
  SI32_USB_A_enable_usb_oscillator(SI32_USB_0);
}

das ist mit dem stm32 nicht so einfach gewesen :D

von Ralf (Gast)


Lesenswert?

@Harald:
> Hab den SIM3U164-B-GM verwendet. Hab noch 6 Stück übrig.
> Kannst mir gerne eine PN senden, wenn du die haben magst.
> Hab auch noch einen SIM3U167-B-GM.
Ah, das sind QFN bzw. LGA. Hab leider keinen Lötofen für den LGA, das 
müsst ich dann in der Firma machen. Und die QFN... hm... das Raster ist 
nicht feiner als das der QFP, die hätt ich halt bevorzugt... Hast du 
handgelötet? Sind die QFN-Pads seitlich hoch genug damit man 
einigermaßen gescheit rankommt?

> Bin dann aber komplett mit der HAL und den Tools von Silabs ausgekommen.
> War wirklich nicht schwer.
Hört sich gut an :)

> Ich kann einmal mein Projekt in Keil und einmal in der Silabs IDE mit
> USB VCOM als Template hochladen, das ist glaub ich kein Problem.
Das wär toll. Auf was basiert deine VCOM-Implementierung? Dazu hab ich 
bei SiLabs nur etwas im Forum für die 8-Bitter gefunden.

A propo VCOM, wäre es schwierig nicht nur einen, sondern mehrere zu 
realisieren? Also ein Device erzeugt 2-n COM-Ports?

> übrigens als ich damals das hier gesehen hatte musste ich kichern,
> void USB0_enter_default_mode() {...}
> das ist mit dem stm32 nicht so einfach gewesen :D
Nein? ;)
Was die SiLabs-Jungs da bieten ist echt klasse.

Ralf

von Harald B. (haraldino)


Lesenswert?

Das würde sicherlich gehen.
Ich hab mir alles aus der Silabs 1.1.0 Lib rausgezogen (USB Device).

Nein ich hab das QFN mit nem Heizluftföhn drauf bekommen. Später hab ich 
die Board im Backofen in der Firma gefertigt.

Ich schmeiß mal alles raus und lade es hoch.
Würd mich freuen wenn andere Ihre Errungenschaften auch mal hochladen.

von Ralf (Gast)


Lesenswert?

@Harald:
> Das würde sicherlich gehen.
Mehrere VCOMs? Das wär toll. Für wie groß hältst du den Aufwand?

> Ich hab mir alles aus der Silabs 1.1.0 Lib rausgezogen (USB Device).
Da hab ich keine CDC-Implementierung gesehen. In der 1.0.1 war wohl was 
rudimentäres dabei.

> Nein ich hab das QFN mit nem Heizluftföhn drauf bekommen. Später hab ich
> die Board im Backofen in der Firma gefertigt.
Ne, ich würd dann gleich ganz frech in die SMD-Bestückung gehen und die 
Adapter-Platinen durch den Ofen jagen. Genug Schaltungen mit QFNs haben 
wir, sollte also auch ein passendes Sieb dabei sein :)
Da nirgends steht, dass das ExposedPad mit GND o.ä. verbunden werden 
soll würd's auch mit'm Lötkolben gehen.

> Ich schmeiß mal alles raus und lade es hoch.
> Würd mich freuen wenn andere Ihre Errungenschaften auch mal hochladen.
Das werde ich tun, sobald ich den ersten Proto am Laufen hab. Bin 
allerdings erst in der Layoutphase.

Wo hast du deine ICs denn bestellt?

Ralf

von Harald B. (haraldino)


Lesenswert?

Hab bei AVNET bestellt gehabt.

Ich denk 2 Tage gehen da bestimmt drauf, hab gerade noch bissl was 
anderes hier.

Ich lad des aber später mal hoch mit nur einem VCOM.

Ja die CDC hab ich selbst implementiert. Gingen auch ein paar Tage drauf 
aber Silabs hat einen guten Support :)

von Ralf (Gast)


Lesenswert?

> Ich denk 2 Tage gehen da bestimmt drauf, hab gerade noch bissl was
> anderes hier.
Kein Ding, ich bin ja auch noch mit dem Layouten beschäftigt :) Frisch 
eingetroffen ist das SIM3U-DevKit, das werd ich danach unter die Lupe 
nehmen.

> Ich lad des aber später mal hoch mit nur einem VCOM.
Okay.

> Ja die CDC hab ich selbst implementiert. Gingen auch ein paar Tage drauf
> aber Silabs hat einen guten Support :)
Das stimmt. Wundert mich dass die CDC/VCOM-Implementierung nicht gleich 
offen in die Supportseite bzw. zu den Beispielen gestellt wurde :/

Ralf

von Tim1717 (Gast)


Lesenswert?

die haben schiss das dann keiner mehr die VCP brudge chips
käuft hehe

von Ralf (Gast)


Lesenswert?

@Tim:
Glaub ich nicht. Die Teile rennen out-of-the-box, sieht man mal vom 
optionalen Beschreiben des EEPROMs ab. Und sie haben dedizierte 
Funktionen auf den Pins. Wenn man nur die Bridge-Funktionalität braucht 
wird man die Teile auch weiterhin kaufen, warum dafür einen Controller 
nehmen?

Ralf

von Ralf (Gast)


Lesenswert?

@Harald B. (haraldino):
Hab dir eine PN geschrieben, hoffe die ist nicht im Filter untergegangen 
:)

Ralf

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.