明远智睿技术论坛

 找回密码
 立即注册
搜索
查看: 3799|回复: 3
打印 上一主题 下一主题

283的spi接口

[复制链接]

3

主题

6

帖子

73

积分

注册会员

Rank: 2

积分
73
跳转到指定楼层
楼主
发表于 2016-12-22 20:52:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
参照文档MY-IMX28 Linux-2.6.35 用户手册 v1.0.pdf文档描述,关于spi的测试部分
我在spi_tect.c中看到有配置spi的模式,读写模式
        /*
         * spi mode
         */
        ret = ioctl(fd, SPI_IOC_WR_MODE, &mode);
        if (ret == -1)
                pabort("can't set spi mode");

        ret = ioctl(fd, SPI_IOC_RD_MODE, &mode);
        if (ret == -1)
                pabort("can't get spi mode");



文档中写到“SPI 接口为半双工模式”,这个是什么意思,这个spi只能发或者只能写吗,是硬件驱动设计决定的吗?一般spi不都是全双工的吗?如何改成全双工的spi,不太懂,请指教



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

36

主题

745

帖子

2872

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2872
沙发
发表于 2016-12-23 16:45:16 | 只看该作者
IMX283的CPU决定的,改不的了,不能自发自收,其他都可以
回复 支持 反对

使用道具 举报

3

主题

6

帖子

73

积分

注册会员

Rank: 2

积分
73
板凳
 楼主| 发表于 2016-12-23 17:03:07 | 只看该作者
软件01 发表于 2016-12-23 16:45
IMX283的CPU决定的,改不的了,不能自发自收,其他都可以

mode 模式我设置如下,只要设置mode就无法设置模式,默认mode为0,倒是可以打开设备,其他情况均无法设置模式,设置模式失败
    mode = mode | SPI_MODE_0 | SPI_CS_HIGH | SPI_LSB_FIRST;
    ret = ::ioctl(fd,SPI_IOC_WR_MODE,&mode);
    if(ret == -1)
    {
        QMessageBox::about(this,"error","SPI_IOC_WR_MODE failure");
        exit(0);
    }

什么情况,是参照spi_test.c写的,请指教
回复 支持 反对

使用道具 举报

36

主题

745

帖子

2872

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2872
地板
发表于 2016-12-26 10:04:54 | 只看该作者

static struct spi_board_info spi_devboard_info[] __initdata = {
#if defined(CONFIG_SPI_MXS) || defined(CONFIG_SPI_MXS_MODULE)

  {

  /* the modalias must be the same as spi device driver name */

  .modalias = "spidev", /* Name of spi_driver for this device */

  .max_speed_hz = 20000000,     /* max spi clock (SCK) speed in HZ */

  .bus_num = 1, /* Framework bus number */

  .chip_select = 0, /* Framework chip select. */

  .mode = SPI_MODE_0,

  },

#endif
你可以直接改班级文件的  .mode = SPI_MODE_0,或者去掉,在测试源码都可以测试吧
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|明远智睿  

GMT+8, 2024-11-26 04:22 , Processed in 0.062224 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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