0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于MC9S12DP256微控制器和芯片实现工业CAN I/O模块的设计

电子设计 来源:电子产品世界 2020-07-06 07:58 次阅读

工业CAN I/O模块包含8个模拟输入、16个数字输入、16个数字输出,以及一个兼容高速CAN收发器2.1 A/B的控制器和可选的RS232/RS485收发器。该方案基于飞思卡尔的16位MC9S12DP256微控制器单元。CAN物理收发器有两个可行的替代产品,为容错CAN接口MC33388,或带多输出电源的高速CAN MC33394。CAN接口与 ISO 11898兼容,允许最大数据速率为500kbps。 数字输入采用开关监视接口MC33884芯片,数字输出用低端功率开关器件MC33298实现。

本文讨论的模块可以用作高层通信协议软件开发的硬件平台。另外,该模块可以用于用户软件的实现和测试。基于这一目的,电路板需要配备重新编程和调试用的后台调试模式(BDM)接口。工业CAN I/O模块从逻辑上分成基板、电源和I/O板三个基本电路板。板与板之间的数据传送由串行外设接口(SPI)协议保证。

基板的组成

工业CAN I/O模块中基板的主要功能是对模块实施控制,并与系统控制单元进行通信。基板配备有8个模拟通道。基板从逻辑上又可以分成微控制器模块、CAN接口、模拟输入和RS232_485接口4个模块。

a.微控制器模块

16 位MC9S12DP256微控制器单元(MCU)是基板的主要组成部分。工业CAN I/O模块使用了内嵌于MCU 的5个CAN外设之一(CAN0)。根据BOSCH规范的定义,该外设是一个用于实现CAN 2.0A/B协议的通信控制器。CAN外设是MSCAN(摩托罗拉可伸缩CAN)的一种特定实现。它使用了2个外部引脚,一个输入(RxCAN0)和一个输出(TxCAN0)通过CAN收发器与CAN总线进行通信。一个输出信号用于实现对CAN收发器芯片的控制。

如上所述,板之间的数据传送是由SPI协议保证的。SPI模块可以实现MCU与外设之间的全双工串行通信。工业CAN I/O模块使用了MCU的3个SPI外设中的一个(SP0)。该 SPI可以被配置为主模式或从模式。SPI0外设必须选择主模式,因为只有主SPI才能发起到外设的传送。

工业CAN I/O模块使用了内嵌于MCU的两个8通道模数转换器中的一个(AN0)。A/D模块执行模拟到数字的转换,该模块包含了简单模数转换所必需的模块和数字电子电路。A/D转换器的分辨率(8位或10 位)是可编程选择的。在工作电压为5V时,模块可以接受5V输入而不会导致永久性损坏。

基板上有一个8位DIP开关,用于配置节点地址(节点识别号)以及CAN速度。与主机开发系统的单线通信是通过用片上硬件实现的BDM系统完成,与目标系统的连接通过标准的6引脚BDM连接器实现。

b.CAN接口

每个 CAN节点是通过收发器芯片实现与CAN总线的物理连接。收发器能够驱动CAN总线所需要的大电流,并具有隔离故障CAN或故障站的电流保护功能。基板上的CAN收发器有两个可选项:一个是使用容错CAN接口MC33388;另一个使用MC33394器件的高速CAN收发器部分。模块使用MC33394器件的高速CAN收发器部分,同时也是电源板的一部分。

c.模拟输入

模块共提供了8个模拟通道。在每个模拟通道的输入部分都有一个衰减斜率是-40dB/dec、截止频率为1kHz的无源低通滤波器。输入滤波器用于滤除在采样之前引入的高频噪声和干扰。模拟通道可以被配置为电压或电流模式。250欧姆电阻为4到20mA的电流环路提供电检测和实用的过流保护。模拟通道的电压输入如信号的范围是0到10V、0到5V以及-5V到+5V、-2.5V到+2.5V,电流范围是4到20mA。输入范围由微控制器控制。

d.RS232_485接口

基板提供了一个用于连接PC或类似主机的RS232接口,以及一个用于工业应用的RS485接口。

电源板

电源板能够提供工业CAN I/O模块所需的所有电源。

电源板的主器件是一个带高速CAN收发器的多输出电源集成电路PC33394。该器件内置有开关型整流器,可提供预调节的输出,后面紧跟一个低压降输出 (LDO)调节器。并应用并没有用到PC33394的全部功能。内部开关调节器集成了实现降压/生压整流器的电路。该电路眼板上只实现了降压调节器。回扫转换器提供对称的电压为模块的模拟通道供电。变压器输出电压经整流后由线性稳压器产生一对称的+12V、-12V输出电压。

高速CAN收发器的物理层将微控制器的CMOS输出及差分总线相接。CAN驱动器具有短路保护功能,可以容许失去电池或接地条件。

I/O板

I/O板提供16个数字输入和16个数字输出。I/O板通过连接器连接到基板。从逻辑上I/O板可以分成数字输入和数字输出两个基本模块。

a.输入模块

板上有2个开关监测接口器件MC33884,它们提供了电子开关和微控制器之间的接口。MC33884监测系统中使用的多个外部开关的开/关状态。该器件提供开关触点的上拉和下拉电流,同时监测输入电压电平。所有输入电路都能防止输入端使用的静态放电电容引起的瞬态。

MC33884可运行在以下4种模式中的一种:睡眠、正常、轮询和轮询+INT定时器。所有工作模式都可以通过SPI控制进行编程,SPI命令的响应将返回开关状态和模式设置。

该模块使用4个可编程开关到地或电池感应输入,以及每个MC33884的4个开关到地的感应输入。板上的MC33884以并行方式配置使用。

b.输出模块

板上的2个低端电源开关MC33298能使MCU直接控制各种感性或白热负载。板上的器件也可通过SPI控制进行编程,并以并行配置方式使用。SPI命令的响应将返回器件输出开关的状态。发光二极管D1到D16也反映器件的输出开关状态。LED闪烁表示开状态。

应用介绍

设计工业CAN I/O板样板的目的是要展示模块在利用CAN连接性的主要特性。对于msCAN外设模块来说,msCAN驱动程序软件已成功用来创建初始化和可读性更高的应用例程,而总的循环时间能够得到显著减少。

表1:所有的事件描述

基于MC9S12DP256微控制器和芯片实现工业CAN I/O模块的设计

责任编辑:gt


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    7547

    浏览量

    151326
  • 芯片
    +关注

    关注

    455

    文章

    50732

    浏览量

    423247
  • CAN
    CAN
    +关注

    关注

    57

    文章

    2744

    浏览量

    463630
收藏 人收藏

    评论

    相关推荐

    基于MC9S12DP256微控制器的发动机高能直接点火控制系统开发

    [2]。本文针对六缸车用发动机高能直接点火控制系统的开发,进行了以MC9S12DP256微控制器为核心的电子控制单元的软硬件系统设计。
    发表于 07-17 07:40

    具有I/O功能的用于MC9S08DZ60微控制器

    用于MC9S08DZ60微控制器的SEVB9S08DZ60,S08D系列评估板。 SEVB9S08DZ60评估板允许用户使用扩展的
    发表于 06-05 15:07

    MC9S12DP256具有哪些功能特点应用?

    MC9S12DP256的功能特点是什么?MC9S12DP256在汽车电子中的应用是什么?
    发表于 05-17 06:48

    HCS12微控制器MC9S12DP256使用指南 ppt

    HCS12微控制器MC9S12DP256 第一步: 1) HCS12 技术概述2) Operating Modes工作模式3) Resource  Mapping资源映射
    发表于 01-11 18:00 79次下载

    基于MC9S12DP256的AMT系统的设计

    AMT(机械式自动变速)是在机械式变速的基础上发展起来的一种自动变速,文章对其工作原理及结构组成进行了简要介绍,并且完成了以MC9S12DP256
    发表于 07-13 17:44 47次下载

    基于MC9S12微控制器的发动机高能直接点火控制

    摘要:发动机高能直接点火系统需按点火顺序、点火时刻和点火能量的要求实现各点火线圈的独立控制。介绍了以MC9S12DP256微控制器为核心的电子
    发表于 03-11 11:47 1544次阅读
    基于<b class='flag-5'>MC9S12</b><b class='flag-5'>微控制器</b>的发动机高能直接点火<b class='flag-5'>控制</b>

    基于MC9S12DP256的轿车ABS/ASR集成控制系统

    ]摘 要:介绍了基于Motorola公司新一代HSC12系列16位MCU——MC9S12DP256微处理开发的轿车ABS/ASR集成
    发表于 04-15 16:35 776次阅读
    基于<b class='flag-5'>MC9S12DP256</b>的轿车ABS/ASR集成<b class='flag-5'>控制</b>系统

    MC9S12XSl28微控制器的智能车硬件设计

    MC9S12XSl28微控制器的智能车硬件设计   以“飞思卡尔”杯智能车大赛为研究背景,采用MC9S12XSl28作为核心处理,通过对比各个
    发表于 04-12 15:28 2053次阅读
    <b class='flag-5'>MC9S12</b>XSl28<b class='flag-5'>微控制器</b>的智能车硬件设计

    基于MC9S12DP256 微处理的轿车集成电控系统

    本文论述了基于 MC9S12DP256 微处理开发的轿车 ABS/ASR/ACC 集成电控系统。进行了 ABS、ASR、ACC 控制系统集成的尝试,着重描述了如何实现电子
    发表于 09-08 14:40 10次下载
    基于<b class='flag-5'>MC9S12DP256</b> 微处理<b class='flag-5'>器</b>的轿车集成电控系统

    MC9S12G优化的汽车16位微控制器的数据手册和参考手册免费下载

    MC9S12G系列是一款优化的汽车16位微控制器产品线,专注于低成本、高性能和低针数。该系列旨在连接高端8位微控制器和高性能16位微控制器,如MC9
    发表于 08-27 16:36 79次下载
    <b class='flag-5'>MC9S12</b>G优化的汽车16位<b class='flag-5'>微控制器</b>的数据手册和参考手册免费下载

    摩托罗拉MC9S12DP256单片机结构、功能特点及在汽车领域的应用分析

    介绍了摩托罗拉16位单片机MC9S12DP256的结构、特点及其区别于其它单片机的优势。通过MC0S12DP256在汽车电子门控汽车电子系统的应用实例,简单介绍了MC9S12DP256单片机在汽车电子领域的应用方法。
    发表于 04-06 10:37 3877次阅读
    摩托罗拉<b class='flag-5'>MC9S12DP256</b>单片机结构、功能特点及在汽车领域的应用分析

    基于MC9S12DP256芯片和μC/OS-II实现CCP软件的设计

    CCP 协议是一种CAN 总线标定匹配协议。本文简单介绍该协议的基本原理,以及一种基于该协议的汽车ECU 标定系统的实现方法。最后,结合MC9S12DP256 芯片以及μC/OS-II
    的头像 发表于 04-12 09:57 2843次阅读
    基于<b class='flag-5'>MC9S12DP256</b><b class='flag-5'>芯片</b>和μC/OS-II<b class='flag-5'>实现</b>CCP软件的设计

    用于 NEC 电子微控制器的电机控制 I/O 板、MC-IO 板

    用于 NEC 电子微控制器的电机控制 I/O 板、MC-IO 板
    发表于 05-06 18:29 0次下载
    用于 NEC 电子<b class='flag-5'>微控制器</b>的电机<b class='flag-5'>控制</b> <b class='flag-5'>I</b>/<b class='flag-5'>O</b> 板、<b class='flag-5'>MC</b>-IO 板

    用于 NEC 电子微控制器的电机控制 I/O 板、MC-IO 板

    用于 NEC 电子微控制器的电机控制 I/O 板、MC-IO 板
    发表于 06-26 20:15 2次下载
    用于 NEC 电子<b class='flag-5'>微控制器</b>的电机<b class='flag-5'>控制</b> <b class='flag-5'>I</b>/<b class='flag-5'>O</b> 板、<b class='flag-5'>MC</b>-IO 板

    基于MC9S12DP256微控制器芯片实现工业CAN I/O模块的设计

    另外,该模块可以用于用户软件的实现和测试。基于这一目的,电路板需要配备重新编程和调试用的后台调试模式(BDM)接口。工业CAN I/
    的头像 发表于 07-23 14:55 660次阅读
    基于<b class='flag-5'>MC9S12DP256</b><b class='flag-5'>微控制器</b>和<b class='flag-5'>芯片</b><b class='flag-5'>实现</b><b class='flag-5'>工业</b><b class='flag-5'>CAN</b> <b class='flag-5'>I</b>/<b class='flag-5'>O</b><b class='flag-5'>模块</b>的设计