Demo(示例代码)提供的bim工程使用sFlash,其spi接口上只挂载了这一个外设,因此没问题。 但实际项目,有2个spi外设,这样需要考虑spi接口驱动能力。 因此如下代码必须添加在SPI初始化接口中:
//MUST add these code,
//this makes spi multiply devices drive capbility
IOCIOPortPullSet(BSP_SPI_MISO,IOC_IOPULL_DOWN);
IOCIODrvStrengthSet(BSP_SPI_MOSI,IOC_CURRENT_8MA,IOC_STRENGTH_MAX);
IOCIODrvStrengthSet(BSP_SPI_CLK_FLASH,IOC_CURRENT_8MA,IOC_STRENGTH_MAX);
1,分别表示需要给MISO接口进行下拉处理,否则其波形会有问题(当外设为高阻态时候) 2,CLK和MOSI必须设置最大的驱动能力。
在APP程序中,使用了TI的中间层, 实现文件《SPICC26XXDMA.c》里的 SPICC26XXDMA_initIO 函数, 可以看到驱动能力已经初始化为了为 PIN_DRVSTR_MED。
这样在app程序里面挂2个外设可以没有问题。 但是最好设置为max.因为一定几率下会出现问题。
来源:oschina
链接:https://my.oschina.net/u/2435819/blog/1822255