Вы находитесь на странице: 1из 2

DESARROLLO Y PROCEDIMIENTO

Lógica de programación:

Se deberá hacer una interfaz el cual permita la comunicación asíncrona entre el pic 18F4550 y
el software Matlab el cual permita el control de un motor DC, en cuya interfaz se podrá variar la
velocidad y sentido de giro del motor.

Figura 3. Interfaz (Matlab).

Programación en Mikro C:

Variables del programa:


unsigned int x_coord, y_coord: estas variables servirán para calibrar la pantalla touch.
unsigned int ubicacion1=0, ubicacion2=0, sentido=0;
Las variables ubicación1 y ubicación 2: servirán para guardar la selección a través del panel táctil.
Es decir, servirán para guardar la selección a través de la touch la casilla seleccionada que se
visualizará en la pantalla GLCD.
Se deberá crear una interfaz en la pantalla GLCD que demuestre si el sistema este encendido o
apagado.

Funciones del programa:

Se podrá observar las funciones utilizadas para calibrar la Touch en el Anexo 4.

void boton_on1(): Es una función que permitirá graficar la casilla a través de la GLCD para el
botón on cuando no es seleccionado.

void boton_on2: Es una función que permitirá graficar la casilla a través de la GLCD para el botón
on cuando es seleccionado.

void boton_OFF1(): Es una función que permitirá graficar la casilla a través de la GLCD para el
botón off cuando no es seleccionado.

void boton_OFF2(): Es una función que permitirá graficar la casilla a través de la GLCD para el
botón off cuando es seleccionado.

Cuando los botones antes mencionados son seleccionados cambiaran de color de blanco a
negro.
void mensaje_on(): es una función que permitirá escribir la palabra on cuando su casilla es
seleccionada, el color que se utilizó en esta escritura es cero el cual permitirá observar la palabra
on cuando el color de la casilla sea negra.

void mensaje_off(): es una función que permitirá escribir la palabra off cuando su casilla es
seleccionada, el color que se utilizó en esta escritura es cero el cual permitirá observar la palabra
off cuando el color de la casilla sea negra.

void margen(): es una función que permitirá separar los botones antes mencionados.

El sistema al estar en on se iniciará la comunicación con la interfaz antes mencionada, a través


de la comunicación UART, de lo contrario no permitirá controlar el motor DC.

Comunicación a través de la interfaz:

Mediante la comunicación UART se enviarán, de la interfaz diseñada en Matlab al pic 18F4550


caracteres ASCII los cuales permitirán controlar al motor antes mencionado.

Caracteres utilizados:

‘2’: este carácter permitirá utilizar el 20 % de la modulación por ancho de pulso (PWM).

‘4’: este carácter permitirá utilizar el 40 % de la modulación por ancho de pulso (PWM).

‘6’: este carácter permitirá utilizar el 60 % de la modulación por ancho de pulso (PWM).

‘8’: este carácter permitirá utilizar el 80 % de la modulación por ancho de pulso (PWM).

‘1’: este carácter permitirá utilizar el 100 % de la modulación por ancho de pulso (PWM).

‘0’: este carácter permitirá utilizar el 0 % de la modulación por ancho de pulso (PWM), es decir
al recibir este carácter el motor dejara de girar.

‘D’: este carácter permitirá cambiar el sentido de giro el motor hacia la derecha, es decir en
sentido horario, viendo de frente al eje del motor.

‘I’: este carácter permitirá cambiar el sentido de giro el motor hacia la izquierda, es decir en
sentido antihorario, viendo de frente al eje del motor.

Lógica de programación propuesto:

Al igual que el anterior ejercicio se deberá hacer una interfaz el cual permita la comunicación
entre el pic 18F4550 y el software Matlab, mediante el cual se permita variar la velocidad del
motor, entre estas funcionalidades deberá existir un botón en la interfaz, la cual permita variar
automáticamente la velocidad del motor, la velocidad inicial del motor será igual a cero, y será
la velocidad inicial del arranque.