100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > STM32单片机智能跟随小车_红外遥控(程序+原理图+PCB+论文报告)

STM32单片机智能跟随小车_红外遥控(程序+原理图+PCB+论文报告)

时间:2022-03-01 00:47:57

相关推荐

STM32单片机智能跟随小车_红外遥控(程序+原理图+PCB+论文报告)

本设计:

基于STM32单片机智能跟随小车_红外遥控(程序+原理图+PCB+论文报告)

原理图:Altium Designer

程序编译器:keil 5

编程语言:C语言

编号C0021

资料下载【腾讯文档】C0021 网盘链接/doc/DS1JjTFhXRHZXRnJj

功能描述:

1.以STM32F103RBT6为主控芯片,实现对小车的控制,使小车能够做出前进、后退、左转、右转等基本行驶动作,通过红外遥控控制小车工作模式的转换(自由行走避障模式、跟随模式)

2.利用压力传感器测重,放在小车上物品的重量在500g范围以内,可以跟随,如果超过范围,就停止不动,蜂鸣器响提示超重。

原理图(提供源文件):

PCB(提供源文件):

源程序(提供完整程序):

#include "led.h"#include "delay.h"#include "sys.h"#include "usart.h"#include "timer.h"#include "adc.h"#include "remote.h" #include "hx711.h" #include <string.h>u8 Model=0; //ģʽ u8 PWM_WIDTH=28; u8 RunModel=0; void Hw_Process(){u8 key;key=Remote_Scan();if(key){Beep=1;delay_ms(100);//ÑÓʱ300msBeep=0;printf("\r\nºìÍâ¼üÖµ= %d\r\n",key);}if(key==224)// - :½øÈë ×ÔÓÉÒ£¿Ø±ÜÕÏģʽ{RunModel=0;}else if(key==168)// - :½øÈë ¸úËæģʽ{RunModel=1;} if(RunModel==0) //×ÔÓÉÒ£¿Ø±ÜÕÏģʽ£¬Ò£¿Ø¿ØÖÆ{if(key==194)// ÔÝÍ£ >||{Model=0;printf("\r\nÍ£Ö¹\r\n");//} else if(key==34)//|<<{Model=4;delay_ms(500);//ÑÓʱ300ms Model=1;printf("\r\n×ó\r\n");//}else if(key==2) //>>|{Model=3;delay_ms(500);//ÑÓʱ300ms Model=1;printf("\r\nÓÒ\r\n");//}else if(key==162) //CH-{Model=1;printf("\r\nÇ°½ø\r\n");//}else if(key==98) //CH{Model=2;printf("\r\nºóÍË\r\n");//}else if(key==48) // °´Ï¼ü1{PWM_WIDTH=40;printf("\r\n1µµ\r\n");//}else if(key==24) // °´Ï¼ü2{PWM_WIDTH=35;printf("\r\n2µµ\r\n");//}else if(key==122) // °´Ï¼ü3{PWM_WIDTH=28;printf("\r\n3µµ\r\n");//}}} int main(void){u16 adcx;unsigned long adtemp,adtemp1;u16 Weight=0;u16 temp1,temp2;delay_init();//ÑÓʱº¯Êý³õʼ»¯ LED_Init(); //³õʼ»¯ÓëLEDÁ¬½ÓµÄÓ²¼þ½Ó¿Úuart_init(9600);//uart2_init(9600); TIM3_Int_Init(10,5199);//10KhzµÄ¼ÆÊýƵÂÊ£¬¼ÆÊýµ½10Ϊ1ms ¿ØÖÆС³µ·½Ïò¼°ËÙ¶ÈCH_SR04_Init();//³¬Éù²¨ÉèÖóõʼ»¯Remote_Init();//ºìÍâ½ÓÊÕ³õʼ»¯ //ADInit();Beep=1;delay_ms(100);//ÑÓʱ300msBeep=0;delay_ms(100);//ÑÓʱ300msBeep=1;delay_ms(100);//ÑÓʱ300msBeep=0;printf("\r\n-----------------------------------------------\r\n");//adtemp=HX711_Read(); //ÏȶÁȡƤÖضÔÓ¦µÄAD¡£×¢Ò⣺ÉϵçÇ° ³ÆÖØÅÌÉϲ»ÄÜ·ÅÈκÎÎïÆ·£¬ÒÔÃâÔì³É²âÁ¿²»×¼¡£Model=0;while(1){Hw_Process();//ºìÍâÒ£¿Ø´¦Àíif(RunModel==0) //×ÔÓÉÒ£¿Ø±ÜÕÏģʽ£¬Ò£¿Ø¿ØÖÆ +³¬Éù²¨±ÜÕÏ{temp1=Senor_Using_Left()*10;printf("\r\n×ó·½¾àÀë= %d cm",temp1);//´®¿Ú´òÓ¡³öµçѹÐÅÏ¢temp2=Senor_Using_Right()*10;printf("ÓÒ·½¾àÀë= %d cm\r\n",temp2);//´®¿Ú´òÓ¡³öµçѹÐÅÏ¢if((temp1<250||temp2<250)&&Model==1)//Ç°·½ÕÏ°­Ì«½ü£¬ÐèÒª±ÜÕÏ{Model=0;delay_ms(300);//ÑÓʱ300ms Model=2;//ºóÍËdelay_ms(300);//ÑÓʱ300ms Model=4;//ÓÒתdelay_ms(300);//ÑÓʱ300ms Model=1;//Ç°½ø}}else if(RunModel==1) //½øÈë×Ô¶¯¸úËæģʽ {adtemp1=HX711_Read(); if(adtemp1>adtemp) //Åжϼì²âµ½AD´óÓÚƤÖØʱ£¬ÈÏΪÓÐÎïÌå·ÅÖá£{Weight=(adtemp1-adtemp)*0.002388; //¸ù¾Ý´®¿Úµ÷ÊÔ¸ÃϵÊý¼ÆËã¹ý³ÌΪ£º200g ¡Â£¨8494856£¨·ÅÖÃ200gÎïÌå¶ÔÓ¦AdÖµ£©-8411097£¨ÎÞÎïÌå·ÅÖÃʱÊä³öADÖµ£©£©printf("\r\n ÖØÁ¿=%d g\r\n",Weight);}if(Weight>500)//Èç¹ûÖØÎï´óÓÚ 500g ·äÃùÆ÷±¨¾¯¡£²»¸úËæ{Beep=1;delay_ms(300);//ÑÓʱ300msBeep=0;delay_ms(300);//ÑÓʱ300ms}else{temp1=Senor_Using_Left()*10;printf("\r\n×ó·½¾àÀë= %d cm",temp1);//´®¿Ú´òÓ¡³öµçѹÐÅÏ¢temp2=Senor_Using_Right()*10;printf("ÓÒ·½¾àÀë= %d cm\r\n",temp2);//´®¿Ú´òÓ¡³öµçѹÐÅÏ¢if((temp1<200)||(temp2<200)) // 200= 20cm ×óÓÒÓÐÒ»·½Ð¡ÓÚ20cm{Model=0;//Í£Ö¹ }else if((temp1>1000)&&(temp2>1000)){printf("\r\nÍ£Ö¹\r\n");Model=0;// }else if((temp1<1000)&&(temp2<1000)){printf("\r\nÇ°½ø\r\n");Model=1;// delay_ms(300);//ÑÓʱ300ms if(temp1>temp2) //˵Ã÷´Ëʱ С³µ³µÍ·Ïà¶ÔÈËÆ«×ó£¬Ó¦ÈÃС³µÏòÓÒ¹ÕÍä{Model=3;//ÓÒתprintf("\r\nÓÒת\r\n");delay_ms(200);//ÑÓʱ300ms // }else if(temp2>temp1)//˵Ã÷´Ëʱ С³µ³µÍ·Ïà¶ÔÈËÆ«ÓÒ£¬Ó¦ÈÃС³µÏò×ó¹ÕÍä{Model=4;//×óתprintf("\r\n×óת\r\n");delay_ms(200);//ÑÓʱ300ms } }Model=0;// }}}}

论文报告:

全部资料如下:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。