Professional Documents
Culture Documents
CAMPUS ISTMO
INGENIERIA EN MECATRONICA
MICROCONTROLDADORES
MC GASTON DEHESA VALENCIA
UNIDAD II
PROGRAMACIN DE ENTRADAS Y SALIDAS
SALIDASSALIDASMICROCONTROLADORESPROGRAMACIN
7 MT
07/10/17
1
ndice
2.1 Arquitectura de los puertos de E/S. .............................................................................................. 3
2.2 Configuracin y caractersticas elctricas de los puertos de E/S. ................................................. 9
2.3 Estructura de los programas para microcontrolador. ................................................................. 11
2.4 Programacin de puertos con interfaces para el manejo de dispositivos perifricos sin manejo
de potencia........................................................................................................................................ 17
2.4.1 Displays de 7 segmentos. ......................................................................................................... 21
2.4.2 Displays LCD ............................................................................................................................. 22
2.4.3 Teclados (Lineal Y Matrical)...................................................................................................... 23
2.5 Programacin De Puertos Con Interfaces De Potencia Con:....................................................... 28
2.5.1 Transistores .............................................................................................................................. 28
2.5.2 Relevadores .............................................................................................................................. 29
2.5.3 Optoacpladores ........................................................................................................................ 32
2.5.3 Puentes H Discretos E Integrados ............................................................................................ 37
2.6 Desarrollo de aplicaciones para el manejo de: ........................................................................... 39
2.6.1 Lmparas .................................................................................................................................. 39
2.6.2 Zumbadores, vibradores, piezoelctricos, bocinas, etc ........................................................... 40
2.6.3 Motores de CD ......................................................................................................................... 44
2.6.4 Motores a pasos ....................................................................................................................... 45
2.6.5 Servomotores ........................................................................................................................... 50
BIBLIOGRAFIA .................................................................................................................................... 53
2
2.1 Arquitectura de los puertos de E/S.
Cualquier dispositivo (distinto de la memoria RAM) que intercambie datos con el
sistema lo hace a travs de un "puerto", por esto se denominan tambin puertos de
E/S ("I/O ports"). Desde el punto de vista del software, un puerto es una interfaz
con ciertas caractersticas; se trata por tanto de una abstraccin (no nos referimos
al enchufe con el que se conecta fsicamente un dispositivo al sistema), aunque
desde el punto de vista del hardware, esta abstraccin se corresponde con un
dispositivo fsico capaz de intercambiar informacin (E/S) con el bus.
Como los dispositivos E/S tienen algn tipo de conexin con el bus externo deben
tener una direccin (o conjunto de ellas) que los identifique. Los hemos comparado
con un telfono, un dispositivo con el que se puede enviar/recibir informacin
mediante una direccin. Hablar de un puerto E/S es casi siempre sinnimo de una
direccin, y es costumbre informtica referirse a estas direcciones en hexadecimal
De modo que, por ejemplo, un puerto puede ser 0x21 en un fuente o 21h en un texto
informtico.
Nota: Al tratar de las E/S hemos indicado que puerto es sinnimo de perifrico; un
dispositivo externo que comunica con el sistema a travs de una direccin. Sin
embargo no todos son dispositivos externos a la placa-base, de hecho algunos
dispositivos hardware incluidos en ella tienen la caracterstica de "Puertos". Por
ejemplo, durante mucho tiempo algunos PC's disponan de un botn frontal
sealado "Turbo", con el que se poda cambiar la velocidad de funcionamiento. Este
cambio de la velocidad del reloj tambin puede realizarse por software. Basta para
ello cambiar un par de bits en un "Puerto" instalado en la propia placa-base
(generalmente en el rango 62-6Fh).
Direcciones de puertos
3
los adaptadores grficos). En el apartado dedicado a E/S se explican las diferencias
entre ambas modalidades .
Puede observarse que para un mismo perifrico se tienen varias direcciones (un
"rango"). La razn es que estos dispositivos tienen varios registros y/o son
programables, para lo que disponen de registros especiales (cada registro de un
Byte tiene una direccin, y estas son correlativas). Por ejemplo, el controlador de
puerto serie de los primeros PCs era un circuito integrado 8250 de National
Semiconductor; que dispone de 8 registros, aunque los datos se reciben y
transmiten por uno de ellos, el resto sirve para programar y controlar el
funcionamiento del chip.
En realidad IBM defini de forma distinta las direcciones de puerto de las interfaces
de impresora en los PC monocromo y en los de color. Las asignaciones fueron las
siguientes:
PuertoMonocromo Color
4
En lo referente a los puertos serie, durante la secuencia inicial de identificacin del
hardware .la BIOS realiza una bsqueda de dispositivos de E/S por direcciones en
un orden determinado, y les asigna un nombre lgico segn el orden de aparicin.
En el caso de los puertos serie el orden suele ser el siguiente:
PuertoDireccin
COM1 3F8-3FFh
COM2 2F8-2FFh
COM3 3E8-3EFh
COM4 2E8-2EFh
cat /proc/ioports
5
Sin embargo, los decodificadores de direcciones de perifricos de los primitivos
PC's solo podan utilizar direcciones de 10 bits para tales accesos, por lo que las
direcciones de puertos estaban constreidas a 210 (1 KB 0000-0400h). En realidad
el espacio era an ms pequeo, puesto que los primeros 256 Bytes estaban
copados por algunos dispositivos de la placa-base, resultando que los dispositivos
E/S deban ser mapeados en 768 Bytes. Generalmente se utilizaron fragmentos de
256 Bytes en la forma xxF0-xxFFh, organizados de forma bastante desordenada.
Aspectos lgicos
6
primera lee un byte del registro de salida del puerto y lo sita en un registro del
procesador; la segunda escribe el contenido de un registro del procesador en un
registro del puerto. Ambas instrucciones permiten dos variaciones sintcticas:
IN acumulador-destino, direccion-de-puerto-origen
IN acumulador-destino, acumulador-origen
Por supuesto, cualquier programa que quiera utilizar puertos deber emplear directa
o indirectamente estas dos instrucciones ensamblador, aunque en muchos casos
no es imprescindible enredarse en demasiados detalles.
7
MOV DL,7
MOV AH,2
INT 21
Los dems Sistemas disponen de utilidades anlogas. Por ejemplo, los sistemas
Windows disponen de una DLL especfica para este tipo de servicios.
Aspectos fsicos
El procedimiento que se sigue el procesador para las E/S hacia puertos, es siempre
el mismo: Poner el dato en el bus de datos y la direccin en el de direcciones.
Como indicamos a continuacin, el sistema sabe que se trata de una direccin de
memoria (real o de puerto mapeado) o de un puerto de direccin dedicada, y cual
es la accin esperada (lectura o escritura) porque se dispone de 4 lneas especficas
en el bus de control
IOR Orden de lectura para dispositivo E/S conectado al bus, que debe colocar
un dato en el bus de datos.
IOW Orden de escritura para dispositivo E/S, que debe leer el dato situado en el
bus.
MEMR Esta seal indica a los dispositivos de memoria que deben colocar un dato
en el bus de datos.
8
MEMW Seal que indica a los dispositivos de memoria que deben almacenar el
dato colocado en el bus de datos.
Caractersticas Principales.
Cuando se habilita un perifrico de algn pin este deja de comportarse como un I/O
digital de propsito general.
TRISA: 85h
TRISB: 86h
TRISC: 87h
TRISD: 88h
9
Y la gestin del bus de datos se realiza a travs del registro PORTx, en este caso
en el banco 0 de la memoria RAM. Cuando se lee un puerto, el PIC lee los valores
presentes en los pines (No en el LATCH). Por ello ah que tener muy en cuenta los
comandos leer-modificar-escribir (read-modify-write RMW) aplicados a los puertos
y al cambiar el sentido de circulacin de un pin de entrada a salida.
PORTA: 05h
PORTB: 06h
PORTC: 07h
PORTD: 08h
10
2.3 Estructura de los programas para microcontrolador.
El lenguaje C data del ao 1972; fue creado por los laboratorios Bell como resultado
de la necesidad de reescribir los sistemas operativos UNIX con el fin de optimizar el
conocido cdigo ensamblador. De igual manera el lenguaje C fue la evolucin de
lenguajes previos llamados B, y BCPL. El nuevo lenguaje C, rpidamente tom
fuerza por su funcionalidad y facilidad en la implementacin en diversos sistemas
computacionales que requeran cdigos de mquina.
bit
char
short
int
long
float
double
11
Las variables bit permiten almacenar un valor lgico es decir verdadero o falso, 0
1.
Las variables char se utilizan para almacenar caracteres codificados con el cdigo
ASCII, son tiles para guardar letras o textos.
Una variable short almacena un nmero entero de 8 bits corto puede valer de: -127
a 127.
Las variables tipo int guardan nmeros enteros de 16 bits, est variable permite
guardar nmeros de: -32767 a 32767.
La variable tipo long almacena nmeros enteros largos de 32 bits, su rango puede
ser de:
-2147483647 a 2147483647.
Las variables tipo float y double permiten guardar nmeros con punto decimal.
12
bit 1 01
13
sin embargo este ltimo no es estrictamente necesario. Por ltimo la declaracin
debe culminar con el carcter punto y coma (;).
unsigned char CARACTER; //Declaracin de una variable tipo char sin signo.
unsigned int ENTERO; //Declaracin de una variable tipo entera sin signo.
14
unsigned long ENTERO2; //Demacracin de una variable de tipo entero largo sin
signo.
Las variables tambin pueden ser declaradas en un formato que asocia varias
variables a un mismo nombre, este formato se conoce como una cadena de
variables, o un vector e incluso puede ser una matriz de variables, en conclusin
este tipo de declaraciones pueden ser de una o ms dimensiones.
15
//valores iniciales.
La declaracin de las variables debe respetar algunas reglas bsicas que evitan
errores y contradicciones en la compilacin del cdigo, para este fin tenga presente
las siguientes recomendaciones:
bit 1_VARIABLE-;
char -CARCTER!;
int 3ENTERO*;
16
typedef struct
char Nombre[10];
int Edad;
}Usuario;
U.Nombre[1]=u;
U.Nombre[2]=a;
U.Nombre[3]=n; U.Nombre[4]=0
Dispositivos de presentacin de datos. Son dispositivos con los que interactan los
usuarios, portando datos entre stos y la mquina, por ejemplo, ratn, teclado,
pantalla, impresora, etc.
17
mquina, aunque tambin sirven para el intercambio de datos con el usuario, por
ejemplo, los discos magnticos.
Dispositivos Velocidad
Teclado 10 Bps
18
ms, los computadores se utilizan para manejar documentos multimedia que
constan de grficos, vdeos y voz. La siguiente tabla presenta algunos parmetros
de transferencia para los dispositivos modernos de E/S multimedia:
Grficos Vdeo
Voz 1 MBps
100 MBps
64 KBps 1 - 5 segundos
20 milisegundos
- 300 milisegundos
19
Los dispositivos perifricos que pueden conectarse a un computador para realizar
entrada y salida de informacin presentan, pues, las siguientes caractersticas:
Las tres funciones bsicas se pueden realizar a travs del bus del sistema que
conecta la memoria y la CPU, o bien se puede utilizar un bus especfico para las
operaciones de E/S. Estas alternativas se traducen en dos formas de organizacin
de los espacios de direcciones:
20
Espacios de direcciones unificados
Este elemento se ensambla o arma de manera que se pueda activar cada segmento
(diodo LED) por separado logrando de esta manera combinar los elementos y
representar todos los nmeros en el display (del 0 al 9). El display de 7
segmentosms comn es el de color , por su facilidad de visualizacin.
Cada elemento del display tiene asignado una letra que identifica su posicin en el
arreglo del display. Ver el grfico arriba
21
El display de nodo comn
En el display nodo comn, todos los nodos de los diodos LED unidos y
conectados a la fuente de alimentacin. En este caso para activar cualquier
elemento hay que poner el ctodo del elemento a tierra a travs de una resistencia
para limitar la corriente que pasa por el elemento
El display ctodo comn tiene todos los nodos de los diodos LED unidos y
conectados a tierra. Para activar un segmento de estos hay que poner el nodo del
segmento a encender a Vcc (tensinde la fuente) a travs de una resistencia para
limitar el paso de la corriente
Los Display LCD son visualizadores pasivos, esto significa que no emiten luz como
el visualizador o display alfanumrico hecho a base de un arreglo de diodos LEDs.
Es por esa razn que, algunas veces, cuando intentamos ver la hora en un reloj que
utiliza esta tecnologa, es necesario una fuente de luz adicional.
El Display LCD tiene muy bajo consumo de energa si se lo compara con el display
o visualizador alfanumrico y son compatibles con la tecnologa CMOS,
caracterstica que permite que se utilice en equipos porttiles (ejemplo: los relojes
de pulsera, calculadoras, etc.). Tiene una vida aproximada de 50,000 horas. Hay
diferentes tipos de presentaciones y son muy fciles de configurar. Hay desde
visualizadores comunes de 7 segmentos, hasta una matriz de puntos, todos ellos
muy delgados.
22
Cmo funciona un Display LCD?
El lquido de un display LCD est entre dos placas de vidrio paralelas con una
separacin de unos micrones. Estas placas de vidrio tienen unos electrodos
especiales que definen, con su forma, los smbolos, caracteres, etc. que se
visualizarn. La superficie del vidrio que hace contacto con el lquido es tratada de
manera que induzca la alineacin de los cristales en direccin paralela a las placas.
Esta alineacin permite el paso de la luz incidente sin ninguna alteracin.
23
De este modo se pueden leer 16 teclas utilizando solamente 8 lneas de un
microcontrolador. Si asumimos que todas las columnas y filas inicialmente estn en
alto (1 lgico), la pulsacin de un botn se puede detectar al poner cada fila a en
bajo (0 lgico) y checar cada columna en busca de un cero, si ninguna columna
est en bajo entonces el 0 de las filas se recorre hacia la siguiente y as
secuencialmente.
Para tener siempre un valor de 1 lgico en las columnas del teclado (parte
alta del puerto B del pic) es necesario conectar resistencias de pull-up, sin embargo
el puerto B cuenta con resistencias de pull-up integradas, de ese modo es posible
trabajar con un teclado matricial sin necesidad de ningn componente externo.
Programa principal:
24
El programa principal es muy sencillo, simplemente configura el puerto A como
salida, la parte baja del puerto B tambin como salida y la parte alta del puerto B
como entrada. Adems de configurar los puertos tambin se habilitan las
resistencias de pull-up internas con la lnea bcf OPTION_REG, NOT_RBPU.
25
26
27
2.5 Programacin De Puertos Con Interfaces De Potencia Con:
2.5.1 Transistores
Los actuadores DC, requieren de corriente siempre directa es decir que siempre
circula en la misma direccin. Para el uso de estos actuadores se implementan
esencialmente dos tipos de dispositivos, los transistores de potencia o los
relevadores.
28
rectificador polarizado en inverso para descargar las cargas inductivas, este arreglo
se muestra en el siguiente circuito:
2.5.2 Relevadores
Los relevadores son dispositivos electromecnicos, que tienen un electroimn con
el cual se cierra o se abre un circuito elctrico por medio de uno o varios contactos.
Los relevadores son ideales para aislar los circuitos de potencia con la etapa de
control electrnico.
Por ltimo el uso de estos dispositivos se debe hacer de forma final como se
puede observar en el siguiente circuito, que tiene una carga de 120V AC:
29
Los motores DC, son de naturaleza inductiva y por consiguiente merecen el
mismo tratamiento de los relevadores. En el siguiente ejemplo se puede apreciar
como un microcontrolador hace cambios de velocidad en un motor DC, para este
fin se implementa el mdulo PWM de un microcontrolador 16F628A, con oscilador
de 4MHz. El cdigo fuente en lenguaje C es el siguiente:
30
Para poder hacer la simulacin de este ejemplo se debe implementar en ISIS los
dispositivos: 16F628A, BUTTON, RES, 2N3904, 1N4001, y MOTOR ACTIVE.
Configurados como se puede apreciar en el siguiente circuito:
31
2.5.3 Optoacpladores
Para el uso de actuadores AC, se pueden usar esencialmente dos tcnicas, la
primera es la implementacin de relevadores con la limitacin de que solo pueden
hacerse acciones de conmutacin ON, OFF.
Los TRIAC son de fcil implementacin y su uso puede hacerse aislando las
corrientes de potencia con opt acopladores como los MOC3011, 3010, 3021, etc.
Los TRIAC se pueden adquirir en capacidad de la mxima corriente que pueden
soportar.
Un TRIAC cuenta con tres terminales que son: A1, A2, y gate, los TRIAC
cortocircuitan las terminales A1, y A2, cuando una corriente circula entre el gate y
A1. Y solo se desconecta cuando la corriente de A2 se hace 0, esto es cosible
cuando la seal AC, hace su cruce por cero. La apariencia fsica y la vista en ISIS
de estos dispositivos es la siguiente:
32
medio de un circuito digital con solo la activacin de un LED. Para entender este
arreglo de forma clara, se puede observar el siguiente circuito:
Lo que indica que un siclo de la red elctrica dura 1/60, es decir 16,666m
segundos. El trabajo de recorte de la fase se debe hacer sobre cada medio siclo es
decir en 8,333m segundos. Lo anterior indica que el recorte de fase se hace entre
0 y 180 grados, y se repite igual entre 180 y 360 grados. Para comprender de forma
clara este concepto se puede observar la siguiente grfica:
33
Para poder realizar el recorte de fase, es indispensable detectar el cruce por cero
de la seal seno, para sincronizarse con ella. Para detectar el cruce por cero existen
diversas estrategias, sin embargo en el prximo ejemplo se mostrar una que
implica la implementacin de opto acopladores.
34
35
Para realizar la simulacin de este ejercicio se implementa en ISIS los dispositivos:
16F628A, RES, BUTTON, MOC3023, Q4006L4, B80C1000, OPTOCOUPLER-NPN,
VSINE, y el OSCILLOSCOPE. El circuito electrnico es el siguiente:
36
2.5.3 Puentes H Discretos E Integrados
Los puentes H son arreglos transistorizados que permiten invertir la polaridad sobre
una carga elctrica, con el suministro de solo una fuente sencilla. Los puentes H,
se pueden implementar en discreto con transistores o usar mdulos integrados que
se pueden conseguir comercialmente. Estos arreglos cuentan con dos seales de
control que permiten activar la polaridad positiva, y negativa. Un diseo discreto de
este arreglo se puede apreciar en el siguiente circuito:
37
Para activar una polaridad positiva, se activa el control 1, y se apaga el control 2,
para activar la polaridad negativa se hace la configuracin contraria con los pines
de control. Se debe tener presente que nunca se podrn activar los dos puntos de
control al mismo tiempo, est accin genera un corto circuito entre Vcc, y referencia,
produciendo daos considerables sobre los transistores. El siguiente ejemplo
muestra el control de giro sobre un motor DC, por medio de un microcontrolador
16F628A:
38
2.6 Desarrollo de aplicaciones para el manejo de:
2.6.1 Lmparas
Una lmpara incandescente consta un filamento conductor que se encuentra dentro
de una ampolla de vidrio sobre la cual se ha hecho vaco. El filamento est
conectado a la base de la lmpara, de forma tal que cuando hacemos pasar
corriente obtenemos luz. Cmo explica la fsica esto?
39
(principalmente) radiacin visible (luz). Esa es la luz que emite la lmpara
incandescente.
40
Figura 2.6.2.2 componentes
Aplicaciones
Montaje
Primero vamos a fijarnos en el buzzer, como veris tiene dos cables, el negro y el
rojo, que conectaremos:
Piezoelctrico
41
voltaje comparativamente grande, y se utiliz en los primeros micrfonos de cristal.
El titanato de bario, el zirconato de plomo, y el titanato de plomo, son materiales
cermicos que exhiben piezoelectricidad, y se utilizan en transductores
ultrasnicos, as como en micrfonos. Si se aplica una oscilacin mecnica a dichas
obleas cermicas, estas respondern con vibraciones mecnicas, las cuales
proporcionan de fuentes de sonidos ultrasnicos. El titanato zirconato de plomo
(PZT), ha sido el material piezoelctrico estndar en los procesos de formacin de
imgenes mdicas. Los materiales cermicos piezoelctricos, han encontrado uso
en la produccin de movimientos del orden de nanmetros, en el control de
los microscopios de efecto tnel.
Aplicaciones
42
piezoelctricos se utilizan para monitorear la combustin durante el desarrollo
de motores de combustin interna, bien montados directamente en hoyos
adicionales en la culata o en las bujas, que estn equipadas con un sensor
piezoelctrico en miniatura.
Mientras que los sensores de cuarzo deben enfriarse a 300 C durante las
mediciones, existen cristales como el fosfato de galio que no presentan un montaje
gemelo hasta el punto de ebullicin del propio material. Se cree que en la naturaleza
tambin existen sensores piezoelctricos. La smithsonita o el carbonato de zinc son
43
piezoelctricos, y se piensa que puede llegar comportarse como sensores
biolgicos de fuerza.
2.6.3 Motores de CD
Los motores DC, son de naturaleza inductiva y por consiguiente merecen el mismo
tratamiento de los relevadores. En el siguiente ejemplo se puede apreciar como un
microcontrolador hace cambios de velocidad en un motor DC, para este fin se
implementa el mdulo PWM de un microcontrolador 16F628A, con oscilador de
4MHz. El cdigo fuente en lenguaje C es el siguiente:
44
Para poder hacer la simulacin de este ejemplo se debe implementar en ISIS los
dispositivos: 16F628A, BUTTON, RES, 2N3904, 1N4001, y MOTOR ACTIVE.
Configurados como se puede apreciar en el siguiente circuito:
45
En las siguientes grficas se puede apreciar la apariencia fsica de estos motores y
su vista en ISIS:
La secuencia de activacin para los motores unipolares puede ser de dos formas;
con una sola entrada activa, o dos entradas activas simultneamente. Cuando se
activan dos entradas simultneamente el torque del motor es mayor pero al mismo
tiempo la corriente es mayor. La siguiente tabla muestra la forma de activar las
secuencias en los dos casos:
46
El siguiente ejemplo muestra cmo realizar el control de un motor unipolar con un
PIC 16F628A, que cuenta con una frecuencia de reloj de 4MHz, para este fin la
secuencia del motor se guarda en un arreglo. El cdigo en lenguaje C es el
siguiente:
while(1)//Bucle infinito.
{
//Bucle while para hacer girar en un sentido
//por medio del pin RB6
while( Button( &PORTB, 6, 100, 0) )
{
PORTB = PASOS[PASO];
PASO++;
if( PASO==4 )PASO=0;
}
//Bucle while para hacer girar en un sentido contrario
//por medio del pin RB7
while( Button( &PORTB, 7, 100, 0) )
{
PORTB = PASOS[PASO];
PASO--;
if( PASO==255 )PASO=3;
}
}
}
47
Para simular este ejercicio se implementa en ISIS, el siguiente circuito electrnico,
con el MOTOR-STEPPER, BUTTON, y el driver ULN2003A:
0b00001100,
0b00001001
};
Para los motores bipolares se implementa un puente H doble, de tal forma que se
pueda hacer una secuencia con doble polaridad. La distribucin elctrica de este
tipo de motores es la siguiente:
48
Para el control de este tipo de motores se requiere de la siguiente secuencia de
polaridad:
Para realizar el ejercicio con este motor se implementa el mismo programa del motor
unipolar y se altera el arreglo de la secuencia, en este nuevo arreglo se asume un
1 lgico para los +V, de la tabla y un 0 lgico para los V. De esta forma se obtiene
el siguiente arreglo:
Para la simulacin del sistema se implementa en ISIS un circuito similar, pero con
un motor bipolar y un driver para puente H integrado. Este integrado es el L293D,
que es un circuito integrado que tiene en su interior dos puentes H simultneamente,
caracterstica que lo hace ideal para este tipo de motores. La simulacin en ISIS,
implementa el 16F628A, BUTTON, MOTOR-BISTEPPER, y el L293D. El circuito
para simular es el siguiente:
49
2.6.5 Servomotores
Los servomotores son sistemas integrados que tienen un control de posicin
angular, y un sistema mecnico de piones para ofrecer mayor fuerza pero menor
velocidad. Un servomotor tiene incorporado un control de posicin angular, que
puede ser gobernado por medio de una seal PWM. Las aplicaciones de los
servomotores estn desde la robtica hasta los modelos a escala como aviones,
helicpteros y carros. Los servomotores cuentan con un terminal de tres pines para
la alimentacin, la referencia y la seal de control PWM. La apariencia fsica y la
vista en ISIS de estos dispositivos es la siguiente:
50
Figura 2.6.5.2 polaridades
51
if( PORTB.F6==0 )
{
ANGULO-=10.0;
if( ANGULO<0.0 )ANGULO=0.0;
while( Button(&PORTB,6,5,0) );
}
//Si se pulsa el botn de RB7
//se incrementan 10 grados.
if( PORTB.F7==0 )
{
ANGULO+=10.0;
if( ANGULO>180.0 )ANGULO=180.0;
while( Button(&PORTB,7,5,0) );
}
}
}
Para simular este ejercicio, se implementa en ISIS, el PIC 16F628A, con frecuencia
de reloj de 20MHz, MOTOR-PWMSERVO, y el BUTTON. El circuito correspondiente
es el siguiente:
52
BIBLIOGRAFIA
Microcontroladores Pic; E. Martn Cuenca, J. M. Angulo Usategui, I. Angulo Martinz;
Paraninfo, 5 edicin, 2001.
Microcontroladores: Fundamentos y aplicaciones con PIC; F. E. Valds Prez, R. Palls
Areny; Alfaomega; 2007.
Microcontroladores PIC: Diseo prctico de aplicaciones, 2 parte; J.M. Angulo Usategui, S.
Romero Yesa, I. Angulo Martnez; McGraw Hill; 2 edicin; 2006.
https://documents.tips/documents/23-tipos-y-distribucion-de-las-memorias-
internas.html
53