Hallo Experten, ich brauche bitte eure Hilfe. Zuerst meine Angaben: Master Pic18f4550 Sprache C Compiler CCS Slave MS5611 Drucksenor mit 16 bzw 24 bit Worten http://www.meas-spec.com/product/t_product.aspx?id=8501 Kann man beim SPI im C Code einstellen das er statt 8 bits 16 bzw 24 bit empfangt vom slave? laut CCs Hilfer : #use spi(DI=PIN_B1, DO=PIN_B0, CLK=PIN_B2, ENABLE=PIN_B4, BITS=24) BITS=n Max number of bits in a transfer. (default=32) warum 32? normal sind doch 8 bit oder? also ich schreibe: spi_write(0x48); //Laut Datenblatt wenn ich diesen Wert will delay_ms(10); //laut Datenblatt spi_write(0x00); // Conversation starten und dann D1=spi_read(); ist D1 jetzt genau das 24 bit lange Wort? oder muss ich das Stückeln und immer nur 8 bit empfangen und dann zusammensetzen? danke für hilfe lg
>Kann man beim SPI im C Code einstellen das er statt 8 bits 16 bzw 24 bit >empfangt vom slave? >laut CCs Hilfer : Was ist CCs ? Einstellen kann man das nicht, pro Schreibbefehl ins SPDR-REgister werden acht Bit herausgeschoben. Wenn du jetzt 16/24bits haben willst, musst du halt dreimal hintereinander ins SPDR schreiben, bevor du dem Slave per Slave_Select-Leitung ein "fertig" mitteilst.
SPI-ALEX schrieb: > oder muss ich das Stückeln und immer nur 8 bit empfangen und dann > zusammensetzen? Ja, genau so mache ich das auch und so läuft es ohne Schwierigkeiten. Einfach zusammensetzten und weiter verarbeiten. mfg Rene
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.