首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

请问高手:LIN 主站接收数据的问题

请问高手:LIN 主站接收数据的问题

我用的主站是DP256开发板,外接了一片MC33399。从站是QL4开发板。
主站在连续发送报文头:13位低电平+0X55+ID;从站接收到ID后,发送8个字节的数据,即RESPOND。我用示波器观察总线,发现此时报文头和RESPOND连在一起,成为大于13个字节的一串高低电平。
请问:1、主站需要接收从站的回答数据,前面的报文头也就会接收下来。那么13个低电平的BREAK怎么处理呢?它不是一个字节呀。
2、不同报文的ID有优先级,这个怎么处理?
谢谢帮忙!!
同时,再次恳请版主能否把飞思卡尔做过LIN的技术支持工程师的联系方式发给我。万分感谢!!邮箱是whccxx@sohu.com
学无止境
请教版主strongchen:主机发送完报头后,是不是应该在等待回应?接收回应数据用中断处理,这样必然会接收报头的啊。我现在就是不太清楚这个处理过程。看飞思卡尔的例程中,有一个FE中断,好像是要忽略,看不明白。能否请您说得详细一些。谢谢!!
请问版主:您是在北京吗?能否把联系方式告知,万分感谢!!!
学无止境
版主strongchen:协议我看过,主站发报头在LIN总线上,从站回应数据,共同组成一个报文。主站我连续发同一个报头,从站也回应同样的数据,在LIN总线上我能看到一个完整的报文。这样在主站接收数据时,必然要先接收到报头后才会是RESPOND的。目前,我能接收到从站的数据,但是情况不对。我这样做是想先把通路打通了,过程搞清楚了,那么以后发送何种报头,回应RESPOND,都是一样的。
所以,我想知道,在主站使用SCI如何接收RESPOND?主MCU是不可能过滤报头的。谢谢!!
学无止境
可能是我没有说清楚。主站是这样的:我在主程序中连续发送报头,使用SCI接收中断接收IN总线上的数据,预先设置了11个字节的数组。用示波器在总线上可以看到一串同样的完整报文(包含报头和RESPOND),间隔40毫秒。
我想知道我用示波器看到的现象对吗?这样子接收是不是就把整个报文接收下来了?我现在是能接收到一些数据,但不是完整的报文,象0X55和ID都收到过,11个字节的数组里面的数据不是确定顺序的数据,而是发送的数据比较随机的排列,经常是相邻的两个字节接收的一样。
请教版主:产生的FE标志位有什么用?应该怎样利用它做贡献?
能不能说得详细些?我不明白主MCU该怎样处理。只有我知道了,主MCU 才会知道怎么处理呀。
学无止境
谢谢天涯,我给你发了飞思卡尔的例程,不知你收到了没有。
你的意思是在发送报头以后才打开接收器,对吧?我去试试。再次感谢!!
学无止境
我昨天已经能收到完整的一个报文了,谢谢大家的帮助!!
事实上,什么时候打开接收器好象关系不大,我总是能收到祯头的。所以我觉得在回应数据存在总线上的同时,祯头也存在。示波器看到的就是完整的一祯,既然都在总线上,肯定就会都接收下来。
不过,还有个问题没有想通:主站发向从站的祯头在时间轴上看必然在从站回应数据之前,为什么主站能接收到祯头呢?是不是33399能够把祯头再发送到总线上或者能保持在总线上?
请教了,谢谢!!
学无止境
返回列表