【单片机期中测试】13.串口通信的应用(2)—— 超声波通过串口返回数据

简介: 【单片机期中测试】13.串口通信的应用(2)—— 超声波通过串口返回数据
#include<reg52.h>
#define uc unsigned char
uc ms=0,s=0;
sbit trig=P1^7;
sbit echo=P1^6;
void delay(uc c)
{
  while(--c);
}
void delay1(uc c1)
{
  uc a,b;
  for(;c1>0;c1--)
    for(a=38;a>0;a--)
      for(b=130;b>0;b--);
}
void putc(uc j)
{
  SBUF=j;
  while(TI==0);
  TI=0;
}
void putstr(uc * k)
{
  while(*k!='\0')
    putc(*k++);
}
void send()
{
  trig=1;
  delay(5);
  trig=0;
}
void main()
{
  TMOD=0X21;  
  TH0=0;
  TL0=0;
  TH1=0XFD;
  TL1=0XFD;
  TR1=1;
  SCON=0X50;
  ET0=1;
  EA=1;
  while(1)
  {
    send();
    while(echo==0);
    TR0=1;
    TH0=0;
    TL0=0;
    while(echo==1);
    TR0=0;
    s=(TH0*256+TL0)/58;
    putstr("距离为:");
    putc(s/100+'0');
    putc(s/10%10+'0');
    putc(s%10+'0'); 
    delay1(20);
  }
}

注:这个程序是利用串口调试工具实现的,所以需要单片机有USB转TTL模块,如果没有需要外界串口模块;同时,串口调试工具不同,返回的字符可能存在译码不正确的情况,如果出现大家可以在评论区或私信交流~

  • 接线:
  • 超声波模块:
  • VCC、GND与单片机的相应引脚连接
  • trig接P1^7
  • echo接P1^6
相关文章
|
2天前
|
编解码 测试技术 开发工具
测试 iPhone 应用在不同屏幕尺寸和分辨率下的响应式效果
【10月更文挑战第23天】测试 iPhone 应用在不同屏幕尺寸和分辨率下的响应式效果是确保应用质量和用户体验的重要环节。通过手动测试、自动化测试、视觉效果评估、性能测试、用户体验测试等多种方法的综合运用,能够全面地发现应用在响应式效果方面存在的问题,并及时进行解决和优化。同时,持续的测试和优化也是不断提升应用质量和用户满意度的关键。
|
11天前
|
监控 测试技术 持续交付
掌握跨平台测试策略:确保应用的无缝体验
【10月更文挑战第14天】在多元化设备和操作系统的今天,跨平台测试策略成为确保应用质量和性能的关键。本文探讨了跨平台测试的重要性、核心优势及实施步骤,涵盖Web、移动和桌面应用的测试方法,帮助开发者提高应用的无缝体验。
|
12天前
|
机器学习/深度学习 人工智能 自然语言处理
探索AI在软件测试中的创新应用与实践###
本文旨在探讨人工智能(AI)技术如何革新软件测试领域,提升测试效率、质量与覆盖范围。通过深入分析AI驱动的自动化测试工具、智能化缺陷预测模型及持续集成/持续部署(CI/CD)流程优化等关键方面,本研究揭示了AI技术在解决传统软件测试痛点中的潜力与价值。文章首先概述了软件测试的重要性和当前面临的挑战,随后详细介绍了AI技术在测试用例生成、执行、结果分析及维护中的应用实例,并展望了未来AI与软件测试深度融合的趋势,强调了技术伦理与质量控制的重要性。本文为软件开发与测试团队提供了关于如何有效利用AI技术提升测试效能的实践指南。 ###
|
14天前
|
存储 测试技术 数据库
数据驱动测试和关键词驱动测试的区别
数据驱动测试 数据驱动测试或 DDT 也被称为参数化测试。
|
14天前
|
机器学习/深度学习 弹性计算 自然语言处理
前端大模型应用笔记(二):最新llama3.2小参数版本1B的古董机测试 - 支持128K上下文,表现优异,和移动端更配
llama3.1支持128K上下文,6万字+输入,适用于多种场景。模型能力超出预期,但处理中文时需加中英翻译。测试显示,其英文支持较好,中文则需改进。llama3.2 1B参数量小,适合移动端和资源受限环境,可在阿里云2vCPU和4G ECS上运行。
|
23天前
|
SQL 分布式计算 Hadoop
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(一)
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(一)
25 4
|
21天前
|
SQL 消息中间件 大数据
大数据-159 Apache Kylin 构建Cube 准备和测试数据(一)
大数据-159 Apache Kylin 构建Cube 准备和测试数据(一)
33 1
|
21天前
|
SQL 大数据 Apache
大数据-159 Apache Kylin 构建Cube 准备和测试数据(二)
大数据-159 Apache Kylin 构建Cube 准备和测试数据(二)
59 1
|
22天前
|
Web App开发 敏捷开发 Java
自动化测试框架的选择与应用
【10月更文挑战第4天】在软件开发的海洋中,自动化测试如同一艘航船,帮助开发者们快速穿越测试的波涛。选择适合项目的自动化测试框架,是确保航行顺利的关键。本文将探讨如何根据项目需求选择合适的自动化测试框架,并分享一些实用的代码示例,助你启航。
|
23天前
|
SQL
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(二)
Hadoop-14-Hive HQL学习与测试 表连接查询 HDFS数据导入导出等操作 逻辑运算 函数查询 全表查询 WHERE GROUP BY ORDER BY(二)
27 2