Inicio Quienes Somos Entretenimiento Contáctenos Como Comprar los Ebooks
Ingresar Registrarse
Artículos Gratuitos sobre electrónica básica y avanzada y venta de libros electrónicos.

DISEÑANDO CON PICS
MICRO2
Programación de un PIC

por ING PICERNO




Tamaño A+ A-

MICRO2

­­­­­­­­­­­­­­­

 

 

 

2.1 INTRODUCCIÓN

        Cada microprocesador tiene un lenguaje propio generalmente muy limitado. Es decir que está diseñado para que entienda una determinada cantidad de instrucciones que suelen rondar las 30 o 40. Si Ud. le da una instrucción que el micro reconoce como válida y le agrega los parámetros adecuados al rango de la instrucción, la va a ejecutar sin dudar.

        Pero cada instrucción tiene diferentes parámetros que deben agregarse a la instrucción. Esto significa que el programador debe recordar quizás 40 instrucciones con varios parámetros diferentes y limitados a cierta banda de números.

        Este conjunto de instrucciones forma lo que se llama el lenguaje ensamblador del micro que es un archivo con terminación .asm. Originalmente el programador debía escribir las instrucciones de memoria sin tener ninguna ayuda para recordarlas.

        Para el que está todo el día programando generalmente no es problema recordar todo; pero dele un año sabático (un año de vacaciones en Honolulu por ejemplo) y cuando regrese ya no se acuerda de nada.

        En este cursillo vamos a estudiar a los microprocesadores PIC de Microchip y tomaremos como ejemplo al más popular de ellos que es el PIC16F84C, sobre todo porque es muy posible que si el lector tiene antecedentes en el tema, seguramente tenga uno, que utiliza para la prueba de sus proyectos.

        Este PIC, tiene un set de 32 instrucciones por lo cual su programación es relativamente sencilla. En la figura 2.1.1 mostramos un programa en asembler para que el lector sepa a qué nos estamos refiriendo cuando mencionamos el código o el lenguaje asembler. Por razones de espacio solo pusimos una parte del programa.

Fig.2.1.1 Parte de un programa en asembler. Nota: el programa tiene 12 páginas en total

        Pero el PIC o cualquier otro micro, no entiende este lenguaje que podríamos llamar humano. Un micro solo entiende "unos" y "Ceros" que genéricamente se denominan "bits" organizados en  palabras de un determinado largo de 8 bits que se llaman "Bytes".

        Si pudiera cambiar la informática yo no usaría esos nombres, a los bits los llamaría "caracteres" y a los Bytes los llamaría palabras. Pero a los informáticos les gusta complicar la cosas y nosotros no podemos llegar como paracaidistas y cambiar todo a nuestro gusto.

        Por lo tanto el programa en asembler que tiene terminación en .ASM debe convertirse primero en un código de bits pasando por un dispositivo llamado "Programador" (que tiene su correspondente programa driver) para formar luego dentro del programador palabras de 8 Bits. Esas palabras se denominan "Bytes" y se guardan en la memoria y se procesan en forma de Bytes.

        Recordar tantas palabras o parámetros es difícil. Y el programador debe tener los datos en su memoria y escribirlos con total exactitud, porque en caso contrario no va a generar el código requerido por el PIC. Y entonces en la pantalla del monitor de la PC aparecerá la palabra "ERROR" y arréglese para encontrarlo cual es. Un error puede ser por ejemplo que falte la coma entre "status" y "rp0" de la ante última sentencia de la figura 2.1.1.        

      Como Ud. se imaginará recordar tantas palabras es prácticamente imposible, sobre todo porque el menor error ya es suficiente para que el PIC no reciba su programa. Es decir que un "ERROR" frustra la operación de carga del PIC.

        Por eso cuando se trabaja escribiendo las palabras a mano, luego se procesan en programas llamados "debugger" que ayudan a encontrar los errores cometidos leyendo "palabra" por "palabra" y deteniéndose en las que están mal escritas, o en los símbolos mal ubicados o inexistentes. Entonces Ud. corrige el error y sigue corriendo el "debugger" hasta que finalmente el "programador" genere el archivo .HEX sin errores; es el adecuado conjunto de bits que cargados en el PIC lo hacen realizar las operaciones que Ud. desee. 

        Lo más importante es que Ud. recuerde que hasta ahora hay una secuencia de archivos que deben ejecutarse para poder cargar un PIC. Se comienza con un .ASM y se continua con un .HEX (no consideramos al "debugger" porque si Ud. tecleó bien no hace falta).

2.2 EL PROGRAMA NIPLE

        Olvídese de escribir el .ASM ahora se usa el NIPLE (u otros programas similares) que es una forma de diseñar los programas en forma gráfica. En lugar de escribir la sentencia, Ud. elige un bloque gráfico que sintetiza la sentencia, con una imagen fácilmente reconocible. Luego si el bloque requiere parámetros para su funcionamiento NIPLE se los pide y le avisa si el parámetro esta fuera de rango. En la figura 2.2.1 se puede observar bloque "Temporizador".


Fig.3.3.1  Bloque temporizador

        Para entender el tema vamos a imaginarnos un ejemplo. Suponga que en cualquier circuito con el que Ud. está trabajando, un pulso llega 100 mS antes de lo debido. Tendría que diseñar un circuito de retardo de 100 mS que no cambie el largo del pulso de entrada.

        Hay muchas formas de realizar un circuito de retardo. Por ejemplo puede ser un circuito analógico discreto, realmente complejo para la función que cumple y que tiene poca precisión.

        También se puede usar un "555" que es más fácil de diseñar pero igualmente impreciso que el retardo discreto porque la precisión es función del componentes RC. La solución es utilizar un PIC que vienen hasta en formato de 8 patas, a medio dolar aproximadamente.

        Seguramente Ud. pensará que es muy difícil resolver esta función de retardo con un PIC, pero es todo lo contrario. Es la solución más simple y posiblemente la más económica. El circuito es más simple que usando un 555 y tiene precisión de cristal.

         Como en las novelas, vamos a dejar las cosas así hasta el próximo capítulo en donde develaremos el circuito y el programa en NIPLE y en Asembler.

2.3 CONCLUSIONES

        En este artículo comenzamos a ponernos en tema y ya entramos en un ejemplo de como resolver un caso hipotético de un circuito, al que le tenemos que realizar una modificación; tal vez porque tiene una falla de diseño o porque no conseguimos un determinado componente.

        Se acuerda de las muletas analógicas que vimos hace mucho tiempo y que aun están libres en mi página, para resolver problemas de tensiones bajas de un pulso, o cosas similares. Bueno ahora llego la hora de las muletas digitales.

        Tal vez Ud. se pregunta cómo puede ser que un equipo que estaba funcionado de pronto requiere que retardemos un pulso. Muchas veces el buen funcionamiento duró mucho tiempo pero trabajando en el límite. Hasta que el envejecimiento adelantó un poco un pulso y dejo de funcionar. Esto no es raro hoy, en donde los proyectistas no tiene tiempo de probar sus diseños, porque no se fabrican mas que unos pocos meses.

        Tal vez la solución ideal y correcta sea  cambiar el microprocesador de la main del TV. Pero puede estar seguro que no lo va a conseguir; o si lo consigue es un BGA y Ud. no tiene maquina de reballing, o que por ese micro le quieren cobrar medio TV. En todos estos casos si Ud. cree que puede fabricar una muleta analógica o digital anímese y hágala y entonces podrá afirmar que es un técnico completo.

PROPAGANDA

        Ya está en venta el primer tomo de "La Biblia del PIC con NIPLE" que es la herramienta más idónea para simplificar el tema de los desarrollos de proyectos con microprocesadores.

        El primer Tomo de 230 páginas contiene 1 capítulo de introducción y tres proyectos completos con varias variaciones de diseño, que derivan en 9 proyectos finales.

        Cada proyecto contiene el circuito del mismo, dibujado en el programa simulador Proteus y/o Multisim con la explicación de para qué sirve cada componente y como se calcula. La simulación del mismo, con explicaciones sobre donde conectar el instrumental y como analizar los oscilogramas y las tensiones continuas.

        Luego le damos el dibujo de la plaqueta de circuito impreso y los planos e indicaciones de armado y de carga del programa. En este caso se trata de armar una baliza para automóvil o moto.

        En cada proyecto de cualquier tomo, vamos a seguir el mismo criterio con respecto a las facilidades que le entregamos para armar los proyectos completos.

        El segundo proyecto del tomo 1 es uno del más buscados por aficionados, estudiantes y reparadores, porque tiene todas las explicaciones para armar un programador de PICs y memorias, en 4 versiones distintas, para que el lector arme la de su gusto; con zócalo de cero esfuerzo conectable por una manguera. De plaqueta única, o de grabación sin desconectar el PIC (o la memoria) del circuito.

        El tercer proyecto es un proyecto de multiple uso, porque con él se pueden armar: Un secuenciador con tres modos de barrido para 4 LEDs, para ocho LEDs y para 12 LEDs, con barrido lineal o con solapamiento y por último un oscilador de audio senoidal de frecuencia de 20 a 20KHz apto para la reparación y a un costo casi inexistente. Y lo más importante es que explicamos cómo diseñarlo para que Ud. pueda armar un generador diente de sierra o de señal cuadrada, solo cambiando algunos valores de resistencia.

        Si vive en la argentina solo ingrese en www.picerno.com.ar busque la caratula de la ultima pagina y pulse en comprar ahora. Podrá pagar por todas las opciones de mercado pago siguiendo las instrucciones de pantalla.

        Si vive en el exterior puede comprarlo por Paypal, pero enviando un mensaje a www.picerno.com.ar y entrando en "contactenos" para indicarnos que desea comprar.

        Ud. recibirá los eBook por correo electrónico dentro de las 24 horas.

         

     



Más DISEÑANDO CON PICS

micro 5
Decimales,binarios y hexadecimales

EN EL ULTIMO ARTICULO DEJAMOS EL TEMA CUANDO TENÍAMOS SOLO DOS LENGUAJES DE PROGRAMACIÓN EN DANZA. EL .ASM GENERADO POR EL NIPLE Y EL CARGADOR DE PIC QUE ESTABA ESPERANDO UN ARCHIVO .HEX EN OTROS TIEMPOS HABÍA QUE TOMAR EL ARCHIVO .ASM Y CARGARLO EN EL UN PROGRAMA ENTREGADO POR MICROCHIP. HOY ESO SE HACE AUTOMÁTICAMENTE EN EL NIPLE PIDIENDO EL ARCHIVO .HEX. SIMPLEMENTE.

[+] Leer artículo...    


MICRO3
PROGRAMANDO CON NIPLE

En esta entrega vamos a indicar como se construye un generador de señal rectangular con un PIC 16F84A. No tenemos más pretensión más que hacer que mis lectores tengan una idea concreta de lo que puede hacer un micro y de lo que hay que ponerle por dentro o por fuera para que lo haga. Y también comparar como se programa usando el programa NIPLE o escribiendo el programa a mano.

[+] Leer artículo...    


MICRO 1
INTRODUCCIÓN A LOS MICROS

EN NUESTRA PÁGINA TENEMOS UNA COLUMNA DESPLEGABLE LLAMADA "MICROS" QUE ESTA TOTALMENTE VACÍA. SUCEDE QUE EL TEMA TV NOS ABSORVIÓ TOTALMENTE Y NO TUVIMOS OPORTUNIDAD DE REALIZAR NINGÚN ARTÍCULO SOBRE EL TEMA. PERO VAMOS A CORREGIR ESA FALENCIA ESCRIBIENDO LARGO Y TENDIDO SOBRE EL MISMO, SOBRE TODO PORQUE LLEGÓ EL MOMENTO QUE LOS TÉCNICOS REPARADORES APRENDAN A PROGRAMAR Y ADEMÁS PORQUE QUEREMOS CAPTAR UN NUEVO TIPO DE LECTORES, DEDICADOS AL DISEÑO DE PRODUCTOS RELACIONADOS.

[+] Leer artículo...    






El Ing. Alberto Picerno, conocido en toda latinoamerica por sus cursos de Tv y LCD, es el autor mas prolífico sobre Electrónica, con mas de 40 libros tecnicos y cientos de articulos publicados. 

Se inicio en el mundo de la electronica de niño ayudando a su padre que era hobbysta y aficionado a la radio.

Su experiencia temprana le permitio recibirse con medalla de oro al mejor promedio de "Tecnico Nacional el Telecomunicaciones" y posteriormente volvio a obtener la medalla de oro al mejor promedio como "Ingeniero en electronica en UTN"

Leer Mas Aquí



Artículos Gratis
Sobre Electrónica
por Ing. Picerno


Ir a Artículos Gratuitos      


Libros Digitales

Adquiera los mejores
Libros Digitales (Ebooks)
Sobre Electrónica

Ir a Sección Libros      

MAPA DE LINKS:

INICIO - QUIENES SOMOS - ENTRETENIMIENTO - CONTACTENOS

TV: TRC - LCD - Plasma - LED - Smart - OLED

SOLDADURAS: SMD - BGA - Maquinas de Rebaling

TALLER: Puntas de prueba Sonda de RF - Punta de prueba BEBE - Punta de prueba Filtro Pasabajo - Instrumentos Fuentes - Instrumentos Evariac - Instrumentos SuperEvariac - Instrumentos Varios

AUDIO: Amplificadores Analogicos - Amplificadores Digitales - Bafles Caseros

MANUALES: TV TRC - TV LCD - TV Plasma - TV LED - SmartTV - TV Oled - Fuentes de TV - T-COM - Driver de LED - Inverters

EBOOKS

PROGRAMAS: Simuladores de Circuitos Multisim - Simuladores de Circuitos Livewire - Simuladores de Circuitos Proteus - Programas para PICs y memorias Ram

MICROS: Diseñando con PICS 1 - Diseñando con PICS 2

OTROS ARTICULOS

ARTICULOS DE LA A A LA Z

Ingeniero Alberto Picerno - Av. 2 de Abril 140 - Burzaco - Buenos Aires - Argentina - Tel: 011-4299-2733
Articulos y Ebooks de Electronica - Todos los Derechos Reservados - 2016

Diseño y Hosting RCH
rch.com.ar - redcomser.com.ar