CAN总线扩充器MCP25050
关键词:CAN总线 扩充器 MCP25050
1 概述
MicroChip公司生产的CAN(Controller Area Net-work)总线I/O扩充器MCP25050,可用于在CAN总线系统中扩充CAN总线节点,它可以独立构成一个CAN节点而不需要再加微控制器。该器件采用14脚小型封装和低功耗CMOS工艺技术,可在2.7~5.5V电压范围内正常工作。它能够支持的CAN2.0B标准位速率可达1Mbit/s;NCP25050内含一个可编程的屏蔽器、二个可编程的接收过滤器、4路10位A/D转换器、两路PWM输出、三个自动传送数据缓冲区、两个接收数据缓冲区及低功耗工作方式;其芯片配置信息可通过CAN总线在线修改,并可工作在1-WireCAN总线工作模式;同时,它还可使系统具有远程输入和输出功能。因此,在扩充简单的瘦客户CAN总线远程节点时,使用它会带来意想不到的便利。
(凹丫丫范文网fanwen.oyaya.net收集整理)
2 MCP25050内部结构
MCP25050内部功能图如图1所示,引脚图如图2所示。从图中可看出:该器件主要由用户存储区、时钟产生器、控制逻辑、CAN协议模块、A/D转换和PWM模块组成。以下分别介绍:
控制逻辑部分主要起着把其它几部分接合在一起的作用,另外它还控制数据的传送和接收以及在上电初始化时对内部寄存器的控制操作。
时钟产生器部分可为其它芯片提供时钟脉冲。
用户存储区是一块ROM区,主要是一些控制寄存器,利用它可以先对用户存储区进行编程,以使MCP25050在上电复位后工作在用户事先定义的模式。这些寄存器可通过CAN总线来访问。
A/D部分主要是对输入的模拟信号自动进行A/D转换。
CAN协议模块主要是对要发送的数据进行CAN数据包的封装,或是对接收到的CAN数据包进行解包。它有二个彼此独立的接收缓冲区,且每个接收缓冲区都有自己的接收过滤器。同时,错误管理逻辑也位于此模块内。因此,CAN协议模块是MCP25050的核心模块。
利用GPIO模块可对八个输入输出引脚进行管理,并可通过设置寄存器来使每个引脚工作在不同的方式。MCP25050各引脚功能说明如表1所列。
表1 MCP2505的引脚功能说明
复用功能
GP0/AN0 1 双向IO口 模拟输入通道0 GP1/AN1 2 双向IO口 模拟输入通道1 GP2/AN2/PWM1 3 双向IO口 模拟输入通道2/PWM输出 GP3/AN3/PWM2 4 双向IO口 模拟输入通道3/PWM输出 GP4/VREF- 5 双向IO 参考电源负端 GP5/VREF+ 6 双向IO口 参考电源正端 VSS 7 电源地线 无 OSC1/CLKIN 8 外部晶体输入 外部时钟信号输入 OSC2 9 外部晶体输出 无 GP6/CLKOUT 10 双向IO口 时钟信号输出 GP7/RST/VPP 11 双向IO口 复位端 RXCAN 12 CAN数据输入 无 TXCAN/TXRXCAN 13 CAN数据发送 1-Wire操作下的发送接收端 VDD 14 电源 无3 工作原理
《CAN总线扩充器MCP25050》