微机原理课程项目_第1页
微机原理课程项目_第2页
微机原理课程项目_第3页
微机原理课程项目_第4页
微机原理课程项目_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、某生产线控制系统设计课程名称:微机原理及应用三级项目班级:13级工设(1)班学号:2姓名:王志辉指导教师:王志松 赵玉勤 张庆玲 唐艳华 朱学军 王鑫 2016年5月17日目录1摘要32前言33正文43.1项目要求43.2模拟方案43.3流程图53.4接线图53.5程序代码73.6实验结果分析134 感想135 参考文献131摘要在计算机星研调试系统环境下,成功实现了某生产线控制系统设计及运行调试。通过实验箱上的各部分硬件系统,模拟工程实际中的各个环节:8255和138译码器控制工位(发光管代替)切换和工位启停;1953脉冲及8253准确计时;8155控制数码管显示已完成数和已误工次数;蜂鸣器

2、和逻辑笔发出故障警报;8255控制点阵,显示生产线状态。2前言随着科学技术的发展,工业机械化程度也逐步加深,这不仅为企业,更为社会创造了丰厚的利润。为了实现生产要求,现通过微机控制整个流水线作业不仅可以节约人力,还能提高生产效率,降低生产成本。在本控制系统设计中,5个发光管代表现实生产中的5个工位,其亮灭表示实际生产中是否工作;八位数码管的低四位显示实际生产中工件完成个数,高四位显示故障发生次数。利用定时芯片8253、并口芯片8155与8255A、1953脉冲、八位数码管、138译码器、发光管、蜂鸣器、逻辑笔及8*8点阵模块实现生产要求。3正文3.1项目要求某生产线用于装配某机械产品,总共有5

3、个工位,分别为A、B、C、D、E要求使用微机控制,总计45秒完成一个产品的装配。A、B、C、D各需要8秒,E工位需要13秒。其中E工位是关键控制工位,如果在E工位没有按照要求的时间完成就要将A工位暂停,直到E工位完成后给A一个完成信号重新启动A工位。要求记录完成的工件数和生产线发生故障的次数并显示。3.2模拟方案一、考虑用8255作为输入与输出的基本接口,同时,由于需要计时,选用8253作为计时器。五个工位分别用五个灯亮来代替,用8253的一个计数器实现灯持续亮8秒或13秒。二、为了表示A、B、C、D、E五个工位的运行情况,选用四个别发光二极管来显示,A、B、C、D、E五个工位进行时,分别对应

4、五个灯亮,其他灯均灭(例如,B工位进行时,B灯亮,其他各灯均处于熄灭状态)用8255A的一个端口(A口或B口)控制发光二极管的亮灭。三、由于按八小时工作制计算,一天最多生产的工件数不多于3位数,所以用数码管的前四位记录工件数,用数码管后四位记录故障数。故可选取8255的A口或B口作为位码或段码的输出接口,并由138译码器的8个输出引脚控制数码管的段码或位码。四、可以通过口的三个引脚与译码器相连,来控制译码器的输出。五、误工信号的控制可以用一个误工开关和一个误工信号来实现。故障通过由人控制开关的通断来实现开关的状态需通过8255读入计算机,故可以使8255的口的某一个引脚与开关相连。 3.3流程

5、图3.4接线图原理图:实物接线图:3.5程序代码stac segment stack db 100 dup(0)stac endsdata segment ledtb db 3fh,6h,5bh,4fh,66h,6dh,7dh,7h,7fh,6fhjishu1 db 0jishu2 db 0ge1 db 0shi1 db 0bai1 db 0ge2 db 0shi2 db 0bai2 db 0data endscode segment code assume cs:code,ds:data,ss:stacstart: mov ax,data mov ds,ax mov al,81h ;设定82

6、55的工作方式工作方式为方式0 A口,b口输出c口下部输入 上部输出 mov dx,0f003h ;控口地址 out dx,al mov al,b ;灯全灭 mov dx,0f000h out dx,al mov al,b ;数码管不显示 mov dx,0f002h out dx,al mov al,b ;设定8253的1端的工作方式 mov dx,0e006h out dx,alagain: mov al,b ;工位A mov dx,0f000h out dx,al call delay3 ;1号灯亮8秒again1: mov dx,0f002h in al,dx test al,b jz

7、again1 mov al,b ;工位B mov dx,0f000h out dx,al call delay3 ;2号灯亮8秒again2: mov dx,0f002h in al,dx test al,b jz again2 mov al,b ;工位C mov dx,0f000h out dx,al call delay3 ;3号灯亮8秒again3: mov dx,0f002h in al,dx test al,b jz again3 mov al,b ;工位D mov dx,0f000h out dx,al call delay3 ;4号灯亮8秒again4: mov dx,0f002

8、h in al,dx test al,b jz again4 mov al,b ;工位E mov dx,0f000h out dx,al mov al,2dh ;计时 mov dx,0e002h out dx,al mov al,63h mov dx,0e002h out dx,al again5: mov dx,0f002h in al,dx test al,b jz again5 ;5号灯亮13秒 mov dx,0f002h ;判断是否误工 in al,dx test al,b jnz disp1again6: mov al,b ;发出误工信号 8号灯亮五号灯继续亮 mov dx,0f00

9、0h out dx,al mov dx,0f002h in al,dx test al,b jz again6 mov al,b ;取消误工信号 灯全灭 mov dx,0f000h out dx,al inc jishu2 ;故障数加一disp1: mov al,b mov dx,0f000h out dx,al inc jishu1 ;工件数加一 call shuzhi ;调用计算各个位的子程序 again7: call leddisp ;调用数码管显示子程序 jmp again ;给A工位信号开始加工 mov ax,4c00h int 21hshuzhi proc ;计算各个位上的数值 p

10、ush ax push bx push cx push dxwei1:xor ax,ax mov al,jishu1 ;判断jishu1是几位数 cmp al,100 ja thr1 ;三位数 cmp al,10 ja two1 ;两位数one1: mov ge1,al ;一位数 jmp wei2 two1: mov dl,10 ;计算各个位上的数值 div dl ;用除法计算各个数值 mov shi1,al mov ge1,ah jmp wei2thr1: mov dl,100 div dl mov bai1,al mov al,ah mov dl,10 div dl mov shi1,al

11、 mov ge1,ahwei2: xor ax,ax mov al,jishu2 cmp al,100 ja thr2 cmp al,10 ja two2one2: mov ge2,al jmp wei3two2: mov dl,10 div dl mov shi2,al mov ge2,ah jmp wei3thr2: mov dl,100 div dl mov bai2,al mov al,ah mov dl,10 div dl mov shi2,al mov ge2,ah wei3: pop dx pop cx pop bx pop ax ret shuzhi endpleddisp p

12、roc ;数码管显示 push ax push bx push cx push dx mov bx,offset ledtb ;取ledtb的段首偏移地址lnum1: mov al,bai1 ;输出百位 xlat mov dx,0f001h out dx,al mov al,b mov dx,0f002h out dx,al call delay ;延时 mov al,shi1 ;输出十位 xlat mov dx,0f001h out dx,al mov dx,0f002h mov al,b out dx,al call delay ;延时 mov al,ge1 ;输出个位 xlat mov

13、dx,0f001h ;b口输出数码管要显示的数值 out dx,al mov dx,0f002h mov al,b out dx,al ;138译码器控制要显示的位 call delay lnum2: mov al,bai2 xlat mov dx,0f001h out dx,al mov al,b mov dx,0f002h out dx,al call delay mov al,shi2 xlat mov dx,0f001h out dx,al mov dx,0f002h mov al,b out dx,al call delay mov al,ge2 xlat mov dx,0f001h

14、 out dx,al mov dx,0f002h mov al,b out dx,al call delay pop dx pop cx pop bx pop ax retleddisp endpdelay proc ;时间延迟程序 push bx push cx mov bx,50hdelay1: mov cx,1000hdelay2: loop delay2 dec bx jnz delay1 pop cx pop bx retdelay endpdelay3 proc ;加工延时8秒子程序 push ax push dx mov al,08h mov dx,0e002h out dx,a

15、l mov al,3dh mov dx,0e002h out dx,al pop dx pop ax retdelay3 endpcode ends end start3.6实验结果分析1、过程分析 调试过程出现了很多问题:数码管显示子程序,按照书上例题编写程序然后进行调试不能出现预想的结果,经过多次探索新实验,从中总结了数码管显示的一些经验先位选后端选数码管才能正常显示,时间控制开始采用日时钟的调用,在试验箱上无法实现,好来改为8253控制时间。程序中的其它程序段的调试比较顺利,自己都能解决。2、需改进地方记录完成的工件数和生产线发生故障的次数时,用并前四个LED显示已完成工件数,后便接着由后四个LED显示故障数,记录的工件数不能随时查看,但是由于本工件加工用时只有秒,时间短,也无伤大碍。4 感想刚开始做的时候感觉无从下手,很是迷茫

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论