7038|19

2

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

大家搞SPI通信有没遇到数据丢帧现象?多帧数据,总有一帧/多帧数据收不到。 [复制链接]

大家搞SPI通信有没遇到数据丢帧现象?多帧数据,总有一帧/多帧数据收不到。

最新回复

这样一个个数据去读取也不知道能不能响应的过来?!  详情 回复 发表于 2009-11-2 16:46
点赞 关注

回复
举报

1

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
追踪了收每帧前的SPI的SFR配置,情况是一样的。但为什么总有一帧/多帧连SPI中断都触发不了?
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
但用示波器量了,数据是发出来了,但触发不了我的SPI中断。为什么?我的SPI配置没有什么改变的地方,再说发数据那方,每帧数据之间也做了足够的延时。每次发两帧数据,但每次总是第一帧可以收到,第二帧数据收不到(连SPI中断都触发不了)
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

4
 
两帧数据之间的间隔达到2S以上,第2帧数据才可以收到。
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

5
 
需要加一定延时,但是没有2s以上那么夸张,主要是要注意首帧数据接收需要主控制器发送一段无效的数据,同理从设备接收到的第一个数据应该丢弃。
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(高级)

6
 
引用 4 楼 xajhuang 的回复:
需要加一定延时,但是没有2s以上那么夸张,主要是要注意首帧数据接收需要主控制器发送一段无效的数据,同理从设备接收到的第一个数据应该丢弃。


这个怎么理解?
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

7
 
应该是代码有BUG,仔细调试吧,
或者贴出代码来,大家好分析,这么说很难找到问题
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

8
 
引用 6 楼 xiaocha 的回复:
应该是代码有BUG,仔细调试吧,
或者贴出代码来,大家好分析,这么说很难找到问题


代码太多,不好贴啊!
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

9
 
基本是程序问题,
先把流程图画出来,认真考虑一下你的程序逻辑吧。。。
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

10
 
怀疑WINCE的实时性不强,跟不上MCU的速度。
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

11
 
引用 9 楼 xqhrs232 的回复:
怀疑WINCE的实时性不强,跟不上MCU的速度。

应该不至于,SPI 的速度多少?
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

12
 
100-200kbps
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

13
 
应该与速度没多大关系,因为收齐了一帧数据,说明 wince 能跑得动。

仔细检查一下:

1  中断中缓存是否够?有没有越界的可能?
2  分帧处理部分,入口处,处理第一帧和处理第二帧有什么区别
    出口处,有没有延时的操作
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

14
 
uping
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

15
 
在发送第二帧之前,第一帧的发送完成是否判断了?
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

16
 
楼主还是加条握手线吧,虽然硬件资源多耗了些,程序结构会简单些!
 
 
 

回复

23

帖子

0

TA的资源

纯净的硅(初级)

17
 
我加了握手线,但还是不行啊!应该是我的程序处理的流程不对。直接用中断的方式,ARM这边没有MCU那边那样实时啊!
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

18
 
看来我的说法在你那边得到证实了。所以我不是每个字节都响应中断的!接到帧头后就把中断屏蔽了,然后通过判断SRCPAND的SPI标志位,来接收其它数据。所以帧里面还要有一个字节是表示帧长度的!
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

19
 
引用 18 楼 wjf_zjut 的回复:
看来我的说法在你那边得到证实了。所以我不是每个字节都响应中断的!接到帧头后就把中断屏蔽了,然后通过判断SRCPAND的SPI标志位,来接收其它数据。所以帧里面还要有一个字节是表示帧长度的!


不知道怎么理解.
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

20
 
这样一个个数据去读取也不知道能不能响应的过来?!
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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

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

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

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