之前测试过DM8127的SPI0 用于SPI通信(和S3C2440),设置为slave模式,收发数据正常;
同样的程序放到SPI1上,存在以下问题:
1、DM8127发送数据,Hi3559A接收数据(双方经过1.8<–>3.3V电平转换),Hi3559A经常会将某个字节数据重复接收2次。随着频率的提高和数据量的增大,上述情况出现的概率也随着增加。
2、Hi3559A发送数据,DM8127接收不到数据。
3、Hi3559A回环测试正常:包括芯片内部回环、电平转换芯片两侧回环。DM8127 SPI1 回环测试也正常。
内核/arch/arm/mach-omap2/devices.c文件和/arch/arm/mach-omap2/board-ti8148ipnc.c文件已修改过SPI1相关的资源定义。IO引脚复用也已设置过。
Chris Meng:
你好,
你有参考过下面链接的相关信息么?
processors.wiki.ti.com/index.php
user5273593:
补充最新的测试情况:
1、使用全双工的方式测试SPI1,出现了类似于自环的情况;
2、将SPI1 的DI引脚配置为GPIO模式,可以收到数据,但是存在丢失部分数据的情况;
user5273593:
回复 user5273593:
补充2:无法接受数据的故障解决了
1、内核omap2_mcspi_setup_transfer 函数中默认配置了SPI0的MCSPI_CH0CONF寄存器,用于设置SD[0]和SD[1]用来发送或者接收。没有配置SPI1,增加配置后问题解决。
2、想在的故障是:DM8127作为slave,Hi3559A作为master,
DM8127 向Hi3559A发送数据,Hi3559A会重复接收1字节的数据(8bit模式,或者说DM8127丢失了1个字节数据的时钟);
Hi3559A向DM8127 发送数据,DM8127会丢失接收1字节的数据(8bit模式,或者说DM8127丢失了1个字节数据的时钟);
Ternence_Hsu:
回复 user5273593:
谢谢分享;
开始做hi3559a 了;恭喜;
TI中文支持网

