基于单片机的多参数测量仪设计
该电路将两路信号输入到电路接入端,再分别经限幅、滤波和整形处理,然后将得到的两路方波信号各自输入到单片机的两个捕获端口。
之后,在单片机中经过计算,即可得到脉宽以及周期,最终得到两个周期稳定的模拟输入信号之间的相位差。图6所示是其相位差波形图。
在图6中的两路相位不同的方波信号中,T1为信号1的上升沿到来时的时刻,T2为信号2上升沿到来时的时刻,如果可同时得到方波信号的周期T,则它们之间的相位差的理论计算公式为
这样,只需要得到这两路信号的上升沿时刻及其周期,便可计算出它们的相位差。
2 软件设计
2.1 主程序设计
本系统的主程序流程图如图7所示。本系统的主程序主要完成对时序的初始化及对显示界面的初始化,其中初始化包括对单片机的初始化和对接口芯片的初始化。首先是对单片机进行初始化,以设置时钟和必要的标志位以及变量初值;接着对显示器初始化,设置数据、地址传输端口;然后将按键选择程序开启,主要设置按键任务;最后对时钟A、B以及A/D转换进行初始化,设置必要的控制字和开中断。
2.2 定时器中断子程序设计
在该系统中,定时器A、B主要用来捕获方波以及定时。当中断开启时,应先判断中断请求寄存器TXIV的值,以判断该中断是由捕获引起还是由计数溢出引起,然后计算得到的频率值,并在预处理后返回到主程序中。
本系统中,对RC、频率以及相位差的测量都要利用单片机定时器的捕获功能来获取频率值。事实上,要获得方波信号的频率值,首先要在主程序中设置好时钟与定时器控制寄存器,然后开定时器中断程序。中断开启以后,定时器开始计数,当接收到方波的上升沿时,可存储该时刻的计数初值B,待下一次上升沿到来时,再存储该时刻的计数C,两次上升沿时刻之间的差值便是方波的周期。接着,经过短暂延时后重新测量,如此循环测量并计算最终结果。如果在两次上升沿捕获的过程中,计数器的计数值CCRx发生了溢出,则需要在中断程序中设置溢出次数变量Y,以在计算周期时将溢出值计算在内。
3 结束语
本文利用MSP430单片机设计的RLC、频率及相位差的测量仪,经测试证明,各项指标均可达到设计要求,并且具有精度高、体积小、性能稳定和操作简便等特点。
- 基于FPGA的DSP设计方法(08-26)
- 电力电子装置控制系统的DSP设计方案(04-08)
- 基于DSP Builder的VGA接口设计(04-10)
- 基于DSP和USB的高速数据采集与处理系统设计(05-01)
- 数字信号处理(DSP)应用系统中的低功耗设计(05-02)
- 基于DSP的嵌入式显微图像处理系统的设计(06-28)