找回密码
 立即注册

QQ登录

只需一步,快速开始

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

stm32f103C8T6驱动超声波小车源程序

[复制链接]
跳转到指定楼层
楼主
ID:353632 发表于 2019-10-9 20:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
元器件:L298N、stm32f103C8T6核心板,四个电机代码已上传

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

  2. void HC_SR_Init(void)
  3. {
  4.         GPIO_InitTypeDef GPIO_InitStructure;       
  5.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);  //使能GPIOA时钟
  6.        
  7.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;                                         //PA0接TRIG
  8.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;                     //设为推挽输出模式
  9.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                
  10.         GPIO_Init(GPIOB, &GPIO_InitStructure);                         //初始化外设GPIO        
  11.        
  12. }

  13. void Trig_Init(void)
  14. {
  15.         Trig_Pin = 0;
  16.         delay_ms(30);
  17.        
  18.         Trig_Pin = 1;
  19.         delay_us(10);
  20.        
  21.         Trig_Pin = 0;
  22. }


  23. u32 GetDistance(void)
  24. {
  25.         short distance;
  26.         u32 temp;
  27.         delay_ms(10);
  28.                          
  29.         if(TIM3CH1_CAPTURE_STA&0X80)//成功捕获到了一次上升沿
  30.         {
  31.                 temp=TIM3CH1_CAPTURE_STA&0X3F;
  32.                 temp*=65536;//溢出时间总和
  33.                 temp+=TIM3CH1_CAPTURE_VAL;//得到总的高电平时间
  34.         //        printf("HIGH:%d us\r\n",temp);//打印总的高点平时间
  35.                 TIM3CH1_CAPTURE_STA=0;//开启下一次捕获
  36.         }
  37.        
  38.         distance = (temp * 340 / 200)/ 100 ;  //单位cm
  39.         printf("Channel 2 : %d cm\r\n",distance);
  40.        
  41.         return distance;
  42. }
复制代码

所有资料51hei提供下载:
hc_sr.7z (181.42 KB, 下载次数: 52)


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

使用道具 举报

沙发
ID:1 发表于 2019-10-10 01:08 | 只看该作者
本帖需要重新编辑补全电路原理图,源码,详细说明与图片即可获得100+黑币(帖子下方有编辑按钮)
回复

使用道具 举报

板凳
ID:740988 发表于 2020-5-1 23:18 | 只看该作者
本帖最后由 猹的反杀生涯 于 2020-5-2 11:43 编辑

程序里的话PB5做Trig,PA6检测高电平来接线后,可以
回复

使用道具 举报

地板
ID:740988 发表于 2020-5-2 11:42 | 只看该作者
猹的反杀生涯 发表于 2020-5-1 23:18
一点说明都没有,按程序里的话PB5做Trig,PA6检测高电平来接线后,完全没有作用

是我错了,我直接用电脑做电源供电不够,所以没用,接上电池后可以了
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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