课程设计-超声波测距+实际 MSP430 单片机与 proteus 中虚拟 51 单片机串口通信仿真 下载本文

内容发布更新时间 : 2024/12/23 17:20:41星期一 下面是文章的全部内容请认真阅读。

TI 公司在 2002 年底和 2003 年期间又陆续推出了 F15x 和 F16x 系列的产品。 在这一新的系列中,有了两个方面的发展。一是从存储器方面来说,将 RAM 容 量大大增加,如 F1611 的 RAM 容量增加到了 10KB。二是从外围模块来说,增加 了 I2C、DMA、DAC12 和 SVS 等模块[13]。

1.2.MSP430 的特点

1、处理能力强

MSP430 系列单片机是一个 16 位的单片机,采用了精简指令集(RISC)结 构,具有丰富的寻址方式(7 种源操作数寻址,4 种目的操作数寻址),简介的 27 条内核指令以及大量的模拟指令;大量的寄存器以及片内数据存储器都可以参加 多种运算;还有高效的查表处理命令。这些特点保证了可以编制出高效的源程序 。 2、运算速度快

MSP430 系列单片机能在 25MHz 晶体的驱动下,实现 40ns 的指令周期 16 位的数据宽度、40ns 的指令周期以及多功能的硬件乘法器(能实现乘加运算)相 配合,能实现数字信号处理的某些算法(如 FFT 等)。 3、超低功耗

MSP430 单片机之所以有超低的功耗,是因为其在降低芯片的电源电压和灵 活而可控的运行时钟方面都有其独到之处。首先,MSP430 系列单片机的电源电 压采用的是 1.8-3.6V 电压。因而可使其在 1MHz 的时钟条件下运行时,芯片的电 流最低会在 165μA 左右,RAM 保持模式下的最低功耗只有 0.1μA。其次,独特的 时钟系统设计。在 MSP430 系列中有两个不同的时钟系统:基本时钟系统、锁频 环(FLL 和 FLL+)时钟系统和 DCO 数字振荡器时钟系统。可以只使用一个晶体 振荡器(32768Hz),也可以使用两个晶体振荡器。由系统时钟系统产生 CPU 和 各功能所需的时钟。并且这些时钟可以在指令的控制下,打开和关闭,从而实现 对总体功耗的控制。由于系统运行时开启的功能模块不同,即采用不同的工作模 式,芯片的功耗有着显著的不同。在系统中共有一种活动模式(AM)和五种低 功耗模式(LPM0~LPM4)。在实时时钟模式下,可达 2.5μA,在 RAM 保持模式 下,最低可达 0.1μA。 4、片内资源丰富

MSP430 系列单片机的各系列都集成了较丰富的片内外设。它们分别是看门 狗(WDT)、模拟比较器 A、定时器 A0(Timer_A0)、定时器 A1(Timer_A1)、 定时器 B0(Timer_B0)、UART、SPI、I2C、硬件乘法器、液晶驱动器、10 位/12 位 ADC、16 位Σ-Δ ADC、DMA、I/O 端口、基本定时器(Basic Timer)、实时时

钟(RTC)和 USB 控制器等若干外围模块的不同组合。其中,看门狗可以使程序 失控时迅速复位;模拟比较器进行模拟电压的比较,配合定时器,可设计出 A/D 转换器;16 位定时器(Timer_A 和 Timer_B)具有捕获/比较功能,大量的捕获/ 比较寄存器,可用于事件计数、时序发生、PWM 等;有的器件更具有可实现异 步、同步及多址访问串行通信接口可方便的实现多机通信等应用;具有较多的 I/O 端口,P0、P1、P2 端口能够接收外部上升沿或下降沿的中断输入;10/12 位硬件 A/D 转换器有较高的转换速率,最高可达 200kbps,能够满足大多数数据采集应 用;能直接驱动液晶多达 160 段;实现两路的 12 位 D/A 转换;硬件 I2C 串行总 线接口实现存储器串行扩展;以及为了增加数据传输速度,而采用的 DMA 模块。 MSP430 系列单片机的这些片内外设为系统的单片解决方案提供了极大的方便。

5、方便高效的开发环境

MSP430 系列有 OPT 型、FLASH 型和 ROM 型三种类型的器件,这些器件的 开发手段不同。对于 OPT 型和 ROM 型的器件是使用仿真器开发成功之后烧写或 掩膜芯片;对于 FLASH 型则有十分方便的开发调试环境,因为器件片内有 JTAG 调试接口,还有可电擦写的、FLASH 存储器,因此采用先下载程序到 FLASH 内, 再在器件内通过软件控制程序的运行,由 JTAG 接口读取片内信息供设计者调试 使用的方法进行开发。这种方式只需要一台 PC 机和一个 JTAG 调试器,而不需 要仿真器和编程器。开发语言有汇编语言和 C 语言。

1.3. 课题研究的主要内容

本设计以实现基于 MSP430 单片机的温度测量为主要目标,主要内容有: 1、MSP430 的结构及工作原理; 2、温度测量和距离测量的控制方法;

3、控制系统所需的控制电路,设计控制系统;控制电路主要由 MSP430F149 单 片

机、DS18B20 温度传感器、超声波传感器模块,LCD1602. 4、系统原理图、方框图和线路图等。

2. 系统总体方案设计

本章主要介绍系统的结构框图以及各测量模块的测量原理,然后介绍本设计 的核心部件 MSP430F149 单片机、超声波测距模块和单线数字温度传感器 DS18B20。

2.1. 控制系统的原理图

本设计的控制系统主要包括五部分:温度采集模块,超声波测距模块,电源

及复位模块,报警模块,显示模块,具体结构如图 2-1 所示。

DS18B20 温度 采集模块 MCU 超 声 波 测 距 模块 电 源 及 复 位 模块 报警模块 MSP430F149 Lcd1602 显示模块

图 2-1

2.2. 超声波测距的原理

我们知道,当物体振动时会发出声音。科学家们将每秒钟振动的次数称为声 音的频率,它的单位是赫兹。人类耳朵能听到的声波频率为 20~20,000HZ。当 声波的振动频率大于 20000HZ 或小于 20HZ 时,我们便听不见了。因此,我们把频 率高于 20000HZ 的声波称为“超声波”。超声波广泛地应用在多种技术中。超声 波有两个特点,一个是能量大,一个是沿直线传播。由于超声波也是一种声波, 超声波在媒质中传播的速度和媒质的特性有关。

声波是物体机械振动状态(或能量)的传播形式。所谓振动是指物质的质点 在其平衡位置附近进行的往返运动。超声和可闻声本质上是一致的,它们的共同 点都是一种机械振动,通常以纵波的方式在弹性介质内会传播,是一种能量的传

播形式,其不同点是超声频率高,波长短,在一定距离内沿直线传播具有良好的 束射性和方向性。

超声波具有以下的特点:

1) 超声波可在气体、液体、固体、固熔体等介质中有效传播。 2) 超声波可传递很强的能量。

3) 超声波会产生反射、干涉、叠加和共振现象。

4) 超声波在液体介质中传播时,可在界面上产生强烈的冲击和空化现象

2.2.1. 超声波发生器

为了研究和利用超声波,人们已经设计和制成了许多超声波发生器。总体上 讲,超声波发生器可以分为两大类:一类是用电气方式产生超声波,一类是用机 械方式产生超声波。电气方式包括压电型、磁致伸缩型和电动型等;机械方式有 加尔统笛、液哨和气流旋笛等。它们所产生的超声波的频率、功率和声波特性各 不相同,因而用途也各不相同。目前较为常用的是压电式超声波发生器。

压电式超声波发生器实际上是利用压电晶体的谐振来工作的。超声波发生器 内部结构,它有两个压电晶片和一个共振板。当它的两极外加脉冲信号,其频率 等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动, 便产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波时,将 压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了。 2.2.2. 超声波测距原理

在超声波探测电路中, 发射端输出一系列脉冲方波, 其宽度为发射超声波与 接收超声波的时间间隔, 被测物距越远, 脉冲宽度越大, 输出脉冲个数与被测距 离成正比。超声波测距的方法有多种, 如相位检测法、声波幅值检测法和往返时 间检测法等。相位检测法虽然精度高, 但检测范围有限可检测到汽车倒车中, 其 障碍物与汽车的距离;声波幅值检测法易受反射波的影响。本文硬件设计采用超 声波往返时间检测法, 其测量原理图如图所示。

图2-2 超声波测距原理图

其原理为: 在超声波发射器两端输入40KHZ 脉冲串, 脉冲信号经过超声波内 部振子, 振荡产生机械波, 并通过空气介质传播到被测面, 由被测面反射到超声 波接收器接收, 在超声波接收器两端, 信号是毫伏级的正弦波信号, 超声波经气 体介质的传播到接收器的时间, 即为往返时间。

超声测距有脉冲回波法、共振法和频差法,其中常用脉冲回波法测距。超声波 测距的原理一般采用渡越时间法 ,其原理是超声传感器发射超声波, 超声波在空 气中传播至障碍物, 经反射后由超声传感器接收反射脉冲, 测量出超声脉冲从发 射到接收的时间, 再乘以超声波在空气中的速度就得到二倍的声源与障碍物之间 的距离, 即:

L=c·t/2

(1)

式(1)中, L 为超声传感器与被测障碍物之间的距离, c 为超声波在介质(空 气)中的传输速率, t 为超声波从发射到接收的时间。超声波在空气中的传播速度 为: c ??c0 ??T T 0 , 其中 T 为绝对温度数值, T 0 ??273.15k , C 0 ??331.4 m s 。在测

量精度不是很高的情况下, 一般可以认为 c 为常数 340m/s。由于温度影响超声波 在空气中的传播速度;超声波反射回波又很难精确捕捉,致使超声波在空气中传播 的时间很难精确测量。这些因素是使用超声测距引起误差的原因。 2.2.3. 超声波测距误差分析

根据超声波测距公式L=c·t/2,可知测距的误差是由超声波的温度误差、传