工具/软件:Code Composer Studio
我的 TMS320C5505 SPI 有问题。 我 使用带有 5505ezdsp bord 的例程运行仿真、但 失败了。 SPI_SIMO 和 SPI_CLOCK 都没有 信号。
我使用 CS1 来收集 AD 的数据。 这里只是一个测试程序。
谢谢。
#include
#include
#include
#include
#include
#include
#define CSL_TEST_FAILED (1)
#define CSL_TEST_PASSED (0)
#defineCSL_SPI_BUF_LEN(64)
#defineSPI_CLK_DIV(10000)
#defineSPI_FRAME_LENGTH(1)
UINT16 WriteBuff[CSL_SPI_BUF_LEN];
UINT16 SpiReadBuff[CSL_BUF_LEN];UINT16
= UINT16 = UST_STEP0;UINT16 SIMPLE 0 = UINT16
;U16 INSTEP_STEP_INSTEP_INSTEP_0;U16 = U16
/*uint16value = 0;
uint16pageNo = 0x0000;
uint16pollStatus;
uint16delay;
uint16fnCnt;*/
result = spi_init ();
if (CSL_SOK!=结果)
{
status = CSL_TEST_FAILED;
return (status);
}
else
{
printf ("SPI 实例初始化成功\n");
}
hSpi = SPI_open (SPI_CS_NUM_1、SPI_POLLING_MODE);
if (NULL = hSpi)
{
return (CSL_hw_SIT_CONFIG
= SPI_THSIN = SPI_CLUST_THIN = SPI_CLUST_THIN
);}if = SPI_CLUST_CLUST_THRELENGTHIN = SPI_CONFIG.CLK = SPI_CLUSTREN.CLUSTRIELD_SION_SION_SION_SION_SION_SION_TH_
hwConfig.frLen= SPI_FRAME_LENGTH;
hwconfig.wcEnable= SPI_WORD_IRQ_ENABLE;
hwconfig.fcEnable= SPI_FRAME_IRQ_DISABLE;
hwconfig.csNum= SPI_CS_NUM_1;
hwconfig.dataDelay= SPI_DATA_DLY_1;
hwconfig.csPol= SPI_CSP_ACTIVE_LOW;
hwconfig.clkPol= SPI_CLKP_LOW_AT_IDLE;
hwconfig.clkPh= SPI_CLK_PH_FALL_EDGE;
结果= SPI_CONFIG (hSpi、&hwconfig);
if (CSL_Sok!= Result)
{
return (CSL_test_failed);
}
else
{
printf ("SPI 实例已成功配置\n");
}
byteBuf[0]= 0xABCD;
for (looper = 0;Reader < 64;)
{loopBuff[0x001]+loopBuff[0xboobed];loopWriter[0x001]=0xloopBuff]
;loopWriter[loopBuff]
= 0x00bed[loopbed\<64;loopWriter]+ 0x00bed\+ 0x00boobed\<64;loopbed\<1 = 0x00p
return (status);
}
void main (void)
{
int16 status;
PLL_sample (); //μ s 时钟初始化
= SPI_SAMPLE ();
//spirom_init();
while (1)
{
delay_i = 5000;
while (delay_i---);
SPI_dataTransaction (hSpi、spiWriteBuff、CSL_SPI_BUF_LEN、SPI_WRITE);
}