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

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

主机肯定也能接受到报头,但是接着也会接受到ID号,主机可根据ID号确定是命令数据还是请求数据,如果是请求数据则需要从机回应,一般有一个回应的时间限制.
xiaoxiaoer,能否再去看看我的问题?
立志做个专业的工程师
如果方便的话,能否把您的lin主的飞思卡尔的例程发送给我,我现在用的是GZ8作为主机,找了好久找不到类子,很想看看类似的软件参考一下.
立志做个专业的工程师
不好意思,忘了写邮箱.xmq0000@sina.com or xmq1111@163.com.我也在作LIN系统,有问题希望一起讨论.
立志做个专业的工程师
我来说说吧:
所有在LIN总线上的数据mcu都可以接受到,不管是主发送的还是从回应的.你所要作的就是对这些数据进行处理.
你可以按照上楼老兄的说法,只有从回应的数据主才接受,这时就要对SCC2(GZ8)进行一些设置,在等待从回应的时候才打开接受器如:
tmp=SCS1;                      //清除SCRF标志位.
tmp=SCDR;
SCC2_RE=1;                     //准备接受回应
SCC2_SCRIE=1;
在非等待从回应的状态下就关闭接受器.

SCC2_RE=1;                     //准备接受回应
SCC2_SCRIE=1;

另外一种方法就是版主说的方法:
可以通过FE标志位等来判断,这时候就是把所有的数据都接受下来,不过是主发向从的,还是从回应的数据.当主接受到break field时,就会产生FE的帧错误.这个错误也可以产生中断,自己软件再去考虑怎么去接受数据.
你去看看FE标志是怎么产生的,就知道为什么break field一定会有FE错误.多看看DATASHEET.
立志做个专业的工程师
对,这样应该可以.
我用的是后一种方法,已经调通了.但是接受数据的量会比前一钟方法大.
立志做个专业的工程师
返回列表