viernes, 21 de mayo de 2010

Digitales II – Prof. Mendoza – 3ª evaluación del Semestre 2006-I

El enunciado de esta evaluacion fue este, ojala y te sirva de algo

En una empresa de correo tiene un sistema automatizado en el cual reparte la correspondencia o paquetes, a sus 8 destinos que tienen, clasificando los paquetes en livianos, pesados, urgentes y COD (cobro a destino), una persona toma los paquetes los pasa por un lector de barras (eso se simulara por el puerto) y el lector le informara a al brazo automatizado en donde deberá dejar el paquete (se tiene un área en donde hay 36 cestas donde se almacenan los paquetes antes de salir) el brazo automatizado toma el paquete y lo moviliza hasta la cesta que le corresponde, el brazo esta cerca de la banda transportadora donde llegan los paquetes y los moviliza hasta el final donde esta la persona que tiene el lector de barras. El brazo tiene los siguientes movimientos:

  • Arriba 2 seg. (este es el tiempo de los retardos)
  • Abajo 2 seg.
  • Izquierda 1 seg. por cesta
  • Derecha 1 seg. por cesta
  • Abre (para soltar el paquete) 3seg
  • Cierra (para tomar el paquete) 3 seg.
  • Banda transportadora 5 seg. (todo el recorrido)

Debe tomarse en cuenta que se deben poner algunos sensores, utilice toda la lógica para que funcione a la perfección, toda la información se deberá visualizar en los las áreas de memoria del simulador (DUM1 DUM2), se debe mostrar el nombre del destino clasificación del paquete y un código que se le asigna al paquete. Al igual que debe mostrarse en que cesta esta dejando el paquete al momento de soltarlo. Una de las líneas del dum2 debe simular la banda transportadora.

Se debe hacer un diagrama y explicar que hace cada uno de los BIT de los puertos, traer documentado los retardos utilizados en el programa, deberán traerlo al momento de corregir el programa. E imprimir el archivo PRN de su programa.

 

   1:                 ORG 0


   2:                  LD SP,3DFFH


   3:                  ;CONFIGURACION DE PUERTOS


   4:   


   5:  ;       PUERTO A                


   6:  ;        BIT 7 = SENSOR DEL BRAZO


   7:  ;        BIT 6 = SENSOR DEL FINAL DE LA BANDA


   8:  ;        BIT 5 = SENSOR DEL INICIO DE LA BANDA


   9:  ;        BIT 4,3,2 = INDICADORES DE DESTINO


  10:  ;        BIT 1,0 = INDICADORES DEL TIPO DE PAQUETE


  11:   


  12:  ;       PUERTO B


  13:  ;       BIT 3 = AL MOTOR DE LA BANDA


  14:  ;       BIT 2,1,0 = CONTROL DE MOVIMIENTOS DEL BRAZO MECANICO


  15:   


  16:   


  17:  LAZO1:          IN A,(DATA)


  18:                  BIT 5,A


  19:                  JP Z,LAZO1


  20:                  CALL MBON


  21:                  CALL BANDA


  22:                  CALL APAGAR


  23:  LAZO2:          IN A,(DATA)


  24:                  BIT 6,A


  25:                  JP Z,LAZO2


  26:                  IN A,(DATA)


  27:                  LD IX,CESTAS


  28:                  PUSH AF


  29:                  RRCA


  30:                  RRCA


  31:                  AND 00000111B


  32:                  LD IY,COLUMNA


  33:                  CP 0


  34:                  JP Z,COL1


  35:                  CP 1


  36:                  JP Z,COL2


  37:                  CP 2


  38:                  JP Z,COL3


  39:                  CP 3


  40:                  JP Z,COL4


  41:                  CP 4


  42:                  JP Z,COL5


  43:                  CP 5


  44:                  JP Z,COL6


  45:                  CP 6


  46:                  JP Z,COL7


  47:                  INC IY


  48:  COL7:           INC IY


  49:  COL6:           INC IY


  50:  COL5:           INC IY


  51:  COL4:           INC IY


  52:  COL3:           INC IY


  53:  COL2:           INC IY


  54:  COL1:           LD B,(IY)


  55:   


  56:                  ;LD (IX),A


  57:                  POP AF


  58:                  AND 00000011B


  59:                  LD IY,FILAS


  60:                  CP 0


  61:                  JP Z,FIL1


  62:                  CP 1


  63:                  JP Z,FIL2


  64:                  CP 2


  65:                  JP Z,FIL3


  66:                  INC IY


  67:  FIL3:           INC IY


  68:  FIL2:           INC IY


  69:  FIL1:           LD C,(IY)


  70:   


  71:   


  72:                  ;LD (IX+1),A


  73:                  PUSH BC


  74:  LAZO3:          IN A,(DATA)


  75:                  BIT 7,A


  76:                  JP Z,LAZO3


  77:                  LD IY,CESTAS


  78:                  DEC IY


  79:                  CALL CIERRA


  80:  LAZO4:          CALL DERECHA


  81:                  INC IY


  82:                  DJNZ LAZO4


  83:                  LD A,0


  84:                  CP C


  85:                  JP Z,LAZO6


  86:  LAZO5:          CALL ABAJO


  87:                  LD DE,8


  88:                  ADD IY,DE


  89:                  DEC C


  90:                  JP NZ,LAZO5


  91:  LAZO6:          CALL ABRE


  92:                  CALL MARCAR


  93:                  POP BC


  94:                  LD A,0


  95:                  CP C


  96:                  JP Z,LAZO8


  97:  LAZO7:          CALL ARRIBA


  98:                  DEC C


  99:                  JP NZ,LAZO7


 100:  LAZO8:          CALL IZQUIERDA


 101:                  DJNZ LAZO8


 102:                  CALL APAGAR


 103:                  JP LAZO1


 104:   


 105:   


 106:   


 107:   


 108:  MBON:           LD A,8


 109:                  OUT (DATB),A


 110:                  ;CALL RETRASO


 111:                  RET


 112:  APAGAR:         LD A,0


 113:                  OUT (DATB),A


 114:                  ;CALL RETRASO


 115:                  RET


 116:  ARRIBA:         LD A,1


 117:                  OUT (DATB),A


 118:                  ;CALL RETRASO


 119:                  RET


 120:  ABAJO:          LD A,2


 121:                  OUT (DATB),A


 122:                  ;CALL RETRASO


 123:                  RET


 124:  IZQUIERDA:      LD A,3


 125:                  OUT (DATB),A


 126:                  ;CALL RETRASO


 127:                  RET


 128:  DERECHA:        LD A,4


 129:                  OUT (DATB),A


 130:                  ;CALL RETRASO


 131:                  RET


 132:  ABRE:           LD A,5


 133:                  OUT (DATB),A


 134:                  ;CALL RETRASO


 135:                  RET


 136:  CIERRA:         LD A,6


 137:                  OUT (DATB),A


 138:                  ;CALL RETRASO


 139:                  RET


 140:  BANDA:          LD IX,BANDAT


 141:                  LD B,8


 142:  B1:             LD (IX),"@"


 143:                  ;CALL RETRASO


 144:                  LD (IX),0


 145:                  INC IX


 146:                  DJNZ B1


 147:                  RET


 148:  MARCAR:         LD (IY),"@"


 149:                  ;CALL RETRASO


 150:                  LD (IY),0


 151:                  RET


 152:   


 153:   


 154:                  ORG 2000H


 155:  CESTAS          DS 32


 156:  SERIAL          DS 8


 157:  BANDAT          DS 8


 158:   


 159:                  ORG 2100H


 160:  COLUMNA         DB 1,2,3,4,5,6,7,8


 161:  FILAS           DB 0,1,2,3


 162:  CONTA           EQU 06


 163:  CONTB           EQU 07


 164:  DATA            EQU 04


 165:  DATB            EQU 05


 166:                  END


 167:   


No hay comentarios:

Publicar un comentario