一款串口输出超声波测距模块使用范例

上传人:s****a 文档编号:169817110 上传时间:2022-11-17 格式:DOCX 页数:15 大小:168.32KB
返回 下载 相关 举报
一款串口输出超声波测距模块使用范例_第1页
第1页 / 共15页
一款串口输出超声波测距模块使用范例_第2页
第2页 / 共15页
一款串口输出超声波测距模块使用范例_第3页
第3页 / 共15页
点击查看更多>>
资源描述
一款串口输出超声波测距模块使用范例一、模块简介:该串口输出超声波测距模块采用 STC11F04E 单片机 作处理器,工作电源:DC5V,工作电流10mA。测量数据 输出方式为TTL串口输出,数据格式为标准的ASCII码, 数据由:空格位(起始位)+百+十位+个位。工作方式有两 种:一是连续测量方式;二是查询测量方式。 勵亠LJ J: J j J Jz iDeprxo nu测量范围:方式一:5cm200cm(盲区5cm);方式二: 25cm350cm(盲区 25cm)。测量过程中,当接收不到障碍物反射的回波时,输出 “C C C”,当测量低于下限值(在盲区内) 时显示“”。测量结果由模块上的输出端口输出,输出方式为串口(TTL电平)输出。测量结果 可通过电脑进行显示。模块使用串口通讯可靠性更高,同时可以通过电脑串口采集数据,编写通讯程序非常的 便捷。波特率:1200校验位:无数据位:8停止位:无ASCII 码数据格式:空格位 (起始位)+百+十位+个位二、模块的使用设置下图为模块的背面图片。图中标有 A、B、C 短接焊 盘是作为设置测量方式用;标有 0-7的短路焊盘是设置 查询方式下的模块地址用。方式 1:设置为小盲区期测量。设置方法,标号为 B 的焊盘即单片机的 P3.5 脚与地断开,这时的测量范围 为:5-200;这种方式下,测量盲区值小,适合长时间近 距离测量用。方式 2: 设置为远距离测量,这种方式,盲区值相 对较大,测量相对较远一些,设置方法:将标号为 B 的 焊盘即单片机的 P3.5 脚与地短接,这时的测量范围为:25-350 厘米。方式3:连续方式测量。将标号为A的焊盘即单片机的 P3.4 脚与地断开,这时模块测量方式是连续的进行 测量,测量间隔为 1-2 次/秒,每测量一次,就将测量结 果通过串口送出。方式 4:查询方式测量。将标号为 A 的焊盘即单片机 的 P3.4 脚与地短接,这时的测量方式为查询方式测量, 即通过控制设备向模块发出一个命令后,模块才测量一 次。查询方式下,每向测距模块发送一次查询命令,模 块才进行测量一次,完成测量后即将测量结果通过串口 发送出来。设置成查询方式,模块可多块模块连接在一 起组网测量。查询命令格式: AT+CL=1-255(1-255 为模的的地址 编码,每个模块的地址编码由模块上单片机 P1 口与地短 接的情况决定,各块模块的编码可独立,由使用者自己 设定,设定范围 1-255,只在查询方式下有效),数据格 式为 16 进制数据。三、模块使用为减小本超声波测距模块外形尺寸,该超声波测距 元件采用双面安装,全部元件安装在一块长 6cm 宽 2.5cm 的 PCB 上。模块可用作应用系统的测距模块。因为它是 串口 TTL 电平输出的。可应用在倒车雷达、机器人避障 液位检测、入侵报警、距离测量等产品中。板上留有安 装孔;有一排插针,以备插到应用板上。对外接口定义:(信号输出脚是第3脚TXD, 5V左右的TTL电平,可接应用系统单片机的 RXD 引脚)。测试显示程序范例如下:#include ;/ 头文件#include ;/ 头文件#define uchar unsigned char/ 定义变量类型为字符型#define uint unsigned int/ 定义变量类型为长整型#define LED P0/数码管段码输出端#define LED1 P2_6/ 数码管位 1#define LED2 P2_4/ 数码管位 2#define LED3 P2_5/ 数码管位 3#define sx P2_3/ 数码管位 3uchar s,i,pd,jsh,ml3=0,0,0,zj,xm0,xm1,xm2,xm3,buffer3;/程序中用到的变量uchar convert10=0xA0,0xBD,0x64,0x34,0x39,0x32,0x22,0 xBC,0x20,0x30;/09 段码单片机端口 P0.0-P0.7 分别 接数码管的 A、B、F、D、E、H、C、G 各段void delay(i);/延时函数void scanLED();/显示函数void timeToBuffer();/显示转换函数void offmsd();/百位数为 0 判断处理模块void main()/主程序EA=1;/开总中断ES=1;/ 串口中断允许SCON = 0x50;/ 串口方式 1, 允许接收TMOD = 0x21;/ 定时器 1 定时方式 2TCON = 0x40;/ 定时器 1 开始计数TH1 = 0xF3;/6MHz 1200 波特率TL1 = 0xF3;/6MHz 1200 波特率TI = 0;/ 串口发送中断标志置 0RI =0;/ 串口接收中断标志置 0 TR1=1;/ 启动定时器 1sx=0;while(1)timeToBuffer();/调用转换段码功能模块offmsd();/ 调用百位数为 0 判断处理模块 scanLED();/ 调用显示函数void delay(i)/ 延时子程序while(-i);/ 延时循环void scanLED()/ 显示功能模块LED=buffer0;/ 显示个位数值,个数位数的段码送显示端口 LED3=0;/ 个位数位码, 低电平有效 ,进行显示 delay(1);/ 显示延时 , 加大该值,显示亮度提高 LED3=1;/ 关闭显示个位数显示 delay(20);/ 关闭显示延时,减小该值时显示亮度提高 LED=buffer1;/ 显示十位数值,十数位数的段码送显示端口 LED2=0;/ 十位数位码, 低电平有效 ,进行显示 delay(1);/ 显示延时 , 加大该值,显示亮度提高 LED2=1;/ 关闭显示十位数显示 delay(20);/ 关闭显示延时,减小该值时显示亮度提高 LED=buffer2;/ 显示百位数值,百数位数的段码送显示端口 LED1=0;/ 百位数位码, 低电平有效 ,进行显示 delay(1);/ 显示延时 , 加大该值,显示亮度提高 LED1=1;/ 关闭显示百位数显示 delay(20);/ 关闭显示延时,减小该值时显示亮度提高void offmsd()/ 百位数为 0 判断处理模块if (buffer2=0xA0)/ 如果值为零时百位不显示 buffer2 = 0xff;/ 数码管百位数的段码全部为 1,即高电平, 百位不 显示void serial() interrupt 4 using 3 / 串口中断接 收程序if(RI)/ 串口接收到数据时串口中断标志位为 1 RI=0;/ 串口中断标志位置 0pd=SBUF;/ 接收到的数据送中间变变量 pd 储存 if(pd=0x20)/判断接收到的数据是否为 0x20 (这是 ASCII 码的 空格的代码)jsh=0;/ 接收位数计数器 jsh 置 0pd=0;/ 中间变变量 pd 清 0 if(jsh=1)/当jsh值为1时,代表串口接收到模块发送回的百 位数值ml0=SBUF;/串口接收到模块发送回的百位数值存入ml0单 元else if(jsh=2)/当 jsh 值为 2 时,代表串口接收到模块发送回的十 位数值ml1=SBUF;/串口接收到模块发送回的十位数值存入 ml1 单 元else if(jsh=3)/当 jsh 值为 3 时,代表串口接收到模块发送回的个 位数值ml2=SBUF;/串口接收到模块发送回的个位数值存入 ml2 单 元s=ml0*100+ml1*10+ml2;/计算测量得到的距离值 s, 单位为厘米jsh+;/ 接收位数计数器值加 1void timeToBuffer()/ 转换段码功能模块xm0=ml0-48;/ 接到的值为标准的 ASCII 码,进行十进制转换 , 百 位数的值 xm1=ml1-48;/ 接到的值为标准的 ASCII 码,进行十进制转换 , 十 位数值xm2=ml2-48;/ 接到的值为标准的 ASCII 码,进行十进制转换 , 个 位数值buffer0=convertxm2;/ 转换成对应的显示码段 buffer1=convertxm1;/ 转换成对应的显示码段 buffer2=convertxm0;/ 转换成对应的显示码段if (ml0=67)&(ml1=67) / 判断接收到的 ASCII码数值为"C",表示模块接收不到回波, 这时的显示用"C C C"表示buffer0=0xE2;/显示"C"的段码是 0xE2buffer1=0xE2;/显示"C"的段码是 0xE2buffer2=0xE2;/显示"C"的段码是 0xE2else if (ml0=45)&(ml1=45) /判断接收 到的ASCII码数值为"-",表示模块的测量范 围在盲区范围内这时的显示用& q u o t ; - - -" 表示 buffer0=0x7F;/显示"-"的段码是 0x7Fbuffer1=0x7F;/显示"-"的段码是 0x7Fbuffer2=0x7F;/显示"-"的段码是 0x7F
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!