xiaozhi 发表于 2021-3-16 14:28:05

求助!基于linux-4.1.15内核,采用设备树进行SPI驱动开发,实现okmx6q-c与fpga通信

本帖最后由 xiaozhi 于 2021-3-16 17:24 编辑

求助!!!目前使用OKMX6Q-C开发板进行项目开发,拟计划采用该款开发板实现与Intel公司的FPGA之间的SPI指令通信,以及实现EIM外部并行总线数据通信,我采用的Linux内核版本为linux-4.1.15,采用设备树方法进行驱动开发,目前自己尝试写了一个SPI驱动(具体代码以及设备树文件见附件),使用该驱动进行SPI通信测试,发现只有片选信号,而没有SPI时钟及其他信号;此外,在不外接FPGA,同时也没有将 OKMX6X-C 开发板提供的一路 TTL 电平的插针 SPI 接口(SPI2)的 8 脚(SPI2_MOSI)和 10 脚(SPI2_MISO)短接的情况下,但是在调用应用程序进行测试时,却得到如下图所示结果:同时我也根据贵司提供的手册,把SPI 接口(SPI2)的 8 脚(SPI2_MOSI)和 10 脚(SPI2_MISO)短接处理进行测试,并用示波器抓取片选及时钟信号,可以得到与教程中相同的结果,但是在示波器中没有发现片选及时钟信号,目前不知道是什么原因导致,故特来请教,望不吝赐教!

这是我自己在设备树配置的spi,最终测试的时候却没有时钟输出,检查驱动成功注册,spi收发代码如下:







wjy 发表于 2021-3-18 14:18:13

我们的开发板中SPI的驱动,您可以按照我们手册里的方法用我们的驱动试一下,我们的SPI驱动没有做片选,您可以在设备树里引脚配置的位置加一个片选引脚。

Ares_go 发表于 2021-3-18 15:11:25

wjy 发表于 2021-3-18 14:18
我们的开发板中SPI的驱动,您可以按照我们手册里的方法用我们的驱动试一下,我们的SPI驱动没有做片选,您 ...

我也遇到相通的问题;设备树引脚配置的为止加一个片选的引脚,是下图吗?这里PC19就是片选的引脚;还是没有测到片选和时钟信号,帮忙看下是不是改的地方不对

wjy 发表于 2021-3-19 14:53:15

这是我们这边测试的片选信号(黄色)和输出信号(蓝色)。有数据发出时片选拉低,无数据时片选拉高。我们的设备树中设置了片选为gpio2-io27,对应6x-c开发板上P3的3引脚。您如果自己更改了片选引脚的话需要去测量更改的引脚的波形,再测P3座子上的脚就不会有波形了。

wjy 发表于 2021-3-19 15:06:07

Ares_go 发表于 2021-3-18 15:11
我也遇到相通的问题;设备树引脚配置的为止加一个片选的引脚,是下图吗?这里PC19就是片选的引脚;还是没 ...

您可以看一下我们的设备树中SPI的相关设置:arch/arm/boot/dts/imx6q-c-sabresd.dts

cs-gpios这里再加其他的片选,参考下面spidev的格式配置就行了。片选不超过四个
页: [1]
查看完整版本: 求助!基于linux-4.1.15内核,采用设备树进行SPI驱动开发,实现okmx6q-c与fpga通信