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.

SPI problem with CC2430

Other Parts Discussed in Thread: CC2430

Hello I'm designing a Zigbee Project with CC2430, but at the moment without Stack.

My Problem is when I send data throw SPI, MOSI stays like the las send bit. So if the last bit is "1", MOSI stays High. and if the last bit is "0", MOSI is LOW.

I try to put Low P1_6=0; and 1_7=0;  but are configured as Periperical, so don't lend me change state.

How can I do in order to put MOSI always Low at the end of last bit clock ?

Thank you very much.

  • What is the concern that you have if the MOSI holds the value of the last bit transmitted?
    What is the requirement to have MOSI transition to logic-0 after the transfer?

  • The problem is that if the MOSI holds high, the consumption of slave device is more than it has to be when it hold Hight.

    The only way I found, is send a dummy byte with last bit to "0".

    But I want to put LOW more easily, using registers or with an automatic mode. Is possible?

    Edit: Now I try to configure P1_5, P1_6 and P1_7 as General I/O and put LOW ervery time at the end of SPI comunication and Works. But I want to find another way in order not to change every time betwen Peripheric and General I/O.

    Tkank you.

  • I was not able to determine a way to accomplish your goals automatically.  Your solution to reconfigure the I/Os as General I/O to hold the signals in a desired state is probably the best method available.