基于STM32和US-100的超声波测距仪设计摘要:结合嵌入式处理器STM32F103与超声波传感器设计的一种简易的智能超声波测距仪装置,采用ARM内核芯片STM32F103ZET6的32位嵌入式微处理器与带有温度补偿的US-100超声波测距模块实现声波测距。STM32的串口资源相当丰富,能提供5路串口,通过微处理器的串口实现实时显示和TFTLCD显示距离等参数。US-100带有温度传感器,对超声波的声速进行补偿,提高测量精度。关键词:STM32F103;US-100;超声波测距;TFTLCD显示DesignofUltrasonicDistanceMeasurementBasedonSTM32AndUS-100Abstract:CombinedwiththeembeddedmicroprocessorSTM32F103andultrasonicsensordesignasimpleintelligentultrasonicrangefinderdevices,usingARMkernelchipSTM32F103ZET632-bitembeddedmicrocontrollerprocessorwithtemperaturecompensationofUS-100ultrasonicrangingmoduleimplementssoundranging.STM32serialportresourcesrichinserialportcanprovide5road,throughtheserialportofthemicroprocessortoachievereal-timedisplayandTFTLCDparameterssuchasdistance.US-100withatemperaturesensor,tocompensatethevelocityofultrasonicwave,improvetheaccuracyofmeasurement.Keywords:STM32F103;US-100;UltrasonicDistanceMeasurement;TFTLCD-Showing0引言超声波测距是一种典型的非接测量方式。超声波在气体、液体及固体中以不同速度传播,定向性好、能量集中、传输过程中衰减较小、反射能力较强[1]。且超声波测距系统结构简单、电路容易实现、成本低、速度快,所以在工业自动控制、建筑工程测量和机器人视觉识别等领域应用非常广泛,它具有非接触式测量、精度高、范围宽和安装维护方便等特点[2]。本设计结合嵌入式处理器与超声波测距模块提供一种超声波测距装置,系统采用嵌入式处理器控制US-100超声波测距模块实现超声波的发送和接受。US-100带有温度补偿,对测量的距离进行校正,提高了测量的精度。结合STM32丰富的串口资源,本装置通过串口2与US-100相互通信,进行超声波的收发和温度补偿,得到测量距离,通过TFTLCD显示;并通过串口1在PC机上实时显示。1系统总体设计图1系统总体设计框图Fig.1Diagramoftheoverallsystemdesign系统总体设计框图1,可以看到该超声波测距装置由STM32微处理器、US-100超声波测距模块、TFTLCD液晶显示组成。控制器通过控制US-100超声波模块实现超声波的收发,并进行温度补偿提高精度,得到精确的距离数据。再通过控制器自身串口通信向PC机串口实时显示数据和TFTLCD液晶显示的人机交互界面。STM32的高性能、低功耗和高主频等优点给该装置测距实现更加完备。2硬件设计2.1主控制模块STM32F103微控制器基于ARMConex-M3内核的STM32F103ZET6时钟频率可高达72Mhz,提供20KB的RAM、多大128KB的嵌入式闪存和丰富的外设接口,处理速度比同级别的基于ARM7TDMI的产品快30%,产品功耗比同级别低75%[3]。使用新内核ARMConex-M3是针对MCU的低成本、缩减的管脚数目、降低的系统功耗,同时提供卓越的计算性能和先进的中断系统响应的需要而推出的。ARMConex-M3采用纯Thumb2指令高效32位哈弗微体系结构和系统外设,使这个具有32高性能的ARM内核能够实现8位和16位的代码储存密度,几乎把所有应用软件所需内存容量降低了一半。由于ARMConex-M3的架构和丰富的外设组件,使得它也适用于要求高度集成和低功耗的嵌入式场合[4]2.2US-100超声波测距模块US-100超声波测距模块可实现2cm~4.5m的非接触测距功能,拥有2.4V~5.5的宽电压输入范围,静态功耗低于2mA,自带温度传感器对测量结果进行校正,同时具有GPIO,串口等多种通信方式,内带看门狗,工作稳定可靠。有串口触发测距和电平触发测距两种方式。本设计采用串口触发测距,在此模式下只需要在TX管脚输入0X55(波特率9600),系统便可发出8个40KHZ的超声波脉冲,然后检测回波信号。当检测到回波信号后,模块还要进行温度值测量[5],然后根据当前温度对测距结果进行校正,将矫正后的结果通过RX管脚输出。US-100超声波模块的引脚图如下:1脚接电源VCC,2脚接STM32F103ZET6的PA2,3脚接PA3,4脚接地即可。图2US-10...