Forum: Mikrocontroller und Digitale Elektronik switch anweisung - wie viele case sind erlaubt?


von Tino K. (blumengiesser)


Lesenswert?

Frage: Wie viele case sind bei der switch Anweisung erlaubt? Kann es 
sein, daß nur 8 möglich sind?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Nein, es sind auch ganz erheblich mehr als 8 case-Zweige möglich. Sie 
müssen nur eindeutig sein (und damit sind sie wieder beschränkt, nämlich 
auf die Anzahl der durch einen int darstellbaren Möglichkeiten).

von Tino K. (blumengiesser)


Lesenswert?

habe ich mir schon gedacht. mein fehler war eine fehlerhafte 
lötverbindung. dieses SMD kann manchmal ganz schön tückisch sein :-(

von Thomas E. (thomase)


Lesenswert?

Rufus Τ. Firefly schrieb:
> (und damit sind sie wieder beschränkt, nämlich
>
> auf die Anzahl der durch einen int darstellbaren Möglichkeiten).

Und je nach System durch die Größe des damit erzeugten Codes.
32767 cases werden jeden Atmega zerplatzen lassen, ein PC mit seinen
>=2 GByte hat damit immer noch Unterdruck in seinem Speicher.

Bei einem kleinen Tiny kommst du natürlich schneller an die Grenze als 
beim Mega 2560.

Was ist denn das konkrete Problem?

mfg.

von Thomas E. (thomase)


Lesenswert?

Überschneidung der Posts

Tino Kühn schrieb:
> habe ich mir schon gedacht. mein fehler war eine fehlerhafte
>
> lötverbindung. dieses SMD kann manchmal ganz schön tückisch sein :-(

Was hat das mit deinen case-Anweisungen zu tun? Oder fehlte da eine 
Adressleitung?

mfg.

von Tino K. (blumengiesser)


Lesenswert?

> Was hat das mit deinen case-Anweisungen zu tun? Oder fehlte da eine
> Adressleitung?

zwei ports, die sich nebeneinander befinden waren löttechnisch 
verbunden. der code setzt mit den case anweisungen bestimmte ports auf 0 
oder 1. hast den einen gesetzt war der andere auch gesetzt. naja auf 
jedenfall verwirrend... und bei dem SMD zeug immer recht schlecht zu 
sehen... danke mal!

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.