我用C8051F做SPI主器件,LM3S3739做SPI从器件,
1, SPI时钟为4MHz, 数据宽度为8bit, SPI取Freescale格式, SPO=0,SPH=0;
2, 程序中, CM3允许SPI接收和超时中断, C51为4线主模式, NSS引脚为output
3, C51连续发送, CM3中断接收
遇到如下问题:
1, 测试中,C51连续发送0xAB,0xCD,0xEF,0x01
2, CM3接收的结果为:0xXX,0xXA,0xBC,0xF0,0x1A,0xBC,0xF0,0x1A......, 其中,XX为不确定字节
很明显,CM3的接收结果错位了,也丢数据了
然后,我在C51的发送中,改为连续发送0xAB,0xAB,0xCD,0xCD,0xEF,0xEF,0x010x01
那么,CM3的接收结果为:0xXX,0xBA,0xDC,0xFE,0x10,0xBA,0xDC,0xFE,0x10
明显, 这个结果比之前好点,但是依然存在第一个字节不确定,后面接收字节错位
请高手指点