基于AT89s52单片机的遥控小车的设计

基于AT89s52单片机的遥控小车的设计[20200128193011]
摘 要
本文设计的遥控小车采用AT89S52单片机作为主控芯片,外围包括红外遥控,红外接收,自动避障等电路,具有自动寻路,自动避障及遥控行走功能。红外接收接收红外遥控发出的指令信号再传输给AT89S52芯片进行处理,AT89S52把处理的结果传到各工作电路使各电路运行。本文设计的遥控小车具有前进、后退、向左、向右、加速、减速等功能,具有一定的人工智能。
 *查看完整论文请+Q: 351916072 
关键字:】AT89s52芯片;红外遥控;L298电机驱动芯片;ST188红外传感器
引言 1
一、系统设计方案选择 1
(一)系统组成 1
(二)驱动电机的选取 1
(三)电源电路的实现 2
二、系统主要元器件介绍 2
(一)单片机AT89S52介绍 2
(二)运算放大器LM324 4
(三)L298电机驱动芯片 4
(四)74LS04 5
(五)ST188红外传感器 6
(六)LM1117 6
(七)HT6221遥控器芯片简介 7
三、红外发射器硬件介绍 8
四、小车硬件构成 8
(一)红外接收电路 8
(二)电机驱动电路 9
(三)避障及寻迹电路 9
(五)时钟电路 10
(六)复位电路 11
五、系统软件构成 11
(一)主程序流程图 11
(二)系统部分程序分析 11
六、系统仿真 14
(一)Keil软件概述 14
(二)keil编译调试 15
(三)proteus软件概述 15
(四)Proteus仿真图 16
总结 16
附录一:电路原理图 18
附录二 :PCB布局图 19
附录三:PCB顶层布线 20
附录四:PCB底层布线 21
附录五:系统程序 22
参考文献 30
致 谢 31
引言
智能作为现代社会的新产物,是以后的发展方向它可以按照预先设定的模块在一个特定的环境里自动的运作,无需人为管理,便可以完成预期所要达到的或更高的目标。随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。
本文设计是基于AT89S52微处理器的机器人车体系统和HT6221微功率无线透明传输模块的无线通信系统,以此实现小车的前进、后退、停止、及直角特别是圆弧形拐弯,本设计主要体现多功能小车的智能模式,设计中的理论方案、分析方法及特色与创新点等可以为自动运输机器人、采矿机器人、家用自动清洁机器人,特别是智能足球机器人的设计与普及有一定的参考意义。同时小车可以作为玩具的发展方向,为中国玩具市场技术含量的缺乏进行一定的弥补,实现经济收益,形成商业价值。
一、系统设计方案选择
(一)系统组成
本系统由七部分组成如图1,包含红外接收电路, 复位电路,时钟电路,电源电路,遥控发射器电路,蔽障及寻迹电路,电机驱动电路。
图1 系统组成
(二)驱动电机的选取
方案一:采用步进电机,精确度较高,一般步进电机的精度为步进的3%-5%,且不积累,缺点是体积较大,速度较慢,且价格较高。
方案二:DC电机,直流电机运行平稳,你可以运行,以确保准确的汽车,虽然其准确性不比任何控制直流电动机的高,但这样的设计完全可以满足要求,而且价格合理。因此,该系统选择了方案二较合适。
(三)电源电路的实现
为了能使智能车系统能正常工作,就需要对电池电压调节。其中,单片机系统电路需要5V电压,路径识别的光电传感器和接收器电路电压工作为5V。直流电机可以使用7.4V 2000mAh Ni-cd蓄电池直接供电。考虑到由于驱动电机引起的电压瞬间下降的现象,因此在设计中采用低压降的三端稳压芯片LM1117。电源电路方案见图2。
图2 电压选择图
二、系统主要元器件介绍
(一)单片机AT89S52介绍
图3 AT89S52引脚图
AT89S52是一种低功耗,高性能CMOS 8位微控制器,具有8K在系统可编程Flash存储器。采用Atmel的高密度非易失性存储器技术制造,与工业80C51产品指令和引脚兼容。片上Flash允许程序存储器在系统可编程,也适用于传统的编程。在单一芯片上,拥有灵巧的8个CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用提供了高度灵活,超有效的解决方案。
AT89S52具有以下标准功能:8K字节的闪存,256字节的RAM,32位I / O口线,看门狗定时器,两个数据指针,三个16位定时器/计数器,一个6向量中断结构,全双工串行口,片上振荡器和时钟电路。此外,AT89S52可减少到0Hz静态逻辑运算,支持两种软件可选的节电模式。空闲模式下,CPU停止工作,允许RAM,定时器/计数器,串口,中断继续工作。掉电保护模式下,RAM内容被保存,振荡器被冻结,所有其他芯片功能,直到下一个中??断或硬件复位。
P0口:P0口是一个8位开漏双向I / O端口。
P1口:P1口是一个内部上拉电阻的8位双向I / O口,P1输出缓冲器可驱动4个TTL逻辑电平。
此外,P1.0和P1.1分别为定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2触发输入(P1.1/T2EX)。闪存编程和校验时,P1口接收低8地址字节。
P2口:P2口是一个内部上拉电阻的8位双向I / O口,P2输出缓冲器可驱动4个TTL逻辑电平。
P3口:P3口是一个内部上拉电阻的8位双向I / O端口,P3输出缓冲器可驱动4个TTL逻辑电平。
此外,P3口也接收一些用来验证闪存编程和控制信号的程序。
RST:复位输入。当振荡器工作时,RST引脚高两个机器周期或更将微控制器复位。
ALE / PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存使能)输出脉冲锁存地址的低8个字节。在正常情况下,ALE时钟振荡频率的1/6的一个固定的脉冲输出信号,所以它可以用于外部输出时钟或定时器的目的。需要注意的是:当访问外部数据存储器跳过一个ALE脉冲。闪存编程期间,此引脚也用于输入编程脉冲(PROG)。如果有必要,通过特殊功能寄存器(SFR)区8EH单元D0位,可以禁止ALE操作。该位被置位,只有激活的ALE MOVX和MOVC指令。此外,该引脚将弱上拉MCU执行外部程序应设置ALE禁止位无效。
PSEN:程序存储允许(PSEN)输出是外部程序存储器读选通PSEN被激活时,每个机器周期的两倍,输出两个脉冲,在期间访问外部数据存储器时当AT89S52由外部程序存储器获取(或数据) PSEN信号将被跳过两次。
EA / VPP:允许外部访问,只声称CPU访问外部程序存储器(地址范围为0000H-FFFFH),EA客户端必须保持低电平(接地)。应当指出的是:如果加密位LB1被编程,复位锁存器内的EA端状态。如果EA侧高(Vcc端连接),CPU内部程序存储器执行的指令。闪存编程,此引脚加上+12 V的编程允许电源Vpp的,当然,这必须是设备是使用12V的编程电压Vpp。
XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2:振荡器反相放大器的输出。
(二)运算放大器LM324
LM324的引脚排列见图4。
图4 LM324引脚图
LM324由四个独立的,高增益,内部频率补偿运算放大器设计工作由单电源供电电压范围内操作。应用领域包括传感器以及放大器,直流增益模块和所有常规运算放大器现在可以更容易地实现在单电源系统中的电路。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jxgc/zdh/4331.html

好棒文