3463|1

242

帖子

0

TA的资源

纯净的硅(中级)

楼主
 

LM3S3739的SPI通信问题 [复制链接]

我用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

明显, 这个结果比之前好点,但是依然存在第一个字节不确定,后面接收字节错位

 

请高手指点

 
点赞 关注

回复
举报

242

帖子

0

TA的资源

纯净的硅(中级)

沙发
 

没办法,既然硬件上不存在问题了,那就在软件上做一下处理

主SPI端每次多发送一个无用字节

从SPI端每次接收5个字节后,做一个对应处理,提取有用的4个字节.

唉,只能这样了.

 

虽然已经用SPI做过DA芯片控制,AD采样,两个CM3芯片之间的SPI通信等等, 但还是只能感叹对SPI不够熟悉啊~~~

 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表