·上一文章:军事指挥系统中VxWorks下汉字显示技术
·下一文章:利用XPS工具快速生成Virtex FPGA的板级支持包
3 系统软件设计
气体浓度检测系统软件设计包括DSP初始化程序、中断向量表、应用程序(包括响应外部中断程序)、数据后处理程序。检测系统启动时首先运行内部ROM固化的Boot-Loader程序,将存储在FLASH中的程序代码加载到DSP内部RAM 中。程序首先是初始化系统,通过配置DSP内部寄存器,确定DSP具体的工作状态,然后是中断响应程序以及数据后处理程序。系统程序框图如图4所示,自相关运算在中断子程序中完成,为方便移植所有程序都采用结构化C语言完成。本检测系统在工作过程中,对每一频点采样4 092点,将每个频点采样值进行自相关运算,恢复出微弱信号,并计算该频率传感器响应幅度。前面已经证明在DSP内进行自相关运算可以用FFT来实现。
FFT算法中的倒序可以由DSP变址方便实现,整个推导过程由三重循环构成,外层的循环控制有M级的顺次运算(M=log2N),内层的两个循环一起控制同一级中各个碟型运算单元,最内层的一个循环控制为同一类型的碟型运算。本程序采用基-2时间碟型运算,碟型运算的计算关系为:
这里的X(M-1)(k)和X(M-1)(j)分别表示第M-1级中上节点和下节点的值,XM(k)和XM(j)分别为第M级中上节点和下节点的值,k是j的对偶节点,依据上述公式可以实现序列的同址运算。
4 结 语
实验证明,基于微气体传感器的气体浓度检测系统能有效地检测出传感器的微弱信号。系统以 Black-fin531为核心,结合DDS技术和自相关检测方法,硬件设计简单可靠,程序采用结构化的C语言,通用性和移植性好,易于DSP实现。系统很好地满足了气体浓度检测的需要,测量精度高,算法简单,可以用于氢气等多种气体的检测。