您好,看的是上图所示的软件demo代码:和MSP432进行spi通信,将测距数据通过spi传出去的demo例程。
问题如下:
(1)为什么传输16bit的数据,最多一次只能传输128个字节?传输8bit的数据,最多一次传输64个字节??
我的想法:我看参考手册中介绍MibSPI模块的章节,其可以工作在2种模式下:Compatibility Mode /Multi-buffer Mode,如果配置为Compatibility Mode,使用DMA传输,传输数据量应该能达到DMA一次传输能做到的极限吧??在Multi-buffer Mode下,要发送的数据需要写到TXRAM,接收的数据得从RXRAM中读,所以该模式下数据量传输才会受到RAM_SIZE的限制,不知道我这么理解是否正确。
(2)spi参数结构体中没有让选择Compatibility Mode还是Multi-buffer Mode的参数,那么例程中这么配置是哪个模式了呢?
(3)在ccs工程中,extern void SPI_init(void);类似于这种的外部函数,可以通过某种方式在ccs中查看到源码吗?
(4)我手里有iwr1443boost开发板,运行开箱demo时必须用sdk2.1版本的sdk,因为3.4版本没有iwr1443的开箱demo,然后spi的测试代码2.1却没有,3.4是有的,继续开发是建议用哪个sdk的版本呢?
(5)sdk中每个驱动的单元测试代码在哪个ide下可以运行呢?用ccs导入工程的方式不行。
问题有点多哈。
Chris Meng:
user5977184(3)在ccs工程中,extern void SPI_init(void);类似于这种的外部函数,可以通过某种方式在ccs中查看到源码吗?
Spi的驱动库通常是去掉debug信息并且配置O3优化的。如果你想在ccs里单步运行,建议使用-g并去掉优化,重新编译库,并且重新编译测试代码。
Chris Meng:
user5977184 (4)我手里有,运行开箱demo时必须用sdk2.1版本的sdk,因为3.4版本没有,然后spi的测试代码2.1却没有,3.4是有的,继续开发是建议用哪个sdk的版本呢?
建议使用sdk2.1
user5977184 (5)sdk中每个驱动的单元测试代码在哪个ide下可以运行呢?用ccs导入工程的方式不行。
使用命令行编译,在ccs下运行调试。
user5977184:
回复 Chris Meng:
您好,感谢您的回答。您回答的这两个问题有相关的文档说明吗?
由于刚刚接触ti芯片开发,stm32的测试例程直接是工程代码,可以运行调试的。ti的测试代码目前我只是用文本查看,不会下载进开发板运行调试,所以有相关的操作文档可以参考一下吗?以及外部函数可以在ccs中查看的文档说明。
user5977184:
回复 Chris Meng:
您好???