1. 简介
这是2016年底两周时间做的一个蓝牙小车,它分为上下两篇,本文是上篇。原本是发在了http://bbs.elecfans.com/ 的,不过由于我的博客都在CSDN上,因此我就把它们重新复制到这里来了。
1.1 相关的博客和代码
原文地址
源代码地址
小车手机端代码 — 下篇博客,此为后续版本,实现了手机端的蓝牙程序控制小车运动以及接收小车状态并展示。
1.2 想法来源
最初的想法是做一个红外遥控的装置,链接地址。只需要前进和停止,二路遥控,想使用模拟电路搭建,但最后也没能完成,这个想法依然在,现在只能留带以后是否有想法再做了。
第二个想法是想做一个小车,小车的功能如下: 前进,后退,转弯,遥控控制,自主智能运转。 上某宝买了一个小车的底座(4驱动的,带电机), 买了两个L298N驱动模块用来驱动小车,买了蓝牙模块(HC05)用来充当遥控。
2. 实践篇
2.1 电路焊接
首先根据51单片机的最小系统的电路图,焊接了一个最小系统板,使用的STC89c52的单片机(晶振6Mhz,带复位电路,复位指示灯显示),为了便于测试,又焊接了一个发光二极管连接一个I/O口,用于测试最小系统。
2.2 最小系统测试
开始测试最小系统,不过我很多年没有用过keil和下载器了,就上网寻找了一下关于这方面的帖子,并作了总结。要测试最小系统,首先需要编译代码的工具(我用的keil),下载代码到单片机的工具(stc-isp),usb转ttl硬件设备(某宝上2块多钱买的),串口调试助手(使用的是单片机多功能调试助手PortHelper.exe),于是从网上下载了keil4破解版本,stc-isp下载软件,单片机多功能调试助手三个软件。
注意:
下面的步骤2.2.1和2.2.2是用于测试USB转TTL设备
,而2.2.3-2.2.5是用于单纯的最小系统测试
。那为何需要用USB转TTL设备
呢?在解释之前,先介绍我们的小车总体控制路径: