基于MSP430单片机的声纳值班电路设计

2011-06-05 10:19张景卓肖大为
船电技术 2011年9期
关键词:寄存器时钟滤波器

张景卓 肖大为

(海军工程大学理学院物理系,武汉430033)

1 引言

对于需要长期工作在深海中的测量系统,只能采用电池供电,而测量系统体积是固定的,其内部只能装入一定数量的电池,所以其硬件电路的设计必须遵从低功耗的原则,采用功耗低的值班电路控制系统工作。

以往的水下测量系统一般采用模拟器件设计组成值班电路,以节省系统功耗。但是,这种模拟电路无法检测编码信号,灵活性不强。鉴于系统对电路的功耗和灵活性的要求,本设计采用美国TI公司的MSP430F1611单片机作为水下测量系统值班电路的核心处理器。

2 MSP430单片机简介

TI公司的MSP430系列单片机是一种超低功耗的混合信号控制器,其中包括一系列片内外设,它们针对不同的应用而由不同的模块组成。这些微控制器以电池作动力,可以长时间使用。

其具有16位RISC结构,CPU中的16个寄存器和常数发生器使 MSP430微控制器能达到最高的代码效率;灵活的时钟源可以使器件达到最低的功率消耗;数字控制振荡器(DCO)可使器件从低功耗模式迅速唤醒,在少于 6 μs的时间内激活到活跃的工作方式。MSP430F1611具有丰富的外部资源,值班电路的大部分功能就是由单片机内部集成的外围模块完成的。

3 值班电路的硬件构成

值班电路各功能模块结构如图1所示。接收预处理板实现对传感器输出信号的放大、滤波,提高接收信号的信噪比。单片机的片内AD转换模块对接收预处理板输出的模拟信号进行采样,检测唤醒信号;单片机的片内DMA控制器直接将FLASH存储器中的数据传送给其DA转换模块,为发射机提供驱动信号;两种时钟的使用,有利于值班电路降低功耗,高速时钟用于算法计算,低速时钟用于系统计时;单片机可以通过串行接口接收主机或其它设备的数据,完成软件的基本配置。

图1 值班电路各功能模块框图

3.1 信号预处理电路

接收预处理电路接收来自传感器的信号,完成信号的预处理,提高信噪比,其电路由前级放大、模拟开关、带通滤波器和后级放大等几部分组成。图2为接收预处理板组成框图。

接收预处理板对接收频带内的信号进行预处理,提高信号信噪比。其前级和后级放大电路均采用反相比例放大电路,中间加入了一级增益控制电路,由单片机产生控制信号,实现增益控制,以满足系统在不同海域的测试。

图2 接收预处理板组成框图

综合考虑功耗和噪声的要求,滤波器电路设计采用的运算放大器为TI公司的OPA2348,其静态电流在+5V供电时为45 μA,可在单2.1 V至5.5 V供电条件下工作。

图3 带通滤波器二阶节电路图

图3为用GIC(通用导抗变换器)实现的二阶节滤波电路,其对拐点频率和Q值有非常强的控制能力。本设计采用此种电路作为构成带通滤波器的基本二阶节,将四个二阶节滤波电路级联起来,构成接收预处理板带所需的8阶带通滤波器。

3.2 基础时钟模块

基础时钟模块对于达到低廉的系统成本和微弱的系统功耗的设计目标是非常重要的,利用其3个内部时钟信号,可以在系统的低功耗和高性能之间得到最佳平衡。

如图4所示,MSP430单片机基础时钟模块有3个时钟输入源,可以提供3种时钟信号。

图4 MSP430单片机基础时钟模块

值班电路设计中采用两个标准晶体作为单片机的外接时钟输入源,32.767 kHz晶振接LFXT1CLK,此时钟经1分频得到ACLK,供定时器作为输入时钟;8 MHz晶振接XT2CLK,MCLK选择XT2CLK作为时钟输入源,并作为系统工作的主时钟;SMCLK也选择 XT2CLK作为时钟输入源,作为子系统时钟。在调试基础时钟模块时,必须要等待晶振完全起振后再对时钟控制寄存器设置,否则时钟设置将不会成功。

3.3 定时器模块

MSP430F1611有三种定时器:看门狗定时器(WDT)、定时器A、定时器B。

看门狗定时器实质上是一个定时器,其主要功能是:当程序发生故障时能够使受控系统重新启动。如果 WDT超过所定时的时间,即发生系统复位。如果系统不需要看门狗功能,也可将它当作定时器使用,当到达 WDT所定时的时间时能产生中断。本设计没有使用看门狗定时器,在调试时用软件指令将其关闭。定时器 A是MSP430所有系列器件都有的模块,是一个用途非常广泛的通用16位定时器/计数器。定时器A主要特点有:16位计数器,4种工作模式;多种可选的计数器时钟源;具有多个可配置输入端的捕获/比较寄存器;有8种输出模式的多个可配置的输出单元。

定时器A可支持同时进行多种时序控制、多个捕获/比较功能及多种输出波形(PWM),也可以是几种功能的组合。每个捕获/比较寄存器可以以硬件的方式支持实现串行通信。定时器A还具有中断能力。中断可由计数器溢出引起,也可来自具有捕获或比较功能的捕获/比较寄存器。每个寄存器可独立编程,由捕获或比较外部信号以产生中断,外部信号可以是上升沿,也可是下降沿,也可二者都有。

3.4 模数转换模块

值班电路需要对接收预处理板输出的模拟信号采样分析,如果采用外加AD采集器,必然会增加系统的功耗,而单片机内部集成有多通道12位的A/D转换模块(以下称ADC12),它的最高采样频率为 200kHz,12位的数据精度满足应答器系统的指标要求,所以采用单片机的片内外设ADC12作为值班电路的AD采集器,这也是系统选择 MSP430F1611作为值班电路处理器的主要原因之一。

ADC12使用起来相当灵活方便,使用相关的控制寄存器即可。该模块的寄存器很多,大致可分为4类:转换控制类、中断控制类、存储控制类及存储器类。其中最主要的是转换控制类寄存器 ADC12CTL0和 ADC12CTL1,它们一起控制了ADC12的大部分操作。

4 值班电路的软件设计

值班电路的信号检测程序通过自适应滤波器检测水面母船发送的唤醒信号。自适应滤波就是利用前一时刻所获得的滤波器参数等结果,自动调整现在时刻的滤波器参数,以达到最佳滤波。自适应滤波技术是统计信号处理的重要组成部分,对于任何未知统计特性的环境信号,它所带来的新的信号处理能力是其它固定滤波器无法比拟的。

自适应Notch滤波器是针对信号已有先验知识情况下的,只有两个正交权的窄带滤波器。其频率特性的陷波中心频率除等于外加的正弦或余弦频率外,还随着它的改变而自动的修改滤波参数来对准,即自适应的跟踪。这种滤波器的优点是很容易控制带宽,消噪声的能力没有限制,能够准确跟踪干扰频率。

图5 自适应Notch滤波器原理图

5 结束语

本文充分利用了MSP430单片机的片内外设资源,设计了一种结构简单、功耗低、可检测编码信号的水下值班检测系统,对长期工作于水下的测量系统设计有一定参考价值。

[1]魏小龙. MSP430系列单片机接口技术及系统设计实例. 北京: 北京航空航天大学出版社, 2002.

[2]丁士圻. 模拟滤波器. 哈尔滨: 哈尔滨工程大学出版社, 2004.

[3]李远文, 胡筠. 有源滤波器的设计. 北京: 人民邮电出版社. 1986.

[4]胡大可. MSP430系列FLASH型超低功耗16位单片机. 北京: 北京航空航天大学出版社, 2001.

[5]维德罗 B, 史蒂恩斯 SD. 自适应信号处理. 王永德, 龙宪惠译校. 四川: 四川大学出版社, 1989.

猜你喜欢
寄存器时钟滤波器
STM32和51单片机寄存器映射原理异同分析
别样的“时钟”
古代的时钟
Lite寄存器模型的设计与实现
从滤波器理解卷积
开关电源EMI滤波器的应用方法探讨
有趣的时钟
基于Canny振荡抑制准则的改进匹配滤波器
时钟会开“花”
基于TMS320C6678的SAR方位向预滤波器的并行实现