This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM8168的spi驱动中cs片选信号如何处理?



在dvrrdk_04.00.00.03.kernel\arch\arm\mach-omap2\Board-ti8168evm.c
添加了
struct spi_board_info __initdata ti816x_spi_slave_info[] = {
/*
{
.modalias = "m25p80",
.platform_data = &ti816x_spi_flash,
.irq = -1,
.max_speed_hz = 75000000,
.bus_num = 1,
.chip_select = 0,
},
*/


{
.modalias = "spidev",
.platform_data = NULL,
.irq = -1,
.max_speed_hz = 75*1000*1000,
.bus_num = 1,
.chip_select = 0,
.mode = SPI_MODE_0,
},
{
.modalias = "spidev",
.platform_data = NULL,
.irq = -1,
.max_speed_hz = 75*1000*1000,
.bus_num = 1,
.chip_select = 1,
.mode = SPI_MODE_0,
}

};
我有2个spi外设,分别定义在spi_board_info结构体数组中
在内核配置菜单中也选中spi相关驱动,现在重新编译内核生成uImage,
重启后有/dev/spidev1.0和/dev/spidev1.1两个spi字符设备
在原理图中
(DM8168)SPI_SCS0#-------------spi1外设的cs
(DM8168)SPI_SCS1/GPMC_A23#----spi2外设的cs
(8168)mosi连接spi1和spi2的miso
(8168)miso连接spi1和spi2的mosi,
如果断开8168的mosi,miso 和外设数据线的连接,8168的spi自发自收都正常,但是连接外设的miso和mosi后,
8168的miso上的数据就不正常出现错误,用示波器测量8168的cs0或者cs1管脚波形很诡异,总线有数据发送的时候变成这样,
应该拉低才行?关于cs的寄存器还需要配置吗?我都是采用默认的
请问大家有没有碰到这个问题,谢谢了!

同时测量到cs管脚的波形如下