当前位置:首页 > 嵌入式 > 嵌入式硬件


从8位单片机诞生至今,已近30年,由于芯片技术的发展使得单片机处理速度越来越快。 MPU发展中表现出来的速度是以时钟频率越来越高为标志的,而单片机则有所不同,为提高单片机抗干扰能力,降低噪声,降低时钟频率而不牺牲运算速度是单片机技术发展的追求。一些8051单片机兼容厂商改善了单片机的内部时序,在不提高时钟频率的条件下,使运算速度提高了很多,Motorola单片机则使用了锁相环技术或内部倍频技术使内部总线速度大大高于时钟产生器的频率。 例如MC68HC08单片机使用4.9 MHz外部振荡器而内部时钟达32 MHz,而M68K系列32位单片机使用32 kHz的外部振荡器频率可实现内部时钟达16 MHz以上。Motorola单片机突出的特点之一是在同样速度下所用的时钟频率较Intel类单片机低很多,因而使得高频噪声低,抗干扰能力强,更适合用于工控领域及恶劣的环境。而作为8位单片机家族中的一员,MC68HC908KX2提供了ICG(内部时钟发生器)模块,无需外接任何时钟产生器件的情况下,通过软件设置即可实现所需的时钟信号。

1 ICG模块的特点及设置方法

在无需任何外部元件情况下,MC68HC908KX2芯片的ICG模块能够给微控制器提供稳定的时钟源,ICG模块通过CGMXCLK引脚为系统监控模块、低电压禁止模块和其他模块提供振荡时钟输出。ICG模块产生的时钟信号也提供给系统集成模块,用于产生总线时钟。此外,ICG模块还产生时基时钟,该信号被用于时基模块。

1.1 ICG模块的特点

a) 可选的外部时钟信号发生器,一个引脚接外部时钟源或两个引脚接晶振,端口引脚可实现多路转换。

b) ICG以正常频率(307.2±25%)kHz的整数倍输出可编程的频率。

c) 频率调整寄存器可以2%变化量对频率进行调整。

d) 总线时钟通过软件选择内部或外部时钟源,总线频率范围是:(76.8±25%)kHz~(9.75±25%)MHz,增加率为76.8 kHz。

e) 对内部和外部时钟源都可实现时钟监控。

1.2 ICG模块的设置方法

ICG模块通过设置可产生(307.2±25%)kHz的低频时基时钟信号IBASE,然后通过设定ICG模块的频率倍数寄存器(ICGMR)的数值,得到系统所需的时钟信号ICLK。

使用内部时钟模块通过以下步骤进行:

1) 转换时钟源

在两个时钟源都处于使能和稳定状态时,可以从一个时钟源转到另一个时钟源。转换过程为:使能所要采用的时钟源;等待该时钟源稳定;转换时钟;禁止前一个时钟源。该实现过程的汇编代码为(以从内部时钟源转到外部为例):

2) 使能时钟监控电路

在许多应用中,需要时钟监控电路在某个时钟源未激活的状态下通知系统自动使用另一个已经激活的时钟源,避免使系统运行发生故障。使用时钟监控模块的前提是ECGON和ICGON位都置1,其设置过程为:使能可用的时钟源;等待两个时钟源稳定;如果需要,转换时钟源;使能时钟监控;使能时钟监控中断。具体实现的代码如下:

3) 量化数控振荡器的误差

数控振荡器主要包括二进制权值分配器、可变延迟时间的振荡环、振荡环精确调整电路3个子模块。以上每个模块都影响内部时钟的时钟周期,因为这些模块受数字滤波器的输出寄存器DDIV和DSTG的控制。通过对这两个寄存器的设置,可实现对输出时钟信号ICLK的值进行相应的调整。

4) 改变内部时钟频率

某些情况下可能需要改变内部时钟频率。例如,如果系统复位时不能提供正确的频率,或者在低电压模式下系统时钟变慢,必须通过变程修改内部时钟倍频因子N的值改变内部时钟的频率。这时需注意,改变内部时钟频率之前必须先禁止时钟监控模块。改变内部时钟频率的步骤如下:通过读CMF位的值确定是否存在时钟监控中断;关闭时钟监控模块;如果需要,转换到外部时钟源;改变N值;如果需要,转换回到内部始时钟源;如果需要,打开时钟监控模块。

5) 开始正确频率设置的时间

由于ICLK的值取决于DCO的输出值,当某些操作条件发生改变时,内部时钟不能马上稳定下来,ICLK将暂时以不正确的时钟工作。ICLK需要一定的调整时间才能达到正确时钟周期。达到正确时钟周期所需要的时间为:

式中:τ1,τ2分别为调整前、后的时钟周期值,令τ15=|44N(τ1-τ2)| ,则常见的时钟周期调整表见表1。

6) 调整内部时钟发生器的频率

由于数据处理、电压和温度等原因未经过调整的低频时基时钟信号IBASE将会发生±25%的频率波动,通过改变内部时钟电路的比较电容器的值可以将频率波动值限定在±2%的范围内。设置TRIM寄存器的值就可以改变比较电容器的值,TRIM寄存器的默认值是$80即128个单位,对应的默认电容值为512,每增加或减少1个单位,可对未调整频率实现±0.195%的调整。

2 宝马汽车故障诊断与复位子系统设计

由于本系统检测范围包括对宝马汽车大部分部件的检测及故障恢复,整个系统构成较复杂,因此,在本文中为了说明MC68HC68HC908KX2单片机ICG模块的应用,选择本系统的一个子系统加以说明。

2.1 硬件设计

本子系统实现的功能为机油保养归零、气囊故障修复及运行时间归零。硬件主控电路如图1所示。

控制核心采用8位单片机MC68HC908KX2芯片,通过串行接口线与汽车内的CPU进行通信,并用通用I/O口PTA和PTB分别实现键盘输入和输出显示功能。由于该单片机采用5 V供电,而汽车电路工作电压为12 V,所以本子系统需要设计专门的接口电路实现与汽车的通信,电路见图2。图中,RXD和TXD分别连接单片机的串行输入与输出端,汽车的串行输入、输出数据通过单K线传送给单片机。

2.2 软件设计

利用指令不断扫描键盘接口线(PTA1,PTA2),若按下的是通信键则从固定存储区取固定的oil resct编码发送出去,同时在发送数据期间通信指示灯不停闪烁3 s,如果按下的是功能选择键,则time inspection,odo inspection,oil reset指示灯依次循环点亮,选择相应功能,等待通信键按下,如果按下了通信键,就发送相应清故障数据。

在程序中,根据本系统的实际需要设置:ICGCR、ICGMR、ICGTR及系统配置寄存器CONFIG的值。系统主要源代码为:

3 结束语

本文介绍了新型单片机芯片MC68HC908KX2内部时钟模块在宝马汽车诊断控制系统中的应用,由于采用了内部时钟模块,省略了外部时钟电路,从而大大简化了系统的硬件设计。实践证明,在恶劣电磁环境中系统工作正常,抗干扰性能力得到很大提高,测得的汽车故障代码数据准确可靠。

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

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭