嵌入式爱好者

查看: 19472|回复: 2

[Linux] 请教335xd spi1扩展ADC

[复制链接]

5

主题

17

帖子

124

积分

LS1012A通行证A40i/T3/T507/T527通行证i.MX8MM通行证RK3399通行证AM5718通行证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证

扫一扫,手机访问本帖
发表于 2017-3-13 21:16:26 | 显示全部楼层 |阅读模式
335xd的spi1外扩adc7298
修改了board-am335xevm.c 中am335x_spi1_slave_info
{
                .modalias      = "ad7298",
                //.platform_data = ad7298_platform_data,
                .max_speed_hz  = 1000000,//1Mbps
                .bus_num       = 2,
                .chip_select   = 0,
                .mode = SPI_MODE_2,//CPOL=1,CPHA=0
        },
然后在menuconfig中配置了spi,以及iio部分的adc7298选项
内核编译之后在/sys/bus/spi/drivers/ad7298/spi2.0中出现了iio:device0,里面是ADC的8个通道in_voltage0_raw-involtage7_raw
与片上TIADC的名称类似。
但是执行cat in_voltage0_raw 返回的值不正确,关键是spi1的sclk和数据均测不到,但是你们的例程spitest是可以测到波形的。
请问,我的步骤对吗?什么原因?spi扩展从设备还需要改动哪些地方?
回复

使用道具 举报

1

主题

3670

帖子

4177

积分

发表于 2017-3-14 10:38:36 | 显示全部楼层
您好:
      关于SPI扩展ADC需要对底层驱动做修改,建议您查看我们所提供的SPI和AD转换的相关驱动源码,再做修改。

点评

你们提供了spidev.c的驱动,里边提供了read,write及ioctrl接口,这些都是提供应用层用的。 你们的spitest测试程序也是基于这些接口,所以没有问题。 现在与spi1接口的从设备驱动,也就是ad7298的驱动已经有了  详情 回复 发表于 2017-3-14 11:02
技术支持电话:0312-3119192
技术支持邮箱:Android@forlinx.com
点评回复 支持 反对

使用道具 举报

5

主题

17

帖子

124

积分

LS1012A通行证A40i/T3/T507/T527通行证i.MX8MM通行证RK3399通行证AM5718通行证AM335x通行证i.MX6UL通行证i.MX RT通行证i.MX6Q通行证XX18通行证

 楼主| 发表于 2017-3-14 11:02:11 | 显示全部楼层
飞凌-chongzi 发表于 2017-3-14 10:38
您好:
      关于SPI扩展ADC需要对底层驱动做修改,建议您查看我们所提供的SPI和AD转换的相关驱动源码, ...


你们提供了spidev.c的驱动,里边提供了read,write及ioctrl接口,这些都是提供应用层用的。
你们的spitest测试程序也是基于这些接口,所以没有问题。

现在与spi1接口的从设备驱动,也就是ad7298的驱动已经有了,还要改动哪儿?我总不能在应用层利用那些接口函数通过spi通信来配置ad7298的寄存器吧?
点评回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-20 20:24

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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