循线功能小车设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
宜宾职业技术学院《单片机系统设计》项目设计报告
项目设计题目:智能循线小车的实现
系部名称:电子信息与控制工程系
专业:电子信息工程技术
班级:电子11201
指导老师:罗德雄
组数:第一组
组长:郝忠强
摘要 (2)
设计目的 (2)
一、单片机AT89S52功能特性描述 (2)
1.1单片机引脚功能 (3)
1.2单片机基本外围电路 (6)
二、电机驱动 (8)
2.1L298N的基本描述 (8)
2.2L298N的逻辑功能 (10)
三、数码管的显示原理 (11)
3.1如何检测数码管的引脚排列 (13)
四、软件设计 (16)
五、下载程序 (23)
六、设计总结 (25)
附录 (27)
智能的出现,为我们的生活和生产带来了很大的便利,同时也是以后的发展方向,智能就是可以在一个特定的环境中按照我们前面设定好的模式去自动的运作,它并不需要我们去人为的管理,就可以达到我们前面设定的目标,它的应用领域很广,如可以应用于工业控制、科学勘探、智能家居等领域。而智能小车就是智能的一个简单的应用,智能小车就是智能化玩具中的一种,由于这类智能玩具具有较好的交互性,可控性,能够按照人们设定的模式去自动运作也深受人们的喜欢。另外,智能小车还可以应用于危险搜索、机器人等许多方面,尤其在机器人方面具有很好的发展前景。因此,智能化小车的研究不仅具有很大的现实意义,还具有极为广阔的应用前景和市场价值。智能车辆是目前世界车辆研究领域的热点和汽车工业新的增长点。未来的车辆也一定是智能化的车辆。所以,智能化的车辆是未来人们生活重要的载体。因此有必要对智能车辆进行研究。研制一种智能,高效的智能小车控制系统具有重要的实际意义和科学理论价值。本文设计了一个能自动循线的智能小车控制系统。以AT89C52单片机为控制核心以及其基本的外围电路,本课题主要涉及单片机的编程和4位数码管的显示作用。
设计目的:①利用单片机小系统的数码管按“XX.XX”显示格式实现按下键时启动40分钟的倒计时显示功能,再次按下时可暂停或启动倒计时功能。
②利用单片机小系统板、电机及显示器件制作一个能循环实现循线功能的小车,使其实现沿指定路线前进并显示运行时间等功能。
一、单片机AT89S52功能特性描述
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数
据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。单片机的基本外围电路如图1。在本次课题中我们主要学习和研究的是复位电路、震荡电路和串口电路。
1.1单片机引脚功能
VCC:电源
GND:地
P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。
P1口:P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表所示。在flash编程和校验时,P1口接收低8位地址字节。
引脚号第二功能:
P1.0T2(定时器/计数器T2的外部计数输入),时钟输出
P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)
P1.5MOSI(在系统编程用)
P1.6MISO(在系统编程用)
P1.7SCK(在系统编程用)
P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器
能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,p2输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。在flash编程和校验时,P3口也接收一些控制信号。
引脚号第二功能:
表2
P3.0RXD(串行输入)
P3.1TXD(串行输出)
P3.2INT0(外部中断0)
P3.3INT0(外部中断0)
P3.4T0(定时器0外部输入)
P3.5T1(定时器1外部输入)
P3.6WR(外部数据存储器写选通)
P3.7RD(外部数据存储器写选通)
RST:复位输入。晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST脚输出96个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在flash编程时,此引脚(PROG)也用作编程输入脉冲。