基于DSP的嵌入式温度记录仪的设计
温度采集与控制技术是测量、控制系统的重要组成部分.传统的模拟传感测量温度系统测量精度低、布线复杂,易受干扰.而新型单片数字式温度传感器测量精度高、抗干扰能力强,应用广泛。这里提出一种基于DSP的嵌入式温度记录仪的设计方案。该系统设计采用TMS320F2812型DSP,DS28EA00型1一Wire数字温度计为控制中心,采用带有USB接口的大容量U盘或SD卡作为存储介质,实现温度采集与数据存储。
2 系统设计方案
该系统设计主要包含DS28EA00测温、USB接口、SD卡接口、外扩RAM.TM$320F2812数字信号处理等模块。其中,TMS320F2812控制温度计DS28EA00顺序采集各测量点温度,经处理后暂存至外扩RAM,当满足特定条件后,通过USB接口将数据以文件形式存储到U盘或SD卡中,系统设计框图如图1所示。
3 系统硬件设计
3.1 DS28EA00测温模块
DS28EA00~是一款具有链路功能的l―Wire数字温度传感器,具有9~12位的分辨率,且带有用户可编程设置的非易失性温度报警阈值点。每个DS28EA00都具有工厂预先刻录的唯一64位序列号,只需一根数据线和地线就可通过1一Wire协议完成串行传输数据,支持15.3 Kb/s(最大值)的标准通信速率和125 Kb/s(最大值)的高速通信速率。改进的l―Wire接口具有滞回和干扰滤波功能,使得DS28EA00能够在大型1一Wire网络中可靠工作。
DS28EA00内部数据部分包括64位序列号、64位暂存器以及报警配置寄存器。1一Wire ROM功能控制单元处理ROM功能命令,允许器件工作在一个多点网络中。器件功能控制单元实现对器件的特定操作和控制,如读/写,温度转换,设置顺序检测的链路状态等。8 bit CRC生成器在读取温度和寄存器数据时可协助主机检验数据的完整性。顺序检测链路状态时,DSP的PIOB(XDO~XD7)作为输入,而PIOA(XA0~XAl8)与下一个器件连接,DS28EA00数字温度计的1-Wire总线接口与DSP的GPIO接口相连实现通信。DS28EA00测温模块电路如图2所示。
3.2 USB接口模块
USB接口模块采用嵌入式USB接口器件SL811HST,该器件内置USB主/从控制器,支持全速和低速数据传输,能自动识别低速或全速设备,SL811HST提供的接口可与微控制器、DSP相连。此外,SL811HST内部有一个256字节的RAM,用于控制寄存器或数据缓冲器。该系统中USB设备映射TMS320F2812外扩1区域,USB接口模块电路如图3所示。
3.3 SD卡接口模块
SD卡通过SPI口或并行(SD)接口与主机连接.另外DSP还提供额外引脚来检测卡的存在和写保护功能。SPI总线模式下,CS为主控制器向SD卡发送的片选信号,SCLK为主控制器向SD卡发送的时钟信号,DI(Data In)为主控制器向SD卡发送的单向数据信号,DO(Data Out)为SD卡向主控制器发送的单向数据信号。选择SD模式通信实现高速通信.采用GPIO接口满足特定的SD规范协议。
4 系统软件设计
系统软件设计主要包括DSP与DS28EA00的通信、DSP与SD卡的通信,DSP与USB设备的通信。
4.1 DSP与DS28EA00的通信
DS28EA00的链路功能允许1一Wire主机检索以线性网络“链”方式连接的器件.找出其物理顺序。链路功能需要输入和输出两个引脚,其中,输入引脚(EN)可使器件在检测时能对检测做出响应,而输出引脚(DONE)用于通知链路中的下一个器件其相邻器件的检测已完成。复用DS28EA00的两个通用端口实现链路功能,其中,PB作为EN输入,PA产生DONE信号并与下一个器件的EN输入相连,而第一个器件的EN输入需接至GND,或者在顺序检测时对其施加逻辑‘0’信号。
4.2 数据存储
4.2.1 U盘数据存储
DSP主要通过软件设计实现对USB移动存储设备的操作,而USB软件设计主要由通用的USB总线枚举部分,USBMass Storage类协议软件设计以及文件系统组成,U盘数据存储流程如图4所示。
4.2.2 SD卡数据存储
SD卡数据存储软件设计主要包括SD卡上电初始化和SD卡的读写操作。其工作步骤如下:(1)配置TMS320F2812的SPI接口,检测是否插入SD卡。为调试方便,将SD卡接口的Vse2引脚接地。(2)检测到SD卡,系统连续发送10次0xFF00使SD卡的Data In引脚状态保持至少74个时钟周期,实现系统上电初始化。(3)SD卡初始化,注意此时SPI接口的通信速度应为100~400 kHz以满足SD卡通信协议要求。(4)系统与SD卡通信,提高SPI接口的通信速率。图5给出SD卡数据存储流程图。
4.3 文件系统
为了便于处理采集到的数据,设计了一个兼容FATl6、FAT32文件格式的文件管理系统嘲,并将数据存储到U盘或SD卡中。文件系统数据分为:MBR区、DBR区、FAT区、DIR区和DATA区。由于SD卡不要求启动,因此文件系统可以只包含有DBR、FAT、DIR和DATlA区。这里以128 MB的U盘为例进行简单介绍,其文件系统结构如表l所示。
5 结语
由于USB接口存储设备和SD卡在数据采集系统中应用广泛,嵌入式数据采集环境中采用USB存储设备或SD卡可实现大容量数据存储,满足嵌入式技术发展要求。该系统设计经过反复测试表明:工作稳定,能快速读写U盘和SD卡中的存储数据,其速率约为300 KB/s。
评论