基于LPC2104型CPU的汽车行驶记录仪
本记录仪采用带ARM7内核的LPC2104型CPU作为主控机,大容量闪速存储器作为存储载体,带有精确的时钟电路,利用高精度A/D转换器采集汽车传感器转换的模拟量,并直接记录汽车信号灯等的各种开关量。同时利用串口实现与微机的数据通信,把汽车行驶记录低度的信息以二进制文件的形式存储到硬盘上。

1 系统的硬件设计
系统的总体框架如图1所示。带ARM7内核的LPC2104型CPU是汽车行驶记录仪的核心,整个系统由信息采集模块、信息处理及存储模块和串口通信模块组成。
LPC2104是Philips公司生产的一款支持实时仿真和跟踪的ARM7TDMI-S CPU,内部集成有与片内存储器控制器接口的ARM7局部总线、与中断控制器接口的AMBA高性能总线(AHB)和连接片内外设功能的VLSI外设总线(VPB,ARM,AMBA总线的兼容超大规模集成电路),并嵌入了128KB高速Flash存储器。LPC2104将ARM7TDMI-S配置为小端(Iittle-endian)字节顺序,具有封装小、功耗低、多个32位定时器、多种总线接口及多达9个外部中断等优点,非常适合作为汽车行驶记录仪的主控CPU。同时,LPC2104还具有128位宽度的存储器接口和独特的加速结构,从而使得32位代码能够在最大时钟频率下运行。
2 信息采集模块设计
汽车行驶记录仪要求实时记录车辆行驶的各种状态信息,因此本系统将信息采集模块分为开关量数据采集模块、模拟量数据采集模块、时钟数据采集模块。

2.1 开关量数据采集模块
该模块利用74LS165型并行输入8位移位寄存器扩展16位并行输入口,其硬件电路如图2所示。其中利用LPC2104的3根I/O口线扩展为16位的输入口线,图中由2片74LS165串接扩展16位的输入线,CLK为时钟脉冲输入端,D0-D7为并行输入端,前级的数据输出端QH与后级的信号输入端SIN相连,S/L为低电平时,允许并行置入数据,S/L为高电平时允许串行移位。这样左右方向灯、前车灯、开门信号、刹车灯信号等16路开关量经过光电耦合器隔离后并行输入到2片74LS165中,再经74LS165转换后,串行输出给LPC2104进行处理。
2.2 模拟量数据采集模块
在进行模拟数据采集时,水温、水位等8路传感器采集的信号先经过模拟信号调理环节,将其整定在A/D转换器参考电压Vref决定的满量程输入电压信号以内,然后经过A/D转换器进行A/D转换。该模块采用美国德州仪器公司推出的TLC0838型8路8位逐次逼近型模、数转换器,采样频率为100kHz,与外部通信采用SPI总线接口。LPC2104通过其内嵌的SPI总线接口与TLC0838进行通信,其硬件电路如图3所示。其中SCK为SPI主机输入或从机输入的时钟,MOSI为SPI主机到从机的数据传输,MISO为SPI从机到主机的数据传输,SSEL为SPI从机选择。
评论