Hallo, hatte vor einiger Zeit mal mit dem MSP430 rum gespielt und wollte jetzt mal was größeres damit machen. Jetzt hab ich aber grad im Datenblatt gelesen/bzw auch der Webseite geschaut und herausgefunden das die max 2 USCI haben. Sprich nur zwei Schnittstellen wie I2C, SPI, RS232 :( Hab ich da was falsch gelesen/verstanden? Oder soll die im Betrieb USCI im Betrieb umgeschaltet werden? Die Pins für die einzelnen Modis liegen ja auf unterschiedlichen Pins... Ist natürlich blöd wenn man nicht sagen kann wann die Daten kommen. Bräuchte 1x I2C, 1x SPI und 1x (lieber 2x) RS232 und das ganze sollte auch über Batterie laufen, deshalb dachte ich an den MSP. Aber so scheint der erst mal aus zufallen :( Gruß PP
Jo richtig, die haben "nur" 2 Hardware USCI. µC mit mehr als 2 muss man schon recht gut suchen, und dann anderswo Abstriche machen.
Brauchst Du die I2C bzw. SPI als Master oder Slave? Wenn Du sie "nur" als Master brauchst und die Sachen zeitunkritisch sind, dann kannste auch GPIO's wackeln lassen. Die beiden USCI's sind dann als RS232 nutzbar.
Oder halt die USCI immer umkonfigurieren. Wenn du nicht gleichzeitig alle 4 brauchst, geht das ziemlich gut, und auch recht schnell. Die Funktionen liegen extra dafür ja auf verschiedenen Pins.
Nette Sache scheinen auch die IIC-Bus Port-Expander zu sein. PCA 9564, etc., von TI z.B. . Ich bin mir ziemlich sicher, das auch Maxim hier etwas hat. Gruss Dietmar
Pardon, wenn schon, dann richtig. http://focus.ti.com/paramsearch/docs/parametricsearch.tsp?family=analog&familyId=867&uiTemplateId=NODE_STRY_PGE_T&CMP=KNC-reprisegoogleSLLEUROPE&HBX_PK=I2C&HBX_OU=50 Die Teile heissen PCA9518 und IIC-Hub.
Hallo, brauche die nur als Master und zeitkritisch ist das ganze auch nicht. Würde vom Prinzip also in Software gehen. Bin mir nur nicht sicher ob dann noch die Ressourcen des MSP reichen (grade RAM). Wollte an die SPI ein ENC28J60 und SD-Karte hängen. Jeden Tag soll der ENC dann aktiviert werden und die gesammelten Daten der SD-Karte an einen Server schicken. Der uC müsste die Daten also zwischenspeichern. Oder klappt das so eh nicht und ich sollte lieber zwei SPI nehmen? Hatte jetzt erst mal an einen ATMega (zB 32) zu nehmen, da habe ich schon mal I2C, SPI und eine RS232. Die Schaltung wird im Schlafmodus wohl nur vom uC belastet +Leckströme die hoffentlich nicht so groß sind. (muss noch mal die Aufwachzeit bzw die Stabilisierungszeit der Module anschauen, sollten die zu groß sein >1min kommt wohl noch was dazu) Da in der Schaltung auch eine RTC mit eigener Batterie (macht das Sinn? RTC kann den Spg bereich halt viel weiter ausnutzen...) betrieben wird, könnte man den uC in PowerDown Modus versetzen und zyklisch über einen Interrupt aufwecken. Währen dann beim Mega32 auch nur 1uA nicht so gut wie der MSP aber auch schon nicht schlecht.
@ Dietmar Sch. wenn ich das richtig sehe erweitert der PCA9518 nur den I2C Bus, sprich mehr als 256 Geräte am Bus möglich, oder? Das hilft mir hier ja nicht weiter, mir geht es ja darum 1x I2C, 1xSPI und 1xRS232 zu haben. Oder hab ich da was falsch verstanden? Gruß PP
Bevor ihr jetzt Ideen wie Code-Expander usw. diskutiert, schaut euch die Datenblätter bitte nochmal ganz genau an! Der MSP430 hat maximal 2 USCI Module. Soweit richtig. Jedes USCI Modul verfügt aber über ein Teilmodul A und ein Teilmodul B. The USCI_Ax modules support: UART mode SPI mode The USCI_Bx modules support: I2C mode SPI mode Du kannst also eine I2C-, eine SPI- und zwei RS232-Schnittstellen ohne Umstände realisieren. Viele Grüße Michael
Ansonsten würde ich mich mal innerhalb der MSP430F2xx Familie umsehen (wenn du das nicht ohnehin schon gemacht hast). Da gibt es Devices mit 120kB Flash und 8kB RAM. Wenn du im Moment also einen ATMEGA32 mit 2kB RAM verwendest, solltest du auf jeden Fall auch bei den MSP430 fündig werden können. Bei der MSP430F2xx hast du im Low Power Mode 4 einen Stromverbrauch von 100nA. Der Controller kann dann aber nur noch durch einen externen Interrupt (z.B vom ENC28J60) aufgeweckt werden. Ich würde aber bei deiner Anwendung eher den Low Power Mode 3 wählen. Der Stromverbrauch liegt dann bei 900nA. Dabei läuft aber ein externer 32768Hz Uhrenquartz, so dass der Controller auch durch einen internen Interrupt aufgeweckt werden kann. Somit kannst du nämlich, und das ist für dich wirklich interessant, die RTC auch mit dem MSP430 "erschlagen". Viele Grüße Michael
@Michael Das heißt also ich kann mit dem A Modul UART und SPI parallel betreiben (gleiches für Modul B mit I2C und SPI) ? Das habe ich da irgendwie nicht raus gelesen (zugegeben nur überflogen). Werde mir das noch mal genau anschauen. Das mit der RTC im MSP währe natürlich super, spare ich das Bauteil :) Und von der Versorgungsspannung gehen die ja auch bis <2V.
Hallo PP, Selbstverständlich nicht Echt parallel ;-) aber du kamst es Softwaremässig umschalten, und so bspw. UART Einlesen und dann per SPI senden oder Umgekehrt. Um kein externer Multiplexer zu verwenden einfach auch die Ports dabei umschalten. Solltest du wirklich alle 4 SPI I2C und 2xUART simultan brauchen, wäre eine Software-UART-Timer Lösung eher das Richtige denke ich. Dazu kannst du dir den UART Softwareteil, des Original MSP430 Monitor's verwenden. damit habe ich schon 4 UART (RS232) Ports (Für Barcode Scanner) realisiert ;-) Das Funktioniert 1 A :-) Ansonsten ist der von Michael vorgeschlagene Weg zu beschreiten ein guter Rat. Gruss Padu MSP430 Freak ;-)
Hallo doofi, Ja das ist Richtig aber 1. Kostet er auch mehr als ne Kleinere Version, 2. braucht etwas mehr Strom und 3. ist mit Mindestens 80 Pins nicht so leicht zu verlöten als ein wesentlichen "Kleinerer Bruder". Es ist klar das zur Zeit die MSP430 wie Pilze aus dem Boden schissen :-D aber wer die Ressourcen dieses Bauteils und die etwas aufwendigere Programmierung wegen seiner "X" CPU nicht braucht nehme doch die Software Variante. ;-)
@ Patrick L. Bitte schau dir nochmal genau das Datenblatt an. Wie von Michael richtig beschrieben, besteht ein USCI Modul aus zwei Teilmodulen, die PARALLEL und weitestgehend UNABHÄNGIG von einander betrieben werden können. Viele Grüße, Mika
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.