PIC 18f4550
Microcontroladores PIC en
Lenguaje C con CCS
Entrega Nº 9.
Hagamos un driver para un motor de DC…
Aprovechando ya los primeros conocimientos, los pondremos enpráctica sobre una
aplicación real, diseñaremos el control de un motor de corriente continua de 12V hasta
1 Amp, del tipo usado en muchas aplicaciones pequeñas. El sistema de control nos
permitiráactivar el arranque y la parada del motor así como cambiar su dirección.
Para el circuito usaremos el PIC16F1939 que estamos estudiando, además
necesitaremos un L293D, el cual es un driver para motores decorriente continua de
hasta 1 Amper, unos pulsadores y unos LEDs para hacer la señalización.
El circuito lo implementaremos sobre una placa del tipo pertinax multiperforada paso
2.54mm, muycomunes actualmente, y generalmente usadas para la implementación de
circuitos experimentales.
El circuito podemos verlo a continuación:
La secuencia de nuestro programa será muy simple; leer lospulsadores y en función del
pulsador que accionemos, cambiaremos la función del dispositivo.
Las funciones de la aplicación estarán controladas por 2 Flags (banderas) internos, los
cuales seimplementan mediante la creación de 2 variables de 1 bit, y a las que
llamaremos FLAG_RUN y FLAG_FWRW.
La aplicación estará constituida por 2 rutinas o funciones del tipo void-void, que leerán
el estado delos pulsadores (ScanKey) y controlaran el funcionamiento del motor
(MotorControl).
Para implementar el programa usaremos las funciones embebidas estudiadas
anteriormente y los recursos del lenguajeC también estudiados en los apartados
anteriores.
El listado del programa con su respectivo comentario lo presentamos aquí:
//archivo de cabecera del procesador
#include
//seteamos lafrecuencia del delay
#use delay(internal, clock=4000000)
//fusibles de configuración
#fuses INTRC_IO //oscilador Interno con Puertos IO
#fuses NOPROTECT//sin protección de código
#fuses PUT//Power...
Regístrate para leer el documento completo.