ok335xs开发板spi测试与外接设备
你好,我测试ok335xs的spi接口时,自己短接的时候可以发送并接收数据,现在我想去读取另外一块开发板的寄存器数据,为什么没法读取,只有00000,我用的是开发板资料所提供的spi测试程序,请问还需要什么设置片选,设置时钟等修改内核的操作来实现吗?另外,有没有ok335xs 增加片选信号的步骤 只要目录/dev/spidev1.1下生成了节点,内核驱动就没有问题了;飞凌提供的测试程序是自发自收的,您要用的话请把接收和发送部分开;
片选信号的修改:arch/arm/mach-omap2/board-am335xevm-xs.c
如下定义中am335x_spi1_slave_info
#elif defined(CONFIG_SPI_SPIDEV)
{ .modalias = "spidev",
.max_speed_hz= 48000000,//48Mbps
.bus_num = 2,
.chip_select = 0,
.mode = SPI_MODE_1,
},
#endif
};
根据所选的引脚配置 .chip_select,主要是mcasp0_ahclkr.spi1_cs0这个引脚,这个要选cpu有cs功能复用的引脚
static struct pinmux_config spi1_pin_mux[] =
{
#if defined(CONFIG_CAN_MCP251X)
{"gpmc_ad13.gpio1_13",OMAP_MUX_MODE7 | AM33XX_PIN_INPUT},
#endif
{"mcasp0_aclkx.spi1_sclk", OMAP_MUX_MODE3 | AM33XX_PULL_ENBL| AM33XX_INPUT_EN},
{"mcasp0_fsx.spi1_d0", OMAP_MUX_MODE3 | AM33XX_PULL_ENBL| AM33XX_PULL_UP | AM33XX_INPUT_EN},
{"mcasp0_axr0.spi1_d1", OMAP_MUX_MODE3 | AM33XX_PULL_ENBL| AM33XX_INPUT_EN},
{"mcasp0_ahclkr.spi1_cs0", OMAP_MUX_MODE3 | AM33XX_PULL_ENBL| AM33XX_PULL_UP | AM33XX_INPUT_EN},
{NULL, 0},
};
本帖最后由 1192243764@qq.c 于 2022-7-19 09:29 编辑
页:
[1]