一种基于单片机的交流频率检测系统
出单元;
(4)不仅能捕获外部时间发生的时间,还可锁定外部时间发生时的高低电平,给我们的设计带来很大的方便;
(5)可以以硬件方式支持串行通信。
3 软件设计[7] [8] [9]
软件设计的任务主要是Timer A的初始化的设定,其软件采用C语言编程。Timer A工作在捕获方式时,当满足捕获条件(触发方式)时,硬件自动将计数器TAR中的数据写入捕获/比较寄存器CCR0。图8是系统软件流程图。
图8 系统软件流程图
在本系统中,定时器采用连续计数模式,捕获方式采用下降沿捕获。系统初始化包括系统频率fs的选择(1MHz)、Timer A的控制寄存器的设置,需要设置的寄存器为控制寄存器TACTL和捕获/比较控制寄存器CCTL0。Timer A中断函数在发生捕获时被触发,首先计算CCR0中的值与变量LastCCR0的差值,LastCCR0是上次捕获时记录的寄存器CCR0的值, CCR0的初始值为0。循环五次即被触发五次,五次的差值被保存在数组Timervalue[]中。考虑到计数器刚开始计数时信号不一定从零点开始,所以真正的计算应该从第二次触发开始,这样就能计算出四个脉冲周期,接着计算出平均脉冲周期,该平均周期便是所测交流信号的半周期,进而可以得出其频率。
4 结论
文中提出了一种过零检测电路,并按实际需要选取了相应参数的电子元件,同时利用MSP430单片机的脉冲捕获功能实现了交流信号频率的检测。该系统对低频交流信号频率的检测精度高、实时性强,具有一定的实际应用价值。同时本文介绍的过零检测电路其应用更加广泛,再利用MSP430单片机Timer A内部的捕获/比较器的多路PWM输出单元,便能实现一定的控制功能。
本文创新点:文中提出了一种测宽法的交流频率检测系统。该系统利用过零检测、MSP430单片机的脉冲捕获功能,较以往的频率检测系统直观、精度高、实时性强。
参考文献:
[1]马献果,频率测量方法的改进,仪器仪表学报,2004.8,25(4)增刊:120-122
[2]赵战克,单片机在移频信号频率检测中的应用,微计算机信息,2004,20(2):76-77
[3] Toshiba Corporation, Semiconductor Technical Data (4N25)
[4]胡大可,MSP430系列超低功耗16位单片机原理与应用,北京航空航天大学出社,2000.6
[5]魏小龙,MSP430系列单片机接口技术及系统设计实例,北京航空航天大学出社,2002.11
[6] 梁源,MSP430单片机TIMER_A在产品设计中的应用,2001嵌入式系统及单片机国际学术交流会论文集
[7]张晞,MSP430系列单片机实用C语言程序设计,人民邮电出版社,2005.9
[8] 刘立群,基于MSP430单片机的超低功耗数据采集器设计,自动化仪表,2005.4,26(4):30-31
[9] 刘玉宏,MSP430单片机C语言和汇编语言混合编程,微计算机信息,2003,19(10):56-57
- 深度剖析:双向可控硅基础之过零检测与波形(12-26)
- 频宽、取样速率及奈奎斯特定理(09-14)
- 为什么要进行信号调理?(09-30)
- IEEE802.16-2004 WiMAX物理层操作和测量(09-16)
- 为任意波形发生器增加价值(10-27)
- 基于PCI 总线的高速数据采集系统(09-30)