This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TPS92518HV: SPI framework structure (Addressing & Data selection)

Part Number: TPS92518HV

I have reviewed the datasheet and am a bit confused as to how the address is selected and triggered in the scheme of the SPI COM. I am attempting to use a National Instruments USB-8451 (CLK-2Meg) device which uses basic SPI architecture. Device outputs signal, I can observe message framework change with byte adjustment, I believe that I am missing something here. From what I gathered,16 bytes are pulsed between CS low - high (1)(2)(3)(4)(5)(6)(7)(8)(9)(10)(11)(12)(13)(14)(15)(16).

Its my understanding that the IC works in MSB and CMD is byte (1). The datasheet suggest that CMD should be 1 (High) when write function is desired,

Does this mean that  byte(1) should be (255/0xFF/1111 1111)?

is there more to this.

when address is selected such as control (address 00h) does this mean byte (2)-(6) are zeros

(255/0xFF/1111 1111)(0000 0000)(0000 0000)(0000 0000)(0000 0000)(0000 0000)(Par)(D8)(D7)(D6)(D5)(D4)(D3)(D2)(D1)?

Where is the actual control command placed? example. Such as LED1&2 ON (datasheet states bit 0 & bit 1 of address 00h, what byte is this placed in?

(255/0xFF/1111 1111)(0000 0000)(0000 0000)(0000 0000)(0000 0000)(0000 0000)(Par)(D8)(D7)(D6)(D5)(D4)(D3)(255/0xFF/1111 1111)(255/0xFF/1111 1111)

Thank you

Respectfully,

New Guy.

  • Hello John,

    Read section 8.4 in the datasheet.

    Section 8.6 has sample code

    Its my understanding that the IC works in MSB and CMD is byte (1). The datasheet suggest that CMD should be 1 (High) when write function is desired,

    Does this mean that  byte(1) should be (255/0xFF/1111 1111)?, these are bits not bytes so the first bit is high, the next five are the address bits (0x8000, 8000 sets the first bit of 16 to 1.

    is there more to this.

    when address is selected such as control (address 00h) does this mean byte (2)-(6) are zeros, these again are bits, 00000 for bits 2-6 for A4-A0

    (255/0xFF/1111 1111)(0000 0000)(0000 0000)(0000 0000)(0000 0000)(0000 0000)(Par)(D8)(D7)(D6)(D5)(D4)(D3)(D2)(D1)?

    Where is the actual control command placed? example. Such as LED1&2 ON (datasheet states bit 0 & bit 1 of address 00h, what byte is this placed in?  Look at 8.5.1, LED 1 and 2 enabled are bits 0 and 1 of address 00h, setting bits 0 and 1 to 1 is to enable both channels.

    (255/0xFF/1111 1111)(0000 0000)(0000 0000)(0000 0000)(0000 0000)(0000 0000)(Par)(D8)(D7)(D6)(D5)(D4)(D3)(255/0xFF/1111 1111)(255/0xFF/1111 1111)

    Best Regards,

  • Irwin, 

    I have reviewed section 8.4, and stated on the original thread, I am using national instruments device USB-8451. This device uses LabView to communicate through SPI, C samples are not utilized. As for the addressing scheme, I have done further analysis and proved my concept to be right.

    *I have already read the document section that explains the parity bit*

    can you elaborate some more on how this works

    does this Xnor the existing register in the 16 byte?

    or is it used for some other purpose?

    Thanks Irwin-

  • Hello John,

    I'm running this by our code person since I'm not familiar with what you are trying to do.

    Best Regards,

  • The parity bit is used as an error detection mechanism. See section 8.6.2 of the data sheet for how the parity bit is set in C code. This will give you an idea of how you you can implement the algorithm in LabView.