1
基于STC89C52的智能小车设计
一、项目介绍
智能小车是一个非常经典的课程案例,市场上有各种各样的车体模型和套件销售,我们能不能自己去设计一辆智能小车呢,基于这个想法,我们设计了这款以STC89C52为主控的智能小车,至于为什么使用STC作为主控,主要还是大家对这款芯片的认可度比较高,是一款非常经典的芯片!
应用场景
·单片机课程教学,以智能小车替换开发板贯穿单片机课程教学。·单片机课程设计,让学员根据要求实现相关功能。
·电子认知与焊接练习,完成智能小车的焊接,激发电子学习兴趣。
功能介绍
2
·左右两个车灯,模拟行车过车中的车灯状态。·独立按键,练习按键输入与中断功能。
·无源蜂鸣器,学习音频频率的产生,模拟洒水车音乐。·4个电机驱动,实现PWM输出与调速功能。
·循迹与避障功能,学习比较器电路,实现避障循迹功能。·无线遥控,学习无线传输理论,实现遥控功能。
二、总体设计方案
本设计使用了两节锂电池共7.4V作为系统供电,经降压到5V后给单片机系统进行供电,单片机与按键电路、红外接收电路(无线遥控功能)、避障电路、循迹电路、LED车灯、无源蜂鸣器以及电机驱动电路进行连接,电路系统框图如下所示。
图1智能小车系统框图
三、硬件介绍
这样一辆功能丰富的智能小车是如何设计出来的呢,我们接下来将逐一介绍每个电路模块的功能组成。
1.电源输入
电源是什么?电源是给整个系统提供能量的重要组成部分。“是马也,虽有千里之能,食不饱,力不足,才美不外见,且欲与常马等不可得,安求其能千里也?”车是好车,没有好的电源,那就发挥不出车的性能。在电源的选用上,该项目选用了7.4V可充电锂电池,经过一个7805降压芯片后给单片机和外围器件提供供电,而电机驱动芯片由电池7.4V直接提供。二极管VD1起着防反接的作用,LED2作为电源指示灯,当开关SW1打开时,系统开启供电。电源部分电路如图2所示。
3
图2电源输入部分
2.单片机最小系统
51单片机最小系统由主控芯片、晶体振荡器电路、复位电路、下载接口以及P0上拉电阻组成。在使用一款芯片设计电路时,不能只是去网络上搜索参考电路,更多地应该去查阅厂家所提供的数据手册,厂家所提供的资料是最有保障的。图3所示为STC89C52系列单片机器件手册中1.6节最小系统应用图。
图3STC官网提供资料
最小系统图中说明了复位电路与晶体振荡器电路,下方还有具体的选型参数说明。复位功能在第9引脚,设计上给出了用一个10kΩ电阻和10μF的电容组成的上电复位电路,结合实际使用情况可以在加一个按键,需要复位的时候按下按键即可。
晶体振荡器功能在18和19引脚,底下给出的参数选择中提到了晶体振荡器大小、谐振电容C2和C3大小,以及R2的取值,在学习过程中,结合51单片机定时器的特性,一般选用11.0592MHz的晶体振荡器,因为这个时钟频率在进行分频时可以准确地划分时钟频率,在做波特率通信时所计算出来的值为一个整数,可以保持通信的准确性。
4
除图3中的最小系统应用电路需要注意外,还需要查看元器件的引脚说明,口(3239引脚)比较特殊,在数据手册
除图3中的最小系统应用电路需要注意外,还需要查看元器件的引脚说明,
口(3239引脚)比较特殊,在数据手册1.8节有专门提到:P0口内部无上拉电阻,做I/O口使用使需要外接一个4.710kΩ的上拉电阻进行使用(见图4)。
图4单片机引脚说明(部分)
结合以上理论与计算基础,加上一个程序下载接口就可以使这个单片机正常工作了。该智能小车的主控最小系统电路设计如图5所示,其中紫色标注的为网络标签,使用相同的网络标签可以减少连线,使电路看起来更加简洁,RST用的是一个网络端口,用法与网络标签一致。J10将多余引脚引出,可以外接其他电路进行学习。
图5单片机最小系统图
3.电机驱动电路
要想小车跑得稳,电机驱动不可少。单片机直接输出的电流太小,不足以带动小车行走。电机电路采用了RZ7899电机专用驱动芯片,该芯片外围电路简单,适用于自动阀门电机驱动、电磁门锁驱动等应用电路。它由逻辑输入端口BI和FI控制电机前进、后退及制动,配合单片机PWM输出可以控制电机转速。该应用电路具有良好的抗干扰能力、微小的待机电流、低输出内阻等优秀功能。在焊接时注意在电机上并联一个0.1μF的瓷片电容起防干扰作用。RZ7899电机驱动电路如图6所示。
5
图6RZ7899