加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入

STM32單片機(jī)智能跟隨小車_紅外遙控(程序+原理圖+PCB+論文報(bào)告)

07/04 13:12
2923
服務(wù)支持:
技術(shù)交流群

完成交易后在“購買成功”頁面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購買后不支持退換且無法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
實(shí)物圖
相關(guān)方案
  • 方案介紹
  • 相關(guān)文件
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

本設(shè)計(jì):
基于STM32單片機(jī)智能跟隨小車_紅外遙控(程序+原理圖+PCB+論文報(bào)告)
原理圖:Altium Designer
程序編譯器:keil 5
編程語言:C語言
編號C0021

資料下載
【騰訊文檔】C0021 網(wǎng)盤鏈接
https://docs.qq.com/doc/DS1JjTFhXRHZXRnJj

功能描述:
1.以STM32F103RBT6為主控芯片,實(shí)現(xiàn)對小車的控制,使小車能夠做出前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)等基本行駛動作,通過紅外遙控控制小車工作模式的轉(zhuǎn)換(自由行走避障模式、跟隨模式)
2.利用壓力傳感器測重,放在小車上物品的重量在500g范圍以內(nèi),可以跟隨,如果超過范圍,就停止不動,蜂鳴器響提示超重。
在這里插入圖片描述

原理圖(提供源文件):

在這里插入圖片描述

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);	//?óê±300ms
			Beep=0;			
			printf("rnoìía?ü?μ= %drn",key);
		}
   
    		
if(key==224)// - :??è? ×?óéò£??±ü???£ê?		
		{
     RunModel=0;
		}
else if(key==168)// - :??è? ?ú???£ê?		
   {
	   RunModel=1;
	 } 
 if(RunModel==0) //×?óéò£??±ü???£ê?£?ò£??????
  {
   if(key==194)// ?Yí£ >||
			{
			   Model=0;
 				 
				 printf("rn�1rn");//
			}			 
	  else if(key==34)//|<<
			{
			   Model=4;
				 delay_ms(500);	//?óê±300ms 
				 Model=1;
				 
				 printf("rn×órn");//
			}
			else if(key==2) //>>|
			{
			   Model=3;
				 delay_ms(500);	//?óê±300ms 
				 Model=1;
  		 
				 printf("rnóòrn");//
			}
			else if(key==162) //CH-
			{
			   Model=1;
				 
				 printf("rn?°??rn");//
			}
			else if(key==98) //CH
			{
			   Model=2;
 		 
				 printf("rnoóí?rn");//
			}				
			else if(key==48)  // °′???ü1
			{
			   PWM_WIDTH=40;
 			 
				 printf("rn1μμrn");//
			}
			else if(key==24)  // °′???ü2
			{
			    PWM_WIDTH=35;
 				  
				 printf("rn2μμrn");//
			}	
			else if(key==122)  // °′???ü3
			{
			   PWM_WIDTH=28;
 
				 printf("rn3μμrn");//
			}				
 
  }
}  
 int main(void)
 {	
	 u16 adcx;
	
	 unsigned long adtemp,adtemp1;
	 u16 Weight=0;
	u16 temp1,temp2;
	delay_init();	    	 //?óê±oˉêy3?ê??ˉ	  
	 LED_Init();		  	//3?ê??ˉó?LEDá??óμ?ó2?t?ó?ú
 
	   
	uart_init(9600);
  //uart2_init(9600); 
	TIM3_Int_Init(10,5199);//10Khzμ???êy?μ?ê£???êyμ?10?a1ms   ????D?3μ·??ò?°?ù?è
  CH_SR04_Init();//3?éù2¨éè??3?ê??ˉ
	Remote_Init();			//oìía?óê?3?ê??ˉ	 
	//ADInit();
	Beep=1;
	delay_ms(100);	//?óê±300ms
  Beep=0;
	delay_ms(100);	//?óê±300ms
	Beep=1;
	delay_ms(100);	//?óê±300ms
  Beep=0;
	printf("rn-----------------------------------------------rn");//
	adtemp=HX711_Read();  //?è?áè??¤????ó|μ?AD?£×¢òa£oé?μ??° 3????ìé?2??ü·?è?o????·£?ò??a?ì3é2aá?2?×??£
	Model=0;
		 	
		while(1)
		{	 
 
 
     Hw_Process();//oìíaò£??′|àí
		if(RunModel==0) //×?óéò£??±ü???£ê?£?ò£?????? +3?éù2¨±ü??
		{  
       temp1=Senor_Using_Left()*10;
			 printf("rn×ó·??àà?= %d cm",temp1);//′??ú′òó?3?μ??1D??¢
       temp2=Senor_Using_Right()*10;
			 printf("óò·??àà?= %d cmrn",temp2);//′??ú′òó?3?μ??1D??¢			
			 if((temp1<250||temp2<250)&&Model==1)//?°·???°-ì??ü£?Dèòa±ü??
			 {
				 Model=0;
				 delay_ms(300);	//?óê±300ms 
				 Model=2;//oóí?
				 delay_ms(300);	//?óê±300ms 
			   Model=4;//óò×a
				 delay_ms(300);	//?óê±300ms 
				 Model=1;//?°??
			 }
		}
	else if(RunModel==1) //??è?×??ˉ?ú???£ê? 
	  {
			adtemp1=HX711_Read();  
			if(adtemp1>adtemp) //?D???ì2aμ?AD′óóú?¤??ê±£?è??aóD??ì?·????£
			{
			 Weight=(adtemp1-adtemp)*0.002388;   //?ù?Y′??úμ÷ê????μêy????1y3ì?a£o200g ??£¨8494856£¨·???200g??ì???ó|Ad?μ£?-8411097£¨?T??ì?·???ê±ê?3?AD?μ£?£?
			 printf("rn ??á?=%d grn",Weight);
			}	
	  if(Weight>500)//è?1?????′óóú 500g  ·??ù?÷±¨?ˉ?£2??ú??
		  {
			  Beep=1;
				delay_ms(300);	//?óê±300ms
				Beep=0;
				delay_ms(300);	//?óê±300ms
			}
	  else
		  {
				  
		      temp1=Senor_Using_Left()*10;
			    printf("rn×ó·??àà?= %d cm",temp1);//′??ú′òó?3?μ??1D??¢
          temp2=Senor_Using_Right()*10;
			    printf("óò·??àà?= %d cmrn",temp2);//′??ú′òó?3?μ??1D??¢		
			 
          			if((temp1<200)||(temp2<200))  // 200= 20cm   ×óóòóDò?·?D?óú20cm
									{
										 	  Model=0;//�1 
									}
								else   if((temp1>1000)&&(temp2>1000))
								 {
									      printf("rn�1rn");
												Model=0;// 
								 }
                else if((temp1<1000)&&(temp2<1000))
								{
								    printf("rn?°??rn");
									  Model=1;// 
								    delay_ms(300);	//?óê±300ms 
									
									
											if(temp1>temp2) //?μ?÷′?ê± D?3μ3μí·?à??è???×ó£?ó|è?D?3μ?òóò1?í?
											{

												Model=3;//óò×a
												printf("rnóò×arn");
												delay_ms(200);	//?óê±300ms 
												       // 
											}
											else if(temp2>temp1)//?μ?÷′?ê± D?3μ3μí·?à??è???óò£?ó|è?D?3μ?ò×ó1?í?	
											{

												Model=4;//×ó×a
												printf("rn×ó×arn");
												delay_ms(200);	//?óê±300ms 
												 
											} 
								}									
		          Model=0;// 
				 
		  }
	  }
 
			
		 
		}
 }


在這里插入圖片描述

論文報(bào)告:
在這里插入圖片描述

全部資料如下:
在這里插入圖片描述

  • 設(shè)計(jì)資料獲取聯(lián)系方式.doc

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風(fēng)險(xiǎn)等級 參考價(jià)格 更多信息
STM32F745IGT6 1 STMicroelectronics High-performance and DSP with FPU, Arm Cortex-M7 MCU with 1 Mbyte of Flash memory, 216 MHz CPU, Art Accelerator, L1 cache, SDRAM

ECAD模型

下載ECAD模型
$16.29 查看
STM32F405RGT6TR 1 STMicroelectronics High-performance foundation line, Arm Cortex-M4 core with DSP and FPU, 1 Mbyte of Flash memory, 168 MHz CPU, ART Accelerator

ECAD模型

下載ECAD模型
$13.5 查看
ATXMEGA256A3BU-AU 1 Microchip Technology Inc IC MCU 8BIT 256KB FLASH 64TQFP

ECAD模型

下載ECAD模型
$8.44 查看

相關(guān)推薦

電子產(chǎn)業(yè)圖譜