#----programa de ejemplo----
inicio
# poner los pines del puerto a cero y esperar
#5000 milisegundo
multipuerto(0,5000)
# activar uno a uno los pines del puerto paralelo
# enviando su valor en decimal y esperando#
1000 milisegundos (1 segundo)
multipuerto(1,1000)
multipuerto(2,1000)
multipuerto(4,1000)
multipuerto(8,1000)
multipuerto(16,1000)
multipuerto(32,1000)
multipuerto(64,1000)
multipuerto(128,1000)
# apagar los pines y salgir del programa
multipuerto(0,0)
final
El codigo es bastante sencillo (en el proximo ejemplo veremos de hacerlo mas eficiciente usando la funcion repetir( y variables). Se envia al puerto un valor decimal que al ser transformado en binario activa secuencialmente cada pin del puerto.
por ejemplo, 1 en decimal es 00000001 en el tipo de sistema binario que maneja el puerto paralelo (1 byte)
Haciendo la progresion geometrica obtenemos que:
1 - 00000001
2 - 00000010
4 - 00000100
8 - 00001000
16 - 00010000
32 - 00100000
64 - 01000000
128 - 10000000
de esta forma podemos activar cualquiera de los pines del puerto o todos al mismo tiempo, solo hay que sumar los valores individuales decimales de los pines y obtendremos el valor que nececitamos para enviar al puerto, si quisieramos activar todos los pines, sumammos los 8 valores de la tabla de arriba y obtenemos 255 que es el maximo valor que se puede enviar al puerto paralelo.
No hay comentarios:
Publicar un comentario