As the title suggests, I am trying to port the libraries over. I already have the libraries working on the 5739, but I need more memory for my application, and the 5438 has much more. When trying to port over the SPI code, I noticed that it uses P2IE and P2IFG. I was going to use the SPI port on port 9 of 5438, but when I changed P2IE to P9IE, the compiler told me that those do not exist. Sure enough, only P1IE and P2IE are defined in <msp430f5438a.h>. And unfortunately, there is no SPI port on port 1 or 2 of the 5438.
What should I do? Should I just move the interrupt pin to port 2, and leave the rest of the SPI on port 9?
Are there any better porting guides than this one?
http://processors.wiki.ti.com/index.php/CC3000_Host_Driver_Porting_Guide
Thank you
Nathan,
I am not sure which pin you're referring to, but IRQ pin must be placed in an interrupt capable port of the MSP430 which is usually only PORT 1 and 2.It doesn't matter which GPIO it is, just that it triggers it correctly. Therefore, you can carry the settings over from the Port 2 settings used for IRQ.
There is no need to have the SPI physically on the same port as the IRQ and WLAN_EN.
Regards,Gustavo
Have you had a chance to look into the Basic WiFi App for the MSP430F5438?
http://processors.wiki.ti.com/index.php/CC3000_Wi-Fi_MSP-EXP430F5438#Supported_Applications
Regards,
Miguel
Miguel,
Thank you! This will hopefully save me a lot of time.
Nathan
Excuse me.
Do you find solution to solve MSP430F5438 to link CC3000.I use http://processors.wiki.ti.com/index.php/ CC3000 _Wi Fi_ MSP # -EXP430F5438。
but it can not work
Hello Hsiung Chai-Wei,
The following link should work for you: http://processors.wiki.ti.com/index.php/CC3000_Wi-Fi_MSP-EXP430F5438#Supported_Applications
If that doesn't work, you can download the Basic Wi-Fi app for the 5438 directly from here: http://www.ti.com/lit/sw/swrc241/swrc241.zip
Kelvin
Please click the Verify Answer button on this post if it answers your question. Thank You.
Dear Kelvin,
I have been use http://www.ti.com/lit/sw/swrc241/swrc241.zip for a long time.
I use IAR "NEXT STATAEMENT and breakpoint" , but it shut down at wlan_start(0). P1.7 WLANENABLE is already high.
My MSP430F5438 is not MSP-EXPF5438, but I already set pin P1.3 for IRQ P1.7 for WLANENABLE
P5.6 for UART_PIN_TXD P5.7 for UART_PIN_RXD
P9.4 for RF_SPI_SIMO
P9.5 for RF_SPI_SOMI
P9.0 for RF_SPI_CLK
P9.3 for RF_SPI_CS
It is SHUT DOWN at SimpleLink_Init_Start in wlan_start(0) .
The same problem for me. http://e2e.ti.com/support/low_power_rf/f/851/t/201415.aspx
wlan_start(0) function call is blocking on
SimpleLinkWaitEvent(HCI_CMND_SIMPLE_LINK_START, 0);
(within SimpleLink_Init_Start)
So are you testing this on a custom board? If so, it may be easier for you to evaluate this solution with the experimenter board, which can be found here: https://estore.ti.com/MSP-EXP430F5438-MSP430F5438-Experimenter-Board-P1508.aspx It sounds like something is going on with your SPI line. Have you looked at the SOMI line to see if the CC3000 responds with anything on this line?
Hi,
Did you see if the wlan interrupt was triggered. And how about the state of the SPI?
Pedro
DEAR Pedro5084,
Wlan interrupt was triggered means WLAN IRQ high???And then,I should test SPI PIN.I will test it.THANKS
I use customer borad.
I will test SPI PIN.how should SPI pin status be?(HIGH or LOW)MISO
MOSI
CLKSTE
After a command is issued, the CC3000 should assert the IRQ line. The master will then issue a read command, then the CC3000 will send the response data. You should observe the CC3000 responce back on this MISO line. The sequence of events is detailed further in the CC3000 Host Porting Guide here: http://processors.wiki.ti.com/index.php/CC3000_Host_Programming_Guide
Dear Kelvin,I check SPI.
void halRfSpiInit(void){ /* Setup CS to be used as GPIO */ RF_PORT_SEL &= ~RF_SPI_CS; RF_PORT_OUT |= RF_SPI_CS; RF_PORT_DIR |= RF_SPI_CS; // Set up pins used by peripheral unit RF_PORT_SEL |= RF_SPI_SIMO + RF_SPI_SOMI + RF_SPI_CLK; RF_PORT_DIR |= RF_SPI_CLK + RF_SPI_SIMO; RF_PORT_DIR &= ~RF_SPI_SOMI; RF_PORT_REN |= RF_SPI_SOMI; // Pull-Ups on RF Interface SOMI RF_PORT_OUT |= RF_SPI_SOMI; RF_PORT_SEL |= RF_SPI_SIMO + RF_SPI_SOMI + RF_SPI_CLK; // Initialize USCI_B1 for SPI Master operation UCB0CTL1 = UCSWRST; // Put state machine in reset UCB0CTL0 |= /*UCCKPH +*/ UCMSB + UCMST + UCMODE_0 + UCSYNC ; // 3-pin, 8-bit SPI master // Clock polarity select - The inactive state is high // MSB first UCB0CTL1 |= /*UCSWRST +*/ UCSSEL_2; // Use SMCLK, keep RESET UCB0BR0 = 0x10; // Initial SPI clock must be <400kHz UCB0BR1 = 0; // f_UCxCLK = 16MHz/16 = 1MHz // Release for operation UCB0IE &= ~(UCTXIE + UCRXIE); UCB0CTL1 &= ~UCSWRST; UCB0IFG &= ~UCRXIFG;}
I didn't find where is wrong.
This code is download from TI.
Does UCCKPH UCCKPL is problem?
Edward
SIMO and CLK are always low.
When WLAN_ENABLE
IRQ goes to low first.
When hci_command_send(HCI_CMND_SIMPLE_LINK_START, ptr, sizeof(SimpleLink_Init_Start_t));
SOMI ,Cs,PWREN,VCC goes to low.
Then it shut dowm at SimpleLinkWaitEvent(HCI_CMND_SIMPLE_LINK_START, 0);