硬件实训报告.docx
- 文档编号:11709766
- 上传时间:2023-03-30
- 格式:DOCX
- 页数:15
- 大小:101.69KB
硬件实训报告.docx
《硬件实训报告.docx》由会员分享,可在线阅读,更多相关《硬件实训报告.docx(15页珍藏版)》请在冰豆网上搜索。
硬件实训报告
硬件实训报告
交通灯的设计与实现
专业班级:
计算机科学与技术082班
组长:
花广路089074040
组员:
花广路089074040
沈彪089074051
程真珍089074037
指导老师:
刘凤声
完成日期:
2011年9月20日
序言
每个人在报告中负责的部分如下:
花广路:
程序流程图、程序源代码、硬件仿真图
沈彪:
摘要、绪论、单片机概述、参考文献
程真珍:
目录、系统硬件设计、控制器软件设计、总结
摘要
近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。
十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。
那么靠什么来实现这井然秩序呢?
靠的就是交通信号灯的自动指挥系统。
交通信号灯控制方式很多。
本系统采用MSC-51系列单片机AT89C51和可编程并行I/O接口芯片8255A为中心器件来设计交通灯控制,实现了能正常模拟交通灯的功能。
本系统实用性强、操作简单、扩展功能强。
[关键词]单片机交通灯AT89C518255A74LS373
1.1交通灯的历史
第一章绪论
1.1交通灯的历史
19世纪初,在英国中部的约克城,红、绿装分别代表女性的不同身份。
其中,着红装的女人表示我已结婚,而着绿装的女人则是未婚者。
后来,英国伦敦议会大厦前经常发生马车轧人的事故,于是人们受到红绿装启发,1868年12月10日,信号灯家族的第一个成员就在伦敦议会大厦的广场上诞生了,由当时英国机械师德·哈特设计、制造的灯柱高7米,身上挂着一盏红、绿两色的提灯--煤气交通信号灯,这是城市街道的第一盏信号灯。
在灯的脚下,一名手持长杆的警察随心所欲地牵动皮带转换提灯的颜色。
后来在信号灯的中心装上煤气灯罩,它的前面有两块红、绿玻璃交替遮挡。
不幸的是只面世23天的煤气灯突然爆炸自灭,使一位正在值勤的警察也因此断送了性命。
从此,城市的交通信号灯被取缔了。
直到1914年,在美国的克利夫兰市才率先恢复了红绿灯,不过,这时已是“电气信号灯”。
稍后又在纽约和芝加哥等城市,相继重新出现了交通信号灯。
1.1.2交通灯的出现
随着各种交通工具的发展和交通指挥的需要,第一盏名副其实的三色灯(红、黄、绿三种标志)于1918年诞生。
它是三色圆形四面投影器,被安装在纽约市五号街的一座高塔上,由于它的诞生,使城市交通大为改善。
黄色信号灯的发明者是我国的胡汝鼎,他怀着“科学救国”的抱负到美国深造,在大发明家爱迪生为董事长的美国通用电器公司任职员。
一天,他站在繁华的十字路口等待绿灯信号,当他看到红灯而正要过去时,一辆转弯的汽车呼地一声擦身而过,吓了他一身冷汗。
回到宿舍,他反复琢磨,终于想到在红、绿灯中间再加上一个黄色信号灯,提醒人们注意危险。
他的建议立即得到有关方面的肯定。
于是红、黄、绿三色信号灯即以一个完整的指挥信号家族,遍及全世界陆、海、空交通领域了。
第二章单片机的概述
单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。
通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:
中央处理器、存储器和I/O接口电路等。
因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。
单片机经过1、2、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引脚的多功能化,以及低电压底功耗。
2.1AT89C51简介
AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除1000次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P0口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
口管脚备选功能
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INT0(外部中断0)
P3.3/INT1(外部中断1)
P3.4T0(记时器0外部输入)
P3.5T1(记时器1外部输入)
P3.6/WR(外部数据存储器写选通)
P3.7/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
2.28255芯片简介
8255可编程并行接口芯片简介【2】:
8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。
具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。
其各口功能可由软件选择,使用灵活,通用性强。
8255可作为单片机与多种外设连接时的中间接口电路。
8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。
同时必须具有与外设连接的接口A、B、C口。
由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:
与CPU连接部分、与外设连接部分、控制部分。
8255可编程并行接口芯片有三个输入输出端口,即A口、B口和C口,对应于引脚PA7~PA0、PB7~PB0和PC7~PC0。
其内部还有一个控制寄存器,即控制口。
通常A口、B口作为输入输出的数据端口。
C口作为控制或状态信息的端口,它在方式字的控制下,可以分成4位的端口,每个端口包含一个4位锁存器。
它们分别与端口A/B配合使用,可以用作控制信号输出或作为状态信号输入。
图58255芯片引脚图
Fig5Thepinof8255
引脚涵义:
·RESET:
复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。
·CS:
芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输.
·RD:
读信号线,当这个输入引脚为低电平时,即/RD=0且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。
·WR:
写入信号,当这个输入引脚为低电平时,即/WR=0且/CS=0时,允许CPU将数据或控制字写入8255。
·D0~D7:
三态双向数据总线,8255与CPU数据传送的通道,当CPU执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。
·PA0~PA7:
端口A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入锁存器。
·PB0~PB7:
端口B输入输出线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。
·PC0~PC7:
端口C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入缓冲器。
端口C可以通过工作方式设定而分成2个4位的端口,每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。
'
8255可编程并行接口芯片方式控制字格式说明:
8255有两种控制命令字;一个是方式选择控制字;另一个是C口按位置位/复位控制字。
其中C口按位置位/复位控制字方式使用较为繁难,说明也较冗长,故在此不作叙述,需要时用户可自行查找有关资料。
方式控制字格式说明如表1:
D7
D6
D5
D4
D3
D2
D1
D0
表1方式控制字格式说明
Table1Modecontrolwordformat
D7:
设定工作方式标志,1有效。
D6、D5:
A口方式选择
00—方式0
01—方式1
1×—方式2
D4:
A口功能(1=输入,0=输出)
D3:
C口高4位功能(1=输入,0=输出)
D2:
B口方式选择(0=方式0,1=方式1)
D1:
B口功能(1=输入,0=输出)
D0:
C口低4位功能(1=输入,0=输出)
8255可编程并行接口芯片工作方式说明:
方式0:
基本输入/输出方式。
适用于三个端口中的任何一个。
每一个端口都可以用作输入或输出。
输出可被锁存,输入不能锁存。
方式1:
选通输入/输出方式。
这时A口或B口的8位外设线用作输入或输出,C口的4条线中三条用作数据传输的联络信号和中断请求信号。
方式2:
双向总线方式。
只有A口具备双向总线方式,8位外设线用作输入或输出,此时C口的5条线用作通讯联络信号和中断请求信号。
2.374LS373简介
74LS373是一种带三态门的8D锁存器,其管脚示意图如下示【4】:
图674ls373锁存器
Fig674ls373Latches
其中:
1D-8D为8个输入端。
1Q-8Q为8个输出端。
LE为数据打入端:
当LE为“1”时,锁存器输出
状态同输入状态;当LE由“1”变“0”时,数据
打入锁存器
OE为输出允许端:
当OE=0时,三态门打开;
当OE=1时,三态门关闭,输出高阻。
第三章系统硬件设计
3.1.实现方法
选用设备:
8255A并行通用接口芯片一片,74LS373一片,交通灯4个。
地线一个,连线若干。
(1)在设计中利用软件程序延时的方法来控制红(绿)的亮的时间。
(2)利用8255A实现交通灯控制:
用B口输出
东西方向B0控制红灯,B2控制绿灯,B1控制黄灯
南北方向B3控制红灯,B5控制绿灯,B4控制黄灯
(3)将8255A的片选CS*接AT89C51的A12,A0和A1接74LS373的Q0和Q1.得到端口地址为:
0000H—0FFFH,故选择其中之一为B口和控制口地址:
选择B口为0FF5H,控制口为0FF7H,
(4)通过keil编程,和proteus仿真实现联调,仿真出现结果。
3.2系统总框图如下:
3.3系统工作原理
(1)由AT89C51单片机通过P0口向8255的数据口送信息,由8255的PB口显示红、绿、黄灯的燃亮情况;东西方向:
B0控制红灯,B2控制绿灯,B1控制黄灯;南北方向:
B3控制红灯,B5控制绿灯,B4控制黄灯。
(2)软件延时设置,绿、红时间,循环由软件实现。
第四章控制器的软件设计
4.1每秒钟的设定
延时方法可以有两种一中是利用MCS-51内部定时器才生溢出中断来确定1秒的时间,另一种是采用软延时的方法。
软件延时代码如下:
DELAYLONG:
MOVR7,#40
L1:
MOVR6,#200
L2:
MOVR5,#250
DJNZR5,$
DJNZR6,L2
DJNZR7,L1
RET
DELAYSHORT:
MOVR4,#200
L3:
MOVR3,#250
DJNZR3,$
DJNZR4,L3
RET
第五章调试与总结
1.调试
(1)首先下载了keil和Proteus,然后连接元件,在keil中编程,实现联调,仿真实现。
(2)在proteus中连接元件时遇到了一些问题,因为是初次使用,所以不是太熟,经过一番摸索之后,找出了元件,然后连接。
(3)在编写程序时出现过错误,与Proteus连接时有时候连接不上,通过认真思考得以解决。
2.总结
通过本次课程设计较系统地掌握有关单片机控制的设计思想和设计方法,主要对AT89C51的结构、功能、内部资源等了解并对其进行测试和加以应用的知识得到学习。
这个设计的一些内容是在网上找的,自己做了一些的改动,在上网找资料的同时也学到了许多东西,找到了很多学习单片机的网站,里面的内容都
比较适合我们初学者去学,有些网站还专门介绍这种单片机的类型、用法、功能等等。
其实我们平时不懂就应该自己去学习去弄明白,通过这个硬件实训,使我发现,原来小小的一片单片机有这么强大的功能,能应用于各种领域。
都是觉得很神奇,人类都的聪明啊。
我应该在自己以后的学习中,不仅要有刻苦努力,要有钻研精神,还要有创新,对自己感兴趣的一定要用心去学。
第六章结论
本系统就是充分利用了8255、74LS373芯片,统统采用MSC-51系列单片机AT89C51和可编程并行I/O接口芯片8255A为中心器件来设计交通灯控制器,实现了能用8255A的B口实现交通灯的模拟功能;红绿灯循环点亮,利用软件延时的方法,实现其功能。
通过这次硬件实训,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。
使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。
第七章参考文献
[1]谢维成杨加国编著单片机原理与应用及C51程序设计北京:
清华大学出版社,2006.8
[2]余锡存,曹国华编著.单片机微机原理及接口技术[M].西安:
西安电子科技出版社,2000.12~14
附录一交通灯硬件设计
附录二程序流程图
(3)程序流程图如下:
附录三程序源代码
CONTROLEQU0FF7H;控制字
PORTBEQU0FF5H;B口地址
ORG0
STBRT:
MOVDPTR,#0FF7H
MOVA,#80H;写工作方式控制字
MOVX@DPTR,A
MOVDPTR,#0FF5H
MOVA,#0FFH;B端口地址送B
MOVX@DPTR,A
;东西方向B0控制红灯,B2控制绿灯,B1控制黄灯
;南北方向B3控制红灯,B5控制绿灯,B4控制黄灯
MOVA,#11111111B;A口地址11111111初始化
MOVDPTR,#0FF5H;A端口地
MOVX@DPTR,A
CALLDELAYLONG
LOOP:
MOVA,#0CH;B口地址00001100对应B2和B3东西绿,南北红
MOVDPTR,#0FF5H
MOVX@DPTR,A
CALLDELAYLONG
MOVA,#0AH;B口地址00001010对应B1和B3东西黄,南北红
MOVDPTR,#0FF5H
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#08H;B口地址00001000对应B3灭东西黄,南北红
MOVDPTR,#0FF5H
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#0AH;B口地址00001010对应B1和B3东西黄,南北红
MOVDPTR,#0FF5H
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#08H;B口地址00001000对应B3灭东西黄,南北红
MOVDPTR,#0FF5H
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#0AH;B口地址00001010对应B1和B3东西黄,南北红
MOVDPTR,#0FF5H
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#08H;B口地址00001000对应B3灭东西黄,南北红
MOVDPTR,#0FF5H
MOVX@DPTR,A
CALLDELAYSHORT;完成三次闪烁,东西变红。
南北变绿
MOVA,#21H;B口地址00100001对应B0和B5
MOVDPTR,#0FF5H;B端口地?
MOVX@DPTR,A;东西红,南北绿
CALLDELAYLONG
MOVA,#11H;B为00010001对应B0和B4
MOVDPTR,#0FF5H
MOVX@DPTR,A;三次闪烁灭南北绿灯,南北黄灯,东西红灯
CALLDELAYSHORT
MOVA,#01H;B口地址00000001对应B0东西红灯,灭南北黄灯
MOVDPTR,#0FF5H
MOVX@DPTR,A;红灯
CALLDELAYSHORT
MOVA,#11H;B为00010001对应B0和B4南北黄灯,东西红灯
MOVDPTR,#0FF5H
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#01H;B口地址00000001对应B0东西红灯,灭南北黄灯
MOVDPTR,#0FF5H
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#11H;B为00010001对应B0和B4南北黄灯,东西红灯
MOVDPTR,#0FF5H
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#01H;B口地址00000001对应B0东西红灯,灭南北黄灯
MOVDPTR,#0FF5H
MOVX@DPTR,A
CALLDELAYSHORT;完成三次闪烁由东西红,南北绿,变成东西绿,南北红
AJMPLOOP;循环
DELAYLONG:
MOVR7,#40
L1:
MOVR6,#200
L2:
MOVR5,#250
DJNZR5,$
DJNZR6,L2
DJNZR7,L1
RET
DELAYSHORT:
MOVR4,#200
L3:
MOVR3,#250
DJNZR3,$
DJNZR4,L3
RET
END
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 硬件 报告