找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1316|回复: 0
打印 上一主题 下一主题
收起左侧

k60用HC-SR04测距程序

[复制链接]
跳转到指定楼层
楼主
ID:519087 发表于 2019-6-19 11:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
k60用HC-SR04测距

单片机源程序如下:
  1. #include "common.h"
  2. #include "include.h"

  3. #define TRIG    PTD2
  4. #define ECHG    PTD1

  5. #define FLAGWAIT    0xFFFFF
  6. /*!
  7. *  @brief      main函数
  8. *  @since      v5.0
  9. *  @note       野火 PIT 计时实验
  10. */
  11. void main()
  12. {
  13.     uint32 timevar;
  14.     uint32 flag;
  15.     gpio_init(TRIG,GPO,0);
  16.     gpio_init(ECHG,GPI,0);
  17.    
  18.     while(1)
  19.     {
  20.         flag = 0;
  21.         gpio_set(TRIG,1);               //产生触发脉冲
  22.         pit_delay_us(PIT1,15);
  23.         gpio_set(TRIG,0);
  24.         
  25.         while(gpio_get(ECHG) == 0);             //等待电平变高,低电平一直等待
  26.         pit_time_start  (PIT0);                 //开始计时
  27.         while(gpio_get(ECHG) == 1)              //等待电平变低,高电平一直等待
  28.         {
  29.             flag++;
  30.             if(flag >FLAGWAIT)
  31.             {
  32.                 break;
  33.             }
  34.         };            
  35.         
  36.         timevar = pit_time_get_us    (PIT0);    //停止计时,获取计时时间
  37.         if(flag <FLAGWAIT )
  38.         {
  39.             timevar = timevar * 340 /2/1000;
  40.                
  41.             if(timevar > 5)
  42.             {
  43.                 printf("\n\n距离为:%dmm",timevar); //打印延时时间
  44.             }
  45.         }
  46.         
  47.         DELAY_MS(1000);
  48.     }
  49. }
复制代码

所有资料51hei提供下载:
PIT_计时_超声波.7z (304.55 KB, 下载次数: 5)


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表