我在设备树文件中,添加了SPI0和SPI4的设备结点,如图片1所示。然后会在/dev目录下生成spidev1.0和spidev2.0,我在我的应用程序中调用/dev/spidev1.0来调用SPI0,然后连接SPI0的相关引脚,通过ioctl接口来进行SPI通信,SPI0是可以正常使用的。
但是当我在程序中只更改/dev/spidev1.0为/dev/spidev2.0时,并连接了SPI4的相关引脚,就不能进行SPI通信了。
我用spidev_test测试程序短接SPI4的收发引脚时,是可以收到数据的,但为什么我的应用程序中不能调用SPI4呢?
应用程序中的相关代码如下所示:
spi0.device = "/dev/spidev2.0"
spi->fd_spi = open(spi->device,O_RDWR | O_NONBLOCK)
调用ioctl代码:
ret=ioctl(fd,SPI_IOC_MESSAGE(1),&tr)
我想解决一下SPI4不可以调用的问题,非常感谢!