基于双单片机的信号处理系统设计
、P2.2端。该系统设计仅使用单片机AT89S51的外部RAM,因此不存在片选问题。这里采用线选法,P2.3直接与CY7C132的CS相连。
另外,基于以下原因,单片机1与单片机2使用了不同频率的外部晶振:1)单片机AT89S51支持的频率有限,被选择的晶振频率必须符合要求;2)由于AT89S51使用机器周期作为其工作基准,在使用外部振荡电路的情况下,该单片机是以晶振频率除以12得到的数值作为机器周期,所以在单片机1需要定时器的情况下,晶振频率要便于定时器的设置;3)单片机2需要和计算机进行串口通信,晶振频率要便于串口通信中波特率的设置。因此,单片机1与单片机2的晶振频率分别选择了12 MHz和11.059 2 MHz。
3 系统软件设计
该系统软件设计使用的是汇编语言。汇编语言的优点是:编写的程序存储空间小,运行速度快,程序效率高。另外,汇编语言编写的程序能直接管理和控制硬件设备。汇编语言编写的程序并不能直接为单片机所使用,必须使用编译器编译。本系统使用Keil C5l V7.09评估版。
3.1 单片机主程序
单片机1使用内部RAM的20H.1作为A/D转换标志位,当标志位被置1时,主程序中的A/D转换子程序不会运行;当该标志位被置0时,A/D转换子程序才可以执行。单片机1的主程序执行过程,见图3(a)。单片机2用内部RAM的20H.1作为程序启动标志位,当标志位被置1时,主程序不会运行;当该标志位被置0时,主程序才可以执行。在主程序开始运行后,从外部数据寄存器中读入数据,然后关闭串口中断,通过查询方式向串口写入数据,然后再打开串口中断。单片机2的主程序执行过程,见图3(b)。
图3 主程序流程图
3.2 数字滤波子程序
算术平均值滤波的原理是对于连续采样的n个数据,寻找一个数值y(k),使该值与采样值之间误差的平方和最小。
对一元函数求极值的平均值滤波公式,得
式中,y(k)是第k次采样时,N个采样值的平均值,X(i)是第i次采样值。
算术平均值滤波适用于被测信号在某一数字范围附近作上下波动的场合。该方法将干扰的影响平摊到每个测量值。采样数n决定了抗干扰的能力,n越大,抗干扰性能越好,但是,n值过大,系统的灵敏度会降低。算术平均值滤波对周期性干扰有较好的抑制作用,但对脉冲性干扰作用不大。
中值滤波算法是对某一被测参数连续采样n次(一般n取奇数)。n次采样值按照大小排列,取中间值作为本次采样值。中值滤波算法能有效克服因偶然因素引起的波动干扰。对于温度、液体表面等变化缓慢的被测参数,能收到良好的滤波效果。中值滤波子程序和算术平均值滤波子程序流程见图4。
4 实验数据
在实验过程中,测试平台的辅助工具包括,可提供±5 V输出的WJ7103型直流稳压电源,美国Tektronic公司的AFG3021型函数发生器。首先,信号函数发生器产生直流信号通过信号处理单元电路板被传输到工控机;其次,被测数据通过串口助手显示并以文本格式(txt)存储在工控机中;最后,被测数据通过MATLAB软件以分别以图像的形式显示和十进制数的格式记录。
在0 V信号输入的条件下,信号处理单元的采样结果(随机取样1 000次)见图5。图中的(1)(2)(3)分别表示单片机1在没有使用数字滤波算法,采用中值滤波算法和算术平均值滤波算法的条件下得到的输出结果。在理想情况下,采样值应该是0,而记录的采样结果与理想值存在误差。
在2 V信号输入的条件下,信号处理单元的采样结果(随机取样1 000次)见图6。图中的(1)(2)(3)分别表示单片机1在没有使用数字滤波算法,采用中值滤波算法和算术平均值滤波算法的条件下得到的输出结果。采样结果中,在理想情况下,采样值应该是102。
图6 2V直流信号输入采样结果
通过对两种不同条件下采样结果的分析可得到结论:在使用滤波算法的条件下,检测系统的采样结果会更集中在理想值附近,但采样结果的误差并没有消除,而且该误差具有明显的随机性。根据误差理论,该类误差应属于未定系统误差。
根据表1可知。在使用算术平均值滤波算法的情况下,可以提高信号处理单元采样结果的精度。因此,使用算术平均值滤波算法作为单片机的数字滤波算法。
将该系统用于液面探测系统的信号处理,以验证该系统的可行性。在理想状态下,液位信号将按照线性的规律变化。另外,根据液位检测原理设计的电容检测电路也以线性规律反映电容值与电压值之间的关系。因此,线性规律变化的信号是检测系统的测试的重要指标。
在使用函数发生器模拟线性变化信号的条件下,函数发生器按照如下方式设置:锯齿波的输出,上升区间占100%,输出频率为1 Hz,下偏移为0 V,Vp-p为2 V。信号处理单元的采样频率设詈
- 基于SoC的实时信号处理系统中存储系统(09-17)
- 多维信号与系统处理解析 (07-10)
- 基于DSP无刷电动机控制系统设计(09-11)
- 基于CAN总线的智能照明控制系统(09-28)
- USB接口芯片的原理及应用 (04-15)
- 基于GPRS的远程心电实时监护终端(02-10)