嵌入式爱好者

查看: 425|回复: 4

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

[复制链接]

5

主题

6

帖子

60

积分

i.MX6UL通行证i.MX6Q通行证

扫一扫,手机访问本帖
发表于 2021-3-16 14:28:05 | 显示全部楼层 |阅读模式
本帖最后由 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)短接处理进行测试,并用示波器抓取片选及时钟信号,可以得到与教程中相同的结果,但是在示波器中没有发现片选及时钟信号,目前不知道是什么原因导致,故特来请教,望不吝赐教!
QQ截图20210313163905.png vlfspi_test.png
这是我自己在设备树配置的spi,最终测试的时候却没有时钟输出,检查驱动成功注册,spi收发代码如下:







vlfspi.c.png
vlfspi_read.png

spi.rar

16.9 KB, 下载次数: 6, 下载积分: 贡献 1

回复

使用道具 举报

0

主题

55

帖子

214

积分

LS1012A通行证LS1043A\46A通行证A40i/T3通行证i.MX8MM通行证RK3399通行证LS1028A通行证AM5718通行证Hi3519A通信证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证TCU通行证FDU产品通行证FCU1401通行证FCU1301通行证FCU1101通行证FCU1201通行证FCU2301/FCU2302通行证FCU2401通行证5G转接卡通行证FCU1103通行证

发表于 2021-3-18 14:18:13 | 显示全部楼层
我们的开发板中SPI的驱动,您可以按照我们手册里的方法用我们的驱动试一下,我们的SPI驱动没有做片选,您可以在设备树里引脚配置的位置加一个片选引脚。

点评

我也遇到相通的问题;设备树引脚配置的为止加一个片选的引脚,是下图吗?这里PC19就是片选的引脚;还是没有测到片选和时钟信号,帮忙看下是不是改的地方不对[attachimg]11481[/attachimg]  详情 回复 发表于 2021-3-18 15:11
点评回复 支持 反对

使用道具 举报

2

主题

6

帖子

32

积分

A40i/T3通行证

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

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

点评

wjy
您可以看一下我们的设备树中SPI的相关设置:arch/arm/boot/dts/imx6q-c-sabresd.dts [attachimg]11486[/attachimg] cs-gpios这里再加其他的片选,参考下面spidev的格式配置就行了。片选不超过四个  详情 回复 发表于 2021-3-19 15:06
点评回复 支持 反对

使用道具 举报

0

主题

55

帖子

214

积分

LS1012A通行证LS1043A\46A通行证A40i/T3通行证i.MX8MM通行证RK3399通行证LS1028A通行证AM5718通行证Hi3519A通信证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证TCU通行证FDU产品通行证FCU1401通行证FCU1301通行证FCU1101通行证FCU1201通行证FCU2301/FCU2302通行证FCU2401通行证5G转接卡通行证FCU1103通行证

发表于 2021-3-19 14:53:15 | 显示全部楼层
这是我们这边测试的片选信号(黄色)和输出信号(蓝色)。有数据发出时片选拉低,无数据时片选拉高。我们的设备树中设置了片选为gpio2-io27,对应6x-c开发板上P3的3引脚。您如果自己更改了片选引脚的话需要去测量更改的引脚的波形,再测P3座子上的脚就不会有波形了。
aaoqyzefdc0byadalkl546vu_1440X1080.jpg
点评回复 支持 反对

使用道具 举报

0

主题

55

帖子

214

积分

LS1012A通行证LS1043A\46A通行证A40i/T3通行证i.MX8MM通行证RK3399通行证LS1028A通行证AM5718通行证Hi3519A通信证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证TCU通行证FDU产品通行证FCU1401通行证FCU1301通行证FCU1101通行证FCU1201通行证FCU2301/FCU2302通行证FCU2401通行证5G转接卡通行证FCU1103通行证

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

您可以看一下我们的设备树中SPI的相关设置:arch/arm/boot/dts/imx6q-c-sabresd.dts
Image_20210319150403.png
cs-gpios这里再加其他的片选,参考下面spidev的格式配置就行了。片选不超过四个
点评回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )  

GMT+8, 2021-4-10 22:21

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表