一.背景 最近一个项目需要使用STM32F103xx实现CAN通信,而CAN总线的消息滤波在各个MCU上有不同机制, 譬如,SJA1000为标识符位屏蔽滤波机制,NXP的LPC17xx系列为标识符列表查询机制等等,本篇就 STM32F103xx的滤波机制做个简述. 注:软件上使用的是ST提供的库函数. 二.正文 STM32F103xx在滤波这方面确实很赞,同时集成了标识符位屏蔽滤波机制和标识符列表查询机制. --->标识符位屏蔽滤波机制: 该机制既是对标识符相应位进行屏蔽,而实现该功能需要两个寄…
bxCAN是基本扩展CAN(Basic Extended CAN)的缩写,它支持CAN协议2.0A和2.0B.它的设计目标是,以最小的CPU负荷来高效处理大量收到的报文.它也支持报文发送的优先级要求(优先级特性可软件配置). 主要特点*****; 支持CAN协议2.0A和2.0B主动模式 *****;  波特率最高可达1兆位/秒 *****;  支持时间触发通信功能 发送*****;3个发送邮箱 *****; 发送报文的优先级特性可软件配置 *****;记录发送SOF时刻的时间戳 接收*****…
功能概述: bxCAN是基本扩展CAN(Basic Extended CAN)的缩写,它支持CAN协议2.0A和2.0B:它的设计目标是以最小的CPU负载来高效处理大量的报文.它也支持报文发送的优先级要求(优先级可软件配置). CAN2.0B内核: bxCAN模块可以完全自动地接收和发送CAN报文,且完全支持标准标识符(11位)和扩展标识符(29位). 主要特征: 支持CAN协议2.0A和2.0B主动模式: 波特率最高可达1兆位/秒:(属于OSI11898标准) 支持时间触发通信功能:(可以通过…
It takes a strong man to save himself, and a great man to save another. 强者自救,圣者渡人. When you are not strong enough to save others, just concentrate on self-improvements and self-promotion. For many of us, the best thing we can do to save others is to…
1.STM32 的芯片中具有 bxCAN 控制器 (Basic Extended CAN), 它支持 CAN 协议 2.0A 和2.0B 标准. 2.外设中具有 3 个发送邮箱,发送报文的优先级可以使用软件控制,还可以记录发送的时间:具有 2 个 3 级深度的接收 FIFO,可使用过滤功能只接 收或不接收某些 ID 号的报文:可配置成自动重发:不支持使用 DMA 进行数据收发.3.STM32 的 CAN 架构: 1. CAN 控制内核 2. CAN 发送邮箱 3. CAN 接收 FIFO 在标号…
第40章 CAN—通讯实验—零死角玩转STM32-F429系列   第40章     CAN—通讯实验 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege 本章参考资料:<STM32F4xx 中文参考手册2>.<STM32F4xx规格书>.库帮助文档<stm32f4xx_dsp_stdperiph_lib_um.chm>. 若对CAN通讯协议不了解,可先阅…
转自:https://blog.csdn.net/Firefly_cjd/article/details/79825869 以太网PHY寄存器分析    1 1.以太网PHY标准寄存器分析    2 1.1 Control Register    2 1.2 Status register    5 1.3 PHY Identifier Register    8 1.4 Auto-Negotiation Advertisement Register    8 1.5 Auto-Negotiat…
参考:CAN总线的位时序与参数设置 CAN总线位同步 1 CAN总线介绍 CAN 是Controller Area Network 的缩写,中文意思是控制器局域网 络,是ISO国际标准化的串行通信协议.它是德国电气商博世公司于1986 年面向汽车而开发的CAN 通信协议.此后,CAN 通过ISO11898 及 ISO11519 进行了标准化.CAN是国际上应用最广泛的现场总线之一,在 欧洲已是汽车网络的标准协议.CAN 的高性能和可靠性已被认同,并被 广泛地应用于工业自动化.船舶.医疗设备.工业…
STM32的定时器功能很强大,学习起来也很费劲儿. 其实手册讲的还是挺全面的,只是无奈TIMER的功能太复杂,所以显得手册很难懂,我就是通过这样看手册:while(!SUCCESS){看手册-}才搞明白的!所以接下来我以手册的顺序为主线,增加一些自己的理解,并通过11个例程对TIMER做个剖析.实验环境是STM103V100的实验板,MDK3.2 +Library2.东西都不怎么新,凑合用-- TIMER主要是由三部分组成: 1. 时基单元. 2. 输入捕获. 3. 输出比较. 还有两种模式控制…
大概步骤: 1.创建纹理对象,并为他指定一个纹理. 2.确定纹理如何应用到每个像素上. 3.启用纹理贴图 4.绘制场景,提供纹理和几何坐标 过滤:由于我们提供的纹理图像很少能和最终的屏幕坐标形成对应,大小不同,所以需要设置过滤项目.允许我们进行插值或者匀和,指定放大缩小的函数.glTexParameter*(),使用过滤模式GL_NEAREST那么纹理单位最邻近的将被使用,GL_LINEAR那么就用2*2的包含纹理数据的数组加权组作为纹理; 命名纹理对象:glGenTexures(GLSize…