标题:
STM32超声波避障车源程序
[打印本页]
作者:
武略大韬
时间:
2020-3-9 19:43
标题:
STM32超声波避障车源程序
stm32 通过超声波测距,自动避障小车
单片机源程序如下:
#include "led.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "usart2.h"
#include "control.h"
#include "beep.h"
#include "timer.h"
/******************************************************
@title 32避障车
@author 王
@since Keil uVision5
@version 1.0
@remark 超声波避障
@crystal frequency
@time 20181109
@site 6J314
******************************************************/
extern u8 TIM2CH1_CAPTURE_STA; //输入捕获状态
extern u16 TIM2CH1_CAPTURE_VAL; //输入捕获值
float distance;
/**函数声明**/
void Check_Data(void);
/**变量声明**/
//int CONNECTED=0;//串口2接收数据标志位
//extern int Max_Temp;//上限设定温度值缓存
//extern int Min_Temp;//下限设定温度值缓存
//extern int Tempreture;//HIMI回传温度值缓存
//extern int cnt;//定时器累加变量200ms
//extern int cnt1;//定时器累加变量500ms
/**系统功能初始化函数**/
void SYS_Init(void)
{
delay_init(); //延时函数初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// 设置中断优先级分组2
uart_init(9600); //串口初始化为9600
LED_Init(); //初始化与LED连接的硬件接口
// BEEP_Init(); //蜂鸣器初始化
Triger_Inic(); //继电器触发外设初始化
uart_init(9600); //9600
// USART2_Init(9600); //串口二初始化
//TIM4_Config(1999,71,1,0);
TIM1_PWM_Init(899,0); //不分频。PWM频率=72000/(899+1)=80Khz
TIM2_Cap_Init(0XFFFF,72-1); //以1Mhz的频率计数
TIM3_PWM_Init(999,0); //不分频。PWM频率=72000000/1000=72Khz
}
/**主函数**/
int main(void)
{
u32 temp=0;
SYS_Init();
while(1)
{
delay_ms(10);
Wave_SRD_Strat();
// TIM_SetCompare1(TIM1,TIM_GetCapture1(TIM1)+1);
// if(TIM_GetCapture1(TIM1)==300)TIM_SetCompare1(TIM1,0);
if(TIM2CH1_CAPTURE_STA&0X80)//成功捕获到了一次高电平
{
temp=TIM2CH1_CAPTURE_STA&0X3F;
temp*=65536; //溢出时间总和
temp+=TIM2CH1_CAPTURE_VAL; //得到总的高电平时间
distance = temp/59.0;
printf("n0.val=");
while((USART1->SR&0X40)==0);//等待发送结束
printf("%.0f",distance); //打印总的高点平时间
while((USART1->SR&0X40)==0);//等待发送结束
USART1->DR=0xff;
while((USART1->SR&0X40)==0);//等待发送结束
USART1->DR=0xff;
while((USART1->SR&0X40)==0);//等待发送结束
USART1->DR=0xff;
LED1=!LED1;
TIM2CH1_CAPTURE_STA=0; //开启下一次捕获
}
}
}
复制代码
所有资料51hei提供下载:
2~~超声波避障车.7z
(842.84 KB, 下载次数: 44)
2020-3-12 23:32 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
admin
时间:
2020-3-12 23:32
本帖需要重新编辑补全电路原理图,源码,详细说明与图片即可获得100+黑币(帖子下方有编辑按钮)
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1