shiyongzhuSTM32L053开发板 超声波测距系统

来源:本站
导读:目前正在解读《shiyongzhuSTM32L053开发板 超声波测距系统》的相关信息,《shiyongzhuSTM32L053开发板 超声波测距系统》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《shiyongzhuSTM32L053开发板 超声波测距系统》的详细说明。
简介:本文是关于shiyongzhuSTM32L053开发板 超声波测距系统。

本次使用STM32L053开发板,本计划利用多个超声波模块HC-SR04完成一个空间目标空间定位系统,但是由于无线通信芯片nRF24L01迟迟没有调试成功,所以此处先使用超声波模块HC-SR04制作一个超声波测距系统,后面等待nRF24L01调试通过再完成原计划。

一、硬件组成

整个系统简图如下:

shiyongzhuSTM32L053开发板 超声波测距系统

STM32L053通过HC-SR04测量出距离,然后再由LCD1602显示。

HC-SR04的引脚主要有VCC(电源)、trig(控制端)、 echo(接收端)、 GND(地)。VCC接+5V电源,GND接地,trig接PB1,echo接PB0。

LCD1602的引脚有VSS(电源地)、VDD(电源正极)、VL(液晶显示偏压信号)、RS(数据/命令选择端)、R/W(读/写选择端)、E(使能信号)、D0~D7(数据口)、BLA(背光源正极)、BLK(背光源负极)。VDD接+5V电源,VSS接电源地,RS接PB2,RW接PB10,E接PB15,D0~D7接PC0~PC7,其他信号按照下图连接。

shiyongzhuSTM32L053开发板 超声波测距系统

本人采用一块实验板作为基本,将整个系统在板子上进行了搭建,搭建效果图如下:

shiyongzhuSTM32L053开发板 超声波测距系统

shiyongzhuSTM32L053开发板 超声波测距系统

二、软件编写

1、超声波测距

基本工作原理:(1)采用IO口TRIG触发测距,给至少10us的高电平信号; (2)模块自动发送8个40khz的方波,自动检测是否有信号返回; (3)有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2;

shiyongzhuSTM32L053开发板 超声波测距系统

2、LCD显示

LCD1602的基本操作分为四种:

1. 读状态:输入RS=0,RW=1,E=高脉冲。输出:D0—D7为状态字。

2. 读数据:输入RS=1,RW=1,E=高脉冲。输出:D0—D7为数据。

3. 写命令:输入RS=0,RW=0,E=高脉冲。输出:无。

4. 写数据:输入RS=1,RW=0,E=高脉冲。输出:无。

进行如下的宏定义

#define LCD_DB(data) (GPIOC->ODR = ((GPIOC->ODR)&(0xFF00))|(data)) //完成写数据

#define LCD_RS_H (GPIOB->BSRR = 0x0004)

#define LCD_RS_L (GPIOB->BSRR = 0x0004<<16)

#define LCD_RW_H (GPIOB->BSRR = 0x0400)

#define LCD_RW_L (GPIOB->BSRR = 0x0400<<16)

#define LCD_E_H (GPIOB->BSRR = 0x8000)

#define LCD_E_L (GPIOB->BSRR = 0x8000<<16)

通过以上的宏,可以控制LCD控制口状态,写入命令和数据,具体就不详述了,详情可以参考附件中的程序(LCD1602.c)。

3、主程序

主程序比较简单,具体如下:

shiyongzhuSTM32L053开发板 超声波测距系统

三、运行效果展示

最后制作整体的效果如下,能够使用,就是前端的超声波的指向有时不准,而且测量时周边最好不要有其他障碍物。

提醒:《shiyongzhuSTM32L053开发板 超声波测距系统》最后刷新时间 2024-03-14 00:50:56,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《shiyongzhuSTM32L053开发板 超声波测距系统》该内容的真实性请自行鉴别。