新闻中心

EEPW首页>汽车电子>设计应用> 基于DSP的汽车减震弹簧故障诊断仪的设计

基于DSP的汽车减震弹簧故障诊断仪的设计

作者: 时间:2009-11-11 来源:网络 收藏

  2.2 DSP电路

  DSP电路完成数据采集及数字滤波,利用内置的算法完成等任务。

  本系统中的DSP采用美国德州仪器公司(TI)生产的TMS320VC5409,它是TMS320C54xx系列的一个高速、高性价比、低功耗的16位定点通用DSP芯片。其主要特点包括:改进的哈佛结构(1条程序存储器总线、3条数据存储器总线和4条地址总线),带有专用硬件逻辑CPU,片内存储器,6级流水线结构,片内外设专用的指令集。TMS320VC5409含16K字的片内ROM和32K字的片内DARAM,程序空间的寻址范围达到8M数据和I/O空间寻址范围分别为64K。单周期指令执行时间为10ns,双电源(1.8V和3.3V)供电,带有符合IEEE1149.1标准的JTAG边界扫描仿真逻辑。
DSP电路采用16位并行自引导模式,对于TMS320VC5409,用户程序存储在外部数据空间(8000H~FFFFH)中,因此外扩了一片FLASH ROM作为数据存储空间。FLASHROM采用INTEL公司的TE28F400B3T90(256K×16),它共分为15块(8块4K字,7块32K字),可单独擦写其中的一块。编程电压只需3.3V,最快的读取速度达到90ns。系统外扩了一片SRAM作为外部程序空间。SRAM采用CYPRESS公司的CY7C1041BV33(256K×16),存取速度达到10ns。

   2.3 A/D转换电路

  信号的采集和转换是由AD7874完成的。AD7874是AD公司生产的12位A/D转换器。系统要求输入输出信号相位要同步,AD7874内置采样保持器,能够实现四路信号的同步采样。同步采样能使系统的输入输出信号相位匹配的误差降到最小。A/D转换的启动由上升沿触发,四路信号转换完成后,产生中断信号。每一路的采样频率可达29kHz。由于A/D转换后输出的是TTL电平,而DSP工作在3.3V的信号环境,因此在A/D的输出与DSP的输入之间需要加入电平转换电路。在本系统中采用SN74LVC245实现电平转换。DSP系统的供电由TI公司的电压转换模块TPS767D318PWP完成,能够输出3.3V和1.8V两路电压。

  2.4 单片机电路

  单片机电路实现键盘输入响应和液晶显示以及与PC机交互功能。

  本系统中所用的单片机为ATMEL公司的AT89C51。键盘管理通过键盘控制器8279完成。液晶模块选用信利公司的VPG12864T(128×64点阵),它内置T6963C控制器,能够工作在文本或图形模式下。液晶显示界面程序比较 大,所以外扩了一片AT28C256作为外部程序存储器。PC机的RS-232串口的电平和单片机串口的TTL电平不兼容,使用MAX232完成两种电平之间的转换。

  2.5 通信电路

  通信电路实现单片机与DSP的通信。由于单片机与DSP间的数据通信量不大,因此采用了一片8位双向锁存器实现数据交换。双向锁存器采用TI的SN74LVC543。当DSP向AT89C51发送数据时,首先将数据锁存在SN74LVC543中,然后向AT89C51发中断,AT89C51响应中断,从锁存器中取走数据。反之亦然。

  3 软件设计

  软件的设计主要包括DSP编程和单片机编程。DSP程序的主要任务是初始化、管理DSP外围电路和完成的算法。单片机程序包括键盘控制程序、液晶驱动显示程序、与DSP及PC机通信的程序。

  3.1 DSP主程序

  DSP主程序流程图见图2。

DSP主程序流程图

  3.2 DSP程序的下载和引导

  在本系统中,FLASHROM是TSOP封装,焊接在电路板上,无法通过烧录器烧写,只能自己编写擦写程序。按照16位并行引导模式自举表(见表1)的格式写好程序代码,编译链接后通过JTAG口下载到DSP中;编写TE28F400B3的擦写程序,将程序下载到DSP中不同的位置。运行擦写程序,程序代码就被写入到FLASH中。要注意的是,由于FLASH的写速度与DSP相比很慢,因此在每次写完一个字后,要延时足够的时间,否则就不能正常地写入下一个字。写完后,需要将FLASHROM重新设置为读模式,这样才能在开发环境CCS中看到正确的结果。TE28F400B3的最大读取速度为90ns,而TMS320VC5409最大只能设置7个等待状态,因此设置DSP的CLKMD1、CLKMD2、CLKMD3管脚,使DSP在上电复位时的系统时钟为50MHz。这样就能保证可靠地读取FLASH的数据。在完成引导过程后,必须首先将CLKMD寄存器清零,然后重新设置CLKMD寄存器,使系统时钟为100MHz。 TE28F400B3的主要操作命令如表2所示。



评论


相关推荐

技术专区

关闭