1、3.1.1工程背景 某厂生产瓶装保健饮品,每10瓶装一箱,要求箱满时,启动送箱装置,先送走满箱到位(延时一定时间),再送来空箱到位(延时一定时间),满箱和空箱分别在两个不同的传送带上传送。3.1.2 需要解决的问题 1、能够模拟传送带的运行过程,实现整个送箱过程。 2、能够模拟装箱过程(装满十瓶)。 3、能够人为控制生产线的启动和停止(比如键盘上,按某一键启动,启动后按任意键停止)。 4、能够在数码管上显示当时已装满送出的箱数。3.2 项目模拟方案 3.2.1 主要硬件 (1)8255A芯片一个CS:片选信号,低电平有效。A0、A1地址信号JP52:PC口;JP53:PB口;JP56:PB口。
2、(2)8155芯片一个IO/M:高电平,选择I/O口;低电平,选择数据RAM。JP75:JP76:PA口;JP79:PC口。(3)步进电机一个(4)LED数码管A:按键的列线B:数码管段码C:数码管选择脚D:按键的行线(5)发光管、按键、开关 发光管电路原理图JP65:发光管控制接口,0灯亮,1灯灭3.2.2 电路图3.2.3 系统连线图 B4区:CS(8255)、A0、A1、CS(8155)A3区:CS3、A0、A1、CS2IOM A8JP76、JP75 G5:JP41、JP42JP56、JP53 G6:JP65 、JP80(PC口)E1区:A、B、C、D PC4、PC5、PC6、PC73.
3、3 控制程序 3.3.1框图3.3.2详细程序 程序编写如下.model small.stack.data led db 06h,5bh,4fh,66h,7dh,07h,7fh,6fh .code.startup mov ax,data mov ds,ax mov cx,20 mov bx,offset led start: push cx mov al,10000010b ;8255初始化 mov dx,0d003h out dx,alL: mov dx,0d000h mov al,11111111b out dx,al ;将指示灯初始化,使其全部熄灭an_key1: mov dx,0d00
4、1h in al,dx cmp al,00000001b jnz an_key1 ;按键开始L0: mov al,01111111b ;绿灯亮,开始装瓶。 call delay mov cx,10 ;装箱过程,让黄灯闪烁十下L1: mov al,00111111b call delay1 mov al,01111111b loop L1 mov al,11011111b ; 红灯亮,装瓶结束 call delay mov al,11110111b ;绿灯亮,开始送箱an_key4: jnz an_key4 call zhengzhuanan_key2: jnz an_key2 call del
5、ay3 call xianshi an_key3: jnz an_key3 an_key5: jnz an_key5 call fanzhuanan_key6: jnz an_key6 pop cx inc bx loop startzhengzhuan proc push dx push ax mov cx,3zheng1: mov dx,0d002h ;电机正转,送走满箱 mov al,10h ;端口A out dx,al call zdelay mov dx,0d002h mov al,20h端口B call zdelay mov al,40h端口C mov al,80h ;端口D ou
6、t dx,al loop zheng1 pop ax pop dx retzhengzhuan endpxianshi proc mov dx,0e100h ;LED显示装箱数 mov al,03h mov ah,11111110bagain: mov dx,0e101h mov al,ah mov dx,0e102h mov al,bxxianshi endpfanzhuan proc fan1:电机反转,送来空箱 mov al,40h ;端口C mov al,20h ;端口B端口A loop fan1fanzhuan endp;延时子程序zdelay proc mov dx,01h a1:
7、 xor cx,cx ;循环2次,以下同理a2: loop a2 dec dx jnz a1zdelay endp delay3 proc mov dx,15ht1: xor cx,cxt2: loop t2 jnz t1delay3 endpdelay proc mov dx,10ht3:t4: loop t4 jnz t3delay endpdelay1 proc mov dx,02ht5:t6: loop t6 jnz t5delay1 endpdelay2 proc mov dx,5ht7:t8: loop t8 jnz t7delay2 endp end3.4 实验结果分析 通过不断
8、的调试,纠正,运行结果基本上达到了预期的效果,但是也存在一些问题,比如说步进电机的的转动是不连续的、有的实验台数码管不显示等等,不同的实验台,运行的效果也不一样,主要原因可能是实验仪器,和编程软件在制作上从在一定的误差,另一方面,也可能是我编的程序在逻辑上或多或少从在一些问题,在不考虑这些因素的情况下,方案基本上是可行的。4、感想 这次项目收获颇多,首先,让我更加充分的了解微机原理计算机控制技术在实际中的应用,了解实际应用的一般流程和操作技巧。其次,在这过程中,遇到了许多我无法立刻解决的问题,我通过上网查资料,与同学讨论,同时请教老师,最终顺利地解决了问题,经过自己的努里,我成功地完成项目要求,也学到了实验课上未涉及的知识。最后,我也深刻体会到,团队合作的重要性,一个人的力量往往是有限的,众人拾柴火焰高,只有相互合作,各取所长,才能取得后的胜利。同时大学也因培养自己的创新精神,敢于创新,这样才会在竞争激烈今天,处于不败之地。5、参考文献 1钱晓捷,陈涛 16/32位微机原理、汇编语言及接口技术 2014年7月第一版2Star ES8688实验参考项目版
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2