Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Look up keyword
Like this
17Activity
0 of .
Results for:
No results containing your search query
P. 1
Curso de PIC

Curso de PIC

Ratings:

4.67

(9)
|Views: 4,177|Likes:
Published by Pablo Andrés

More info:

Published by: Pablo Andrés on Feb 03, 2009
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF or read online from Scribd
See more
See less

07/15/2013

 
¿Q 
UÉESU
PIC? 
Los circuitos integrados programables (Program- mable Integrated Circuits = PIC) 
son componentes su-mamente útiles en la Electrónica de Consumo.Aún cuan-do son conocidos desde hace más de veinte años, exis-ten en la actualidad nuevos tipos que cumplen con unaserie de requisitos y características sumamente útiles.Como una primera aproximación podemos definir a unPIC como “un chip que me permite obtener un circuito in-tegrado a mi medida”, es decir puedo hacer que el PIC secomporte como un procesador de luminancia o un tempo-rizador o cualquier otro sistema mediante un programaque le grabo en una memoria ROM interna.Los microcontroladores PIC son en el fondo procesa-dores similares a otros tipos, como por ejemplo la familiade los microprocesadores X86, 80486, Pentium y muchosotros que usan una arquitectura interna del tipo Von Neu-mann.En este tipo de arquitectura los datos y la memo-ria del programa se encuentran en el mismo espacio dedirecciones.
En realidad un microprocesador y un microcon- trolador no son la misma cosa.Los PICs son micro- controladores,es decir,una unidad que posee en su interior al microprocesador y a los elementos indis- pensables para que pueda funcionar como una mini- computadora en un solo chip.
Un microprocesador es solamente la unidad centralde procesos o CPU, la memoria, los puertos y todos losdemás periféricos son exteriores.La programación de unmicroprocesador es, por lo tanto, una tarea compleja por-que deben controlarse todos estos dispositivos externos.Un microcontrolador integra la CPU y todos los peri-féricos en un mismo chip.El programador se desentiendede una gran cantidad de dispositivos y se concentra en elprograma de trabajo.Esta circunstancia da lugar a unagran pérdida de tiempo porque los datos tienen que serretirados de la memoria y llevados a la CPU (Central Pro-cessor Unit) y viceversa.Esto significa que la computado-ra dedica la mayor parte del tiempo al transporte de da-tos de ida o de vuelta, en lugar de usar este tiempo paratrabajar sobre los datos.Los PICs emplean un conjunto de instrucciones del ti-po RISC (Reduced Instruction Set Computer).Con elRISC se suele ejecutar la mayoría de las instruccionescon un solo pulso del clock.Con las instrucciones que seusan en otros equipos del tipo CISC (Complex InstructionSet Computer), se logran instrucciones más poderosas,pero a costa de varios ciclos del clock.En el bien conoci-do procesador 68HC11 de Motorola se requieren a veceshasta 5 ciclos del clock para ejecutar una instrucción.A los fines prácticos nos vamos a referir a los micro-controladores como bloques que poseen una memoria de
Curso de PICs paraEstudiantes y Aficionados
Para un buen aprendizaje práctico, este manual se complementa con un CD y un video que le enseñan los fundamentos sobre mi-crocontroladores PIC y lo guían paso a paso para que arme su propio cargador universal y aprenda a realizar sus primeros programas.Presentando este manual en cualquiera de nuestros distribuidores autorizados en América Latina (búsque el más cerca de su zona en
www.webelectronica.com.ar
) puede adquirirlos a precio promocional.El costo del CD + el video (presentando este manual) es el si-guiente:Argentina:$20;México:$150;Otros Países:U$S18.
En Argentina llame al:(011) 4301-8804.En México llame al:(0155) 5787-1779
Arquitectura de los PICs
Bases Generales
Sepa qué es un PIC, cómo se compone y para qué puede utilizarlo.
Figura 1
PIC para Estudiantes y Aficionados 
1
 
programa que es el lugar donde deben alojarse los datosque le indiquen al chip qué es lo que debe hacer;una me-moria de datos donde ingresen las señales que debe pro-cesar el programa, una unida aritmética y lógica donde sedesarrollen todas las tareas, una unidad de control que seencargue de supervisar todos los procesos y puertos deentrada y salida para que el PIC tenga contacto con el ex-terior (figura 1).Un microcontrolador como cualquier circuito integra-do analógico tiene entradas, salidas y algunos compo-nentes exteriores necesarios para procesar las señalesde entrada y convertirlas en las señales de salida (figura2).El 16F84 requiere un cristal con dos capacitores y co-mo mínimo un resistor para el reset.Por supuesto nece-sita una tensión de fuente de 5V (VDD) aplicada con res-pecto al terminal de masa (VSS).Posee dos puertos desalida, el A y el B, cuyos terminales son marcados RA0 alRA4 y RB0 al RB7.Estos puertos pueden ser programa-dos como de entrada o de salida.El terminal 4 opera co-mo reset pero también cumple funciones de carga de me-moria de programa cuando es excitado con pulsos de15V.El terminal RA4 (pata 3) también tiene funciones co-mo entrada de un temporizador y RBO (pata 6) cumpletambién funciones como entrada de interrupción.Ahora bien, la mayoría de los microcontroladores(sean de Microchip, o de National, Motorola, Philips, etc.)se comportan de forma similar, por ello nos vamos a re-ferir a los microcontroladores PIC16F84 cuya arquitectu-ra interna puede observarse en la figura 3.Observe primero los bloques externos.Existe un cris-tal que se conecta en OSC1 y OSC2 para generar elCLOCK del sistema.Luego una señal de entrada llamadaMCLR negada, que es un nombre de fantasía para nues-tro conocido RESET (debido a que esa pata tiene un do-ble uso) y, por último, dos puertos paralelos de I/O (entra-da o salida) llamados puerto A y puerto B.Una de las pa-tas del puerto A puede ser utilizada como entrada de in-terrupciones (esta pata especial hace que el microproce-sador deje de realizar la tarea que estaba ejecutando ypase a realizar otra tarea alternativa;cuando la terminavuelve a su programa original).Analicemos el bloque más grande (temporizadores),en éste observamos un grupo de bloques dedicados amejorar el funcionamiento pero sin influir directamente enel flujo de señales.Vemos un temporizador de encendido,
Estructura de un PIC 
PIC para Estudiantes y Aficionados 
Fig. 2 Fig. 3 
 
un temporizador de arranque del oscilador de CLOCK, uncircuito de reset y un circuito llamado de vigilancia oWATCHDOG.Los dos primeros bloques procuran unarranque ordenado para no producir una carga al mismotiempo sobre la fuente.Por último, existe un circuito conun nombre curioso:“perro guardián”.Su función es estarvigilante el máximo de tiempo que tarda el microprocesa-dor en completar su programa (o mejor sería decir, la de-rivación más larga de su programa) y en caso de superar-se ese tiempo, provocar un reset automático porque elmicroprocesador se quedó trabado en alguna parte de suprograma.También se dice que el microprocesador sequedó colgado o congelado.Este bloque de circuitos no trabaja independiente-mente sino que requiere conexiones al exterior y al inte-rior del dispositivo.Por ejemplo, no siempre son utilizadosy es el programa quien determina su utilización y ademásajusta sus parámetros.Esto se realiza a través del bloquede control o decodificador de instrucciones.Analicemos ahora la sección de arriba a la izquierdaen donde observamos la memoria de programa, el conta-dor de programa, el registro de instrucciones y la pila oSTACK de 8 niveles.Cuando hablamos de registros nosreferimos a pequeñas unidades de memoria transitoria,construida por lo general con un registro de desplaza-miento como los analizados en “el rey micro”.Son memo-rias volátiles que se utilizan para guardar información porun tiempo mínimo, con el fin de realizar una operacióncompleja de varios pasos.El contador de programa es el responsable de que elmicroprocesador vaya analizando las instrucciones en or-den ascendente.Este guarda el número de instrucción enel STACK y la instrucción misma la pasa al registro de ins-trucciones desde donde se envía al resto del microproce-sador.El STACK es, en realidad, una pila de registros (ennuestro ejemplo hay 8), debido a que el programa puedetener derivaciones (en la jerga LOOPS, rulos o subpro-gramas).Cuando se termina de ejecutar un loop se debevolver al mismo punto del programa en donde se habíaproducido la bifurcación y eso es posible porque ese nú-mero de instrucción quedó guardado en uno de los regis-tros de la pila.Es común que un loop tenga, a su vez, unloop secundario y cuando se ejecuta ese loop secundariose debe volver al mismo punto del loop primario, eso seconsigue con guardar ese número de instrucción del loopsecundario en otro registro de la pila.Analicemos ahora la sección inferior derecha.En esesector se ubican los bloques responsables de efectuaroperaciones matemáticas y lógicas binarias;recordemosque el nombre ALU proviene de Aritmetic Logic Unite(unidad arimética y lógica).En este sector es imprescin-dible utilizar un registro ya que una operación aritméticao lógica siempre se efectúa entre dos números.Los nú-meros binarios que deben procesarse se toman de la me-moria de datos, el primero se acumula en el registro detrabajo o registro W (de Work = trabajo) el segundo es elpresente en el instante en que se invoca la memoria dedatos.Como las operaciones pueden ser encadenadas(cuando el resultado sirve como operando de la siguien-te operación, tal como el caso de un producto) el registroW tiene un retorno a la ALU.Vemos además que la ALU está comandada por elbloque MUX (MUltipleXador).En efecto, la ALU requiereque se le envíen números para procesar que le lleguendesde la memoria de datos, pero antes se la debe predis-poner para que efectúe la operación requerida (compara-ción, rotación de dígitos, etc.).El registro de estado o estatus colabora durante lasoperaciones matemáticas.Piense cómo opera Ud.pararealizar una resta:primero ubica el primer número, luegoel segundo y después comienza a analizar los bits menossignificativos (las unidades), pero si el número de arribaes menor que el número de abajo, entonces toma presta-do de la columna de las decenas, luego debe recordar es-to porque el número de arriba en la columna de las dece-nas se redujo en una unidad.En realidad, aunque se tra-te de una operación entre dos números su ejecución re-quiere guardar lo que se llama acarreo en otro registro yéste no es otra cosa más que el registro STATUS.El PIC16C84 contiene además de todo lo visto unamemoria RAM de registros que puede ser llamada desdeel registro de instrucción a través de un multiplexador dedirecciones.Esta sección sólo se utiliza en desarrollosavanzados.Ahora bien, un microcontrolador sin programano sabe hacer nada, es como un niño recién nacido;tie-ne algunos reflejos condicionados como el de succiónque le permite alimentarse pero no sabe hacer más queeso.Nosotros deberemos enseñarle a realizar acciones ylo vamos a hacer como a un bebé, paso a paso.Su capa-cidad de aprendizaje es enorme y sumamente variada.Levamos a enseñar a llorar a intervalos regulares, a encen-der luces, a sumar, a restar, etc.Enseñarle significa programarlo y eso se realiza conuna plaqueta de programación que depende de cadamarca y modelo de microcontrolador.Antiguamente losmicroprocesadores tenían una ventanita transparente yera necesario exponerlos a la luz ultravioleta para borrarsu memoria e introducir un programa nuevo.Actualmentecuentan con memorias que no tienen este requisito.Bas-ta con cargarlos con un programa para que se borre el
Estructura de un PIC 
PIC para Estudiantes y Aficionados 

Activity (17)

You've already reviewed this. Edit your review.
1 hundred reads
1 thousand reads
franjosss liked this
Luis Perez liked this
Adriana Prajzer Hegi added this note
Muy bueno , Gracias !!!!!!
taz1mx liked this
hle5457 liked this
Frankpo Plaza liked this

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->