微机接口与原理.docx
- 文档编号:17771501
- 上传时间:2023-08-03
- 格式:DOCX
- 页数:14
- 大小:92.01KB
微机接口与原理.docx
《微机接口与原理.docx》由会员分享,可在线阅读,更多相关《微机接口与原理.docx(14页珍藏版)》请在冰点文库上搜索。
微机接口与原理
X学校
计算机科学与技术学院
课程设计报告
20008—20009学年第1学期
课程名称单片机C语言应用程序设计
设计题目十字路口交通灯的设计与实现
(光柱渐熄灭方式)
学生姓名小草
学号xxxxxxxxxxxx
专业班级计算机xxx班
指导教师xxx
2008年12月29日
一.课程设计题目
十字路口交通灯的设计与实现(光柱渐熄灭方式)
二.课程设计要求
1.发光二级管模拟交通灯,用若干发光二级管实现光柱倒计时。
以塔南路某十字路口(自己定)交通规则编制控制程序。
2.用十字路口的交通灯实现车辆流量控制具体要求为:
理论设计、调试与仿真、撰写设计报告等。
其中理论设计又包括选择总体方案,硬件系统设计、软件系统设计;硬件设计包括单元电路,选择元器件及计算参数等;软件设计包括模块化层次结构图,程序流程图。
程序设计是课程设计的关键环节,通过调试进一步完善程序设计,使之达到课题所要求的指标,使理论设计更接近于实际产品。
3.往南和往北的信号一致,即红灯(或绿灯)同时亮或同时熄灭。
用光柱渐熄灭方式指示灯还将点亮多久。
往东和往西方向的信号一致,其工作方式与南北方向一样。
当南北方向为绿灯时,东西向的红灯点亮禁止通行;而东西方向为绿灯时,南北向的红灯点亮禁止通行。
4.知识学习方面的要求主要有:
掌握在单片机系统中扩展简单I/O接口的方法、数据输出程序的设计方法、模拟交通灯控制的实现方法、外部中断技术的基本使用方法、中断处理程序的编程方法等。
三.课程设计目的
本设计通过单片机及其仿真系统,应用单片机原理、微机原理等课程方面的知识,设计一个采用80C51单片机控制的交通灯控制电路以实现交通控制功能。
对书本学习和应用方面的目的主要有:
(1)进一步理解和消化书本知识,运用所学知识和技能进行简单的设计。
(2)通过课程设计提高应用能力,分析问题和解决问题的能力。
(3)培养查阅资料的习惯,训练和提高自学,独立思考的能力。
四.课程设计方案
本设计系统采用了AT89C51、10WATT10R、CERAMIC33P、CRYSTAL、LED-GREEN、LED-RED等元器件;系统总体设计框图如下:
系统由89c51单片机控制,由外部振荡电路提供系统所需的振荡频率,通过程序实现对外设的控制。
由89c51根据程序控制交通灯的显示,从而实现交通控制。
五.硬件设计
1.硬件选用:
AT89C51、10WATT10R、CERAMIC33P、CRYSTAL、LED-GREEN、LED-RED等元器件
AT89C51主要特性:
与MCS-51兼容、4K字节可编程闪烁存储器、寿命:
1000写/擦循环、 数据保留时间:
10年、·全静态工作:
0Hz-24Hz、·三级程序存储器锁定、128*8位内部RAM、32可编程I/O线、两个16位定时器/计数器、5个中断源、可编程串行通道、低功耗的闲置和掉电模式、片内振荡器和时钟电路
2.AT89C51引脚功能介绍(引脚如图1):
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写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:
来自反向振荡器的输出。
图1
3.硬件框图(如图2):
本设计采用光柱型交通灯作为交通指示,系统用P0、P2端口作为输出端口,控制指示灯的显示与熄灭。
本设计有四个光柱交通灯,采用了八个光柱,每个光柱交通灯由一红一绿两个不同颜色的光柱组成,每个光柱又由四个发光二极管组成,控制中用P0.0到P0.3和P0.5到P0.7端口分别控制横道绿灯光柱和纵道红灯光柱的状态;用P2.0到P2.3和P2.5到P2.7端口分别控制横道红灯光柱和纵道绿灯光柱的状态;从而保证控制中P0全置0或P2全置0时十字路口横道和纵道一红一绿,并且保证了对单片机P0或P2进行操作时横道光柱渐熄和纵道光柱渐熄的同步性。
图2
六.软件分析
软件采用汇编语言进行编程。
程序开始对各量进行初始化,横道绿灯光柱亮纵道红灯关注亮,并调用延时子程序进行延时。
延时时间结束,横道绿灯渐熄,纵道红灯渐熄,每次熄一个灯调用一次延时子程序,全熄时不调用。
横道红灯光柱亮纵道绿灯光,调用延时子程序,横道红灯渐熄灭,纵道绿灯渐熄灭,每次熄灭一次灯,调用一次延时子程序,全熄灭时不调用。
如此反复,实现交通灯控制功能。
本设计的软件流程图如下:
主程序如下:
ORG0000H
AJMPBEGIN1
ORG0023H
BEGIN1:
MOVp0,#00H;p1端口控制光柱交通灯渐熄
ACALLDEALY
SETBP0.0;光柱第一个灯熄
SETBP0.4
ACALLDEALY
SETBP0.1;光柱第二个灯熄
SETBP0.5
ACALLDEALY
SETBP0.2;光柱第三个灯熄
SETBP0.6
ACALLDEALY
SETBP0.3;光柱第四个灯熄
SETBP0.7
LJMPBEGIN2
BEGIN2:
MOVP2,#00H;p2端口控制光柱交通灯渐熄
ACALLDEALY
SETBP2.0;光柱第一个灯熄
SETBP2.4
ACALLDEALY
SETBP2.1;光柱第二个灯熄
SETBP2.5
ACALLDEALY
SETBP2.2;光柱第三个灯熄
SETBP2.6
ACALLDEALY
SETBP2.3;光柱第四个灯熄
SETBP2.7
LJMPBEGIN1
延时子程序:
DEALY:
movr5,#05h;2.496ms
DEL:
movr6,#0f8h;497us
djnzr6,$
djnzr5,DEL
ret
七.采用proteus仿真软件应用实现
1程序汇编
打开WAVE仿真器,首先对仿真器进行设置,然后点击新建,将所编写程序写入新建处,点击保存,将文件保存为ASM格式文件,接下来新建项目,然后保存项目,调入目标文件,接着进行编译,如果程序有错误,在仿真器下面的信息窗口将会出现错误提示,点击错误提示,可以找到错误的位置,点击错误位置处,可以进行修改,如果没有错误,编译后可以直接生成HEX文件。
生成的HEX文件可以直接加载到单片机上,用于实现所要求的控制功能。
2系统仿真
首先打开Proteus软件,按照系统设计图将设计出的系统图绘制到Proteus的制图页面上,保证所绘制系统图无误后,点击单片机,将生成的HEX文件加载到单片机上,然后点击运行按钮,就可以实现系统仿真,点击系统图上的不同按键,可以实现不同的设计功能。
按照程序汇编和系统仿真的要求,将所编写的程序进行汇编,生成本设计中的HEX文件。
然后运用Proteus软件绘制出系统图,将HEX文件加载到80C51单片机上,点击运行,系统满足要求,通过控制按键,实现预先设计的功能。
运行仿真系统可以看到以下情况:
当系统正常工作时,横、纵道轮流放行,横道放行4秒钟,纵道放行4秒钟。
八.总结与展望
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械了。
因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:
1.在智能仪器仪表上的应用
单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。
采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。
例如精密的测量设备(功率表,示波器,各种分析仪)。
2.在工业控制中的应用
用单片机可以构成形式多样的控制系统、数据采集系统。
例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。
3.在家用电器中的应用
可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。
4.在计算机网络和通信领域中的应用
现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。
5.单片机在医用设备领域中的应用
单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。
6.在各种大型电器中的模块化应用
某些专用单片机设计用于实现特定功能,从而在各种电路中进行模块化应用,而不要求使用人员了解其内部结构。
如音乐集成单片机,看似简单的功能,微缩在纯电子芯片中(有别于磁带机的原理),就需要复杂的类似于计算机的原理。
如:
音乐信号以数字的形式存于存储器中(类似于ROM),由微控制器读出,转化为模拟音乐电信号(类似于声卡)。
在大型电路中,这种模块化应用极大地缩小了体积,简化了电路,降低了损坏、错误率,也方便于更换。
此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。
课程设计心得体会:
1.通过试验进一步理解和消化了书本知识,分析每个语句的含义,运用所学知识进行简单的程序设计。
2.通过在图书馆查阅各种单片机资料,培养了我自学和独立思考的能力。
与同学交流研究,让我懂得了更多以前不明白的知识.
3.在课程设计过程中,不断调试程序和修改程序,提高了对单片机的应用能力,分析问题和解决问题的能力。
通过这次单片机课程设计,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。
创新可以是在原有的基础上进行改进,使之功能不断完善,成为真己的东西。
九.参考文献
[1]余发山主编.单片机原理及应用技术.徐州:
中国矿业大学出版社,2003
[2]曹巧媛著.单片机原理及应用.北京:
电子工业出版社,1997
[3]徐爱华主编.单片机应用技术教程.机械工业出版社,2003
[4]单片机的C语言应用程序设计.北京航空航天大学出版社,2008
[5]各类网站
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 接口 原理