1.前语
CAN(Controller Area Network)总线,即操控器局域网总线,是一种有用支撑分布式操控或实时操控的串行通讯网络。因为其高功用、高可靠性、及共同的规划和适合的价格而广 泛应用于工业现场操控、智能楼宇、医疗器械、交通工具以及传感器等范畴,并已被公认为几种最有出路的现场总线之一。CAN总线规范现已被世界规范化安排制 订为世界规范ISO11898,并得到了很多半导体器材厂商的支撑。
本文运用华清远见FS2416渠道。FS2416运用Socket网络设备驱动和字符设备驱动两种方法向Linux内核供给MCP2515的驱动,本文具体介绍了运用Socket方法规划的根据MCP2515的Linux CAN总线驱动程序。
2.FS2416简介
图1 FS2416开发板
FS2416选用的是三星公司的ARM926EJ内核CPU S3C2416,不管从功用上,仍是本钱上, S3C2416都强于2440,是2440的最完美替代者。
作为32/16 bit RISC指令集、低本钱、低功耗、高功用的微处理器。S3C2416运用了65nm的制造工艺然后降低本钱、功耗及进步功用,其运用的ARM926EJ的 中心,集成了2D图形加快,添加了低功耗形式,支撑内部ROM/RAM引导,支撑moviNand发动和低功耗音频编解码。此外相对于其他ARM9芯片, 它的外设也得到了晋级,有更多的资源。
图2 FS2416板级资源介绍
3.MCP2515简介
MCP2515是一种独立的CAN总线通讯操控器,是Microchip公司第一批独立CAN解决方案的 晋级器材,其传输才能较Microchip公司原有CAN操控器(MCP2510)高两倍,最高通讯速率可到达1Mbps。MCP2515可以接纳和发送 规范数据帧和扩展数据帧以及长途帧,经过两个接纳屏蔽寄存器和六个接纳过滤寄存器滤除无关报文,然后减轻CPU担负。
MCP2515主要功用参数及电气特性如下:
(1)支撑CAN技能规范2.0A/B, 最高传输速率到达1Mbps;
(2)支撑规范数据帧、扩展数据帧和长途帧,每帧数据域长度可为0~8个字节;
(3)内含两个的接纳缓冲器和三个发送缓冲器,而且可编程设定优先级;
(4)内含六个29位(bit)的接纳过滤寄存器和两个29位(bit)的接纳屏蔽寄存器;
(5)高速SPI接口,支撑SPI 0,0和1,1形式;
(6)一次性形式可保证报文被一次性传输;
(7)具有可编程时钟脉冲输出引脚,可作为其他芯片时钟信号源;
(8) 帧开始(SOF)信号输出功用可被用于在确认的体系中(如时刻触发CAN-TTCAN)执行时隙功用,或在CAN总线确诊中决议前期总线出级;
(9) 选用低功耗CMOS技能,作业电压:2.7V~5.5V, 作业电流:5mA(待机状况1μA);
(10)作业温度规模:(I)-40℃到+85℃,(E)-40℃到+125℃。
4.硬件规划
MCP2515与S3C2416的硬件衔接图如图3所示。如硬件原理图可知MCP2515芯片衔接在 S3C2416芯片的SPI0上,中止接在GPF1上;MCP2515输出衔接SN65HVD230 CAN总线收发器,SN65HVD230是德州仪器公司出产的3.3V CAN收发器。为了节约功耗,缩小电路体积,MCP2515 CAN总线操控器的逻辑电平选用LVTTL,SN65HVD230便是与其配套的收发器。