ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

【使用C++开发MCU】06-FlexCAN寄存器分析

2021-12-31 21:59:42  阅读:144  来源: 互联网

标签:Counter 06 FlexCAN Mask register Rx C++ Error 寄存器


概述

本文分析NXP S32K1 FlexCAN的寄存器,加深对其开发、故障定位的了解。

内存映射

FlexCAN0 base address: 4002_4000h
FlexCAN1 base address: 4002_5000h
FlexCAN2 base address: 4002_B000h

偏置从 0x80 to 0x27F 分配给32个 128-bit message buffers (MBs)。

寄存器映射
从上图可以看出,寄存器分为三组:常用组、Pretended Networking组、CAN FD组。

常用寄存器分析

MCR

Module Configuration register
全局的系统配置,如操作模式、冻结、RXFIFO使能及软件复位等。

CTRL1

指定模块与CAN bus有关的特征,如位数率、采样点、模式等。
CAN位时间相关的变量配置也可以在 CBT 寄存器中,如果CBT[BTF] 置位,此时CTRL1中这几个位域将变为只读的。

TIMER

Free Running Timer
16位自由定时器,复位后从0x0 显性计数到0xFFFF,然后回绕。
读它将导致MB解锁。

RXMGMASK

Rx Mailboxes Global Mask register (RXMGMASK)
MCR[IRMQ] = 0, RXMGMASK 有效。

RXMGMASK用于所有的MB接收过滤,除了MB14,MB15,这两个有自己的接收过滤寄存器。

0b - The corresponding bit in the filter is “don’t care.”
1b - The corresponding bit in the filter is checked

RX14MASK

Rx 14 Mask register (RX14MASK)

RX15MASK

Rx 15 Mask register (RX15MASK)

ECR

Error Counter,
Transmit Error Counter
Receive Error Counter
Transmit Error Counter for fast bits
Receive Error Counter for fast bits

ESR1

Error and Status 1 register (ESR1)
报告接收、发送过程中监测到的各种错误条件,同样状态和中断源。

IMASK1

Interrupt Masks 1 register (IMASK1)
MB31 to MB0各自的中断使能。

IFLAG1

Interrupt Flags 1 register (IFLAG1)
MB31 to MB0各自的中断标志,RXFIFO中断标志。

CTRL2

Control 2 register (CTRL2)

ESR2

Error and Status 2 register (ESR2)

CRCR

CRC register (CRCR)

RXFGMASK

Rx FIFO Global Mask register (RXFGMASK)
CTRL2[RFFN]

RXFIR

Rx FIFO Information register (RXFIR)

RXFIR

CAN Bit Timing register (CBT)

标签:Counter,06,FlexCAN,Mask,register,Rx,C++,Error,寄存器
来源: https://blog.csdn.net/Kinetis_Linux/article/details/122254989

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有