打印
[信息]

STM8 控制器局域网(beCAN)

[复制链接]
1045|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jcky001|  楼主 | 2021-10-18 09:22 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
摘要: STM8控制器局域网(beCAN)简介beCAN是基本扩展CAN(Basic Extended CAN)的缩写,它支持CAN协议2.0A和2.0B。它的设计目标是,以最小的CPU负荷来高效处理大量收到的报文。它也支持报文发送的优先级要求(优先级特性可软件 ...


STM8控制器局域网(beCAN)简介

beCAN是基本扩展CAN(Basic Extended CAN)的缩写,它支持CAN协议2.0A和2.0B。它的设计目标是,以最小的CPU负荷来高效处理大量收到的报文。它也支持报文发送的优先级要求(优先级特性可软件配置)。
对于安全紧要的应用,beCAN提供所有支持时间触发通信模式所需的硬件功能。

STM8 beCAN主要特点

  • 支持CAN协议2.0A和2.0B主动模式
  • 波特率最高可达1兆位/秒
  • 支持时间触发通信功能
  • 可选择时钟源(fMASTER或CANEXT)

发送

  • 3个发送邮箱
  • 发送报文的优先级特性可软件配置
  • 记录发送SOF时刻的时间戳

接收

  • 1个3级深度的接收FIFO
  • 6个位宽可变的过滤器组
  • 标识符列表
  • FIFO溢出处理方式可配置
  • 记录接收SOF时刻的时间戳

时间触发通信模式

  • 禁止自动重传模式
  • 16位自由运行定时器
  • 可配置定时器精度
  • 可在最后2个数据字节发送时间戳

管理

  • 中断可屏蔽
  • 邮箱占用唯一的地址空间,便于提高软件效率

总体描述

在当今的CAN应用中,CAN网络的节点在不断增加,并且多个CAN常常通过网关连接起来,因此整个CAN网中的报文数量(每个节点都需要处理)急剧增加。除了应用层报文外,网络管理和诊断报文也被引入。

  • 需要一个增强的过滤机制来处理各种类型的报文
    此外,应用层任务需要更多CPU时间,因此报文接收所需的实时响应程度需要减轻。
  • 采用接收FIFO方式,从而允许CPU花很长时间处理应用层任务而不会丢失报文。
    构筑在底层CAN驱动程序上的高层协议软件,要求跟CAN控制器之间有高效的接口。
  • 所有邮箱和报文以16个字节为一页映射到同一个地址,通过页面选择寄存器选择页面。


(图126:STM8_CAN网拓扑结构 )

CAN 2.0B(active)内核
beCAN模块可以完全自动地接收和发送CAN报文;且硬件完全支持标准标识符(11位)和扩展标识符(29位)。

控制、状态和配置寄存器
应用程序通过这些寄存器,可以:

  • 配置CAN参数,如波特率
  • 请求发送报文
  • 处理报文接收
  • 管理中断
  • 获取诊断信息

发送邮箱
共有3个发送邮箱供软件来安排要发送报文。由发送调度器决定哪个邮箱的报文先被发送。

接收过滤器
共有6个位宽可变/可配置的标识符过滤器组,用来选择留下软件所需要的报文,丢弃其它报文。

接收FIFO
接收FIFO用于存储CAN控制器接收的报文,FIFO中可以存放3个完整的报文。软件可以在同一个地址访问下一个可用的报文。FIFO完全由硬件来管理。


(图127:STM8_beCAN功能框图)



使用特权

评论回复
沙发
gwsan| | 2021-11-5 14:26 | 只看该作者
组网稳定吗

使用特权

评论回复
板凳
qcliu| | 2021-11-5 14:27 | 只看该作者
感觉自带的can不好调试

使用特权

评论回复
地板
nawu| | 2021-11-5 14:31 | 只看该作者
触发模式很多啊

使用特权

评论回复
5
kxsi| | 2021-11-5 14:32 | 只看该作者
通讯距离最远是多少啊

使用特权

评论回复
6
drer| | 2021-11-5 14:34 | 只看该作者
如何对中断进行管理呢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1504

主题

4513

帖子

6

粉丝