当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]基于DSP的CAN总线系统设计与实现

摘要:介绍了基于DSP的CAN控制器的设计及应用方法,利用该方法可以在波特率高达lMb/s的条件下稳定、可靠地传输数据,而且延迟时间很少。实验证明,利用TMS320F2812内嵌的CAN模块来构成的硬件电路和软件设计十分简单实用。
关键字:CAN总线;串行通信;分布式控制;DSP;TMS320F2812

0 引言
    eCAN模块是一种片上增强型控制器,其性能较之已有的DSP内嵌CAN控制器有较大的提高,而且数据传输更加灵活方便,数据量更大、可靠性更高、功能更加完备。随着TMS320F2812的大量推广使用,基于DSP的CAN总线通信方式将得到广泛的应用。

1 eCAN模块的增强特性
    eCAN模块是TI公司的新一代32位高级CAN控制器,它完全兼容CAN2.0B协议,可以在有干扰的环境里使用上述协议与其它控制器串行通信。该模块除具有一般DSP内嵌CAN控制器的所有功能外,与TMS320F2812系列DSP的CAN模块相比,它还主要具有如下一些增强特性:
    (1)增加了邮箱数量,并且所有邮箱都具有独立的接收屏蔽寄存器。TMS320F2812有多达32个邮箱,其所占用的512字节RAM都可以配置为
发送或接收邮箱,且都有一个可编程的接收屏蔽寄存器。因而其数据传输更加方便灵活、信息量大大增加;
    (2)eCAN是一个32位的高级CAN控制器。其控制寄存器的状态寄存器必须以32位方式访问,而接收屏蔽、时间标识寄存器、超时寄存器和邮箱所在的CAN范围则可以以8位、16位和32位方式访问;
    (3)时间标识。eCAN模块应用一个全速运行的32位定时器(LNT)来获得接收或者发送一个信息(有效的CAN数据帧)的时间。当一个接收
信息被保存或被发送时,定时器的内容将写入到相应邮箱的时间标识寄存器(MOTS)里。这样就可获得接收或发送一个信息的时间。当邮箱成功发送或接收一个信息时,LNT寄存器被清除。所以可以通过使用邮箱来实现网络的全局时间同步;
    (4)超时功能。为了确定所有的信息都能在预定的时间里送出或接收,每个邮箱都有它自己的超时寄存器(MOTS)。如果一个信息没有在超
时寄存器设定的时间内完成发送或接收,其超时状态寄存器里将设置一个标志位,并据此判断是否超时。
    以上这些增强特性使得TMS320F2812在进行CAN通信时,其数据传输更加方便灵活、数据量更大、功能更完备。

2 应用设计
    针对TI公司的TMS320F2812内嵌的eCAN模块的方便性和实用性,可用TMS320F2812微控制器组成一个CAN总线网络来进行实时数据收发。其
中CAN驱动器使用TI公司的SN65HVD230D。此方案可扩展性强,功能强大。若要增加节点个数,只需要在CAN总线上挂接带有CAN模块的控制器
即可。[!--empirenews.page--]
    在TM320F2812的eCAN模块与USB-CAN模块之间进行通信时,上位机可选用派恩公司的USB-CAN模块,其调试界面为PCANView。这里将eCAN的邮箱0配置成发送邮箱,邮箱5配置成发送邮箱,并采用扩展信息帧格式。发送采用查询方式,接收用中断方式,同时可采用DsP将接收的数据转发回上位机,并对接收和发送的数据进行错误计数。图1所示为采用上位机设置端口、波特率等参数,并通过USB-CAN模块与下位机通信的调试界面图,它可用来检验TM320F2812的CAN总线通信是否正常。

3 硬件设计
    本设计的硬件系统分为两层:第一层是CAN总线与TMS320F12812接口层,用来实现CAN总线和TMS320F12812的物理接口;第二层为DSP与外
围器件的信息处理层,其中TMS320F2812是针对控制领域应用而设计的一款新型工控芯片,它集成了数字IO、事件管理器、A/D模数转换、SPI串行外设接口、SCI异步串行通信接口、CAN控制器等控制资源。其CAN总线通信接口电路如图2所示。

4 软件设计
    在使用CAN控制器之前,首先必须对它的内部寄存器进行初始化设置,包括相关IO口设置以及邮箱的相关配置。这里着重介绍如何进行初始化设置和发送与接收的配置。图3所示是本系统的主程序流程图,其CAN配置流程如图4所示。

[!--empirenews.page--]
    在软件设计时,首先应进行IO口配置。由于CAN通讯所用到的两个引脚CANTX和CANRX均为复用IO口,因此,首先要配置寄存器CANTIOC
的TXFUNC和RXFUNC位为l;再就是要初始化位时序,即对位时序配置寄存器CANBCR进行配置,包括CAN控制器的通讯波特率、同步跳转宽度、采样次数等参数。
    当完成以上CAN配置之后,还需按照图5所示的流程图来完成数据的发送与接收配置,同时初始化邮箱。邮箱初始化主要是设置邮箱的标识符和控制域(即发送的是远程帧还是数据帧),以及对相应的邮箱赋初值。


    数据接收时,所接收到的信息的标识符必须与相应的接收邮箱的标识符相同,否则该信息将被滤除。这里,数据的发送与接收请求均采用标志位查询方式。
    按照以上步骤设置好后,接着就是对数据的发送与接收请求进行配置。数据接收可采用中断方式,中断配置可在主程序流程中进行配置。正确配置中断入口地址及中断函数,并开放CAN接收中断后,还要分别配置不同的数据帧,包括标准帧和扩展帧,以及数据帧和远程请求帧。
    图6表示为上位机接收数据的调试界面。可以看到,CAN通信和下位机间的数据通信,可以写数据并发送给下位机,同时也可接收下位机的数据来验证电路及软件的正确性。

5 结束语
    利用TMS320F2812内嵌的eCAN模块可使得硬件电路设计更为简单而可靠,而且性能也较已有的DSP内嵌的CAN控制器有较大的提高。同时,采用C语言编程,则可使得程序的设计难度降低,提高程序的可维护性并缩短开发时间。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭