STM32とCC3000

06 May 2016

こんにちは

現在はSTM32F091上でSparkfunのCC3000のWifiモジュールを動かしてみようと思っています。 どなたかがこういう風なことがやったことあるのでしょうか?

未だ無線で繋がれないです。

使っているライブラリーは https://developer.mbed.org/components/SimpleLink-Wi-Fi-CC3000/

よろしくお願いします

09 May 2016

こんにちは。

私は使用したことがないのですが、こちらに情報がありました。 ハードウェアに関して注意しなければならない点があるようです。

https://developer.mbed.org/cookbook/cc3000#hardware-issues

18 May 2016

返事ありがとうございました。

試してみたがうまく動けないです。

割り込みの問題だそう

28 May 2016

こんばんは。

STM32F091が手元に無かったので、STM32L476と「CC3000 WiFi モジュールピッチ変換基板」で確認してみました。特に問題無く動作しました。

/media/uploads/MACRUM/img_7671.jpg

使用したコードは、コンポーネントページにあるものです。 https://developer.mbed.org/components/SimpleLink-Wi-Fi-CC3000/

修正した箇所は以下です。

main.h

#define MY_BOARD MBED_BOARD_EXAMPLE


main.cpp

#elif (MY_BOARD == MBED_BOARD_EXAMPLE)
#if defined(TARGET_LPC1768)
cc3000 wifi(p9, p10, p8, SPI(p5, p6, p7), "ssid", "key", WPA2, false);
Serial pc(USBTX, USBRX);
#else
cc3000 wifi(D10, D9, D8, SPI(D11, D12, D13), "ssid", "key", WPA2, false);
Serial pc(SERIAL_TX, SERIAL_RX);
#endif
#else


NVIC_set_all_priorities.cpp

#include "NVIC_set_all_priorities.h"

/* 必要ないので削除
void NVIC_set_all_irq_priorities(int priority)
{
    int irqnum;
    for(irqnum = first_IRQ_number ; irqnum < last_IRQ_number + 1 ; irqnum++)
        NVIC_SetPriority((IRQn_Type)irqnum, priority);
}
*/


この修正でサンプルコードの動作を確認しました。

写真ではCC3000のVCCを別電源にしていますが(LPC1768では別電源で供給しないと電圧がドロップしてしまったため)、NUCLEO STM32L476では5Vから直接供給しても問題ありませんでした。

使用したターゲットは異なりますが、同じSTM32シリーズなので割り込み周りの挙動は同じような気がします。