Hallo Leute! Der MSP430F16X hat ja bekanntlich SPI, I²C und UART, aber nur zwei USARTs. Bei meinem aktuellen Projekt müsste ich aber alle drei verwenden. Daher habe ich drei Möglichkeiten in betracht gezogen (UART ist auf USART1): - Auf USART0 würche ich gerne abwechseld SPI und I²C verwenden. Kann ich USART0 im laufenden betrieb einfach uminitialisieren? - Gibt es vielleicht einen SPI->I²C oder einen I²C->SPI Wandler? Welche Richting wäre am sinnvollsten? - Kennt jemand gute Software-Implementationen von I²C oder SPI? Welches wäre sinnvoller in Software? Danke im Voraus MfG Mali
Hi, also ich sehe da kein Problem drin. Nimm es so wie du es vorschlaegst, d.h. Uart -> USART1 Spi -> USART0 (wenn sie lt. Datenblatt daran liegt) I2C -> emulieren I2C kannst du relativ einfach emulieren, da gibts auch Beispiele im Netz. Ich selbst habe das auch schon gemacht, allerdings mit XC164CI Controller (Infineon). Funktionierte tadellos fuer ein EEPROM. Ich hoffe es hilft dir! michael
es ist möglich beide Funktionen zu nutzen. Abs schon mal ausprobiert. Einfach Usart normal initialisieren und benutzen, wenn man I2C braucht den I2C initialisieren (Ablauf steht im Datasheet). Ist die I2C Kommunikation fertig kann man den USART wieder reconfigurieren (siehe Datasheet zum MSP430). Alles kein Problem. Nur der Sendeinterrupt ist bei beiden gleich. Besser gesagt I2C nutz für seine Interrupts den USART0TX. power
Hiho, nutze gerade eine MSP430F1232 als Datenschleuder zwischen SPI und UART. In einem Slot schalte ich die UART auf SPI, nehme Daten entgegen und schalte danach wieder von SPI auf UART und schicke die Daten zum PC. Klappt super. Wichtig ist, die State-Machine (SWRST) immer zurückzusetzen.
Hallo, kann man SPI und I²C gleichzeitig benutzten an pic24hj256gp610 und am msp430?? ich bedanke mich schon im voraus
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.