基于STC89C52的智能小车——蓝牙遥控篇

本文介绍了如何利用单片机串口通讯实现蓝牙遥控功能,通过连接蓝牙模块控制智能小车进行避障模式和遥控模式的切换以及速度调整。在完成程序编写并烧录后,用户可以通过手机蓝牙串口应用进行操控,包括开启避障、调整速度等操作。这是作者关于智能小车系列学习的最后一部分,接下来将转向Linux的学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

蓝牙遥控是依靠单片机的串口通讯来实现的功能。这周我主要学习的内容是串口通讯。在完成学习后我用之前买避障小车时顺便买的蓝牙模块做了一个升级版智能小车,它可以通过蓝牙模块实现避障模式与蓝牙遥控模式的切换以及速度的调整。
蓝牙模块的接线:将vcc与gnd接在单片机最小系统的5v供电口上,将txd和rxd分别接在单片机的rxd与txd上
下面是程序(头文件之前的笔记中有,在此不做赘述了)

#include <REGX52.H>
#include "direction.h"
#include "cd.h"
#define u8 unsigned char
#define u16  unsigned int
sbit BZL=P2^0 ;
sbit BZR=P2^1 ;
u8 iw=0;
u8 mod=0;
u16 time_cnt=0;
u16 freq=100;        //PWM输出频率
u16 duty_cycle=20;  //占空比
void Timer0Init(void)	
{
   
	TMOD &= 0xF0;
	TMOD |= 0x01;
	TL0 = 0xA4;		
	TH0 = 0xFF;		
	TF0 = 0;	
	TR0 = 1;
	ET0 = 1;
	EA = 1;		
}
void UsartConfiguration()
{
   	
	SCON=0X50;			
	TMOD&=0X0f;	
	TMOD|=0X20;		
	PCON=0X00;		
	TH1=0Xfd;		    
	TL1=
### STC89C52单片机设计遥控小车教程 #### 1. 系统概述 STC89C52是一款经典的8位微控制器,广泛应用于各种嵌入式控制系统中。对于基于此芯片的蓝牙遥控小车项目而言,该系统主要由以下几个部分组成:HC05蓝牙模块负责无线通信;L298N作为电机驱动器用于控制直流电机的速度和方向;四台TT型直流马达提供动力支持车辆移动;三节容量为3.7伏特锂离子电池串联起来给整个电路板供电[^1]。 #### 2. 硬件连接说明 为了使同侧两个轮子能够同步运转,在硬件搭建上采取了一种巧妙的方法——即先将同一边上的两组电机正负极端并联在一起之后再接入到L298N相应端口中去。这样做的好处是可以简化线路布局同时也便于编程时统一管理两侧的动力输出。 #### 3. 软件开发环境配置 针对本项目的软件编写工作建议选用Keil uVision集成开发工具来进行C语言程序的设计与调试。安装好必要的编译链路包以及下载器驱动后就可以着手准备初始化MCU寄存器参数设置、定义全局变量等工作了。 ```c #include <reg52.h> sbit ENA = P2^4; /* L298N使能端 */ sbit IN1 = P2^0; sbit IN2 = P2^1; void delay(unsigned int time){ unsigned char i,j; for(i=time;i>0;i--) for(j=255;j>0;j--); } // 初始化函数 void init(){ EA = 1; // 开启总中断 EX0 = 1; // 外部中断允许 IT0 = 1; // 下降沿触发方式 } ``` #### 4. 控制逻辑实现 通过串口接收来自手机APP发送过来的方向指令(前进/后退/左转/右转),解析这些命令字符串并将对应的动作映射成具体的操作序列作用于各个IO引脚之上从而达到改变运动状态的目的。例如当收到字符'F'(代表向前行驶),则需让ENA置高电平开启H桥电源供应,并分别向IN1,IN2输入高低不同的信号组合以激活指定通道下的电动机转动。 ```c if(SerialData=='F'){ INA=1; INB=0; INC=1; IND=0; }else if(SerialData=='B'){...}else{...}// 后退和其他情况处理省略 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值