基于MCP2510的CAN总线分析仪的实现
基于MCP2515的CAN总线通信模式的设计
基于MCP2515的CAN总线通信模式的设计作者:戴国强常国权来源:《电脑知识与技术》2012年第10期摘要:介绍了一种基于MCP2515的CAN总线通讯模块的硬件和软件设计。
硬件部分主要可编程的CAN通讯控制器MCP2515和高速CAN收发器TJA1050组成。
软件设计包括MCP2515的初始化,数据的发送和接收三部分。
该模块采用SPI接口,显著减少了系统的连线,简化了系统设计。
它具有较高的抗干扰能力。
关键词:CAN总线通信;MCP2515;单片机;SPI中图分类号:TP393.1文献标识码:A文章编号:1009-3044(2012)10-2409-03Design of CAN Bus Communication Module Based on MCP2515DAI Guo-qiang, CHANG Guo-quan(Department of Computer and Information, AnYang Technology University, Anyang 45500, China)Abstract: This paper expounds the design of hardware and software of CAN bus communication module based on MCP2515.The part of hardware mainly consisted with MCP2515 stand-alone CAN controller and TJA1050 high speed CAN transceiver.The design of software included initial ofMCP2515,the sending and receiving of data.This module used SPI interface to the controller, thus obviously reduced the line of a system ,and simplified system design.It had high antijamming capability.Key words: CAN bus communication; MCP2515 ; microcontroller; SPI1CAN是一种高性能、高可靠的串行通信协议在工业自动化、船舶、医疗设备和工业设备等方面得到广泛的应用。
基于单片机和MCP2510的CAN总线通信模块的设计
基于单片机和MCP2510的CAN 总线通信模块的设计发布日期:2008-01-30 作者:张景元 杨庆华 来源:微计算机信息摘要:CAN 总线上的分布控制节点一般由单片机和可编程的CAN 通信控制器组成。
本文介绍了一种新型的独立通信控制器MCP2510,并给出其在CAN 总线系统智能节点中的一个应用实例。
硬件设计给出了节点的电路原理图,软件设计给出了系统程序的设计流程图及其需要注意的问题。
关键词:MCP2510;CAN 控制器;智能节点1 前言CAN (Controller Area Network )总线,即控制器局域网。
由于具有高性能、高可靠性以及独特的设计,CAN 总线越来越受到人们的重视。
德国的Bosch 公司最初为了汽车监控和控制系统设计了CAN 总线,现在,其应用范围已面向过程工业、机械工业、纺织工业、农用机械、机器人、数控机床、医疗器械及传感器等领域发展。
CAN 总线已经形成国际标准,并已经被公认为最有前途的现场总线之一。
CAN 总线规范已经被国际标准化组织制订为国际标准ISO11898,并得到众多半导体器件厂商的支持,推出各种集成有CAN 协议的产品。
CAN 总线系统智能节点是网络上报文的接收&发送站,一般由单片机和CAN 控制器或二者合二为一组成。
MCP2510是MicroChip 成产的一种独立的可编程CAN 控制器芯片。
本文将介绍新型的独立CAN 通信控制器MCP2510,并给出在CAN 总线系统智能节点中的应用实例。
2 MCP2510芯片介绍MCP2510是一种带有SPI 接口的CAN 控制器,具有PDIP 、SOIC 和TSSOP 三种封装形式;PDIP 封装如图1所示;它支持CAN 技术规范V2.0A/B ;并能够发送的接收标准的和扩展的信息帧,同时具有接收滤波和信息管理的功能。
MCP2510通过SI 接口与MCU 进行数据传输,最高数据传输速率可达5Mb/s ,MCU 可通过MCP2510与CAN 总线上的其它MCU 单元通讯。
MCP2510中文资料文档
说明
Microchip Technology Inc.( 美国微芯科技有限公司 ) 生 产的 MCP2510 是一款控制器局域网络 (CAN) 协议控 制器 , 完全支持 CAN 总线 V2.0A/B 技术规范。该器件 支持 CAN1.2、 CAN2.0A、主动和被动 CAN2.0B 等版 本的协议,能够发送和接收标准和扩展报文。它还同时 具备验收过滤以及报文管理功能。该器件包含三个发送 缓冲器和两个接收缓冲器,减少了单片机 (MCU) 的管 理负担。 MCU 的通讯是通过行业标准串行外设接口 (SPI)来实现的,其数据传输速率高达 5 Mb/s。
MCP2510
2004 Microchip Technology Inc.
DS21291E_CN 第 1 页
MCP2510
目录 1.0 器件功能介绍 ........................................................................................................................................................................ 3 2.0 Can 报文帧 ............................................................................................................................................................................ 7 3.0 报文发送 .............................................................................................................................................................................. 15 4.0 报文接收 .............................................................................................................................................................................. 21 5.0 位定时 ................................................................................................................................................................................. 35 6.0 错误检测 .............................................................................................................................................................................. 41 7.0 中断 ..................................................................................................................................................................................... 45 8.0 时钟振荡器 .......................................................................................................................................................................... 49 9.0 工作模式 .............................................................................................................................................................................. 51 10.0 寄存器映射表 ...................................................................................................................................................................... 55 11.0 SPI 接口 .............................................................................................................................................................................. 57 12.0 电气特性 .............................................................................................................................................................................. 61 13.0 封装信息 .............................................................................................................................................................................. 65 索引 ..................................................................................................................................................................................................... 69 在线支持 .............................................................................................................................................................................................. 71 读者反馈表 .......................................................................................................................................................................................... 72 产品识别系统 ....................................................................................................................................................................................... 73 全球销售及服务网点 ............................................................................................................................................................................ 76
MCP2512_CAN控制过程说明
MCP2515芯片CAN配置总结标准帧格式如下所示:CAN 位时间CAN总线上的所有节点都必须具有相同的标称比特率才能够正确进行通信。
然而,并非所有器件都要求具有相同的主振荡器时钟频率。
对于采用不同时钟频率的器件,应通过适当设置波特率预分频比以及每一时间段中的时间份额的数量来对比特率进行调整。
CAN位时间由互不重叠的时间段组成。
每个时间段又由时间份额(TQ)组成。
如下图所示:同步段:该段持续时间为1 TQ传播段:传播段的长度可编程设定为1-8 TQ相位缓冲段1(PS1)和相位缓冲段2(PS2):PS1 可编程设定为1–8 TQ,而PS2 可编程设定为2–8 TQTQ的计算公式:TQ=[2*(BRP+1)]/Fsoc其中BRP为寄存器CNF1中设置的值,Fsoc为晶振频率值。
CAN报文发送过程步骤:MCP2515采用三个发送缓冲器,每个发送缓冲器包含14个寄存器。
(1)配置TXBnCTRL寄存器中的TXP位决定发送缓冲器的优先级。
同时把TXREQ 位清零,表明发送缓冲器中无等待发送的报文。
这里的中断优先级是指MCP2515内部等待发送报文的优先级。
它与CAN协议中固有的报文仲裁优先级无关。
在发送起始帧SOF 之前,器件将所有等待发送报文的发送缓冲器的优先级进行比较。
具有较高优先级的发送缓冲器将首先发送。
例如,发送缓冲器0 的优先级比发送缓冲器1 高,发送缓冲器0 将首先发送。
如果两个发送缓冲器的优先级相同,编号较高的发送缓冲器将优先发送。
例如,发送缓冲器1 与发送缓冲器0的优先级相同,缓冲器1 将优先发送。
(2)配置TXBnSIDH、TXBnSIDL寄存器,确定接收对象的ID号,同时EXIDE位确定发送的报文是否有扩展标识符。
(3)配置TXBnDLC寄存器中的DLC位确定发送报文中的数据字节多少,RTR位确定是远程发送请求还是数据帧。
(4)如果需要用到发送中断,需要设置CANINTE寄存器中的TxnIE位,以便报方在发送时中断标志寄存器CANINTF中相应的TxnIF位产生中断。
单片机和MCP2510的CAN总线通信模块设计
图 ?!%IE写 命 令 时 序 图
送(数据发送请求 命 令)以 及 发 送 数 据% 外 部 中 断 的 中 断 处理子程序 主 要 包 括 M;: 总 线 错 误 处 理 子 程 序 和 数 据 接收子程序%
+&+! 软 件 主 体 设 计 流 程
软件主体设计流程如图.所示%软件设计时需要注 意以下问题&
, 支持 M;:a,)-;&H’ , 具有 7QR接口#支持 7QR模式-#-和G#G’ , 内含/个发送缓冲器和,个接收缓冲器#可对其优
先权进行编程’ , 具有K个接收过滤器#,个接收过滤器屏蔽’ , 具有灵活的中断管理能力’ , 采用低功耗 M0A7 工 艺 技 术#其 工 作 电 压 范 围 为
,! 总 ! 结
M;: 总线已被公认为是最有前途 的 几 种 现 场 总 线 之 一%因其性价比高$实现简单等突出优点深受越来越 多 的 研发人员的青睐%本文的智能节点可联结多个集散控制 系统#其 软 硬 件 电 路 的 设 计 方 法 同 样 适 合 于 其 他 基 于 M;: 总线的分布式控制系统的节点设计%
这种网络拓扑结构采用了总线式结构和无源抽头连 接 %且 结 构 简 单 &成 本 低 %因 而 系 统 的 可 靠 性 较 高 $其 信
息传输采用 M;: 通 信 协 议%通 信 介 质 采 用 双 绞 线$ 由 于 M;: 总线是基于发送报文的编码%不对 M;: 控制 节 点 进 行编码%故系 统 的 可 扩 充 性 比 较 好%同 时 增 删 M;: 总 线 上的控制节点不会对系统的其余节点造成任何影响$
图,!5#’ 总线远程监测系统网络结构 节点控制 器 的 0M\ 可 选 用 具 有 7QR接 口 的 微 处 理 器%也可采用不带 7QR接口的微处理器$本系统 采 用 的 是 不 带 7QR接 口 的 微 处 理 器 ;@J‘M9G$;@J‘M9G 可 通 过 QG口与 M;: 控制器的 7QR接口直接相 连%并 用 软 件 算 法 来实现7QR接口协议$M;: 总线收发器 @D;G-9-则作为 0MQ,9G-与物理总线的接口$如 果 需 要 进 一 步 提 高 系 统 的抗干扰能力%则可在 0MQ,9G-和 @D;G-9- 之 间 再 加 一 个光电隔离器$ 智能节点电路原理图如图Z所示$
基于MCP2515的CAN总线控制软件的设计与实现
基于MCP2515的CAN总线控制软件的设计与实现作者:孙龙刘晖虎来源:《现代信息科技》2018年第07期摘要:控制器局域网络(Controller Area Network,CAN)在汽车、工业控制、航空等嵌入式系统开发中得到了广泛的应用。
为确保其通信功能及接口实现的正确性,需进行有针对性地测试。
为了提高软件测试过程中CAN总线接口测试的效率和质量,本文设计和开发了基于CAN总线控制器MCP2515的CAN总线控制软件,以实现测试过程中对CAN总线收发数据的模拟和监视。
关键词:软件测试;CAN总线;传输层;应用层中图分类号:TP273 文献标识码:A 文章编号:2096-4706(2018)07-0001-05Abstract:The Controller Area Network is widely used in the development of embedded systems,such as automobile,industrial control,aviation and so on. For the correctness of its communication function and interface implementation,it needs to be tested pertinent. In order to improve the efficiency and quality of CAN bus interface test in software testing,a CAN bus control software based on CAN bus controller MCP2515 is designed and developed to realize the simulation and monitoring of CAN bus and receive data in the test process.Keywords:software tests;CAN bus;transport layer;application layer1 MCP2515概述MCP2515是一款独立CAN控制器,能够简化需要与CAN总线连接的应用。
MCP2510
B1BFS: RX1BF 引脚状态 ( 只限数字输出工作模式) - 当 RX1BF 配置为中断请求引脚时,读作 ‘0’ B1BFE: RX1BF 引脚功能使能 1 = 引脚功能使能, 工作模式由 B1BFM 位的状态决定 0 = 引脚功能禁止, 引脚为高阻状态 B1BFM: RX1BF 引脚工作模式 1 = 当有效报文载入 RXB1 时,该引脚用来产生中断请求 0 = 数字输出模式
2.1 配置模式
ቤተ መጻሕፍቲ ባይዱ
MCP2510 具有 5 种工作模式,分别为: 1. 配置模式 2. 正常模式 3. 睡眠模式 4. 监听模式 5. 环回模式
REQOP<2:0>: 工作模式设定 000 = 设定为正常工作模式 001 = 设定为休眠模式 010 = 设定为回环模式 011 = 设定为监听模式 100 = 设定为配置模式
3 MCP2510与微控制器通信
MCP2510 设计可与许多微控制器的串行外设接口(SPI)直接相连,外部数据和命 令通过 SI 引脚传送到器件中,而数据在 SCK 时钟信号的上升沿传送进去。MCP2510 在 SCK 下降沿通过SO 引脚发送操作的指令字节。
举例:
读指令
2.5 发送设置
ABTF: 报文发送中止标志 1 = 报文中止 0 = 报文发送成功 MLOA: 报文仲裁失败 1 = 报文发送中仲裁失败 0 = 报文发送中仲裁未失败 TXERR: 检测到的发送错误 1 = 报文发送中发生了总线错误 0 = 报文发送中未发生总线错误
TXREQ: 报文发送请求 1 = 缓冲器等待报文发送 ( 单片机将此位置位以请求报文发送 - 报文发送后该位自 动清零 ) 0 = 缓冲器无报文发送( 单片机将此位清零以请求中止报 文发送 ) TXP<1:0>: 发送缓冲器优先级 11 = 最高的报文发送优先级 10 = 中偏高的报文发送优先级 11 = 中偏低的报文发送优先级 00 = 最低的报文发送优先级
CAN总线总结和心得
以MCP2510爲控制器的CAN總綫使用後心得經過對由MCP2510爲控制器的CAN匯流排的應用,大致得出了以下結論。
一.首先是對晶片的電路接法,MCP2510的4、5、6、10、11可以空置,第3腳(CLK輸出脚)可以接到CPU 的OSC腳,以取代CPU的震蕩體,但最好不用。
如果對實時要求不高的話,第12脚(中斷脚)也可以空置。
還有因爲MCP2551性能不好,易損壞。
連到TXCAN、RXCAN的LED和5V間的電阻阻值不宜過小,取5K 以上,最好不接。
MCP2551的8脚决定了晶片的工作功耗,接地是高速模式(功耗大),接5V就會進入低功耗模式,和地之間接47K電阻是斜率模式(經常是用這種方式)。
第5脚的功能是輸出VDD/2的電壓,供別的晶片使用,這裏不用接。
最好用PCA82C250/251取代,管脚的接法和用法和MCP2551相容。
二.這部分主要是對SPI和晶片的操作碼作一分析。
下面的例子都是以PIC16F877爲平臺,用組合語言來編寫。
對SPI介面的讀寫方法如下:初始化SPI:InitSSPBANKSEL SSPSTAT ; SSPSTAT = 0x94 CKE=0 for mode 00 Operationbsf SSPSTAT,6bcf SSPSTAT,7BANKSEL PORT_CS2510 ; The PORT of CS2510 pin's locationbsf CS2510BANKSEL SSPCON ; SSPCON = 0x20movlw b'00100000' ; CKP=0 , Master Mode with Fosc/4 clockmovwf SSPCONreturnSPI介面的讀和寫。
寫:先把數傳入W,再調用Write_SPI_Byte。
讀:先調用Write_SPI_Byte,讀出的資料存放在W。
每次讀寫時要使CS脚爲0,讀寫完畢CS置1,下面是副程式:Write_SPI_ByteBANKSEL SSPBUFmovwf SSPBUFBANKSEL SSPSTAT ; Switch to SSPSTAT in order to test the BF FlagWait_BFbtfss SSPSTAT,BFgoto Wait_BFBANKSEL SSPBUF ; Read from SSPBUF will update BF Flag Automately !!movf SSPBUF,Wreturn控制MCP2510晶片方法:先說一下MCP2510晶片的操作,共有6個操作碼,重定,位元修改,讀數據,寫資料,讀晶片的各發送器和接收器的狀態,請求發送開始。
基于S3C2410与MCP2510的CAN现场总线接口设计
图 1 C N 网 络 系 统 结构 A
具备验收过滤以及报文管理功能 , 通信速率为 1
Mb s该控 制器 包含 三个 发送 缓 冲器 和两 个 接收 /. 缓 冲器 , 少 了 MC 的 管理 负担 , S I 口的 减 U 其 P接
这 种 网络 拓扑 结构 采用 了总线 式结 构 和无 源
5 5
功 能 与 E S保 护功 能 , 网络 系 统 具 有 更 高 的可 D 使
靠性 与 电器 安全 性 .
图 2 AR S ( 4 0控 制器与 C M 32 1 2 AN控 制器接 口电路原理 图
A M ¥ C4 0处 理 器 的数 据 高 速 处 理 性 能 R 32 1
收 稿 日期 :07—1 2 20 0— 2
数据传输速率可达 5M / . bs 总线接 口收发驱动单元采用高速隔离型收发 驱 动模 块 C M1 5 该模 块 内部集 成光 电隔离 模 T 0, 0
块 、A 收 发 控 制驱 动 模 块 及 电 源 管 理模 块 , CN 在 保 证 高速 收发控 制 的 同时具有 250V C的隔离 0 D
C N分布式通信 网络结构如 图 1 A 所示 .
CA N—H . .
低功耗的硬宏单元 , 同时 内嵌两路 S I P 串行 总线 控制 器 , 以可 方 便 的与 C N 总 线 协 议 控 制 器 所 A MC 2 1 P 50相连 接 . C N协议控制器是采用 Mc ci T cnl A ioh eho — r p o g c 美 国微 芯科 技 有 限公 司) YI ( n 最新 生 产 的 M P 50 制器 , 控 制器 支持 C N . 、 A C 21 控 该 A 12 C N
作者简介 : 王英辉( 9 0一)男 , 18 , 吉林 松原人 , 吉林省启龙实业开发 中 , l f助理工程 师 , 主要从 事电气工程方 面的研究 .
单片机和MCP2510的CAN总线通信模块设计
络 上 报 文 的接 收 和 发 送 站 , 般 由 单 片 机 和 C 一 AN 控 制 器 或 二 者 合 二 为一 组 成 。
MC 2 1 P 5 0是 Mirc i 司 生 产 的 一 种 独 立 的 可 编 cohp公
12 结构 及 工作 原 理 .
MC 2 1 P 5 0有 P P、 OI 和 TS OP三 种 封 装 形 式 。 DI S C S
MC U对 C N 总 线 的操 作 A
图 1 M P 5 0 DP封装 O 2 1 I
p e msto. ( 稿 用 a r eec e 投 专 ) p@ n.r n n
Mcc t1 s me eS t s i 。 r1 &E b d sm 35 r n。 r 。 e d d ye
的应 用 实 例 。
信 , 寄存 、 冲 器 组 与 控 制 逻 辑 则 用 来 完 成 各 种 方 式 的 而 缓
设定 和操作控 制 。现结 合其 工作过程将各部分的功能 、 原
1 MC 2 1 片介 绍 P 5 0芯
MC 2 1 是 一种 带 有 S I 口的 C N控 制器 , I P50 P接 A DP封 装如 图 1 示 。它 支 持 C N 技 术 规 范 V . A B 能 够 发 所 A 20 / , 送或 接 收标 准 的和 扩 展 的 信 息 帧 , 同时 具 有 接 收 滤 波 和 信
变 得非 常简 便 。
1 1 MO 2 1 主 要特 点 . P 5 0的
◇ 支 持 C NV . A/ ; A 2 0 B ◇ 具有 S I 口, 持 S I 式 00 11 P接 支 P模 , 和 ,; ◇ 内含 3个 发 送 缓 冲 器 和 2 接 收缓 冲器 , 对其 优 个 可
基于MCP2515的CAN总线控制软件的设计与实现
1.5 1.5
0.50.5-0.5-0.5-1-1-1.5-1.5110
0X 方向(单位:米
)
Y 方向(单位:米)图5 海豚冲进时鱼群运动规律图图6 沙丁鱼群体逃逸过程图
沙丁鱼被海豚捕食时鱼群分布图(鱼群密度:20只/立方米)
乙方向(单
位:米)
2
1.5
1
0.51.50.5-0.5-1.5100
1
2
3
4
5
-1-2-1
X 方向(单位:米)
6
参考文献:雷小康.从组群到分群:自组织群集运动的理论建模与分西安:西北工业大学,2015:15-18.,涂序彦.人工鱼群高级自组织行为研究
[J].自动化学报,2008(10):1327-1332.
作者简介:姚琳(1997.03-),女,汉族,重庆人研究方向:电子科学与技术。
总线收发的数据,并可模拟外部的CAN 接口向。
另外,CAN 总线控制软件还应有消参数设置等功能。
模块消息发送区可手动选择所要模拟发送的消息块,之后在对应的消息内容编辑区对所选择的消息块进行消息内容编辑并发送。
模块消息接收区可手动选择需要查看的消息块内容。
CAN 总线数据监视区可手动筛选需要监控的数据源地址和目的地址,并查看筛选后实现CAN 总线控制软件,在对被测系统软件的接口的测试中取得了良好的效果。
参考文献:
[1] 黄锡滋.软件可靠性、安全性与质量保证 子工业出版社,2002.
[2] 饶运涛,邹继军,郑勇芸,等.现场总线CAN 用技术 [M].北京:北京航天航空大学出版社,2003.。
CAN总线通讯实验
CAN总线通讯实验一、实验目的1.掌握UP-NetARM2410经典版上的CAN总线通讯原理。
2.学习编程实现MCP2510的CAN总线通讯。
3.掌握查询模式的CAN总线通讯程序的设计方法。
二、实验内容学习CAN总线通讯原理,了解CAN总线的结构,阅读CAN控制器MCP2510的芯片文档,掌握MCP2510的相关寄存器的功能和使用方法。
编程实现UP-NetARM2410-CL之间的CAN总线通讯:两个UP-NetARM2410-CL通过CAN总线相连接。
ARM监视串行口,将接收到的字符发送给另一个开发板并通过串口显示(计算机与开发板是通过超级终端通讯的)。
即按PC 键盘通过超级终端发送数据,开发板将接收到的数据通过CAN总线转发,再另一个PC的超级终端上显示数据。
三、预备知识1、用EWARM集成开发环境,编写和调试程序的基本过程。
2、ARM应用程序的框架结构。
3、会使用Source Insight 3 编辑C语言源程序。
4、了解CAN总线。
四、实验设备及工具硬件:ARM嵌入式开发平台、用于ARM920T的JTAG仿真器、PC机Pentium100以上,CAN通讯电缆。
软件:PC机操作系统Win2000或WinXP、EWARM集成开发环境、仿真器驱动程序、超级终端通讯程序五、实验原理及说明1.CAN总线概述CAN全称为Controller Area Network,即控制器局域网,是国际上应用最广泛的现场总线之一。
最初,CAN总线被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置ECU之间交换信息,形成汽车电子控制网络。
比如,发动机管理系统、变速箱控制器、仪表装备、电子主干系统中均嵌入CAN控制装置。
一个由CAN总线构成的单一网络中,理论上可以挂接无数个节点。
但是,实际应用中节点数目受网络硬件的电气特性所限制。
例如,当使用Philips P82C250 作为CAN 收发器时,同一网络中允许挂接110个节点。
基于CAN总线的智能输液监控系统
基于CAN总线的智能输液监控系统摘要:本文设计与实现一套基于CAN总线的智能输液监控系统。
该系统综合运用嵌入式系统技术、单片机控制技术、光电检测技术、通信技术、减速电机控制等技术,能够对输液过程进行现场实时监控,包括对输液液滴采集、输液速度控制、输液接近结束时液位检测,并通过CAN 总线把输液过程中的信息及时上传给护士总值班室的PC当中,对输液进行实时监控。
在实际应用中既可下位机单独工作,又可通过CAN 总线实现下位机、上位机联机工作,满足了目前临床医学的需求。
关键词:输液监控系统CAN总线MCP 2510 适配器1、系统总体设计1.1 系统组成输液监控系统由三部分组成:上位机、下位机、系统互连机制。
上位机包括PC和CAN总线适配器两部分,它可以看成是一个扩展了的PC,上位机是整个系统的核心,负责协调和控制整个系统的工作,接收从下位机发送的数据,并对其进行分析和处理;下位机是输液监控系统的数据采集者,当患者输液时,负责采集输液滴速等输液状态信息,在接收到上位机的指令后,把当前采集的数据传输给上位机。
1.2 系统拓扑结构本系统上位机和下位机的连接采用”总线网络”模型,如图1所示。
PC和USB 适配器处在总线上,作为总线上一个节点,各下位机处于CAN总线的其他节点上,上位机和下位机通过多主的方式进行数据传输,本系统设计了110个下位机。
2、基于CAN总线的系统通信设计通信模块程序设计分为两部分:第一部分是串行通信口的参数设置,主从机之间采用串行通信;第二部分是通信协议的约定。
本设计中主从机之间采用CAN 总线进行通信,CAN 总线节点的软件设计主要包括三大部分:CAN 节点初始化、报文发送和报文接收。
本设计的从机串行口初始化在主模块完成,使本机处于通讯状态。
MCP 2510的初始化只有在复位模式下才可以进行初始化。
在完成MCP 2510的初始化设置以后,MCP2510就可以回到工作状态进行正常的通信任务。
基于单片机和MCP2510的CAN总线通信模块的设计
基于单片机和MCP2510的CAN总线通信模块的设计张景元;杨庆华
【期刊名称】《微计算机信息》
【年(卷),期】2007(023)020
【摘要】CAN总线上的分布控制节点一般由单片机和可编程的CAN通信控制器组成.本文介绍了一种新型的独立通信控制器MCP2510.并给出其在CAN总线系统智能节点中的一个应用实例.硬件设计给出了节点的电路原理图,软件设计给出了系统程序的设计流程图及其需要注意的问题.
【总页数】3页(P29-31)
【作者】张景元;杨庆华
【作者单位】255049,山东,淄博山东理工大学,计算机科学与技术学院;255049,山东,淄博山东理工大学,计算机科学与技术学院
【正文语种】中文
【中图分类】TP368
【相关文献】
1.基于Mega8单片机与MCP2510的CAN总线接口设计 [J], 骆舒萍
2.单片机和MCP2510的CAN总线通信模块设计 [J], 杨庆华;张景元
3.基于MCP2510和PIC单片机的CAN节点的设计 [J], 翟元义;刘建新
4.BMS中基于MKE06Z64芯片的CAN总线通信模块设计 [J], 彭楠楠;王宜怀;丁伟;殷姚吉
5.基于CAN总线的柴油机通信模块设计与实现 [J], 代宏泽
因版权原因,仅展示原文概要,查看原文内容请购买。
mcp2510的can总线收发器程序
mcp2510的can总线收发器程序pcbomb发表于2008-6-30 14:47:00 阅读全文(769) |回复(1) |引用通告(0) |编辑#i nclude <stdio.h>#i nclude "mcp2510.h" void mcp_reset(void){SPI_init_hw(); //设置成SPI方式init_can」o(); //SPI_mcp_reset(); //void mcp_read( unsigned char MCPaddr, unsigned char* readdata, unsigned char length ) {unsigned char loopCnt;SPI_mcp_select(); // Select the MCP device at the SPI bus// Start reading and set first addressSPI_mcp_RD_address(MCPaddr);for (loopCnt=0; loopCnt < length; loopCnt++){// Get a byte and store at pointer*readdata = SPI_putch(MCPaddr);// Increment the pointers to next location// Test++;MCPadd 叶+;readdata++;}SPI_mcp_unselect();} void mcp_write( unsigned char MCPaddr, unsigned char* writedata, unsigned char length ) { unsigned char loopCnt;SPI_mcp_select();// Start write and set first addressSPI_mcp_WR_address( MCPaddr );for (loopCnt=0; loopCnt < length; loopCnt++){// Write a byteSPI_putch( *writedata );// Increment the pointer to next location writedata++;SPI_mcp_unselect();*********unsigned char mcp_transmit_busy(unsigned send_buf) {unsigned char temp;switch(send_buf){case 0:{temp=SPI_mcp_RD_status();〃if(temp&0x04){return 1;}return 0;break;}case 1:{temp=SPI_mcp_RD_status();〃if(temp&0x10){return 1;}return 0;break;}case 2:{temp=SPI_mcp_RD_status();〃if(temp&0 x40){return 1;}return 0;break;}}} 读取当前的MCP251C发送状态读取当前的MCP251C发送状态读取当前的MCP251C发送状态************发送数据*********************************************************************** ******************************void mcp_transmit(unsigned char mcp_addr)。
基于MCP2515的CAN总线控制软件的设计与实现
基于MCP2515的CAN总线控制软件的设计与实现
孙龙;刘晖虎
【期刊名称】《现代信息科技》
【年(卷),期】2018(002)007
【摘要】控制器局域网络(Controller Area Network,CAN)在汽车、工业控制、航空等嵌入式系统开发中得到了广泛的应用.为确保其通信功能及接口实现的正确性,需进行有针对性地测试.为了提高软件测试过程中CAN总线接口测试的效率和质量,本文设计和开发了基于CAN总线控制器MCP2515的CAN总线控制软件,以实现测试过程中对CAN总线收发数据的模拟和监视.
【总页数】5页(P1-4,8)
【作者】孙龙;刘晖虎
【作者单位】工业和信息化部电子第五研究所,广东广州 510610;工业和信息化部电子第五研究所,广东广州 510610
【正文语种】中文
【中图分类】TP273
【相关文献】
1.基于MCP2515和S3C2440组建CAN总线通信系统的设计与实现 [J], 刘金梅;姚晓琼;韦雪洁
2.Linux下基于MCP2515的CAN总线驱动程序设计 [J], 张才军;叶水生;王万兵
3.基于MCP2515的CAN总线通信单元设计 [J], 丁雪静;许永辉
4.基于MCP2515的CAN总线控制软件的设计与实现 [J], 孙龙;刘晖虎;
5.Linux下基于MCP2515的CAN总线驱动程序设计 [J], 张才军;叶水生;王万兵因版权原因,仅展示原文概要,查看原文内容请购买。
基于Mega8单片机与MCP2510的CAN总线接口设计
基于Mega8单片机与MCP2510的CAN总线接口设计骆舒萍
【期刊名称】《机电技术》
【年(卷),期】2008(31)2
【摘要】为实现高速CAN总线数据通信,以AVR系列8位单片机Mega8和CAN控制器芯片MCP2510为核心,进行CAM总线接口设计,从而简化了传统的节点接口及外围控制电路,而且降了价格.
【总页数】3页(P21-22,29)
【作者】骆舒萍
【作者单位】黎明职业大学,福建,泉州,362000
【正文语种】中文
【中图分类】TP393.13
【相关文献】
1.基于ATmega128单片机的CAN总线接口设计及应用
2.基于SPI的CAN总线控制器与MCS-51单片机的接口设计
3.基于Mega8单片机的CAN总线智能节点设计
4.基于单片机和MCP2510的CAN总线通信模块的设计
5.基于AVR单片机与MCP2515的多路CAN总线接口设计
因版权原因,仅展示原文概要,查看原文内容请购买。
基于MCP2510通信芯片的多功能污染监测系统的设计
230 引言多功能污染监测仪主要用于自动测量不同物品表面的α、β辐射水平,当辐射水平达到报警阈值后,自动进行报警。
内置25种类核素,根据不同的场所可以选择不同的核素进行测量。
此外,仪器具有测量数据保存功能,可以记录测量中产生的基本信息。
多功能污染监测仪系统由多功能污染监测仪主机,手持式α辐射探头、手持式β辐射探头、高量程剂量率探头、超高量程剂量率探头、地面污染测量探头、辐射探测模块(内置)组成。
多功能污染监测仪主机可搭配不同的探头,实现α、β等不同放射性沾染检测,同时可搭载水下探测器,实现水下25m处γ剂量率测量。
多功能污染监测仪主机又由主控制板,液晶屏,高压模块,电池等组成,如图1所示。
系统里最重要的功能就是多功能主机对外部各种探头的自适应识别功能,在不同的使用环境中,选择不同的外接探头实现实时数据的测量功能。
这依赖于通信中的可靠协议与通信芯片的选择。
本文就先详细介绍系统中外部探头和主机之间的CAN通信的实现。
1 MCP2510概述Mcp2510是Microchip Technology Inc.(美国微芯科技有限公司)生产的一款控制器局域网络(CAN)协议控制器,完全支持CAN总线V2.0A/B技术规范。
CAN协议引擎的功能是处理所有总线上的报文发送和接收。
报文发送时,首先将报文装载到正确的报文缓冲器和控制寄存器中。
利用控制寄存器位,通过SPI接口或使用发送使能引脚均可启动发送操作。
通过读取相应的寄存器可以检查通信状态和错误。
任何在CAN总线上侦测到的报文都会进行错误检测,然后与用户定义的滤波器进行匹配,以确定是否将其转移到两个接收缓冲器之一中。
2 MCP2510通信功能设计2.1 控制器的选择收稿日期:2020-07-02作者简介:田海燕(1982—),女,重庆人,工程硕士,研究方向:嵌入式软件系统开发。
基于MCP2510通信芯片的多功能污染监测系统的设计田海燕1 张洪波2(1.绵阳市维博电子有限责任公司,四川绵阳 621000;2.中国工程物理研究院动力部,四川绵阳 621900)摘要:本文阐述了基于MPC2510芯片的多功能辐射监测系统的CAN通信设计,详细说明了CAN通信在实现多个探头对接主机通信上的软件具体实现过程。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3 1 1 MC 2 1 . . P 50简介
MC 2 1 是 MT 公 司生 产 的一 种 带 S I 口的 C P 50 P 接 N A
C N总线被细 分为 以下 不 同的层 次 : A 对象层 , 传输层 ,’ 控制器 , 主要用于简化 C AN接 口应用设计 。它支持 C N技 A 物理层 。对象层和传输层包 括所有 由 I0 C I S / I 模型定 义的 S 术规 范 V .A/ , 2 0 B 能够发 送 和接 收标 准数 据帧 以及 扩展数
如图 1 所示。
平均 电压平U
交换而开发的一种多主机局部串行数据通信网络, 属于现场
总线( idB s的范畴。C N 总线采 用双线 串行通 讯方 式 Fe u ) l A 工作 , 具有强有力 的检错 功能 , 在高噪声干扰环境中使用 , 其 最高通信速率可达 1 p , Mb s最大通信距离可达 5 0 m。 00
一
其它单 片机进行通信 。MC 2 1 P 5 0内含 3个发送缓冲器 , 2个 接收缓 冲器 , 并且 具有灵活 的中断能力 、 帧屏蔽和过滤 、 帧优 先级设定等特性 。
312 A . . Tmea4 g6 L简介
网络 , 物理层对于所有 的节点必须是相 同的。选择物理层
A me ̄4 基于增 强 的 A IC结 构 的 低 功耗 8 T g 是 VR R S
它最大的特点是废除了传统的地址编码 , 而代之 以对数
据通信数据块进行编码 , 以多主方式工作 。 可
1 o 总线 协议概 述
C N—u 范 V . A b s规 2 0包 括 A, B两部 分 , . A 给 出 了 20
C 报文标准格式 , N A 即其采用的地址范 围由 1 个识 别位定 1
摘 要: 介绍 了一种基 于 MC 2 1 P 5 0的 C AN总线协议分析仪 的软硬件设计。使 用 A VR单 片机 A mea4 T g6 L控
●
制独 立的 C N控制 器 MC 2 1 A P 5 0对 C 总线上的报 文进行监 听 , N A 并将报 文通过 上位机传 输给 P C机显 示。 由 P C
维普资讯
山西 电子 技 术
20 07年第 2期
应 用 实 践
基 于 MC 2 P 5 0的 C 1 AN 总 线 分 析 仪 的 实现
李玉龙 田 野 刘 桥
( 贵州大学电子科学与信息技 术学院, 贵州 贵阳 50 2 ) 50 5
机 上 显 示 的报 文就 可 以 对协 议 进 行 完 整 的 分析 。 关 键 词 : A 总 线 ; Ⅵ 上 位 机 ;P C N A ; SI 中 图分 类 号 : N 1 、 T 95 1 文献标识码 : A
O 引言
C N全称 为 “ o t lrA m  ̄ r” 即控 制 器局 域 A C nr l r N wok , oe 网, 最初是德 国 B sh公司于 2 oc 0世纪 8 0年代初 为解决 现代 汽车 内部大量的控制测试仪器与传感器 、 执行机构 间的数 据
性。
22 协议逻辑分析 , 总线上用 “ 显性” “ 和 隐性” 两个互补的逻辑值表示 … 和 0’ “” 1 。如 果同时向总线发送 “ 显性” 位和 “ 隐性 ” , 位 其结 果是 总线数值为“ 显性 ” 。在 “ 隐性 ” 状态 下 , ( 一 和 v( 一 被 v州 H 州 L 固定于平均电压电平。在总线空闲或“ 隐性 ” 位发送期 间 , 发 送“ 隐性” 状态 。“ 性” 态 以大 于最小 阈值 的差分 电压表 显 状 示 。在“ 显性 ” 位期 间, 显性” “ 状态改 写“ 隐性 ” 态并发 送。 状
括 C语言编译器 、 汇编、 宏 程序 调试器/ 软件仿 真器 、 真器 仿 及评 估板 。有极高灵 活性 , IO地址 取代 A R指令集 中 其 / V
数据链路层的服务 和功能 。对象层 主要 负责查 找被发送 的 报文 ; 确定 由实 际要 使用 的传 输层接 收哪一个 报文 ; 为应 用
据帧 , 并具有接 收过 滤功 能 和信 息 管 理 的功 能。MC 21 P 50
通过其 S I P 引脚同单片机进行数据传输 , 最高数据 传输速率
方面是很 自由的 , 物理层决定 了实 际位传送过程 中的 电气 特
收稿 日期 :0 6—1 20 0—2 第一作者 6 李玉龙 女 2 6岁
位
微控制器 , 具有一整套 的编程 与系统开 发工具 , 包
硕士研 究生
维普资讯
4 2
山
西
电
子
技
术
20 07年
义。2 0 .B给 出了标 准和 扩展 两种格 式 , 扩展格式 即其 对地 址 范围扩大 而制定 的 2 9个识别位格式。扩展格 式完全在标
时同 t
图 1 总线的“ 显性” 隐性” 和“
v( 一 和 v 州 一 为 C 总线收 发器 和总线 之间 的接 州 H ( L A N 口引脚 , 信号是 以两线之间的“ 差分 ” 电压表示的 。
可达 1 p。单片机可 以通 过 MC 2 1 Mb s P 5 0与 C N A 总线 上 的
层相关硬件提供接 口。传输层主要负责传送规则 , 也就是 控 制帧结构 、 执行仲裁 、 错误 检测 、 出错标定 、 障界定 。总线 故
上何时开始发送新报文及何时开始接收报文 , 由传输层 确 均 定 , 以传输层 的修改是受到 限制 的。物理层的作用是在 ห้องสมุดไป่ตู้ 所 同节点之间根据其 电气 属性进行 位信息 的实 际传输 。在 同
准格式 的基础上 的改进 , 其定义的地址范围更宽。是 为 了兼
容 C N ., A 2 0 规定 C 设 备应采 用 C 2 0中的 A或 B部 N A N A .
分。
3 分 析 仪的软 硬件 实现
3 1 芯片介绍 .
2 o 总线协 议分 析
2 1 C 分层结构及功能 . A N