ImageVerifierCode 换一换
格式:DOCX , 页数:29 ,大小:430.78KB ,
资源ID:10321600      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10321600.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机控制技术课程设计.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机控制技术课程设计.docx

1、计算机控制技术课程设计计算机控制技术课程设计报告学 院: 沈阳工业大学 专 业: 电气工程及其自动化 班 级: 06电气2班 姓 名: 朱红云 学 号: 09 指导教师: 李英顺 起止日期:2009年6月15日2009年6月28日课程设计目的1、通过单片机控制设计,熟练掌握汇编语言的编程方法,将理论联系到实践中去,提高我们的动脑和动手的能力;2、完成控制系统的硬件设计、软件设计;3、通过单片机课程设计,熟练掌握汇编语言的编程方法,将理论联系到实践中去,提高我们的动脑和动手的能力。4、通过交通信号灯控制系统的设计,掌握定时/计数器的使用方法,和简单程序的编写,最终提高我们的逻辑抽象能力。5、进一

2、步熟悉和掌握单片机的结构和工作原理。6、掌握单片机的接口技术及相关外围芯片的外特性,控制方法,通过课程设计,掌握以单片机为核心的电路设计的基本方法和技术。7、通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。8、通过完成一个包括电路设计和程序开发的完整过程,为我们今后从事相应工作打下基础。2.课程设计题目和要求 2.1课程设计题目 交通灯的设计在今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但。这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。186

3、8年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿色两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。1914年,电气启动的红绿灯出现在美国。这种红绿灯由红绿黄三色圆形的投光器组成,安装在纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下喇叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏

4、感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。2.

5、2系统要求1)允许过程中有时间提示2)系统运行参数可以在运行现茶馆修改3)控制灯切换原则:某一个灯方向的红灯显示时间比另一个方向绿灯显示多3s,绿灯结束黄灯闪烁2s,然后变红灯,红灯结束后变绿灯。4)在修改参数过程中各个方向都黄灯闪亮,指示车辆减速慢行。5)提供具体的修改参数方法,便于用户操作。6)为简化设计,不考虑行人通道。2.3控制方案1)本例中用通用的LED数码管作为时间显示器件,LED二极管作为交通控制的指示灯(实际交通灯中都是高亮度的二极管点阵构成,和本例的区别仅是驱动电路,控制的过程是一致的)。共需要8个数码管、12个二极管(红、黄、绿各4个)。2)现场修改参数系统必须设计键盘,本

6、例设计有4个按钮组成的独立式键盘,采用中断控制扫描方式,定义键的功能如下:第一个键:从指挥交通状态进入参数修改状态,并调出系统原来的参数,前面两个数码管显示南北方向红灯时间,后两个显示南北方向绿灯时间(东西方向可以根据切换规则计算出来,修改参数只需要改变某一个方向的参数),以备修改,修改时有一个数码管闪烁,表示该位显示的数可以修改。第二个键:(在指挥交通状态该键不起作用,后面两个键也只这样)加一键,使闪烁的数码管加1,并在09之间变化。第三个键:移位键,使4个数码管杉树状态依次循环切换,和第二个键配合可以修改四个数码管上的数据,达到修改参数的目的。第四个键:运行键,保存设置的参数,并按照修改的

7、参数进入指挥交通状态3)考虑到现场可能停电,为防止片外的数据存储器来保存参数,数据量不是很多,也不经常变动,采用ATMEL公司的AT24C02。图2.3交通灯控制系统结构框图3设计内容3.1硬件设计3.1.1单片机最小硬件电路单片机最小硬件电路组成简述:要使单片机工作起来,最基本的电路的构成为本系统采用AT89S51单片机,程序量不大,使用内部的存储器。电源电路:向单片机供电。时钟电路:单片机工作的时间基准,决定单片机工作速度。复位电路: 确定单片机工作的起始状态,完成单片机的启动过程。图3.1单片机最小硬件电路1、电源 AT89S51单片机的工作电压范围:4.0V5.5V, 所以通常给单片机

8、外接5V直流电源。连接方式如图图3. 2电源图2、时钟电路:时钟电路就是振荡电路,向单片机提供一个正弦波信号作为基准,决定单片机的执行速度。 AT89S51单片机时钟频率范围:0 33MHz。3.3时钟电路连接方式图中的电容C1和C2起稳定作用。3、复位电路复位电路产生复位信号,使单片机从固定的起始状态开始工作,完成单片机的“启机”过程。AT89S51单片机复位信号是高电平有效,通过RST/VPD(9脚)输入。复位电路连接方式有两种。 (1)上电复位单片机接通电源时产生复位信号,完成单片机启动,确定单片机起始工作状态。(2)手动复位 手动按键产生复位信号,完成单片机启动,确定单片机的初始状态。

9、 通常在单片机工作出现混乱或“死机”时,使用手动复位可实现单片机“重启”。(3)混合复位电路 将上电复位电路和手动复位电路结合到一起构成,通常使用的都是这种混合复位电路。4、最小硬件系统电路图图3.4最小硬件系统电路图3.1.2芯片介绍1、AT89S51芯片的介绍EA/VP(31脚)接+5V。单片机的P0、P1、P2、P3四个端口用于输入/输出数字电信号。(1)电源引脚:连接电源Vcc(40脚):电源正极 Vss(20脚):电源负极(2)时钟引脚:连接时钟电路XTAL1(19脚):输入引脚 XTAL2(18脚):输出引脚(3)复位引脚:连接复位电路RST/VPD(9脚):复位引脚(4)控制引脚

10、:辅助控制作用 PSEN(29脚)ALE/PROG(30脚) EA / VPP(31脚):接高电平(5)I/O端口引脚:用来连接单片机和外部设备,实现数据的输入/输出。 P0.0P0.7(39脚32脚):P0端口P1.0P1.7( 1脚 8脚 ):P1端口P2.0P2.7(21脚28脚):P2端口 P3.0P3.7(10脚17脚):P3端口 图3.5 AT89S51引脚图2、8155芯片简介 8155可编程并行接口芯片有三个输入输出端口,即PA口、PB口和PC口,对应于引脚PA7PA0、PB7PB0和PC7PC0。其内部还有一个控制寄存器,即控制口。通常PA口、PB口作为输入输出的数据端口。P

11、C口作为控制或状态信息的端口,它在方式字的控制下,可以分成4位的端口,每个端口包含一个4位锁存器。它们分别与端口PAP配合使用,可以用作控制信号输出或作为状态信号输入。8155可编程并行接口芯片工作方式: 方式0:基本输入输出方式。适用于三个端口中的任何一个。每一个端口都可以用作输入或输出。输出可被锁存,输入不能锁存。 方式1:选通输入输出方式。这时PA或PB口的8位外设线用作输入或输出,PC口的4条线中三条用作数据传输的联络信号和中断请求信号。方式2:双向总线方式。只有PA口具备双向总线方式,8位外设线用作输入或输出,此时PC口的5条线用作通讯联络信号和中断请求信号3.1.3数码管显示电路采

12、用共阳型数码管,6个LED灯如图中接法,灯的负载依次接到数码挂的a-f段,采用动态扫描电路,并把显示程序作为主程序。数码管的段用P0口控制,P2.0-P2.3作为数码管的控制,p2.4作为指示灯的控制。图3-8共阳 图3-6管脚图 图3-7共阴 LED数码管的管脚配置如图3-1所示。LED数码管有共阴极和共阳极两类。共阴极LED数码管的发光二极管的阴极共地,如图3-2(a),当某个发光二极管的阳极电压为高电平时,二极管发光;而共阳极LED数码管是发光二极管的阳极共接,如图3-2(b),当某个二极管的阴极电压为低电平时,二极管发光。 图3.9显示电路3.1.4键盘接口电路图3.10键盘接口电路如

13、图P1.0-P1.3作为接键的输入信号,采用中断控制草庙方式,采用简单的二极管与门电路,与门输出接到外部中断0,外中断设置成边沿触发方式。任意键按下时都会在P3.2引脚产生下降沿,从而触发中断,在中断服务程序中检测P1.0-P1.3引脚,判断是哪个键按下,执行该键按下,执行该键功能。3.1.5存储器电路AT24WC02 是一个2K 位串行CMOS E2PROM 内部含有256个8 位字节缓冲器AT24WC02 有一个16 字节页写缓冲器该器件通过I2C 总线接口进行操作有一个专门的写保护功能。芯片引脚地址全部接地,用P2.6作为串行的数据线SDA,P2.7作为串行的时钟线SCL。图3.11存储

14、器芯片引脚图3.12存储器接口电路3.2软件设计3.2.1总体设计程序模块包括:主程序(系统初始化、显示程序)、外中断服务程序(按键处理)、定时器服务程序(倒计时处理)、AT24C02操作程序等。主程序的框图如图所示。 图3.13主程序结构框图主程序包括对定时/计数器、外部中断的初始化,读出系统运行参数,将交通灯时间参数送对应的显示缓冲区,然后反复调用显示子程序。并在现实过程中等待见哦按中断处理键盘功能,等待定时器中断改变数码管显示指挥交通。系统用两个定时器,一个用交通灯的计时处理,一个用来控制数码管的闪烁显示,结合显示程序进行综合设计。其他与实践有关的处理程序也用该定时器实现,进行多延时程序

15、设计。3.2.2主程序设计定时器设置,交通灯控制需要产生秒信号,定时器一半不能直接产生,如系统晶振才哟个6MHz,系统的机器中期是2um,最大定时约131ms,可以将定时器设置为反复定时125ms,数中断的次数,没=每8次就是1s。闪烁显示定时的时间也可设置为125ms,1s亮灭几次可以看出闪烁效果。两个定时器都设置为方式1定时,初值为:216-125*1000/2=0BDCH主程序如下;ORG 0000HLJMP SETUP;程序开头,跳过入口地址区ORG 0003H;外中断0入口地址LJMP INEX0P;转移到键盘处理程序ORG 000BH;T0入口地址LJMP INET0P;交通控制时

16、间处理程序ORG 001BH;T1入口地址LJMP INET1P;闪烁控制等处理程序ORG 0030HSETUP:MOV SP,#30H;设置堆栈指针MOV TMOD,#11H;T0、T1方式1定时 MOV TH0,#0BH;MOV TL0,#0DCH;125ms初值MOV TH1,#0BH;MOV TL1,#0DCH;125ms初值SETB TR0;T0启动运行SETB TR1;T1启动运行SETB ET0;开通T0中断SETB ET1;开通T1中断SETB IT0;外中断0下降沿触发SETB EX0;开通外中断SETB EA;开通总允许位LCALL STATUS;调系统初始状态设置子程序L

17、CALL RCS;调用读系统参数子程序MAIN:MOV 0A6H,#1EH;前两句,第一次执行启动看门狗MOV 0A6H,#0E1H;以后再执行到时喂狗指令LCALL DIS;调显子示程序SJMP MAIN;主程序读系统初始状态设置子程序时对系统初始运行需要的信息(如显示程序中的标志位等)进行设置。3.3.3显示及闪烁程序设计图3.14为显示程序分配的RAM资源数码管显示控制的原理:在显示程序中判断该数码管的亮灭标志决定是否跳过位开通指令,从而达到控制数码管亮和灭的控制,在定时器程序中判断该位的闪烁标志,决定是否对该数码管亮灭标志位的求反操作,实现数码管的闪烁控制。以后只要对闪烁标志设置就可控

18、制数码管的闪烁。控制的方法是判断闪烁标志位,通过对显示缓冲区内容的改变(该位亮或灭信息),达到闪烁的效果。(1)显示子程序亮灭标志位:0-亮,1-灭 闪烁标准化:0-不闪,1-闪烁DIS: 显示子程序MOV DPTR,#TAB; 表格首地址送DPTRMOV A,70H; 显示缓冲区送AMOVC A,A+DPTR;查表求出字段码MOV P0,A; 字段码送段输出口JB 50H,MIEO; 判亮灭标志,1转移CLR P2.0; 开通位,0不转移亮 MIEO:LCALL DEL; 调延时 SETB P2.0; 关断位,第1个显示完MOV A,71H; 第2位数码管MOVC A,A+DPTR;查表求出

19、字段码MOV P0,A; 字段码送段输出口JB 51H,MIE1; 判亮灭标志,1转移CLR P2.1, 开通位,0不转移亮 MIE1:LCALL DEL; 调延时 SETB P2.1; 关断位,第2个显示完MOV DPTR,#TAB; 表格首地址送DPTRMOV A,72H; 第3位数码管MOVC A,A+DPTR;查表求出字段码MOV P0,A; 字段码送段输出口JB 52H,MIE2; 判亮灭标志,1转移CLR P2.2; 开通位,0不转移亮 MIE2:LCALL DEL; 调延时 SETB P2.2; 关断位,第3个显示完MOV A,73H; 第4位数码管MOVC A,A+DPTR;查

20、表求出字段码MOV P3,A; 字段码送段输出口JB 53H,MIE3; 判亮灭标志,1转移CLR P2.3; 开通位,0不转移亮 MIE3:LCALL DEL; 调延时 SETB P2.3; 关断位,第4个显示完MOV A,74H; 第5位数码管MOVC A,A+DPTR;查表求出字段码MOV P4,A; 字段码送段输出口JB 50H,MIE4; 判亮灭标志,1转移CLR P2.4; 开通位,0不转移亮 MIE4:LCALL DEL; 调延时 SETB P2.4; 关断位,第5个显示完MOV A,75H; 第6位数码管MOVC A,A+DPTR;查表求出字段码MOV P5,A; 字段码送段输

21、出口JB 55H,MIE5; 判亮灭标志,1转移CLR P2.5; 开通位,0不转移亮 MIE5:LCALL DEL; 调延时 SETB P2.5; 关断位,第6个显示完MOV A,76H; 第7位数码管MOVC A,A+DPTR;查表求出字段码MOV P6,A; 字段码送段输出口JB 56H,MIE6; 判亮灭标志,1转移CLR P2.6; 开通位,0不转移亮 MIE6:LCALL DEL; 调延时 SETB P2.6; 关断位,第7个显示完MOV A,77H; 第8个数码管 MOVC A,A+DPTRMOV P7,A JNB 57H,MIE7CLR P2.7MIE7:LCALL DELSE

22、TB P2.7MOV P0,78H; 送交通状态灯信息,不需查表CLR P3.0LCALL DELSETB P3.0RETTAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82HDB 0F8H,80H,90HDEL:MOV R7,#0; 延时子程序DJNZ R7,$RETEND(2)定时器服务程序INETIP; T1服务程序 MOV TH1,#0BH; 从装初值 MOV TL1,#0DCH; 125ms初值 JNB 58H,SHAN0; 判第1数码管闪烁标志,0转移 CPL 50H; 1不转移,亮灭标志取反SHAN0:JNB 59H,SHAN1; 判第2数码管闪烁标志,0转

23、移 CPL 51HSHAN1:JNB 60H,SHAN2; 判第3数码管闪烁标志,0转移CPL 52HSHAN2:JNB 61H,SHAN3; 判第4数码管闪烁标志,0转移CPL 53HSHAN3:JNB 62H,SHAN4; 判第5数码管闪烁标志,0转移CPL 54HSHAN4:JNB 63H,SHAN4; 判第6数码管闪烁标志,0转移CPL 55HSHAN4:JNB 64H,SHAN5; 判第7数码管闪烁标志,0转移CPL 56HSHAN5:JNB 65H,SHAN6; 判第8数码管闪烁标志,0转移CPL 57HSHAN6:JNB 66H,SHAN7CPL 53HRETI其他功能程序如键盘

24、操作只要对闪烁的标志位进行操作,就可控制相应的数码管闪烁,但要注意在有闪烁到不闪烁的控制中,应同时数码管亮灭的标志。因为有可能时在闪烁过程中灭的阶段停止闪烁,亮灭的标志被置为灭的状态,数码管熄灭。3.3.4交通控制时间处理程序1)软件设计基础思想:由定时器产生0.05s定时,软件计数得到秒信号,设30s计数器,30s计数器计满,绿灯灭、黄灯闪烁5次,黄灯灭、红灯亮;同时,另两路口红灯灭、绿灯亮。2)定时器T0工作方式1,产生0.05s定时。P0口及P2口的低4位输出控制信号。30s计数器的地址为40H。图3.15控制引脚与灯的对应关系图3.16流程图程序如下: BRD EQU PA0BYD E

25、QU PA1 BLD EQU PA2NRD EQU PB1NYD EQU PB2 NLD EQU PB3DRD EQU PA0DYD EQU PA1DLD EQU PA2XRD EQU PA6 XYD EQU PA7XLD EQU PB0NHD BIT 00HDHD BIT 00HS30 EQU 40HBUF EQU 41H初始化及主程序:ORG 0000H LJMP MAINORG 000BHLJMP TOVLOCK; 0.05s中断服务程序MAIN: MOV SP,#30H; 堆栈指针CLR A; A=00HMOV BUF,A; 0.05s计数器清0MOV S30,A; 30s计数器清0M

26、OV TMOD,#01H; 定时器T0工作在方式1MOV THO,#3CH; T0用于时钟定时,0.05s定时初值MOV TL0,#0B0HSETB EA; 开中断SETB ET0SETB TR0; 启动定时NOPMOV P0,#0FFH; 路口灯全灭MOV P2,#0FFHNOPDEN_0:CLR NLD; 南绿灯亮CLR BLD; 北绿灯亮CLR DRD; 东红灯亮CLR XRD; 西红灯亮CLR S30,#00H ; 30s计数器清0DEN_1:MOV A,S30CJNZ A,#30,DEN_1;不到30s等待SETB NLD ; 南绿灯灭SETB BLD; 北绿灯DEN_2:CLR N

27、YD; 南黄灯亮CLR BYD; 北黄灯亮ACALL DEL05S; 调用0.5子程序SETB NYD; 南黄灯灭SETB BYD; 北黄灯灭ACALL DEL05S; 调用0.5子程序DJNZ R1,DEN_2CLR NRD; 南红灯亮CLR BRD; 北红灯亮CLR DLD ; 东绿灯亮CLR XLD; 西绿灯亮DEN_3:MOV A,S30 CJNE A,#30,DEN_3;不到30s等待SETB DLD; 东绿灯灭SETB XLD; 西绿灯灭DEN_4:CLR DYD; 东黄灯亮CLR XYD; 西黄灯亮ACALL DEL05S; 调用0.5子程序SETB DYD; 东黄灯灭SETB

28、XYD; 西黄灯灭ACALL DEL05S; 调用0.5子程序DJNZ R1,DEN_4LJMP DEN_0T0中断服务程序TOCLOCK:MOV TH0,#3CH; 重装初值MOV TL0,#0B7HPUSH PSWPUSH ACCINC BUF;BUF+1MOV A,BUFCJNE A,#20,TCHU; 累计20次为一秒MOV BUF,#00H; 一秒到,计数器清0MOV A,S30; 修改30s计数器INC AMOV S30,ACJNE A,#31,TCHU; 计数不到30返回MOV S30,#00H; 计数超30清0TCHU:POP ACCPOP PSWRETI0.5S延时子程序DE

29、L05S: MOV 74H,#03HLOOP0: MOV 73H,#0FFHLOOP1: MOV 72H,#0FFHLOOP2: NOP DJNZ 72H,LOOP2 DJNZ 73H,LOOP1 DJNA 74H,LOOP0 RET3.3.5键盘功能处理程序设计键盘用外部中断来处理,首先判断那个键按下,然后按照总体方案中规划编写每个按键的功能程序,下面列出四个按键的功能描述和处理程序。第一个键:系统由运行状态进入修改参数状态,需做一下工作:1)停止倒计时。2)将某一个方向的红灯参数和绿灯参数调出来,送显示缓冲区。3)第一个数码管闪烁,标志进入设置状态。程序如下:KEY1: ; 第一个键功能P

30、USH ACC; 保护现场CLR TR0; 关闭定时器,停止倒计时LCALL RCS; 调用读系统参数子程序SETB 54H; 第一个闪烁,其余不闪烁CLR 55HCLR 56HCLR 57HPOP ACC; 恢复现场RET1; 中断返回第二个键:加1键。按照表3.14分配的位标志和显示缓冲区单元,依次对四个数码管的闪烁标志位进行判断,对相应的显示缓冲区进行加1处理(09变化)。程序结构如图3.17所示KEY2: PUSH ACC; S2键功能程序 INC 55H; 加1 MOV R2,70H CJNE R2,#10,KEY1A; 判断是否为10,否转返回 MOV 55H,#0; 清为0RETI图3.17加1键程序框图第三个键:移位键。使数码管闪烁依次移位,和第二键配合修改四个数码管上的数据。程序结构和第二个键一样,仅是处理内容不同,进行移位操作,框图略去。在编程时应注意,移到下一位闪烁时应将前面数码管的亮灭标志清0,避免移位后熄灭

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1