tms320f28335的SPI同时分配能到不同的端口上?
GPIO54、GPIO55、GPIO56、GPIO57和GPIO16、GPIO17、GPIO18、GPIO19都可以做SPI,但28335的SPI只有一个。程序中是这样分配端口的:/* Configure SPI-A pins using GPIO regs*/// This specifies which of the possibleGPIO pins will be SPI functional pins.// Comment out other unwanted lines. GpioCtrlRegs.GPAMUX2.bit.GPIO16 = 1; // Configure GPIO16 as SPISIMOA GpioCtrlRegs.GPAMUX2.bit.GPIO17 = 1; // Configure GPIO17 as SPISOMIA GpioCtrlRegs.GPAMUX2.bit.GPIO18 = 1; // Configure GPIO18 as SPICLKA GpioCtrlRegs.GPAMUX2.bit.GPIO19 = 1; // Configure GPIO19 as SPISTEA// GpioCtrlRegs.GPBMUX2.bit.GPIO54 = 1; // Configure GPIO54 as SPISIMOA// GpioCtrlRegs.GPBMUX2.bit.GPIO55 = 1; // Configure GPIO55 as SPISOMIA// GpioCtrlRegs.GPBMUX2.bit.GPIO56 = 1; // Configure GPIO56 as SPICLKA// GpioCtrlRegs.GPBMUX2.bit.GPIO57 = 1; // Configure GPIO57 as SPISTEA
如果GPIO54、GPIO55、GPIO56、GPIO57 部分不注释掉,是不是也是可以的?看数据手册和指南好像是可以的。奇怪!
查看了一下是一个SPI
如果这个都可以用作SPI的话且只有一个SPI
那就同时只能选通一组
看你怎么接了注释掉没什么问题 zhangmangui 发表于 2013-11-26 10:28 static/image/common/back.gif
查看了一下是一个SPI
如果这个都可以用作SPI的话且只有一个SPI
那就同时只能选通一组
GpioCtrlRegs.GPAMUX2.bit.GPIO16 = 1; // Configure GPIO16 as SPISIMOA
GpioCtrlRegs.GPAMUX2.bit.GPIO17 = 1; // Configure GPIO17 as SPISOMIA
GpioCtrlRegs.GPAMUX2.bit.GPIO18 = 1; // Configure GPIO18 as SPICLKA
GpioCtrlRegs.GPAMUX2.bit.GPIO19 = 1; // Configure GPIO19 as SPISTEA
GpioCtrlRegs.GPBMUX2.bit.GPIO54 = 1; // Configure GPIO54 as SPISIMOA
GpioCtrlRegs.GPBMUX2.bit.GPIO55 = 1; // Configure GPIO55 as SPISOMIA
GpioCtrlRegs.GPBMUX2.bit.GPIO56 = 1; // Configure GPIO56 as SPICLKA
GpioCtrlRegs.GPBMUX2.bit.GPIO57 = 1; // Configure GPIO57 as SPISTEA
如果这样设置,会出现什么情况? 感觉有问题。 芯片设计有问题啊。 应该是二选一,而不应该是同时可以选。 AD797 发表于 2013-11-26 10:55 static/image/common/back.gif
GpioCtrlRegs.GPAMUX2.bit.GPIO16 = 1; // Configure GPIO16 as SPISIMOA
GpioCtrlRegs.GPAMUX2.bit ...
芯片设计肯定是没问题的这个你放心
我下来确认一下给你回复 遇到同样的问题,不直到楼主懂了没?可以同时在硬件端实现SPI吗? 我怀疑同时选也是可以的, 只是输入冲突怎么办,输出两路都是同样的信号。
不过我没有这样用过,你倒是可以试试。
另外,轮番切换肯定是可以的 yidilvye 发表于 2017-2-27 19:59
遇到同样的问题,不直到楼主懂了没?可以同时在硬件端实现SPI吗?
可以用MCBSP实现硬件SPI
页:
[1]