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.

[参考译文] LAUNCHLL-CC2640R2:SD卡- SPI - Composer Studio

Guru**** 2562120 points
Other Parts Discussed in Thread: CC2640R2F, CC2650EM-7ID-RD

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/585351/launchxl-cc2640r2-sd-card---spi---composer-studio

部件号:CC2650EM-7ID-RD
主题中讨论的其他部件:CC2640R2F

您好,  

请问您能为我提供有关如何在cc2640R2和SD卡(SPI)之间建立SPI通信的帮助吗? 我对SPI使用相应的库,并且还根据以下行更改Board.c文件:  

/*包括驱动程序*/
#include <ti/drivers/SDSPI.h>
/* SPI对象*/
SDSPI_Object sdspi_Object[CC2640R2_LAUNCCHXL_SPICOUNT];

/* SDSPI配置结构,描述要使用的引脚*/
const SDSPI_HWAttrs sdspiHWAttrs[CC2640R2_LAUNCCHXL_SPICOUNT]={

.baseAddr=SSI0_BASE,
.powerMngrId = PowerCC26XX_Periph_SSI0,
.pinSCK=BOARD_SPI0_CLK,
.pinMISO=BOARD_SPI0_MISO,
.pinMOSI=BOARD_SPI0_MOSI,
.pinCS=Board_SPI0_CSN
}
};

另外,我还创建了一个函数,其中我初始化SDSPI_init(),然后开始写入和读取一个char缓冲区[30](例如)。 我启用SD卡的芯片选择针脚,但没有任何反应。 我在SPI上看不到任何信号。 您能帮我解决任何问题吗? 一切似乎都是合乎逻辑的,但SPI没有响应。  

我还想问您CC2640R2的SPI速率是多少? 是1.25Mhz吗?

提前感谢您的参与,

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,

    TI不提供在CC2640R2F上使用SD/microSD卡的集成示例,因此我无法回答您的特定问题。 但是,这并不意味着您不能使用SPI驱动程序开发此类驱动程序。 您可以在OAD配置示例中看到使用SPI的功能示例。

    您可以在CC26xx TRM SWCU117中找到有关SPI操作的详细信息。 请参阅20.4 1位速率生成。

    祝你一切顺利
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    JXS,您好!

    感谢您的快速回答。 以下哪一项是OAD配置示例? 请给我一个链接或路径吗?

    此致,
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Emocs,您好!

    请参阅CC2640R2 SDK v 1.30 随附的蓝牙低能耗软件开发人员指南中的OAD部分。

    祝你一切顺利
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    部件号:CC2650EM-7ID-RD

    您好,

    您能否为我提供有关如何通过 SPI在CC2650EM-7ID-RD和SD卡之间建立SPI通信的帮助? 我使用相应的库,并且,我根据以下行更改Board.c文件:  

    /* include驱动程序*/
    #include "SDSPICC2650.h"
    #include <ti/drivers/SDSPI.h>/*
    SPI对象*/
    SDSPICC2650_Object sdspicCC2650_Object[CC2650_SPICOUNT];2650;
    
    /* SDHW配置 结构,描述要使用的引脚*/
    const SDSPICC2650CCSPI_ATTRS_{ ACT_US_SPCSDCSDCSDCSDCSDCSDCSDCSDCSDCSD_{
    
    .baseAddr=SSI0_BASE,
    powerMngrId = Periph_SSI0,
    .pinSCK=BOARD_SPI0_CLK,
    .pinMISO=BOARD_SPI0_MISO,
    .pinMOSI=BOARD_SPI0_MOSI,
    .pinCS=Board_SPI0_CSN
    }
    另外,
    
    我还创建了一个函数,在其中我初始化SDSPI_init(),然后开始写入和读取一个char缓冲区[30](例如)。 我启用SD卡的芯片选择针脚,但没有任何反应。 我在SPI上看不到任何信号。 您能帮我解决任何问题吗? 一切似乎都是合乎逻辑的,但SPI没有响应。
    
    PIN_HANDLE ledPinHandle;//用于SD卡
    PIN_State newPinState;
    
    PIN_Config ledPinTable[]={
    Board_SPI0_CSN| PIN_GPIO输出_EN | PIN_GPIO低| PIN_PushPull | PIN_DRVSTR_MAX,
    Board_SPI0_miso | PIN_INT_EN | PIN_Pulldown,
    Board_SPI0_MOSI | PIN_INT_EN | PIN_Pulldown,
    Board_SPI0_CLK | PIN_INT_EN | PIN_Pulldown,
    PIN_TERMINATE
    }; 
    ​您是否发现有问题? 我看到了以下帖子
    [1]
    [2]
    HTTPS://HTTPS.HTTPS/support/embedded/tirtos/f/355/p/46.1715万/2046762#2046762<xmt-block0>204.6762万 192.237204.6762万 192.237 145.96
    [3] 192.237 .145.96 /./56.0104万


    我可以理解,我遵循相同的逻辑,但SPI不响应,而且,当我调用打开SPI并尝试读/写的函数时,BLE停止广告。

    提前感谢您的参与,