您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 基于两片单片机的智能多功能循迹小车项目设计
智能多功能循迹小车项目设计报告----------------------------振勇电子实验室-------联系QQ:820897443—1—基于两片51单片机的智能多功能循迹小车的项目设计项目作者:戚振勇设计时间:2012/2/01—2012/2/26设计地点:振勇电子实验室(日照)联系QQ:820897443智能多功能循迹小车项目设计报告----------------------------振勇电子实验室-------联系QQ:820897443—2—目录封面--------------------------------------------------------------1目录-----------------------------------------------------------2一、摘要---------------------------------------------------------4二、总设计方案2.1硬件方面---------------------------------------------52.2软件方面-----------------------------------------------------5三、硬件模块设计3.151单片机STC89C52-----------------------------------63.218B20温度传感器--------------------------------------93.312864(带中文字库)液晶---------------------------103.4ISD4002—120P语音芯片-----------------------------173.5无线发射电路--------------------------------------------203.6光电循迹电路--------------------------------------------213.7电机驱动----------------------------------------------21四、程序设计4.1录音程序设计----------------------------------------------214.2总程序设计-------------------------------------------------22五系统测试与结论----------------------------------------23附录一(录音程序)---------------------------24附录二(总程序详解)------------------------29智能多功能循迹小车项目设计报告----------------------------振勇电子实验室-------联系QQ:820897443—3—目录智能多功能循迹小车项目设计报告----------------------------振勇电子实验室-------联系QQ:820897443—4—一、摘要这个项目是本人挑战自我的一次大胆尝试,设计意图顺应现在电子产品向多功能化发展的趋势,为以后从事电子行业积累经验。单个功能的项目已经不能适应科技高速发展的现代社会了,本项目包括了:智能语音报时万年历、智能语音温度计、液晶显示、智能循迹小车、无线遥控等功能。目的在于挑战自己应对复杂电路及多功能项目的能力,对该项目的具体生活意义不作过多考虑。。系统设计图STC89C5218B20温度传感器1307时钟芯片独立按键12864液晶显示ISD4002-120语音芯片L298N电机驱动TDA2030功放电路3W扬声器STC89C52光电循迹电路IRF420遥控电路四个减速电机智能多功能循迹小车项目设计报告----------------------------振勇电子实验室-------联系QQ:820897443—5—二、总体设计方案2.1硬件方案本设计的目的在于锻炼多个模块的协调性,以及设备的先进性,故在显示方面用了技术含量较高的12864显示,受体积限制,温度传感器采用了体积较小的18B20,时钟芯片用了DS1307,这两个芯片不仅体积小,而且占用单片机资源较小,18B20采用单总线通讯协议,只占用1个I/O口,DS1307采用I2C通讯协议,只占用2个I/O口。在硬件连接方面,为了减少插线和体积,将各个系统焊在了同一个板上,并在各个位置焊接了指示灯,便于调试和处理问题。电机驱动电路放在了车底部,降低了电路的复杂程度。使之能更稳定的工作。语音模块采用ISD4002-120p,录放时间长达两分钟,在给语音芯片录音的时候确实费了不少劲,网上很多的电路根本不能把声音录进去,要么就是录进去了声音很杂。经过我近一周的努力,终于找到了一个好的方法,并设计了一个放大增益较大,噪声较小的电路(稍后会给出),完美的解决了语音芯片音质差的问题,士气大增。在音响放大电路方面,网上很多资料都用LM380做放大,经过我的实际试验,LM386的放大增益太小,根本不能把声音完整的播放出来,所以我采用了TDA2030作为音响驱动,放大增益20dB。(反馈比例为4.7:150)2.2软件方面智能多功能循迹小车项目设计报告----------------------------振勇电子实验室-------联系QQ:820897443—6—总体思想是将18B20的温度信号和1307的时钟信号进行处理,在液晶屏上实时的显示出来。并在遥控按键按下的时候控制语音芯片工作,将时钟信号和温度信号变成声音信号准确的读出来。循迹方面单独用另一块单片机控制,通过传感器送回来的信号分析黑线的位置,进而控制两边的电机的转速(PWM调速)。整个项目采用C51语言编程。三、硬件模块设计3.1STC89C53RC单片机此次温度及设计没有采用使用较为广泛的AT89C51系列单片机,而是采用STC89C53RC单片机控制电路。这一使用增进了我们对不同单片机的了解,为我们熟练掌握各种单片机打下了基础。此款单片机的主要性能如下:增强型6时钟/机器周期,12时钟/机器周期8051CPU。工作电压:5.5V-3.4V。工作频率范围:0-40MHz,相当于普通8051的0~80MHz。实际工作频率可达48MHz。用户应用程序空间15K字节。片上集成512字节RAM。智能多功能循迹小车项目设计报告----------------------------振勇电子实验室-------联系QQ:820897443—7—通用I/O口(36个),复位后为:P1/P2/P3/P4是准双向口/弱上拉,P0口是开漏输出,作为总线扩展用时,不用加上拉电阻,作为I/O口使用时,需加上拉电阻。(在系统可编程)/IAP(在应用可编程),无需专用编程器。可通过串口(P3.0/P3.1)直接下载用户程序,8K程序3秒即可完成一片。功能。看门狗。内部集成MAX810专用复位电路(D版本才有),外部晶体20M以下时,可省外部复位电路。共3个16位定时器/计数器。外部中断2路,下降沿中断或低电平触发中断,PowerDown模式可由外部中断低电平触发中断方式唤醒。通用异步串行口(UART)。工作温度范围:-40-+85℃。封装:PDIP-40。单片机复位电路及晶振电路:晶振电路:智能多功能循迹小车项目设计报告----------------------------振勇电子实验室-------联系QQ:820897443—8—复位电路:51单片机DIP40封装图智能多功能循迹小车项目设计报告----------------------------振勇电子实验室-------联系QQ:820897443—9—3.218B20温度传感器温度传感器的种类众多,在应用与高精度、高可靠性的拉斯)公司生产的DS18B20温度传感器当仁不让。超小的体积抗干扰能力强,精度高,附加功能强,使得DS18B20更受欢电子爱好者来说,DS18B20的优势更是我们学习单片机技术产品的不二选择。DS18B20的主要特征:全数字温度转换及输出。先进的单总线数据通信。最高12位分辨率,精度可达土0.5摄氏度。位分辨率时的最大工作周期为750毫秒。可选择寄生工作方式。检测温度范围为–55°C~+125°C(–67°F~+257°F)。智能多功能循迹小车项目设计报告----------------------------振勇电子实验室-------联系QQ:820897443—10—内置EEPROM,限温报警功能。位光刻ROM,内置产品序列号,方便多机挂接。多样封装形式,适应不同硬件系统。测温部分电路设计:3.312864(带中文字库)液晶部分用户指令集1、指令表1:(RE=0:基本指令集)指令指令码说明执行时间(540KHZ)RSRWDB7DB6DB5DB4DB3DB2DB1DB0清除显示0000000001将DDRAM填满“20H”,并且设定DDRAM的地址计数器(AC)到“00H”4.6ms地址归位000000001X设定DDRAM的地址计数器(AC)到“00H”,并且将游标移到开头原点位置;这个指4.6ms智能多功能循迹小车项目设计报告----------------------------振勇电子实验室-------联系QQ:820897443—11—令并不改变DDRAM的内容进入点设定00000001I/DS指定在资料的读取与写入时,设定游标移动方向及指定显示的移位72us显示状态开/关0000001DCBD=1:整体显示ONC=1:游标ONB=1:游标位置ON72us游标或显示移位控制000001S/CR/LXX设定游标的移动与显示的移位控制位元;这个指令并不改变DDRAM的内容72us功能设定00001DLX0REXXDL=1(必须设为1)RE=1:扩充指令集动作RE=0:基本指令集动作72us设定CGRAM地址0001AC5AC4AC3AC2AC1AC0设定CGRAM地址到地址计数器(AC)72us设定DDRAM地址001AC6AC5AC4AC3AC2AC1AC0设定DDRAM地址到地址计数器(AC)72us读取忙碌标志(BF)和地址01BFAC6AC5AC4AC3AC2AC1AC0读取忙碌标志(BF)可以确认内部动作是否完成,同时可以读出地址计数器(AC)的值0us写资料到RAM10D7D6D5D4D3D2D1D0写入资料到内部的RAM(DDRAM/CGRAM/IRAM/GDRAM)72us读出RAM的值11D7D6D5D4D3D2D1D0从内部RAM读取资料(DDRAM/CGRAM/IRAM/GDRAM)72us指令表—2:(RE=1:扩充指令集)指令指令码说明执行时间(540KHZ)RSRWDB7DB6DB5DB4DB3DB2DB1DB0待命模式0000000001将DDRAM填满“20H”,并且设定DDRAM的地址计数器(AC)到“00H”72us卷动地址或IRAM地址选择000000001SRSR=1:允许输入垂直卷动地址SR=0:允许输入IRAM地址72us智能多功能循迹小车项目设计报告----------------------------振勇电子实验室-------联系QQ:820897443—12—反白选择00000001R1R0选择4行中的任一行作反白显示,并可决定反白与否72us睡眠模式0000001SLXXSL=1:脱离睡眠模式SL=0:进入睡眠模式72us扩充功能设定000011X1REG0RE=1:扩充指令集动作RE=0:基本指令集动作G=1:绘图显示ONG=0:绘图显示OFF72us设定IRAM地址或卷动地址0001AC5AC4AC3AC2AC1AC0SR=1:AC5—AC0为垂直卷动地址SR=0:AC3—AC0为ICONIRAM地址72us设定绘图RAM地址001AC6AC5AC4AC3AC2AC1AC0设定CGRAM地址到地址计数
本文标题:基于两片单片机的智能多功能循迹小车项目设计
链接地址:https://www.777doc.com/doc-3420936 .html