0 卖盘信息
BOM询价
您现在的位置: 首页 > 电子资讯 >技术信息 > TMS320C28346的CAN总线的引脚

TMS320C28346的CAN总线的引脚

来源:
2025-05-09
类别:技术信息
eye 3
文章创建人 拍明芯城

一、概述

TMS320C28346 是 TI C2000™ Piccolo 系列中性能强劲的一款 MCU,广泛应用于电机控制、可再生能源、电源管理和汽车电子等领域。其内置的两路 CAN 控制器(CAN-A、CAN-B)提供了高速、可靠的车载局域网通信能力,是实现分布式控制和诊断功能的关键模块。CAN 总线的物理接口与芯片引脚直接关联,合理的引脚配置和外部电路设计对于系统的稳定性和抗干扰性能至关重要。

下面将详细介绍 TMS320C28346 上 CAN 总线的相关引脚,包括引脚名称、封装位置、电气参数、复用功能、软件配置要点以及外部硬件连接示例等,帮助开发者在硬件设计和固件开发中准确、高效地应用 CAN 通信功能。

image.png

二、CAN 引脚列表

以下列表汇总了 TMS320C28346 封装中与 CAN-A 和 CAN-B 对应的引脚名称及其功能描述:

  • CAN-A 通道

    • CANTXA:CAN-A 总线发送引脚,差分输出(与 CANTXB 配合)

    • CANTXB:CAN-A 总线发送反相引脚,与 CANTXA 构成差分对

    • CANRXA:CAN-A 总线接收引脚,差分输入(与 CANRXB 配合)

    • CANRXB:CAN-A 总线接收反相引脚,与 CANRXA 构成差分对

  • CAN-B 通道

    • CANTXB:CAN-B 总线发送引脚(差分对的正相)

    • CANTXB:CAN-B 总线发送反向引脚(差分对的负相)

    • CANRXB:CAN-B 总线接收正相输入

    • CANRXB:CAN-B 总线接收负相输入

(注:以上正负相成对出现,具体实际管脚名称与封装应参考最新 TI 数据手册,部分引脚在不同封装或引脚复用设置下可能略有差异。)

三、引脚封装与定位

TMS320C28346 提供 LQFP-176 和 BGA-257 两种封装,以下以 LQFP-176 为例给出 CAN 引脚在封装上的大致位置:

  • CANTXA:引脚编号 Pxx(位于芯片右侧中部)

  • CANTXB:引脚编号 Pxy(与 CANTXA 相邻,构成差分对)

  • CANRXA:引脚编号 Pxz(位于左侧中部,与 CANRXB 相邻)

  • CANRXB:引脚编号 Pxa

在 BGA-257 封装中,对应的球栅编号略有不同,建议根据 TI 官方封装图手册进行精确定位,并在 PCB 设计时严格按照差分对布线规范走线,确保差分对长度、间距一致,避免时钟抖动和信号失真。

四、电气特性与差分对布线

CAN 总线采用差分信号传输,可显著提升抗干扰能力。TMS320C28346 上的 CAN 引脚按照 ISO 11898-2 标准设计,支持 1 Mbps 的高速传输,典型差动输出电平为 ±1 V。主要电气参数如下:

  • 差分输出摆幅:2 V(典型)

  • 共模电压范围:–2 V 至 +7 V

  • 接收阈值:±200 mV(可校准)

  • 最大传输速率:1 Mbps

在 PCB 设计时,CAN 总线差分对应按以下要求布线:

  1. 差分对间距:保持 100 µm–150 µm,以维持特性阻抗约 120 Ω

  2. 等长布线:正、负相信号线长度差应小于 5 mils(约 0.127 mm)

  3. 持续阻抗:全程保持 120 Ω 差分阻抗,避免分支与中断

  4. 参考平面:尽量靠近连续地平面布线,减少 EMI 与反射

五、引脚复用与外设配置

在 TMS320C28346 芯片的多功能管脚设计中,CAN 引脚通常可复用为通用 GPIO 或其他外设信号。要启用 CAN 功能,需在引脚配置寄存器(PxCR)中将对应管脚模式设为 CAN-A/CAN-B 功能,并关闭 GPIO 模式。示例如下(伪代码):

EALLOW;
GpioCtrlRegs.GPAPUD.bit.GPIOxx = 0;    // 使能内部上拉
GpioCtrlRegs.GPAQSEL1.bit.GPIOxx = 3;  // 设置为异步输入
GpioCtrlRegs.GPAMUX2.bit.GPIOxx = 2;   // 2: CAN功能复用
EDIS;

在系统初始化函数中,还需配置 CAN 控制器时钟、波特率分频寄存器(CANBTC)和模式寄存器(CANMC),并对消息对象(MOB)进行初始化设置,以便接收与发送 CAN 报文。

六、外部电路与收发器选型

TMS320C28346 内部集成了 CAN 协议层,但不包含物理层收发器,因此系统设计中需要外部 CAN 收发器芯片(如 TI 的 TCAN1042、MCP2562 等)。收发器主要负责电平转换、总线仲裁与驱动,连接方式如下:

  • MCU 的 CANTXA/CANTXB 引脚接至收发器的 CAN_TX+ / CAN_TX– 引脚

  • MCU 的 CANRXA/CANRXB 引脚接至收发器的 CAN_RX+ / CAN_RX– 引脚

  • 收发器 的 CAN_H/CAN_L 端口连接至总线,并且需在总线上两端各并联 120 Ω 端接电阻

  • 收发器 可选集成过压、短路保护与低功耗待机功能,可大幅增强系统可靠性

电路示例:

MCU CANTXA —— CAN_TX+ —— 收发器 —— CAN_H —— 120Ω —— 总线 —— 120Ω —— CAN_H
MCU CANTXB —— CAN_TX– ——      —— CAN_L —— 120Ω —— 总线 —— 120Ω —— CAN_L
MCU CANRXA —— CAN_RX+ —— 收发器
MCU CANRXB —— CAN_RX– —— 收发器
VCC —— 收发器 VCC
GND —— 收发器 GND

七、系统设计与调试建议

  1. 终端电阻:务必在 CAN 总线两端并联 120 Ω 端接,减少信号反射

  2. 地线布线:CAN 收发器 GND 应与 MCU GND 共地,并通过宽铜箔或地平面连接,确保信号参考一致

  3. ESD 保护:在收发器 CAN_H / CAN_L 端口外侧可并联 TVS 二极管,用于浪涌电压抑制

  4. 波特率校准:结合局部总线长度与节点数,合理选用波特率(如 125 kbps / 250 kbps / 500 kbps / 1 Mbps)并通过报文监测与测试仪校准

  5. 软件诊断:在固件中使用 CAN 发送心跳与错误帧监测功能(CANERRCNT),实时检测总线错误与状态

八、典型应用场景

  • 分布式电机控制:各电机驱动模块通过 CAN 总线接收中央控制器指令,并定期上传故障状态与反馈数据

  • 智能电表与电网监控:低速 CAN(125 kbps)用于远程抄表与现场状态监测,结合 LIN 或 RS-485 实现多总线融合

  • 车载诊断系统:符合 ISO 11898-2 标准,可与车载 ECU、仪表盘、传感器模块组网,实现 OBD-II 兼容诊断与故障码上报

九、CAN 控制器内部架构与报文对象配置

TMS320C28346 的 CAN 控制器内部集成了多达 32 个报文对象(Message Object),每个对象可被配置为发送、接收或远程帧响应功能。报文对象内部包含 ID 寄存器、面板寄存器和数据寄存器,允许用户精细控制帧的格式与过滤条件。典型配置过程中,需要对以下寄存器分组进行设置:

  • MSGID 寄存器:定义帧标识符,可设置标准帧(11 位)或扩展帧(29 位)模式。扩展帧支持更大地址空间,适用于复杂网络。

  • MASK 寄存器:用于接受过滤,只有当接收报文 ID 与 MASK 和过滤 ID 匹配时,才能触发该对象的接收事件。通过掩码可以实现组播或广播方式的过滤。

  • CONTROL 寄存器:设置帧类型(数据帧、远程帧)、数据长度(0–8 字节)、中断使能与溢出处理方式。

  • DATA 寄存器:用于存放待发送或已接收的最多 8 字节数据。

初始化示例(伪代码):

EALLOW;
// 配置报文对象 1 作为接收标准数据帧
CANMOBS(1).MSGID = (0x123 << 2);            // 标准 ID 0x123
CANMOBS(1).MASK  = (0x7FF << 2);            // 精确匹配
CANMOBS(1).CONTROL = (DATA_FRAME | RTR_OFF | DLC(8) | INTERRUPT_ENABLE);
EDIS;

上述配置将报文对象 1 设置为接收 ID 为 0x123 的 8 字节数据帧,并在接收完成时触发中断。

十、接受过滤与多级屏蔽技术

为了在总线上高效处理海量报文,C28346 的 CAN 控制器支持多级过滤策略,不仅能依据 ID 匹配,还可结合数据字段进行高级过滤。用户可以通过配置两个级别的掩码(MASK0、MASK1)并通过控制寄存器的优先级选择,实现在硬件层面筛选特定节点或功能报文。对于更复杂的场景,还可借助软件层面的循环队列与标志位机制,对相似 ID 的一组报文进行批处理。

此外,CAN 控制器还支持报文对象分组(Group),将多个报文对象归为一组统一处理。通过组中断标志位,开发者可在一次中断服务中检查所有对象的接收状态,大大缩短中断响应时间。

十一、错误处理与自动重传机制

TMS320C28346 内部实现了完善的 CAN 错误管理,包括差错检测、总线错误计数与自动重传功能。主要机制如下:

  • 位错误与校验错误:CAN 硬件自动检测位填充错误、CRC 校验失败,出现错误时会立即终止当前帧并在总线上输出错误帧。

  • 监听器与错误计数器:接收与发送错误计数器(RXERR、TXERR)用于累计错误事件,当计数器超过阈值时,节点进入被动错误或总线关闭状态。软件可通过读取 ERRCNT 寄存器实时监控错误水平,并决定是否复位 CAN 控制器或重新初始化总线。

  • 自动重传:当发送报文未被确认(ACK),硬件会持续重试,直至成功或达到最大重传次数,之后可通过错误回调由用户决定是否重新发送或报告故障。

应用示例:在出现连续 15 次发送失败后,软件可主动切断总线并重新进入初始化阶段,以规避总线挂起风险。

十二、时钟同步与时间戳功能

TMS320C28346 的 CAN 控制器支持基于时间戳的报文调度与同步,特别适合需要精确定时或事件同步的控制系统。如分布式电机同步、智能电网联合跳闸等场景。硬件内置的时间戳寄存器可在报文到达或发送时自动记录系统时钟值(微秒级精度),软件可根据时间戳对数据帧进行排序或延迟补偿。

示例:在两个 DSP 节点各自采集传感器数据后,通过 CAN 帧携带时间戳,接收节点可对齐时序并执行融合算法,从而获得多源同步数据。

十三、网络拓扑与节点配置优化

在设计 CAN 总线网络时,应根据节点数量、总线长度与工作速率选择合适的拓扑结构。TMS320C28346 推荐以下最佳实践:

  • 总线长度与速率:1 Mbps 速率适合不超过 40 m 总线,500 kbps 可支持约 100 m,250 kbps 支持 200 m 以上。

  • 终端电阻与分布式终端:严禁在总线上任意中点放置终端电阻,且两端电阻值需精确 120 Ω。对于树状或分支较多网络,可使用分布式终端方案,每段放置低阻抗电阻形成等效 120 Ω。

  • 节点地址规划:根据功能与优先级给每个节点分配标准(11 位)或扩展(29 位) ID,避免冲突并留出保留 ID 区间。

  • 软件节点配置:每个节点通过 DIP 开关或 EEPROM 读取唯一节点 ID,并在初始化时设置对应报文对象,减少固件定制化次数。

十四、性能调优与测试方法

为了评估 CAN 通信性能并优化系统可用带宽,工程师可借助以下方法:

  • 硬件示波器与 CAN 分析仪:实时监测 CAN_H/CAN_L 信号品质、位时间抖动与总线负载。

  • 软件性能监测:利用 RTDX/Trace 收集中断响应时间、DMA 延迟及报文处理时序,并绘制甘特图分析瓶颈。

  • 负载测试:在实验平台上构建多节点测试,连续发送高频率报文,并统计帧丢失率、错误帧次数与重传次数。

  • 中断优先级调整:根据分析结果,通过重新分配中断优先级和报文对象配置,确保高优先级报文获得及时处理。

十五、应用案例:电动汽车车身控制网络

在电动汽车车身控制域中,常见模块如车门控制单元(DCU)、车灯控制单元(LCU)与仪表盘(ICU)通过 CAN 总线互联。TMS320C28346 可作为 DCU 的主控 MCU,负责读取传感器(门锁位置、开关状态等),并通过 CAN 向 LCU 发送命令驱动照明。DCU 还需接收来自中央车载网关的诊断与远程固件更新指令。该场景下,节点需同时兼顾实时控制与固件安全更新,因此在硬件设计中必须预留 Boot Loader 与安全引导机制,并在 CAN 控制器上启用错误中断与心跳帧监测功能,确保任何异常均可被及时检测和处理。

十六、CAN 波特率与位定时详解

在 CAN 总线通信中,波特率(Baud Rate)及位定时配置直接决定了系统的可靠性与抗干扰能力。TMS320C28346 的 CAN 控制器通过位定时寄存器(CAN_BTR)提供对以下四个关键时段的配置:

  • 同步段(Sync_Seg):固定为一个时间量子(Tq),用于节点间同步,是采样点的参考点。

  • 传播段(Prop_Seg):补偿总线传播延迟,包括线路延迟和信号门限延迟,可通过设定 PROPSEG 寄存器字段调整。

  • 相位缓冲段 1(Phase_Seg1):允许节点在采样前对时钟进行微调,通过 PHASESEG1 字段配置。

  • 相位缓冲段 2(Phase_Seg2):允许在采样后对时钟进行微调,通过 PHASESEG2 字段配置。

以 150 MHz CAN_CLK 为例,若需设置 500 kbps 波特率,可按下式计算:

Tq = (Sync_Seg + Prop_Seg + Phase_Seg1 + Phase_Seg2) / CAN_CLK
Bit_Time = Baud_Rate⁻¹ = Tq × (1 + PROPSEG + PHASESEG1 + PHASESEG2)

典型配置:PROPSEG = 7, PHASESEG1 = 7, PHASESEG2 = 7,总 22 Tq,对应 Bit_Time = 22/150MHz ≈ 146.7 ns × 22 ≈ 3.227 μs → ≈ 310 kbps;可相应调整各段以精确匹配 500 kbps。

TMS320C28346 还支持重同步跳跃宽度(SJW)配置,用于在突发抖动时对位时钟进行调整,SNSJW 字段通常设置为 1–4 Tq,以兼顾抖动补偿能力与定时稳定性。

十七、双通道 CAN 协同与诊断功能

C28346 的两个 CAN 通道(CAN-A、CAN-B)可并行工作,实现双总线拓扑或冗余备份功能。在多总线系统中,可将关键控制命令与监控数据分配到不同通道,避免总线拥塞;在安全关键应用,还可启用双通道热备份,当主通道发生严重错误时,备份通道自动接管通信,保证系统连续运行。

每个通道均独立维护发送/接收错误计数器(TEC、REC),并在错误超限时进入错误被动或总线关闭状态。软件可通过读取 CAN_ES(Error Status)寄存器得知通道当前状态,并触发相应的保护逻辑,如切换备份通道、记录故障日志或重置 CAN 模块。

十八、CAN 环回与监听模式

为了调测与系统验证,TMS320C28346 CAN 控制器支持多种诊断模式:

  • 环回模式(Loopback):所有发送帧在控制器内部直接回送至接收通道,无需外部收发器和总线终端,用于纯寄存器级功能测试。

  • 监听模式(Listen-Only):控制器仅监听总线流量,不发送任何帧或 ACK,用于总线健康监测与故障定位。

  • 静默模式(Silent):与监听模式类似,但可在需要时通过软件切换为正常模式,适合在系统运行中动态诊断。

使用示例(伪代码):

CAN_CTRL_REG |= (LOOPBACK_EN | SILENT_EN);  // 同时开启环回与静默

十九、CAN 引导加载(Boot over CAN)

在分布式控制系统中,通过 CAN 进行固件更新和诊断是常见需求。TMS320C28346 支持基于 CAN 的引导加载(Boot Loader)功能:在上电时,Boot ROM 可检测 CAN 总线上是否有特定标识的固件更新请求帧;若存在,则进入 CAN Boot 模式,通过预定义的协议(如 XCP over CAN)接收并写入片内或外部 Flash,否则按常规方式从 Flash 启动。

该引导方案通常与 DCSM 安全模块配合使用,对固件映像进行签名验证,保证只有合法固件才能被写入设备,增强系统安全性。

二十、实战建议与最佳实践

  1. 时钟抖动控制:采用低抖动振荡器,确保 CAN_CLK 稳定;在 PCB 布线时为时钟与地之间添加旁路电容,减少 EMI。

  2. 分支与终端:避免在 CAN 总线上出现多处分支,若不可避免,可结合分支电缆与分布式终端(60 Ω+60 Ω)维持信号完整性。

  3. 节点唤醒:配置 CAN 控制器的唤醒检测(WAK_INT_EN),当总线上有远程帧或远程唤醒信号时可触发中断,唤醒 MCU 进入正常模式。

  4. 负载均衡:合理分配发送任务,避免短周期高占空比报文导致总线长时间占用;可结合循环发送队列(Round-Robin)与优先级机制。

  5. 软件升级与容错:基于 CAN Boot Loader 方案,实现故障安全的固件回滚与多版本存储,防止升级失败导致设备失控。

二十一、J1939 协议栈及高层软件集成

在汽车和重型设备领域,SAE J1939 已成为覆盖 CAN 总线之上的主流高层应用协议,它定义了基于 CAN 的网络层、传输层及应用层帧格式和参数组(PGN)。TMS320C28346 不仅在硬件层面提供标准 CAN 控制,还可通过 TI 提供的 J1939 协议栈或第三方开源栈(如 Microchip 的 J1939 Stack、SavvyCAN Library)完成软件层面的完整实现。该协议栈通常包含如下模块:

网络管理(NM):负责节点启动、关机、巡检与状态广播,对应 NMEA/ISO 架构中的 TP.NA 功能;
传输协议(TP):通过单帧、两帧或多帧方式分段传输大于 8 字节的数据,支持传输确认、重传和拥塞控制;
参数组(PG)处理:按照 J1939-21 定义,使用标准或扩展 PGN 对空调控制、发动机监控、车速传感器等进行数据映射;
诊断消息(DM):支持故障码(SPN)报告与清除,结合 DM1/DM2 报文实现节点自诊断与远程诊断。

在 C28346 上部署时,一般将协议栈的底层 CAN 接口封装为 HAL(Hardware Abstraction Layer),上层应用可通过 HAL 提供的初始化、发送、接收回调等 API 与硬件解耦。TI-RTOS 下,可将 J1939 服务作为独立任务运行,利用消息队列(Message Queue)与中断服务例程(ISR)协同完成帧处理与业务逻辑分发。采用 SysConfig 自动生成的代码可快速配置 CAN 引脚、报文对象与中断优先级,并自动导入 J1939 协议栈模板,极大简化工程量。

二十二、向 CAN FD 及未来 CAN XL 演进

随着汽车电子与工业自动化系统对数据带宽和实时性能需求的不断提升,CAN FD(Flexible Data-Rate)和 CAN XL(Extended Length)应运而生。虽然 TMS320C28346 原生仅支持经典 CAN 协议,但应用层可通过外部 CAN FD 收发器(如 TI 的 TCAN4550)与 FPGA/附加 CPLD 实现 FD 协议支持。具体做法包括:

FD 收发器映射:使用 SPI 或 GPIO 接口与收发器通信,配置物理层速率切换、位定时与填充规则;
帧拼装与解析:在 DSP 端软件中对 12~64 字节的数据长帧进行分段与重组,结合 EDMA 自动搬运大容量数据;
错误监控与兼容模式:在 FD 总线与经典总线混合场景中,收发器提供经典模式兼容与自动降级功能,软件需根据总线状态做相应的帧类型处理。

面向即将到来的 CAN XL 标准,工程师可借鉴 FD 方案,通过可编程逻辑(FPGA/CPLD)或外部 SoC+ PHY 解决方案先行验证,并在未来 TI 新一代 C2000 平台(如 C2839x)中获得原生 XL 支持。总体而言,通过硬件与软件的协同设计,TMS320C28346 依旧能够在现有项目中平滑过渡至更高带宽、更低延迟的下一代 CAN 网络。

责任编辑:David

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

标签: TMS320C28346

相关资讯

资讯推荐
云母电容公司_云母电容生产厂商

云母电容公司_云母电容生产厂商

开关三极管13007的规格参数、引脚图、开关电源电路图?三极管13007可以用什么型号替代?

开关三极管13007的规格参数、引脚图、开关电源电路图?三极管13007可以用什么型号替代?

74ls74中文资料汇总(74ls74引脚图及功能_内部结构及应用电路)

74ls74中文资料汇总(74ls74引脚图及功能_内部结构及应用电路)

芯片lm2596s开关电压调节器的中文资料_引脚图及功能_内部结构及原理图_电路图及封装

芯片lm2596s开关电压调节器的中文资料_引脚图及功能_内部结构及原理图_电路图及封装

芯片UA741运算放大器的资料及参数_引脚图及功能_电路原理图?ua741运算放大器的替代型号有哪些?

芯片UA741运算放大器的资料及参数_引脚图及功能_电路原理图?ua741运算放大器的替代型号有哪些?

28nm光刻机卡住“02专项”——对于督工部分观点的批判(睡前消息353期)

28nm光刻机卡住“02专项”——对于督工部分观点的批判(睡前消息353期)

拍明芯城微信图标

各大手机应用商城搜索“拍明芯城”

下载客户端,随时随地买卖元器件!

拍明芯城公众号
拍明芯城抖音
拍明芯城b站
拍明芯城头条
拍明芯城微博
拍明芯城视频号
拍明
广告
恒捷广告
广告
深亚广告
广告
原厂直供
广告