蓝牙调速小车测试程序(只放程序)

51单片机智能小车——蓝牙切换循迹避障并测速oled显示 蓝牙切换功能:智能小车内置了蓝牙模块,可以通过手机或其他蓝牙设备与之连接。用户可以通过手机发送指令控制小车的运动方向,实现远程控制。循迹功能:智能小车配备了红外线传感器,可以实现循迹功能。通过检测地面上的黑线或白线,小车能够自动沿着线路行驶,实现自动导航功能。避障功能:智能小车搭载了红外避障传感器,能够检测前方的障碍物。当检测到障碍物时,小车会自动停下或转向,以避免碰撞,确保安全行驶。测速功能:智能小车集成了电机编码器或其他测速装置,可以准确测量车轮的转速。 阅读详情

亲测有效

需要的材料

1.蓝牙串口软件

应用商店可以下载

蓝牙串口软件

2.L298N电机驱动模块

淘宝可以买得到

在这里插入图片描述

3.stc89c52最小系统板

淘宝可以买得到

在这里插入图片描述

4.智能车底盘

淘宝可以买得到

在这里插入图片描述

蓝牙模块:JDY-31

淘宝购买

在这里插入图片描述

接线资料在买模块的时候会有(自己去实践)

测试代码

#include <reg52.h>
//定义输出端口
sbit INT=P1^0;
sbit INT2=P1^1;
sbit INT3=P1^2;
sbit INT4=P1^3;
sbit EN1 = P1^4;
sbit EN2 = P1^5;

typedef unsigned int u16;
typedef unsigned char u8;

	u8  buf;		//串口数据缓冲
	
	u8 speed=100;	//设置初始速度
	
	u8 pwm;			//设置比较参数
 
//向前走
void CarGo()
{

  speed = 50;
	  INT= 1;
	  INT2=0;
	  INT3=1;
	  INT4=0;
}
//向后走
void CarBack()
{
  speed = 40;
	 INT= 0;
	 INT2=1;
	 INT3=0;
	 INT4=1;

  
}
//小车左转
void CarTurnLeft()
{
    speed = 35;
	  INT=0;
	  INT2=0;
	  INT3=1;
	  INT4=0;
  
}
//小车右转
void CarTurnRight()
{
   speed = 35;
	  INT= 1;
	  INT2=0;
	  INT3=0;
	  INT4=0;

}



//小车停止
void CarStop()
{

	  INT= 0;
	  INT2=0;
	  INT3=0;
	  INT4=0;
  speed = 0;
}


//小车加速
void speedup()
{
	  INT= 1;
	  INT2=0;
	  INT3=1;
	  INT4=0;
  speed+=4;
  if(speed>=100)
  {
  	speed = 100;
  }
 

}



//小车减速
void speeddown()
{
	  INT= 1;
	  INT2=0;
	  INT3=1;
	  INT4=0;
  speed-=5;
  if(speed<=18)
  {
  	speed = 18;
  }
  
}



//初始化定时器0,以用于调速
void timer ()
{
	TMOD|=0X01;
	TH0 = (65536-1500)/256;
	TL0 = (65536-1500)%256;	  
	TR0 = 1;
	ET0 = 1;
	EA =1;
}
//定时器1中断函数
void init() interrupt 1
{
	TH0 = (65536-100)/256;
	TL0 = (65536-100)%256;
	pwm++;
	
	if(pwm==100)
	{pwm = 0;}
	if(pwm<=speed)
	{
		EN1 = 1;
		EN2 = 1;
	
	}
	 if(pwm>speed)
	{
		EN1 = 0;
		EN2 = 0;
		
	}


	
}

//串口初始化
void irinit()
{
	 SCON=0x50;		//设定串口工作方式
	 PCON=0x00;		//波特率不倍增

     EA=1;			//打开总中断

	 TMOD|=0x20;
	 ES=1;			//打开串口中断
	 TR1=1;
	 TH1=0xFD;		//设置波特率为9600;
	 TL1=0xFD;
}

void main()
{

  irinit();
  timer ();
   while(1);
  
 
  
}

void serial() interrupt 4  
{
  	TL1=0xFD;
 	TH1=0xFD;//波特率9600


 	buf = SBUF;//从串口缓冲区取得数据

//接收手机传给蓝牙的指令以控制小车
 	while(!RI); 
	  RI = 0;  
	 if(buf=='G')
	 {
	  	CarGo();  
	 }
	 if(buf=='B')
	 {
	   	CarBack(); 
	 }
	 if(buf=='S')
	 {
	 	 CarStop();  
	 }
	 if(buf=='C')
	 {
	  
	  	 CarTurnLeft(); 
	 }
	 if(buf=='E')
	 {
	 	 CarTurnRight();  
	 }
	
	 if(buf=='1')
	 {
		speedup(); 
		
		   	
	 }
	 if(buf=='2')
	 {
		speeddown(); 
		
		   	
	 }
  }
注意:蓝牙的指令得从串口软件进行设置
基于Arduino与蓝牙的智能小车遥控系统设计与迷宫挑战实践 嵌入式系统开发是连接物理世界与数字世界的核心技术,其核心原理在于通过微控制器实时处理传感器数据并驱动执行器,实现对物理设备的精确控制。这项技术的价值在于能够构建智能、互动的硬件系统,广泛应用于机器人、物联网和自动化领域。在机器人入门实践中,通过蓝牙通信进行无线遥控是一个典型应用场景,它融合了无线通信协议、电机驱动与PWM调速等关键技术。本项目以Arduino Nano为核心控制器,结合HC-06蓝牙模块与TB6612电机驱动,构建了一套完整的智能小车遥控系统。通过自定义串口通信协议,实现了手机App对小车运 阅读详情

相关推荐

安卓蓝牙调试软件与HC-05模块实战:从连接到Arduino小车控制

本文详细介绍了如何使用安卓蓝牙调试软件连接HC-05模块并控制Arduino小车的完整流程。从硬件连接到手机端配对,再到进阶功能配置,提供了实用的调试技巧和创意应用建议,帮助硬件爱好者快速掌握蓝牙控制技术。

weixin_30879169的博客 497

小兴教你做平衡小车-蓝牙模块JDY-31介绍

小兴教你做平衡小车-蓝牙模块JDY-31介绍

qq_41735476的博客 5375

基于FreeRTOS的STM32智能小车避障系统设计与实现

本文详细介绍了基于FreeRTOS实时操作系统的STM32智能小车避障系统设计与实现。通过将超声波测距、蓝牙遥控、电机控制等功能拆分为独立任务,利用FreeRTOS的多任务调度、队列和信号量机制,实现了系统的高效协同与实时响应。项目采用STM32F103C8T6主控,结合L298N驱动、HC-SR04传感器等硬件,完成了从硬件搭建、系统移植到多任务逻辑与运动控制的完整开发流程,为嵌入式实时系统应用提供了实践范例。

weixin_29172201的博客 441

(STM32F103C8T6 + JDY-31 + L298N)——蓝牙小车

蓝牙小车一、视频展示二、所需材料三、硬件1、LED2、蜂鸣器3、电机4、串口四、软件1、main.c2、usart.c3、motor.c4、buzz.c5、led.c 一、视频展示 STM32F103 + 蓝牙 + 手机APP 遥控车 二、所需材料 材料 数量 STM32F103C8T6最小系统板 1 L298N 2 JDY-31 1 减速电机 4

Guan_qiqi的博客 1万+

基于ESP32与L298N的双轮遥控小车:PWM电机控制与Blynk物联网实践

PWM(脉冲宽度调制)是嵌入式系统中控制电机速度、LED亮度等模拟量的核心技术,其原理是通过调节数字信号中高电平的占空比来等效实现模拟输出。在电机控制领域,PWM结合H桥驱动电路(如L298N模块)可精确控制直流电机的转向与转速,这是机器人底盘运动控制的基础。这项技术的工程价值在于实现了高效、精准的动力控制,广泛应用于智能小车、无人机、机械臂等移动平台。通过物联网平台(如Blynk)将PWM控制与无线通信结合,可轻松构建手机遥控的智能设备,例如本文详细讲解的**双轮遥控小车**项目,它完整演示了如何利用**

weixin_30423977的博客 656

TT马达与L298N驱动模块实战:Arduino UNO 实现双电机PWM调速与正反转控制

本文详细介绍了如何使用Arduino UNO和L298N驱动模块控制TT马达,实现双电机的PWM调速与正反转功能。通过硬件连接指南、代码示例和常见问题解决方案,帮助创客和硬件爱好者快速掌握智能小车和机器人项目中的电机控制技术。

weixin_34367257的博客 406

使用STM32制作蓝牙小车的记录(附源码)。库函数开发,可复现!

用STM32制做简易的蓝牙小车,提供代码,帮助初学者学习!

Kirelley_的博客 773

Arduino智能小车入门:从零构建感知-决策-执行框架

嵌入式系统开发的核心在于理解“感知-决策-执行”这一通用控制框架。该框架将复杂的物理世界交互分解为三个逻辑模块:感知模块负责采集环境数据,决策模块进行逻辑处理,执行模块则驱动硬件动作。这一模式是自动化与智能控制的基础,广泛应用于机器人、物联网和智能设备领域。在工程实践中,Arduino平台因其极低的认知摩擦和丰富的库生态,成为实现该框架的理想起点。通过构建一个基础的避障小车项目,开发者可以深入理解PWM调速、串口通信、传感器数据采集等关键技术,并将模块化编程和系统调试的方法论沉淀为可复用的工程能力。

weixin_30546189的博客 398

51单片机智能小车蓝牙

材料: (1)51单片机开发板 (2)l298n电机驱动模块1个 (3)四个电机 (4)JDY-31蓝牙模块 一、组装 (1)L298N电机驱动模块与stm32开发板接线如下图: (2)蓝牙接线: VCC接51单片机开发板的5v,GND接51单片机开发板的GND,TXD接51单片机开发板的P30引脚,RXD接51单片机开发板的P31引脚,烧录程序的时候要先把P30,P31两个引脚先拔掉,不然会被占用导致烧录不了程序。 二、烧录问题 烧录程序的时候要先把蓝牙P30,..

weixin_65866701的博客 9577

嵌入式入门实战:从零搭建循迹小车,掌握硬件调试与PID控制

嵌入式系统开发是连接软件与物理世界的核心技术,其核心在于通过微控制器(如Arduino、STM32)读取传感器数据,经过程序逻辑处理,最终驱动执行器完成特定任务。这一过程涉及电路设计、信号处理、实时控制等多个工程领域,其技术价值在于能够实现自动化、智能化的物理系统控制。在智能小车、物联网设备、工业自动化等应用场景中,嵌入式技术发挥着基础性作用。本文以循迹小车这一经典项目为载体,深入探讨了红外传感器的工作原理、电机驱动电路(如TB6612FNG)的选型与连接,并重点解析了如何通过PID控制算法优化小车的运动稳

weixin_34235457的博客 344

从零打造ESP32网页遥控小车:硬件选型、Wi-Fi控制与进阶功能实战

在嵌入式开发与物联网应用中,电机控制与无线通信是两大核心基础。通过PWM(脉冲宽度调制)技术,可以精确控制直流电机的速度与方向,而Wi-Fi通信则为设备提供了远程交互能力。结合ESP32这类集成了双核处理器、硬件PWM和Wi-Fi/蓝牙的微控制器,开发者能够高效构建实时性高、功能丰富的智能硬件项目。其技术价值在于将传统的本地控制升级为可远程访问、可扩展的联网智能平台,广泛应用于教育机器人、智能家居和自动化原型开发等场景。本文以制作一辆网页遥控小车为例,详细解析了如何利用ESP32的硬件PWM实现稳定的电机驱

weixin_33798152的博客 393

基于Arduino与蓝牙BLE的iOS遥控小车:从硬件搭建到App开发全流程

嵌入式系统开发与物联网应用常涉及微控制器与无线通信技术的结合。Arduino作为开源硬件平台,以其易用性和丰富的库资源,成为快速原型开发的理想选择。其工作原理是通过编写固件程序控制I/O引脚,驱动执行机构如电机。蓝牙低功耗(BLE)技术则提供了低功耗、短距离的无线通信能力,是实现设备间数据透传的关键。在工程实践中,将Arduino与BLE结合,能够高效构建可无线控制的智能硬件,其技术价值在于实现了物理设备与移动终端的无缝交互,极大拓展了创客项目与教育实践的可能性。典型的应用场景包括智能家居控制、教育机器人以

weixin_33795743的博客 413

基于STM32与FreeRTOS的平衡小车:从实时系统到PID控制实战

实时操作系统(RTOS)是嵌入式开发中处理多任务并发的核心技术,它通过任务调度、同步与通信机制,将复杂系统拆分为独立模块,显著提升代码可维护性与实时性。FreeRTOS作为轻量级开源RTOS,在资源受限的MCU(如STM32)上广泛应用,其多任务架构尤其适合对实时性要求高的控制场景,如倒立摆、电机控制等。平衡小车项目正是这一技术的典型实践:通过FreeRTOS将传感器数据采集、姿态解算、PID控制等任务解耦,结合MPU6050传感器数据融合与串级PID算法,实现小车的自主平衡与运动控制。本文以STM32F1

weixin_33698823的博客 303

51单片机循迹小车:从硬件选型到PID算法,手把手打造嵌入式入门经典项目

在嵌入式系统与自动控制领域,闭环控制是实现设备自主运行的核心原理。它通过传感器采集环境信息(输入),经由控制器(如单片机)执行预设算法进行处理,最终驱动执行机构(输出)完成特定任务,形成一个完整的反馈调节回路。这一技术框架是机器人、智能车及工业自动化等应用的基础。循迹小车作为经典的工程实践项目,完美诠释了这一原理:利用红外传感器感知地面轨迹线,由51单片机作为控制核心,通过PWM(脉冲宽度调制)技术驱动电机差速转向,实现自动巡线功能。其价值在于将抽象的控制理论转化为直观的、可动手实现的作品,是学习嵌入式开发

weixin_34356555的博客 402

小白Arduino小车学习分模块版

Arduino小车开发学习笔记,分模块实现代码

2301_80038946的博客 2622

别再手动抄表了!用MCGS触摸屏自动存数据到U盘,5分钟搞定报表导出

本文详细介绍了如何利用MCGS触摸屏实现工业数据自动记录与U盘导出,彻底告别传统手动抄表方式。通过昆仑通态MCGS系统,可构建零误差自动化报表系统,实现实时数据采集、双重备份及标准CSV格式导出,大幅提升数据准确性和工作效率。

weixin_30872157的博客 793

从零到一:Arduino智能循迹小车的实战开发与避坑指南

本文是一份详尽的Arduino智能循迹小车开发实战指南。内容涵盖从硬件选型(如Arduino Uno主控板、TB6612电机驱动、四路红外传感器)与避坑组装,到模块化代码框架搭建、PID循迹算法实现,再到深度调试、蓝牙遥控拓展及常见故障排查。旨在帮助开发者,尤其是初学者,系统掌握智能小车核心技术,成功打造稳定运行的循迹机器人。

red88的博客 443

别光看手册!手把手教你用SGM2036 LDO设计一个稳定3.3V转1.8V的MCU供电电路(附PCB布局避坑指南)

本文详细介绍了如何使用SGM2036 LDO设计一个稳定的3.3V转1.8V的MCU供电电路,包括需求分析、芯片选型、外围器件计算、PCB布局避坑指南及实测验证。通过实际案例和计算示例,帮助工程师快速掌握LDO应用技巧,确保系统电源稳定可靠。

weixin_42548893的博客 505

基于Arduino与LabVIEW的Makeblock小车PWM电机控制与无线通信系统设计

PWM(脉冲宽度调制)是嵌入式系统和机器人控制中实现电机精准调速的核心技术。其原理是通过调节脉冲信号的占空比,来等效改变输出到电机的平均电压,从而控制转速。这项技术的价值在于能以数字方式高效、平滑地控制模拟设备,是实现自动化设备精确运动的基础。在机器人、智能小车、无人机等广泛的应用场景中,PWM结合可靠的无线通信协议,构成了远程运动控制系统的关键。本文以Makeblock智能小车为具体载体,深入探讨了如何利用Arduino生成PWM信号驱动电机,并设计基于LabVIEW的上位机控制界面,通过XBee无线模块

weixin_33853794的博客 396

怎么在豆包里做生成式引擎优化(GEO)

本文系统介绍了豆包平台生成式引擎优化(GEO)的全套方法体系。文章首先解析了豆包与传统搜索引擎的核心差异,强调其多模态理解和上下文感知特性,并指出GEO需从关键词匹配转向用户意图动态解析。随后详细阐述了GEO优化的三大核心策略:用户意图解析技术、实时内容适配框架和权威信号强化方法,配以技术实现路径和案例说明。最后提出GEO与SEO融合的未来趋势,建议企业构建统一知识库,实现全渠道声誉管理。全文包含大量实操代码和工具链指导,为企业在AI时代的内容优化提供系统解决方案。

解锁AI流量新红利!🚀 GEO优化(生成引擎优化)助您掌控AI搜索,让AI成为您的品牌最佳代言人! 2378

【YOLOv8科研级优化】集成YOLOv10的SCDown采样模块,让你的模型下采样更高效更精准

打开确保模型解析器能识别SCDown模块。通过将YOLOv10的SCDown模块集成到YOLOv8中,我们实现了一个“细节保留+高效下采样”的目标检测模型。这个改进不仅在工程上能提升小目标、细粒度场景的检测效果,更在科研上提供了“分阶段下采样”的创新思路——这种思路可以延伸到其他卷积网络(如ResNet、MobileNet)的下采样层改进中,帮你在论文中打造独特的研究点。

m0_71589036的博客 137

基于Arduino的智能小车开发:从硬件组装到避障循迹算法实战

嵌入式开发与机器人技术是当前物联网和智能硬件领域的核心基础。其原理在于通过微控制器(如Arduino)作为大脑,结合电机驱动、传感器等执行与感知单元,实现对物理设备的智能控制。这项技术的价值在于将抽象的编程逻辑转化为具体的物理行为,是学习自动控制、实时系统及算法设计的绝佳实践平台。在应用场景上,它广泛覆盖了教育机器人、智能家居、自动化巡检及STEM教学等领域。本文以热门的Arduino Uno和扩展板(Shield)为核心,详细解析如何从零构建一个模块化的智能移动机器人平台——Shield Bot V1.2

weixin_33725270的博客 745

高通Camx功能feature分析之一:remosaic功能导通

本文详细介绍了S5K3P9S传感器前置场景中SW Remosaic功能的实现流程。首先需在sensorxml中确认支持SW Remosaic类型,并集成remosaic相关库文件(libremosaic_wrapper.so等)。核心实现包括:初始化阶段调用InitFrontSamsungRemosaic();执行线程DeferFrontInitThread()读取校准数据;通过DoSamsungRemosaic()执行remosaic算法处理;最后在析构函数中调用DeinitFrontSamsungRem

1700
上一篇: 【代码简单简洁】51单片机入门速成——蜂鸣器
下一篇: 【避坑】【白嫖福利】PCF8574驱动程序,IO口驱动程序(本人亲写,国产有坑)
麟枫
博客等级 码龄7年 107粉丝 14原创
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值