电气工程硕士论文

您当前的位置:学术堂 > 毕业论文 > 在职硕士论文 > 工程硕士论文 > 电气工程硕士论文 >

控制系统主控芯片的选择

来源:学术堂 作者:姚老师
发布于:2017-01-06 共4059字
  本篇论文快速导航:

展开更多

  第三章 汽车复合电源控制系统硬件设计

  3.1 硬件总体设计。

  考虑到燃料汽车发动机控制器是一种车载实际系统,而且每一个模块的信号量不是太多,如果每一个模块都用一个MCU进行管理,整个控制系统就会显得很臃肿,综合全面考虑各种实际因素,决定采用集中式设计方案对燃料电池发动机控制系统进行设计和实现。集中式设计方案是将各单独的子控MCU的输入输出信号点对点的都连接到一块MCU进行信息管理和数据交换。并把所有的信号处理和控制策略融于一体,所有的模块之间可以直接进行数据交换,调试方便[29].

  以下面是燃料电池发动机硬件系统框图。

  对控制系统来说,所有的传感器信号都要转化成电信号的形式输入,同时所有要控制的对象也是通过电信号来控制的。根据电信号的形式将所有要采集和控制的信号划分成模数转换模块、脉宽调制模块、数字输入输出模块、捕获单元模块、CAN接口模块这几个部分。整个系统的通讯系统分为和整车智能控制的CAN通讯和PC机通讯的RS232模块。

  3.2 主控芯片的选择。

  燃料电池对安全性要求较高,希望燃料电池发动机控制器能够具有高速处理信号的能力,能够时实响应,所以使用Freesale16位单片机MC9S12DG128B,主要功能是完成采集信号的处理和控制信号的输出。Freescale16位单片机MC9S12DG128B作为MCU,该系统单片机可靠性高,抗干扰能力强,工作频率最高达到25MHz,从而保障了系统的实时性。

  Freescale 公 司 推 出 的 S12 系 列 单 片 机 中 具 有 增 强 型 的 16 位 单 片 机MC9S12DG128B,该系列单片机在汽车电子领域有着广泛的应用。S12系列单片机的中央处理器CPU12由以下三部分组成:算术逻辑单元ALU,控制单元和寄存器组。CPU外部总线频率为8MHz或者16MHz,通过内部锁相环((PLL)设定,可以使内部总线速度可以达到25MHz.寻址方式有16种。内部寄存器组中的寄存器,堆栈指针和变址寄存器均为16位。它具有很强的高级语言支持功能。CPU12的累加器A和B是8位的,也可以组成16位累加器D[30].

  CPU12的寄存器组包括如下5个部分:

  (1)8位累加器A,B或16位的累加器D.

  (2)16位寻址寄存器X和Y是用来处理操作数的地址。可分别用于源地址,目的地址的指针型变量运算。

  (3)堆栈指针SP是16位寄存器。

  (4)程序计数器PC是16位寄存器,它表示下一条指令或下一个操作数的地址。

  (5)条件码寄存器CCR.

  3.3.1 单片机 MC9S12DG128B 的内部资源。

  MC9S12DG128B作为S12系列的一种,内部资源非常丰富,简要介绍如下:

  (1)时钟和复位模块-PLL(锁相环频率合成器)-COP看门狗-时钟监控(2)存储器-128KBFlashEEPROM-2KBEEPROM-8KBRAM(3)两个8路A/D转换器-10位精度-具有外部触发转换功能(4)增强型捕捉定时器-16位主计数器,7位分频系数-8个输入捕捉通道或输出比较通道-2个8位或1个16位脉冲计数器(5)8路PWM通道-可编程周期以及占空-8位8路/16位4路PWM-独立控制各路PWM的周期和占空比-中间对齐和左对齐输出-频率范围宽的可编程时钟选择逻辑-紧急时刻快速关闭输出(6)串行接口-两个异步串行通信接口模块SCI-1个IIC总线接口-2个同步串行外设接口SPI(7)3个1Mb/s,CAN2.0A,CAN2.0B兼容模块(8)SAEJ1850网络通讯口MC9S12DG128B的结构框图如图3.2所示。

  MC9S12DG128B支持在线编程,即在线写入,擦除,在线下载程序。在线编程的基本原理是,单片机片内的CPU有能力对片内Flash进行写入,擦除操作,用户需以某种方式,一般为串行地将命令和数据传送给单片机就可以了,单片机的编程接口除完成Flash写入,擦除功能外,还可用于应用程序的调试,甚至可以在应用程序中运行时,动态地获取CPU寄存器的值,存储器等的瞬态信息,这就是所谓的BDM(BackgroundDebugMode)调试方式。除此之外,可以先通过BDM把监控程序写入Flash,然后可以脱离BDM,通过RS232下载程序,调试等。

  3.2.2 单片机 MC9S12DG128B 的最小硬件系统。

  虽然单片机将CPU,ROM,RAM以及I/O统一集成在一个集成电路芯片中,但仍需要一些外部电路的支持,这些外围电路主要为单片机系统提供电源、时钟,I/O驱动、通信口等,让单片机"活"起来,这个最小系统,即人要能够与单片机通信(一般是通过串行口或BDM电缆等来实现),包括发命令给单片机,下载程序,调试程序等。有了这些基本环境,就可以调试单片机的硬件系统了,在硬件没有问题的基本条件下才谈得上软件开发。最小系统也称为开发板,可以分为以下几个部分:

  (1)供电电路。

  开发板的供电是靠外部+5V电源,通过外部电源提供的,实际上,单片机I/O模块的供电多数采用+5V,单片机的CPU速度越来越快,CPU的供电电压也越来越低,一般采用3.3V,2.5V甚至更低的工作电压。S12单片机片内使用2.5V电压,片外I/O使用5V电压,较低的片内电压使CPU运算速度快,功耗低;较高的I/O电平有利于抗外界干扰,所以S12单片机特别适合于那些工作环境恶劣的控制系统。

  由于S12单片机内部集成了电压调整器模块,电压调整器模块产生单片机内部需要的其他电压,因此只要向S12单片机提供+5V外部电源就可以了。为了稳定这些不同的电压,需要外接一些电容,这些电容有两类,电容值比较大的如luF,l0uF等称为储能电容,储能电容消除吞吐数字电路1变0,0变1,即三极管导通、截止时的电流变化;另一类电容值较小的电容如0.luF,0.01uF的称为去耦电容,去掉单片机运行产生的高频躁声。

  (2)时钟电路。

  主要由石英晶体振荡器和一些电容、电阻组成,虽然单片机可以由集成到单片机内部的RC振荡器产生单片机工作需要的时钟,但这种简单的时钟电路频率的稳定性得不到保证,不如使用外部晶振来得稳定;速度很快的单片机往往使用片内集成的压控振荡器(VCO)产生的高频振荡作为系统时钟,但VCO也需要外部晶振提供稳定的频率来锁定起振荡频率。其外部晶振电路有两种接线方式,一种是串联振荡电路,另一种是并联振荡电路。在燃料电池控制器的主板设计中,采用并联振荡电路。

  (3)复位电路。

  虽然单片机片内集成有上电复位电路,单片机上电时可自动产生复位信号,但加上一个手动复位按钮会给调试带来方便。外部复位电路可以使用简单的按钮加阻容电路,也可以加专门的复位芯片。在该控制系统主板设计中,采取按钮加阻容电路[33].

  这里要强调的是,在该电路中,电容 C3的大小不能太大,可以选择 0.0luf,甚至也可以不用这个电容,直接开路,在这里画出这个电容的原因,就是为了给读者一点提示,在 51 单片机复位电路上这个电容可选 l0uF,但是在 FreescaleS12系列单片机的复位电路上这个电容却不能那么大。因为 C3过大的话,会导致单片机无法进入 BDM 工作模式。为了说明这个问题,下面具体介绍单片机进入BDM 工作模式的整个过程。

  FreescaleS12的工作模式的确立是由MODA,MODB,MODC的输入电平状态来确定的,在复位的时候,复位信号上升沿锁存MODA、MODB、MODC等引脚上的输入电平状态到运行模式寄存器(ModeRegister)中的相应位,随后单片机便进入相应的工作模式,单片机进入BDM工作模式相关管脚的状态:MODA=0,MODB=0,MODC=0,在开发板上,MODA,MODB的状态是由跳线来确定的,一般情况下,MODA,MODB的状态都跳到低电平,MODC的状态是由BKGD管脚的状态来确定的,在单片机BDM模式下,上位机是通过BDM主机与目标机通讯的,BDM主机的一个I/O端口控制目标机的BKGD,另外一个端口用于产生目标机的复位信号,它的工作原理是:BDM主机通过控制I/O端口首先将目标机的BKGD端口拉低,然后给目标机的复位端加低电平,即给目标机复位(复位信号是由低电平到高电平的上升沿)。这样,目标机通过复位信号把MODA=0,MODB=0,MODC(BKGD)=0状态读入运行模式寄存器。目标机就可以进入BDM工作方式,时序图如图3.4(a)所示。

  如果电容C3选的过大的话,由上面介绍的进入BDM的时序可知,目标机就可能无法进入BDM方式。因为当BDM主机将目标机的复位端从拉低到放开的过程中,根据RC充放电路的知识可知,C3过大会导致复位端的上升沿变化的非常缓慢,由于复位信号的滞后,此时目标机锁存的BKGD可能已不是低电平,目标机也就无法进入BDM方式。

  (4)RS232驱动电路。

  RS232驱动电路提供TTL到RS232电平的电平转换。单片机可以利用异步串行通信协议同PC通信。RS232电平转换芯片可以实现TTL电平与RS232电平之间的转换,然后再通过9芯串行口和PC进行串口通信。在控制系统中,上位机可以通过RS232向控制主板下载程序。

  (5)BDM调试接口。

  当单片机进入BDM模式后,上位机可以通过BDM接口向单片机下载程序,进行在线调试。BDM方式也是单片机最根本的调试方式,因为上位机要想通过RS232向单片机下载程序,必须首先要通过BDM方式向单片机的Flash中下载监控程序。BDM接口通信示意图。

  从上面分析也可以看出来,通过上位机向单片机写程序有两种方式,一种是BDM 方式,另一种就是 RS232 方式。

  (6)调试显示。

  在单片机的某个I/O接口上装上一些二极管对最小系统的调试很有用,将调试用的发光二极管接在PORTK口上,虽然这部分并不是最小系统必需的。另外,把单片机的所有I/O都引出来,这样方便单片机与外界电路的联接。

  (7)单片机模式选择模块FreescaleMCS12系列单片机一共有两种工作丰式,分别是单片运行模式和扩展运行模式。单片运行模式是MCS12单片机最常见的一种运行模式,单片运行模式又分为普通单片模式和特殊单片模式。普通单片模式是正常运行应用程序时应使用的模式,特殊单片模式是指BDM调试模式。扩展运行模式允许通过CPU外部总线扩展RAM,Flash,I/O等。

  工作模式的确立是由MODA,MODB,MODC的输入电平状态来确定的,在复位的时候,复位信号上升沿锁存MODA,MODB,MODC等引脚上的输入电平状态到运行模式寄存器(MocRegister)中的相应位,随后单片机便进入相应的工作模式。因为MC9S12DG128B有足够的存储器资源,所以在此系统中只需要工作在单片运行模式。要使单片机工作在单片方式,MODA和MODB都跳线到低电平。

  然后当MODC(BKGD)为低电平时,就进入特殊单片模式,当MODC(BKGD)为高电平的时候就进入一般单片模式。通常,当单片机输入引脚浮空时,CPU默认高电平,BKGD引脚上的低电平是由BDM调试工具的相应引脚提供的。所以可理解为,当插上BDM头时,可进入特殊单片模式当不插BDM头时,自动进入普通单片模式。

返回本篇论文导航
相关内容推荐
相关标签:
返回:电气工程硕士论文