51单片机小车(附源码)

article/2025/8/4 5:01:08

算是做的第一个比较完整的序幕项目,用到的模块不多,更多时间花在调试硬件封方面,比如电池带不动电机导致51单片机重启。

项目框图

在这里插入图片描述

项目流程图

在这里插入图片描述
通过蓝牙发送指令控制小车的前进、后退、转向、调速等功能。
在小车运动过程中黄灯亮起,提示正在运动中。
当车头前20cm处有障碍物时自动停车,红灯亮起,同时禁用前进功能

代码

main.c

#include "bluetooth.h"
#include "srf.h"
#include "ln.h"
#include "pwm.h"
typedef unsigned int u16;	  //对数据类型进行声明定义
typedef unsigned char u8;
extern unsigned char USART_RX_BUF[USART_MAX_RECV_LEN];//接收到的数据
sbit Led = P0^1;	//电机运行指示灯
sbit Led1 = P0^0;  //超声波测距指示灯
u8 Flag1=0;extern unsigned long S;
void delay(u16 i)
{while(i--);
}
void main()
{Led = 0;UsartInit();  //串口初始化initT0(); //PWM调速initT2(); //超声波测距//StartModule();!!!	while(1){count();if((S<=20)&&(S>=2))	{//USART_RX_BUF[0]=0x15;if((Flag1<=3)&&(USART_RX_BUF[0]==0x13)){left_off();right_off();USART_RX_BUF[0]=0x15;Flag1++;}						Led1 = 1;delay(100);}else{Led1 = 0;}		if(USART_RX_BUF[0]==0x13){	 //前left_up();right_up();Led = 1;Flag1 = 0;		}	if(USART_RX_BUF[0]==0x15){	 //停left_off();right_off();Led = 0;Flag1 = 0;		}else if(USART_RX_BUF[0]==0x11){	 //后left_down();right_down();Led = 1;Flag1 = 0;		}else if(USART_RX_BUF[0]==0x17){	 //右					left_off();right_up();Led = 1;Flag1 = 0;		}else if(USART_RX_BUF[0]==0x19){	 //左right_off();left_up(); Led = 1;Flag1 = 0;		}else if(USART_RX_BUF[0]==0x21){	 //转圈left_up();right_down();Led = 1;Flag1 = 0;		}else if(USART_RX_BUF[0]==0x29){	 //加速speed_add();		}else if(USART_RX_BUF[0]==0x31){	 //减速speed_reduce();		}delay(200);			}		
}
void Usart() interrupt 4
{unsigned char res;res=SBUF;USART_RX_BUF[0]=res;RI = 0;//清除接收中断标志位	if(USART_RX_BUF[0]==0x25){	 //加速speed_add();		}else if(USART_RX_BUF[0]==0x27){	 //减速speed_reduce();		}}

实物

实物图如下:(因材制宜)看着有点奇怪
请添加图片描述

主要知识点:

1、定时器2中断的使用
2、PWM调速
3、蓝牙通信
4、超声波测距

源码

项目源码
提取码:6666
一起学习,共同进步!


http://chatgpt.dhexx.cn/article/HNqomEUt.shtml

相关文章

单片机智能小车

单片机智能小车&#xff1a; 基于单片机控制的自主寻迹电动小车的设计&#xff1a; 摘 要:针对小车在行驶过程中的寻迹要求&#xff0c;设计了以AT89C51单片机为核心的控制电路&#xff0c;采用模块化的设计方案&#xff0c;运用色标传感器、金属探测传感器、超声波传感器、霍尔…

51单片机寻迹小车

# 基于51单片机的循迹小车(详细讲解源码) 作为一名学生&#xff0c;这里我就简单谈谈我们小组做这个循迹小车的一个过程。主要是实现小车寻黑线行驶的这样一个功能&#xff0c;速度可以调节(定时器中断模拟PWM波实现) 一丶硬件部分 小车的主体框架是一个三轮的外在形态 电源…

【51单片机实例】智能小车(一)--------小车的前进、后退和停止

51智能小车系列 智能小车&#xff08;二&#xff09;-------- 小车的红外遥控调速 智能小车&#xff08;三&#xff09;-------- 小车的红外循迹 文章目录 前言一、硬件选择1.1 小车底盘1.2 电机1.3 51单片机最小系统板1.4 L298N双路电机驱动模块1.5 电源1.6 杜邦线 二、硬件连…

51单片机蓝牙小车(精要版)

51单片机蓝牙小车&#xff08;精要版&#xff09; 实现&#xff1a;通过手机与小车的蓝牙通信&#xff0c;实现手机控制小车前后左右的移动。 这是博主学了51单片机第一次做的单片机项目&#xff0c;选择了许多人喜欢的蓝牙小车作为第一个项目。 准备材料&#xff1a; 1.小…

51单片机项目设计:51单片机蓝牙小车制作教程,新手必做!(手机控制前后左右行走)

哔哩哔哩项目展示视频&#xff1a;https://www.bilibili.com/video/BV1Wy4y1z7a5 QQ交流群1&#xff1a;981140834 QQ交流群2&#xff1a;473982062 QQ交流群3&#xff1a;718245727 QQ交流群4&#xff1a;598455837 csdn资料链接&#xff1a;https://download.csdn.net/downl…

51单片机智能小车

最近学校举办了一个智能小车比赛&#xff0c;比赛内容为用手机蓝牙控制小车拥有5个功能&#xff0c;分别是超声波舵机避障&#xff0c;测距&#xff08;显示在LCD1602上&#xff09;&#xff0c;红外跟随&#xff0c;循迹还有蓝牙控制小车前进后退左转又转以及停止。 文章目录 …

51单片机智能循迹小车的通俗易懂讲解

. . 从上面导航图&#xff0c;我们可以看到&#xff0c;智能小车&#xff0c;共分为三步 外部检测&#xff0c;控制中心&#xff0c;轮子输出控制。 等于人的 . . 因为单片机控制中心和轮子输出控制是一样的&#xff0c;只有前面的外部检测&#xff0c;换个模块工作而已。 . …

基于51单片机四路循迹小车

文章目录 一. 任务要求二. 系统原理三. 整体方案1. 控制模块最小系统去除AD网格线 2. 电机驱动模块3. 电源模块4. 循迹模块5. 超声波测距模块 四. 车体实物图五. 软件实现 这学期开设的51单片机课程的课程设计即将验收&#xff0c;今天开始正式着手做循迹小车~ 一. 任务要求 二…

51单片机循迹小车

一.材料 1.51单片机开发板 2.L298N电机 3.红外循迹模块 4.直流电机 5.电池&#xff08;提供电源&#xff0c;选用的是三节18650锂电池&#xff09; 6.杜邦线 7.两个主动轮&#xff0c;一个万向轮 8.小车底板&#xff08;亚克力板&#xff09; 二.实现效果 使小车在两…

【51单片机实例教程】智能小车(一)让你的小车跑起来

文章目录 前言 一、硬件 1.小车底盘 2.51单片机最小系统板 3.L298N双路电机驱动板 二、仿真模拟图 三、代码部分 1.直行 2.后退 3.左转圈 4.右转圈 总结 前言 智能小车的项目非常多&#xff0c;比如说循迹避障、蓝牙遥控、视觉控制&#xff08;这一块用51单片机比较…

基于51单片机的循迹小车(初学者必备!!!)

基于51单片机的循迹小车 文章目录 基于51单片机的循迹小车 前言一、系统概述1.工作原理2.控制系统结构框图 二、循迹小车硬件1.电机驱动模块2.循迹模块 三、循迹小车软件四、源码&#xff08;仅供参考&#xff09; 前言 该小车采用单片机STC89C52作为主控制核心&#xff0c;通过…

单片机小车

*## 单片机小车 本周作为单片机新手的我制作了我的第一个作品—单片机小车 一 元件&#xff1a;1.单片机最小系统板 2.杜邦线 3.USB转TTL CH340模块STC单片机下载线刷机板USB转串口 4.智能小车配件 红外寻迹 5.智能小车51单片机套件底盘组装寻迹避障开发板编程循迹机器人配件 …

51单片机之智能小车(避障、跟随、循迹)

目录 基本概述 硬件组成 功能 关键字 模块介绍 电机模块L9110S 循迹模块&#xff08;TCRT5000传感器&#xff09; 红外避障模块 测速模块 小车 移动小车&#xff08;控制电机转动&#xff0c;使小车前进、后退、左转、右转 &#xff09; 遥控小车&#xff08; 使…

详细介绍如何从零开始制作51单片机控制的智能小车(一)———让小车动起来

从本文开始&#xff0c;在之后的一段时间里&#xff0c;我会通过本系列文章&#xff0c;详细介绍如何从零开始用51单片机去实现智能小车的控制&#xff0c;本文作为本系列的第一篇文章&#xff0c;主要介绍如何让小车动起来。 本系列文章链接&#xff1a; ------------------…

乐观锁-基于CAS原理

乐观锁理论基础 乐观锁的操作过程中其实没有没有任何锁的参与&#xff0c;乐观锁只是和悲观锁相对&#xff0c;严格的说乐观锁不能称之为锁。下面我们就通过乐观锁与悲观锁的对比来更好的理解乐观锁。 乐观锁与悲观锁的概念 乐观锁&#xff1a;总是假设最好的情况…

JAVA CAS原理深度分析

CAS CAS:Compare and Swap, 翻译成比较并交换。 java.util.concurrent包中借助CAS实现了区别于synchronouse同步锁的一种乐观锁。 本文先从CAS的应用说起&#xff0c;再深入原理解析。 CAS应用 CAS有3个操作数&#xff0c;内存值V&#xff0c;旧的预期值A&#xff0c;要修…

CAS原理图

主要原理 1 用户第一次访问一个CAS 服务的客户web 应用时&#xff08;访问URL &#xff1a;http://192.168.1.90:8081/web1 &#xff09;&#xff0c;部署在客户web 应用的cas AuthenticationFilter &#xff0c;会截获此请求&#xff0c;生成service 参数 2 然后redirect 到C…

java---CAS原理分析详解

目录 一、什么是CAS 二、乐观锁与悲观锁 1.乐观锁出现原因 2.乐观锁 3.乐观锁的实现机制---CAS 三、JAVA对CAS的支持 首先演示实际的操作 上述过程的内部原理(java层面) 四、CAS缺陷 1.ABA问题 解决ABA问题 2.循环时间长开销大 3.只能保证一个变量的原子操作 4.解…

AQS和CAS原理

锁机制&#xff08;AQS和CAS&#xff09; 一、AQS 1、AQS原理 AQS&#xff1a;AbstractQuenedSynchronizer抽象的队列式同步器。是除了java自带的synchronized关键字之外的锁机制。     AQS的全称为&#xff08;AbstractQueuedSynchronizer&#xff09;&#xff0c;这个类…

CAS原理解析

什么是CAS cas全称为compareAndSwap&#xff0c;可以很清楚的翻译知道意思为“比较和交换”&#xff0c;字面意思其实就已经解释了CAS的实现原理 CAS简介 从jdk5开始&#xff0c;jdk提供了java.util.concurrent.*&#xff0c;此包下面的类在高并发场景下经常使用&#xff0c;包…