基于ARM+CortexM3的CAN总线的研究
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DOND
图3 CAN通信电路 号.其后的1M电阻是为了防止静电干扰。
二.系统软件设计
(1)CAN的初始化
图4 CAN初始化程序流程图
22 I融l螨覆熏熏鳓垂匝垂童叠巫匾麴亟[二二二二二二二二二二二
万方数据
(2)发送测试 发送流程如图5所示
图5报文发送请求流程图(查询控制) 发送数据为0x11.0x 22,0x 33.0x 44.0x 55.0x 66.
文章编号:1673-1131(2010)04-021-03
引言 CAN总线技术是为分布式系统在强干扰等恶劣环境 下能够正确可靠的传输而研制开发的一种总线标准,因此 其较低的成本和较高的实时处理能力使其在工业自动化领 域中的应用越来越广已经成为该应用领域发展的一大趋
势。 本次CAN通信以是ARM Cortex-M3处理器为核心。
3.期刊论文 高守玮.邵勇.黄全振.蔡新岗.GAO Shou-wei.SHAO Yong.HUANG Quan-zhen.CAI Xin-gang 基于CORTEX-
M3 ARM的变频调速节能控制器设计 -仪表技术与传感器2010(1)
采用CORTEX-M3 ARM控制芯片,设计了一个具有高可靠、性价比高、操作方便的变频节能控制器.综合阐述了整体系统设计、核心CPU选型,并重点设计 了具有可靠保护的压力信号采集模块、强抗干扰能力的变频器控制信号输出模块和人机接口模块.现场试验结果表明控制器工作可靠,能很好地实现水泵 出口流量及压力的全自动控制.
PP斜 q2109p'mDSlR,I{lSCDLAI
州2I-RI LRDI
删o¨m aJ∽^醐 P讲芷 RTSI,rDI
P埘23
P012● P讲2,
A‘唧DO(2)岫1
R}X;SD嚣~:TⅪ裂Ⅺ’
PⅢ26 ^D0f3I^oLl’奄功,
PP0叩12’o}lSsDAcQm'Lm疆-.9吐田A
P附q”脚n∞..mm
while(1){
canSend(0,2);
myDelay(1000);
测试软件界面如图6所示: 此外.在使用测试软件前.先要对软件进行配置.主要是 对波特率.验收码,屏蔽码.滤波模式进行配置.尤其是波特 率要和ARM Cortex-M3中的一样,否则无法正常通信。 本次测试波特率为1000Kbps.验收码为0x00000000, 屏蔽码为0xffffffff,滤波模式为单滤波。软件配置好以后. 点击启动CAN.就可以进行测试了。测试界面如图7所示: 从上述截图中可以看出.传输方向为接收(CAN卡是在 接受数据).帧ID为0x08888888.帧类型为扩展帧.数据长
"P怛辅,玛y■w1^砷龇"T■珥雕II埘"哪I翻
蝣燃ll瓢’;陵譬
cAN Interface
图2 Cortex·M3处理器电路
cAN初始化最重要的就是初始化CAN工作模式和通信 波特率【2】.也就是说最简单的CAN初始化只需要操作模式 寄存器和总线时序寄存器即可。当然.完整的初始化例子当 然需要包含硬件引脚连接。系统电源等附加操作。CAN的 初始化如图4所示:
参考文献 【1】周立功等编著.深入浅出Cortex-M3[M].广州:广州致
远电子有限公司,2009. 【2】王黎明等编著.CAN现场总线系统的设计与应用
【M】.北京:电-y.工业出版社,2008. [3】张建,蒋新华,陈兴武.CAN总线在基于ARM嵌入式
数控系统中的应用【J】.自动化与仪表,2008(7):25027. 【4】饶运涛,邹继军,郑勇芸等.现场总线CAN原理与
ARM Cortex-M3处理器自带cAN控制器.可以同时处理两 路CAN通道。这取代了以往的SJAlooO芯片.这样节省了电 路板的空间。
ARM Cortex—M3处理器是一个面向低成本.小管脚数 目以及低功耗应用.并具有极高的运算能力和中断响应能力 的处理器内核.性能要比8位单片机高很多【1】。测试平台由
21
万方数据
lnfnrmation乏爻communications
Co
霭㈨溪2,㈣墓 PPqqoIy】RDtI,/'TIDrIXtDi3ttⅪ'∞)眦tAl!
== 墨5
嗍l cLK且a∽删铆 P012)TXDO。AOOi'Pl
喇3yRXDO.A[XX6l
27 27
12镰x
Pof,InSRx帖TDM^嘲Ij
targetlnit0;
//初wenku.baidu.com化目标板
pinInit0;
∥引脚初始化
canlnit(0,BPS一1000K),//初始化CANl通道I M波特率 /.写报文信息(报文数据长度,是否标准帧、ID,发送数
据所在的数组)吖
while(!writeDetail(8,l,0x08888888,ucDatal 1));
相似文献(10条)
1.期刊论文 唐密媛.张根宝.Tang Miyuan.Zhang Genbao 基于ARM Cortex-M3的便携式智能瓦检仪的设计 -计算机
测量与控制2009,17(12)
为了测量煤矿井下瓦斯浓度以提高煤矿安全系数,利用新型的ARM Cortex-M3内核高性能、低功耗和低成本的特点,结合红外技术研究设计出一款便携 式小型瓦斯检测仪;ARM Cortex-M3内核简化了硬件电路的设计和开发环境,优化了软件编程;红外技术的应用使得该仪表可供煤矿井下工作人员随身携带 ,使用方便;该仪表能够实现瓦斯含量实时检测和报警,具有测量精度高、实时性好、速度快、操作简单和性价比高等优点,使得矿井环境更加安全可靠;文 章详细介绍了瓦检仪系统的组成、工作原理以及软硬件设计.
5.期刊论文 陈科善.闫鹏.Chen Keshan.Yan Peng 基于ARM Cortex-M3的多路数据采集系统的设计 -电子技术
英文刊名: 年,卷(期): 被引用次数:
姚瑶, YAO Yao 兰州交通大学,自动化与电气工程学院,甘肃,兰州·730070
信息通信 INFORMOTION & COMMUNICATIONS 2010,(4) 0次
参考文献(5条) 1.周立功 深入浅出Cortex-M3 2009 2.王黎明 CAN现场总线系统的设计与应用 2008 3.张建.蒋新华.陈兴武 CAN总线在基于ARM嵌入式数控系统中的应用 2008(7) 4.饶运涛.邹继军.郑勇芸 现场总线CAN原理与应用技术 2003 5.尹晓方 CAN智能节点的设计 2004(5)
摘要:采用NxP公司的Cortex-M3处理器作为CAN总线的
发送端,并以ZLG公司的PCI9820I CAN卡作为CAN总线的
接收端测试数据的传输。重点介绍阐述了系统硬件和软件 的设计方法。系统可靠地实现了CAN通信。
关键词:ARM;Cortex-M3;CAN总线
中图分类号:TP274
文献标识码:B
P甜6v12sRx sD^嚣EL
1"401
Por7I吐Srx.CLLscK LMAT2lIl
州s112sT】(晒MI幻l MAT212l
P伽●yt箍Tx gD~Mo虬kM爿n口l
P饿1011xn2苴衄MAl"3i0}
Pql pRxD2/SCL2M^TMIl
P钟Ⅲ1r3t"DI r-【DTx
叫PPqqI1I’6tlyyRDcxCTDDSIII,,舶SMO亚1S9LⅪ0o“嚣№ME∞重L
11)Cortex-M3处理器电路如图2所示: (2)CAN通信接口电路如图3所示
图2中CPU通过管脚PO一0和PO一1对CAN通信进行控 制,图3中CANRXD弓I脚为接收端.CANTXD弓I脚为发送 端.设置一个跳帽JPl5足]'CAN通信的接收和发送进行屏 蔽。CANH和CANL蔓jCAN的数据信号,它们是一对差分信 号(高低电平信号).在此一定要注意CANH和CANL后一 定加一个120欧姆的匹配电阻。CANG弓I脚是CAN的接地信
应用技术【M】.北京:北京航空航天大学出版社,2003. 【5】尹晓方.CAN智能节点的设计CJ3.国外电子元器
件,2004,(5):19221
姚 垂茎壬丕匦噩至j|ji三塑;硒亘缓的谚垂二二二二二二二二二二二二二二二二二二l匦i矗碉23
万方数据
基于ARM Cortex-M3的CAN总线的研究
作者: 作者单位: 刊名:
周立功的PCI98201 CAN卡和ARM Cortex—M3组成.CAN 卡用来测试ARM Cortex—M3处理器发出的数据是否能收 到.
一.系统硬件设计
CAN通信系统组成如图l所示
CAN总线
l
I
l
ARM
h
I Cortex—M3 r
一●
7l
PCI982.0I
…
i CAN卡
图l CAN通信结构组成 系统硬件以Cortex.M3处理器电路和CAN通信接口电 路为主:
度为0x08.数据为0x11.0x 22.0x 33.0x 44,0x 55.0x 66. 0x 77.0x 88,这与ARM Codex—M3发送的数据是一致的。
三.结语 在工业控制场合中.数据通信的稳定与可靠至关重要
图6测试软件界面
图7网络正常时测试软件截图 是整个系统的关键部分。
本次cAN通信测试时间共计48个小时.分8次进行.每 次6个小时。测试前以保证CAN网络接连完好。在每次6个小 时的发送测试中,cAN卡接收的数据与发送的数据一致. 没有出现丢帧现象.在测试过程中不断读取状态寄存器的 数值,数值正常.说明本系统数据通信稳定可靠。
2.期刊论文 孙顺远.秦会斌.崔佳冬.丁红斌.SUN Shun-Yuan.QIN Hui-Bin.CUI Jia-Dong.DING Hong-Bin μC/OS-
Ⅱ在Cortex-M3内核上的移植及优化 -计算机系统应用2010,19(4)
描述了源代码公开的实时操作系统μC/OS-Ⅱ在以Cortex-M3内核的ARM处理器STM32-F103ZET6上的移植过程.介绍了ARM的Cortex-M3内核的基本概念 ,及移植过程,并对移植过程中的任务堆栈做出优化,最后通过建立简单任务,来验证移植的正确性以及系统在STM32F103ZET6上运行的可行性和稳定性.
4.期刊论文 张栋.王振民.李晋.王志强.ZHANG Dong.WANG Zhen-min.LI Jin.WANG Zhi-qiang 基于ARM Cortex-M3
的数字化管板焊接电源的研制 -焊接技术2010,39(1)
设计了基于ARM Cortex-M3 内核芯片的数字化管板脉冲焊机.主电路采用全桥IGBT逆变方式.并用霍尔传感器采样输出电流进行反馈,控制系统采用 C语言编程、模块化管理,控制PID算法、数字滤波均通过软件编程实现.并采用MCU+CPLD的方式设计管板焊接电源的数字化面板,利用键盘按钮和编码器旋 钮组合输入焊接参数,设计简单,操作方便.试验结果表明,采用双MCU+CPLD组合方式来控制管板焊机的参数显示和焊接过程取得了较好的效果.
0x 77.0x 88.帧类型为扩展帧.帧ID为0x08888888。 PCI9820I CAN卡自带测试软件.可以很方便地记录CAN卡
收到的数据及其参数。 ARM发送程序如下:
unsigned char ucDatall【】={Oxll,0x22,0x33,0x44,0x55,
0x66,0x77,0x88};//发送数据
Research on CAN Bus Based on ARM Cortex-M3
YAO Yao (The School of Automatization&Electric Engineering。Lanzhou Jiaotong University,Lanzhou 730070 China) Abstract:This paper introduces a transmission of CAN bus based on ARM Cortex-M3 as a transmitter manufactured by NXP corporation and PCI9820I CAN card as a receiver manufactured by ZLG corporation.The hardware and software of system are discussed importantly.This system implements communication of CAN bus reliably. Keywords:ARM:Cortex-M3;CAN bus