Vous êtes sur la page 1sur 14

Microcontrolador PIC

Saltar a: navegacin, bsqueda

General Instrument PIC1650.

Varios viejos (EPROM) microcontroladores PIC. Los PIC son una familia de microcontroladores tipo RISC fabricados por Microchip Technology Inc. y derivados del PIC1650, originalmente desarrollado por la divisin de microelectrnica de General Instrument. El nombre actual no es un acrnimo. En realidad, el nombre completo es PICmicro, aunque generalmente se utiliza como Peripheral Interface Controller (controlador de interfaz perifrico). El PIC original se dise para ser usado con la nueva CPU de 16 bits CP16000. Siendo en general una buena CPU, sta tena malas prestaciones de entrada y salida, y el PIC de 8 bits se desarroll en 1975 para mejorar el rendimiento del sistema quitando peso de E/S a la CPU. El PIC utilizaba microcdigo simple almacenado en ROM para realizar estas tareas; y aunque el trmino no se usaba por aquel entonces, se trata de un diseo RISC que ejecuta una instruccin cada 4 ciclos del oscilador. En 1985 la divisin de microelectrnica de General Instrument se separa como compaa independiente que es incorporada como filial (el 14 de diciembre de 1987 cambia el nombre a Microchip Technology y en 1989 es adquirida por un grupo de inversores) y el nuevo propietario cancel casi todos los desarrollos, que para esas fechas la mayora estaban obsoletos. El PIC, sin embargo, se mejor con EPROM para conseguir un controlador de canal programable. Hoy en da multitud de PICs vienen con varios perifricos incluidos (mdulos de comunicacin serie, UARTs, ncleos de control de motores, etc.) y con memoria de programa desde 512 a 32.000 palabras (una palabra

corresponde a una instruccin en lenguaje ensamblador, y puede ser de 12, 14, 16 32 bits, dependiendo de la familia especfica de PICmicro).

Juego de instrucciones y entorno de programacin


El PIC usa un juego de instrucciones tipo RISC, cuyo nmero puede variar desde 35 para PICs de gama baja a 70 para los de gama alta. Las instrucciones se clasifican entre las que realizan operaciones entre el acumulador y una constante, entre el acumulador y una posicin de memoria, instrucciones de condicionamiento y de salto/retorno, implementacin de interrupciones y una para pasar a modo de bajo consumo llamada sleep. Microchip proporciona un entorno de desarrollo freeware llamado MPLAB que incluye un simulador software y un ensamblador. Otras empresas desarrollan compiladores C y BASIC. Microchip tambin vende compiladores para los PICs de gama alta ("C18" para la serie F18 y "C30" para los dsPICs) y se puede descargar una edicin para estudiantes del C18 que inhabilita algunas opciones despus de un tiempo de evaluacin. Para el lenguaje de programacin Pascal existe un compilador de cdigo abierto, JAL, lo mismo que PicForth para el lenguaje Forth. GPUTILS es una coleccin de herramientas distribuidas bajo licencia GPL que incluye ensamblador y enlazador, y funciona en Linux, MacOS y Microsoft Windows. GPSIM es otra herramienta libre que permite simular diversos dispositivos hardware conectados al PIC. Uno de los ms modernos y completos compiladores para lenguaje C es [mikroC], que es un ambiente de desarrollo con editor de texto, bibliotecas con mltiples funciones para todos los mdulos y herramientas incorporadas para facilitar enormemente el proceso de programacin.

Arquitectura central
La arquitectura del PIC es sumamente minimalista. Esta caracterizada por las siguientes prestaciones:

rea de cdigo y de datos separadas (Arquitectura Harvard). Un reducido nmero de instrucciones de longitud fija. La mayora de las instrucciones se ejecutan en un solo ciclo de ejecucin (4 ciclos de clock), con ciclos de nico retraso en las bifurcaciones y saltos. Un solo acumulador (W), cuyo uso (como operador de origen) es implcito (no est especificado en la instruccin). Todas las posiciones de la RAM funcionan como registros de origen y/o de destino de operaciones matemticas y otras funciones.1 Una pila de hardware para almacenar instrucciones de regreso de funciones. Una relativamente pequea cantidad de espacio de datos direccionable (tpicamente, 256 bytes), extensible a travs de manipulacin de bancos de memoria. El espacio de datos est relacionado con el CPU, puertos, y los registros de los perifricos.

El contador de programa esta tambin relacionado dentro del espacio de datos, y es posible escribir en l (permitiendo saltos indirectos).

A diferencia de la mayora de otros CPU, no hay distincin entre los espacios de memoria y los espacios de registros, ya que la RAM cumple ambas funciones, y esta es normalmente referida como "archivo de registros" o simplemente, registros.
Espacio de datos (RAM)

Los microcontroladores PIC tienen una serie de registros que funcionan como una RAM de propsito general. Los registros de propsito especfico para los recursos de hardware disponibles dentro del propio chip tambin estn direccionados en la RAM. La direccionabilidad de la memoria vara dependiendo la lnea de dispositivos, y todos los dispositivos PIC tienen algn tipo de mecanismo de manipulacin de bancos de memoria que pueden ser usados para acceder memoria externa o adicional. Las series ms recientes de dispositivos disponen de funciones que pueden cubrir todo el espacio direccionable, independientemente del banco de memoria seleccionado. En los dispositivos anteriores, esto deba lograrse mediante el uso del acumulador. Para implementar direccionamiento indirecto, se usa un registro de "seleccin de registro de archivo" (FSR) y uno de "registro indirecto" (INDF): Un nmero de registro es escrito en el FSR, haciendo que las lecturas o escrituras al INDF sern realmente hacia o desde el registro apuntado por el FSR. Los dispositivos ms recientes extienden este concepto con post y preincrementos/decrementos para mayor eficiencia al acceder secuencialmente a la informacin almacenada. Esto permite que se pueda tratar al FSR como un puntero de pila. La memoria de datos externa no es directamente direccionable excepto en algunos microcontroladores PIC 18 de gran cantidad de pines.
Tamao de palabra

El tamao de palabra de los microcontroladores PIC es fuente de muchas confusiones. Todos los PICs (excepto los dsPIC) manejan datos en trozos de 8 bits, con lo que se deberan llamar microcontroladores de 8 bits. Pero a diferencia de la mayora de las CPU, el PIC usa arquitectura Harvard, por lo que el tamao de las instrucciones puede ser distinto del de la palabra de datos. De hecho, las diferentes familias de PICs usan tamaos de instruccin distintos, lo que hace difcil comparar el tamao del cdigo del PIC con el de otros microcontroladores. Por ejemplo, un microcontrolador tiene 6144 bytes de memoria de programa: para un PIC de 12 bits esto significa 4096 palabras y para uno de 16 bits, 3072 palabras.

Programacin del PIC


Para transferir el cdigo de un ordenador al PIC normalmente se usa un dispositivo llamado programador. La mayora de PICs que Microchip distribuye hoy en da incorporan ICSP (In Circuit Serial Programming, programacin serie incorporada) o LVP (Low Voltage

Programming, programacin a bajo voltaje), lo que permite programar el PIC directamente en el circuito destino. Para la ICSP se usan los pines RB6 y RB7 (En algunos modelos pueden usarse otros pines como el GP0 y GP1 o el RA0 y RA1) como reloj y datos y el MCLR para activar el modo programacin aplicando un voltaje de 13 voltios. Existen muchos programadores de PICs, desde los ms simples que dejan al software los detalles de comunicaciones, a los ms complejos, que pueden verificar el dispositivo a diversas tensiones de alimentacin e implementan en hardware casi todas las funcionalidades. Muchos de estos programadores complejos incluyen ellos mismos PICs preprogramados como interfaz para enviar las rdenes al PIC que se desea programar. Uno de los programadores ms simples es el TE20, que utiliza la lnea TX del puerto RS232 como alimentacin y las lneas DTR y CTS para mandar o recibir datos cuando el microcontrolador est en modo programacin. El software de programacin puede ser el ICprog, muy comn entre la gente que utiliza este tipo de microcontroladores. Entornos de programacin basados en intrpretes BASIC ponen al alcance de cualquiera proyectos que parecieran ser ambiciosos. Se pueden obtener directamente de Microchip muchos programadores/depuradores (octubre de 2005):

Un buena recopilacin de herramientas de desarrollo para PICs puede encontrarse Aqu. (Mayo de 2009).
Programadores

PICStart Plus (puerto serie y USB) Promate II (puerto serie) MPLAB PM3 (puerto serie y USB) ICD2 (puerto serie y USB) ICD3 (USB) PICKit 1 (USB) IC-Prog 1.06B PICAT 1.25 (puerto USB2.0 para PICs y Atmel) WinPic 800 (puerto paralelo, serie y USB) PICKit 2 (USB) PICKit 3 (USB) Terusb1.0 Eclipse (PICs y AVRs. USB.) MasterProg (USB) Adems es posible hacer un programador de manera casera, en http://microspics.blogspot.com hay una lista con los ms utilizados.

Depuradores integrados

ICD (Serie) ICD2 (Serie full speed USB - 2M bits/s)

ICD3 (High speed USB - 480M bits/s)

Emuladores

Proteus - ISIS ICE2000 (puerto paralelo, convertidor a USB disponible) ICE4000 (USB) PIC EMU PIC CDlite

Caractersticas
Los PICs actuales vienen con una amplia gama de mejoras hardware incorporadas:

Ncleos de CPU de 8/16 bits con Arquitectura Harvard modificada Memoria Flash y ROM disponible desde 256 bytes a 256 kilobytes Puertos de E/S (tpicamente 0 a 5,5 voltios) Temporizadores de 8/16 bits Tecnologa Nanowatt para modos de control de energa Perifricos serie sncronos y asncronos: USART, AUSART, EUSART Conversores analgico/digital de 8-10-12 bits Comparadores de tensin Mdulos de captura y comparacin PWM Controladores LCD Perifrico MSSP para comunicaciones IC, SPI, y IS Memoria EEPROM interna con duracin de hasta un milln de ciclos de lectura/escritura Perifricos de control de motores Soporte de interfaz USB Soporte de controlador Ethernet Soporte de controlador CAN Soporte de controlador LIN Soporte de controlador Irda

Variaciones del PIC


PICs modernos

Los viejos PICs con memoria PROM o EPROM se estn renovando gradualmente por chips con memoria Flash. As mismo, el juego de instrucciones original de 12 bits del PIC1650 y sus descendientes directos ha sido suplantado por juegos de instrucciones de 14 y 16 bits. Microchip todava vende versiones PROM y EPROM de la mayora de los PICs para soporte de aplicaciones antiguas o grandes pedidos. Se pueden considerar tres grandes gamas de MCUs PIC en la actualidad: Los bsicos (Linebase), los de medio rango (Mid Range) y los de alto desempeo (high performance). Los PIC18 son considerandos de alto desempeo y tienen entre sus miembros a PICs con mdulos de comunicacin y protocolos avanzados (USB, Ethernet, Zigbee por ejemplo).

Clones del PIC

Por todos lados surgen compaas que ofrecen versiones del PIC ms baratas o mejoradas. La mayora suelen desaparecer rpidamente. Una de ellas que va perdurando es Ubicom (antiguamente Scenix) que vende clones del PIC que funcionan mucho ms rpido que el original. OpenCores tiene un ncleo del PIC16F84 escrito en Verilog.
PICs wireless

El microcontrolador rfPIC integra todas las prestaciones del PICmicro de Microchip con la capacidad de comunicacin wireless UHF para aplicaciones RF de baja potencia. Estos dispositivos ofrecen un diseo muy comprimido para ajustarse a los cada vez ms demandados requerimientos de miniaturizacin en aparatos electrnicos. Aun as, no parecen tener mucha salida en el mercado.
PICs para procesado de seal (dsPICs)

Los dsPICs son el penltimo lanzamiento de Microchip, comenzando a producirlos a gran escala a finales de 2004. Son los primeros PICs con bus de datos inherente de 16 bits. Incorporan todas las posibilidades de los anteriores PICs y aaden varias operaciones de DSP implementadas en hardware, como multiplicacin con suma de acumulador (multiplyaccumulate, o MAC), barrel shifting, bit reversion o multiplicacin 16x16 bits.
PICs de 32 bits (PIC32)

Microchip Technology lanz en noviembre de 2007 los nuevos microcontroladores de 32 bits con una velocidad de procesamiento de 1.5 DMIPS/MHz con capacidad HOST USB. Estos MCUs permiten un elevado procesamiento de informacin, con un ncleo de procesador de tipo M4K.

PICs ms comnmente usados


PIC12C508/509 (encapsulamiento reducido de 8 pines, oscilador interno, popular en pequeos diseos como el iPod remote). PIC12F629/675 PIC16F84 (Considerado obsoleto, pero imposible de descartar y muy popular) PIC16F84A (Buena actualizacin del anterior, algunas versiones funcionan a 20 MHz, compatible 1:1) PIC16F628A (Es la opcin tpica para iniciar una migracin o actualizacin de diseos antiguos hechos con el PIC16F84A. Posee puerto serial, mdulos de comparacin anloga, PWM, mdulo CCP, rango de operacin de voltaje aumentado, entre otras ) PIC16F88 (Nuevo sustituto del PIC16F84A con ms memoria, oscilador interno, PWM, etc que podra convertirse en popular como su hermana). La subfamilia PIC16F87X y PIC16F87XA (los hermanos mayores del PIC16F84 y PIC16F84A, con cantidad de mejoras incluidas en hardware. Bastante comn en proyectos de aficionados).

PIC16F886/887 (Nuevo sustituto del 16F876A y 16F877A con la diferencia que el nuevo ya se incluye oscilador interno). PIC16F193x (Nueva gama media de PIC optimizado y con mucha RAM, ahora con 49 instrucciones por primera vez frente a las 35 de toda la vida). PIC18F2455 y similares con puerto USB 2.0 PIC18F2550 manejo de puertos USB 2.0 y muy versatil. PIC18F452 PIC18F4550 dsPIC30F2010 dsPIC30F3014 dsPIC30F3011 (Ideales para control electrnico de motores elctricos de induccin, control sobre audio, etc). PIC32 (Nueva gama de PIC de 32 bits, los ms modernos ya compatible con USB 2.0).

PIC en Internet
Se puede encontrar mucha informacin y documentacin sobre PICs en Internet, principalmente por dos motivos:[cita requerida] el primero, porque han sido muy usados para romper los sistemas de seguridad de varios productos de consumo masivo (televisin paga, PlayStation, etc), lo que atrae la atencin de los crackers; y segundo, porque el PIC16C84 fue uno de los primeros microcontroladores fcilmente reprogramables para aficionados. Hay muchos foros y listas de correo dedicados al PIC, en los que un usuario puede proponer sus dudas y recibir respuestas. Pero tambin se puede enfocar el tema en relacin a Internet por la posibilidad que se tiene de desarrollar con los microcontroladores sistemas SCADA va Web, debido a que pueden adquirir y enviar datos al puerto serial de un computador utilizando transmisin UART y el protocolo RS232, tambin se tiene la posibilidad de implementar el protocolo TCP/IP directamente.

Enlaces externos
En espaol

Tutorial de programacin de PICs en Ensamblador en la Asociacin de Robtica y Domtica de Espaa. TodoPIC, todo en microcontroladores PIC MicroPIC, todo en microcontroladores PIC en espaol Pgina de robtica chilena Robots Sitio de robtica con artculos de contenido tcnico y didctico Tutorial de programacin PIC18F2550 y mdulo USB con Visual C# Pgina de programacin de Microcontroladores PIC

En ingls

www.locxtronic.com - Tutorial for PIC Programming In BASIC (en ingls).

http://www.microchip.com La pgina oficial del fabricante PICs y otros componentes electrnicos semiconductores Pgina con enlaces a los documentos originales del PIC1650 YaPIDE Entorno de desarrollo y simulador para el PIC16F628 liberado bajo licencia GPL-2 PicForth Grupo de discusin sobre el PIC SDCC Small Device C Compiler, an Open Source compiler for microcontrollers, PIC 16x and 18x support is a WIP. Belle Research Gua para de programacin del PIC para principiantes PIC Portal with huge Project database (en ingls).

Como grabar un PIC16Fxx con el JDM con un porttil


Publicado el agosto 14, 2011 por soloelectronicos Como grabar un PIC16Fxx con el JDM con un porttil El programador JDM es una solucin de bajo coste para la introduccin de un programa en la memoria flash interna del PIC. Adems de los planes originales de Jens Dyekjr Madsen, tambin hay muchos esquemas modificados en la web, entre elllos el TE20, el TE20x o el grabador_smt1.De destacar R1 y el voltaje de D5 son modificaciones adicionales que son necesarias para todos los PICs recientes que vienen con una capacidad de programacin de bajo voltaje (que, de hecho, el programador JDM no utiliza y debe ser deshabilitada con la resistencia pulldown en el pin RB3) y un valor ligeramente incrementado para el diodo Z para cumplir las especificaciones de programacin del PIC16F87x y PIC18F452. Web oficial: http://www.jdm.homepage.dk/newpics.htm Este programador es alimentado por el puerto RS232 del PC y funciona con niveles RS232 <8.6V. Dispositivos que soporta JDM 24CXX, EEPROM PIC12C5XX PIC12C67X PIC16C55X PIC16C61 PIC16C62X PIC16C71 PIC16C71X PIC16C8X PIC16F8X Tarjetas ISO con ASF

4 diodos 1N4148 1 diodo Zener de 8.2v 1 diodo Zener de 5.1v 1 capacitor electroltico de 100uF x 40v 1 capacitor electroltico de 22uF x 16v 2 transistores BC547B 1 resistencia de 10k, de watt 1 resistencia de 1.5k, de watt. 1 zcalo de 18 pines Es un circuito muy simple, pero que tiene varias ventajas que lo hacen muy interesante: >Se conecta al puerto serie, que generalmente en cualquier PC esta disponible. >Existe software gratis para utilizarlo, incluso bajo DOS, LINUX y por supuesto Windows (incluido WinXP) >Sirve para programar varios modelos de PICS (PIC12C5XX, 12C67X, 24CXX, 16C55X, 16C61, 16C62X, 16C71, 16C71X, 16C8X, 16F8X entre otros ) y tambin para leer/escribir varios chips de memoria (24Cxx ). Otros microcontroladores tambin pueden ser programados mediante un adaptador. >Dispone del conector ICSP (In-Circuit Serial Programming) para la programacin de microcontroladores sin necesidad de desmontarlos de su placa de circuito impreso. >No necesitamos de una fuente de alimentacin externa, ya que se alimenta directamente del puerto de la PC. >Su costo es muy bajo, los componentes necesarios difcilmente nos cuesten mas de 3 o 4 u$s y son muy fciles de conseguir. Una aclaracin importante antes de seguir adelante: el hecho de que el programador se conecte a un puerto serie RS-232 de la PC no significa que el protocolo utilizado para comunicar la PC y la placa del programador sea este, de hecho se puede adaptar este circuito para conectarlo al puerto paralelo e incluso USB. Como dijimos antes, los tiempos, y las seales necesarias para programar los PICs dependen de un protocolo especifico desarrollado por Microchip, por lo que utilizamos el puerto como vehiculo para llevar los bits al PIC y para obtener las tensiones necesarias para la programacin, pero utilizando un programa y un protocolo especifico para esta tarea DESCRIPCION DEL CIRCUITO. La tensin de la entrada de reloj est limitada mediante D3 y D4 sin que sea necesaria ninguna resistencia limitadora.

Los diodos a Vdd internos del PIC protegen tambin las entradas. Los dispositivos 24CXX no tienen ningn diodo a Vdd, y D4 es absolutamente necesario. DISPOSITIVOS LGICOS MICROPROGRAMABLES Programador PIC y EEPROM JDM 13.5 Q2 aumenta el voltaje de salida a niveles RS232. Entonces funciona como base comn. R2 es una resistencia pull-up que no resulta fundamental debido a la corriente limitada del puerto RS232. Q2 tambin limita la tensin de la entrada al PIC cuando DTR es de nivel alto. Entonces funciona como un seguidor de emisor y se reduce la tensin de la entrada a Vdd-0.7V. Cuando DTR se pone a nibel bajo, Q2 trabaja invertido y la ganancia slo es aproximadamente 5. La resistencia equivalente es aproximadamente 10K/5 = 2K. Esto reduce la corriente de entrada de datos al PIC junto con la resistencia R2. Cuando DTR cambia de nivel bajo a nivel alto, Q2 cambia de modo invertido saturado a seguidor de emisor activo. Esta causa un pico sobre los datos, pero el pico est extinguido cuando cambia el reloj. Esto garantiza que las eeprom no pasen al modo de prueba. Q1 trabaja en cierto modo como seguidor de emisor tambin, pero se satura cuando es activo. En ese caso su tensin CE es muy baja. El transistor activa o desactiva la tensin para MCLR. TXD alimenta a C2 para que alcance 13V a travs de la unin base-colector de Q1. El tensin en C2 est limitado por el zener D6 y es aproximadamente 5.1V+8.2V = 13.3V. Cuando TXD est a nivel alto la tensin en MCLR no excede esta tensin. La base sube a una tensin mas alta, pero Q1 se satura y la salida no exceder la tensin de colector. C2 proporciona la Vpp y la Vdd a travs del diodo zener D6. Pero Vdd slo aparece si el voltaje en C2 es aproximadamente de 13V. Si tiene 8V, entonces ser posible controlar la alimentacin mediante RTS y DTR. La alimentacin C2 se reduce aproximadamente a 8V por medio de TXD, DTR y RTS mantenidas a nivel alto durante aproximadamente 0.5s. El diodo extra, D5, limita la tensin sobre TXD. En principio se utiliza para alimentar la eeprom cuando DTR y RTS estn a nivel alto. Tambin garantiza que MCLR es mayor de -0.2V cuando TXD est a nivel bajo. El diodo D7 pone MCLR a nivel bajo cuando TXD est a nivel bajo. El PIC tambin es alimentado por RTS mediante D3. La corriente de entrada on data tambin alimenta el PIC a Vss. Ambas seales necesitan ser negativas para alimentar al dispositivo con la mxima corriente posible. C2 alimenta al PIC si las seales son positivas. RTS y DTR no son criticas al programar el 24CXX, porque el diodo D5 pone Vss a nivel bajo. Al programar un PIC slo D3 puede utilizarse. RTS y DTR necesitan ser de nivel bajo para alimentarlo, y no deben estar a nivel alto durante demasiado tiempo. La corriente es excepcionalmente alta al leer ceros del PIC, y el tiempo de lectura activo con DTR a nivel alto debe ser corto. Para compensar el corriente utilizada, un nivel bajo de be aplicarse a RTS durante un tiempo extra. Si reemplaza D5 y D7 por un BC557B,es importante que sepa que la base-emisor se comporta como un un diodo zener. Slo D7 pueden actuar como un zener, y MCLR necesita ser conectada al emisor, mientras el colector del BC557B se conecta a Vss.

El transitor trabaja en cierto modo como seguidor de emisor, y proporciona a MCLR una corriente alta extra. Esta corriente alta no es necesaria, y puede incluso daar al BC557B si el programador se conecta con alimentacin externa. Conectar el programador a una fuente de alimentacin externa siempre puede causar problemas, y no se permite para el uso normal. El peligro de conectar una fuente de alimenmtacin externa est en que el diodo zener interior reduce el voltaje a 5.1V. Puede ser perjudicial que se aplique una tensin demasiado alta. Las conexiones externas pueden causar problemas tambin debido a tensiones negativas. Vdd se conecta a la masa del PC y pueden provocarse cortocircuitos si un circuito externo se conecta con la masa del ordenador, por ejemplo a traves de la toma de tierra. Una fuente de alimentacin externa tambin puede dar problemas de seguridad si los PIC u otros dispositivos no se insertan adecuadamente Generalmente este diseo funciona muy bien sobre puertos serie estandard ( de pc de sobremesa) pero ultimamente en los pcs modernos o portatiles no termina de funcionar a traves de adaptadores usb a rs232 ( ya que en la mayoria de lso portatiles se ha eliminado este util puerto)

IC-Prog por Bonny Gijzen parece ser el software de grabacin ms flexible, ya que no solo soporta el JDM, sino muchos otros programadores. Se puede descargar aqu: http://www.ic-prog.com. Antes de empezar a programar cualquier chip, por favor, revisa tu circuito de programacin en el men Hardware Check .( Es Importante que no midas los voltajes con un osciloscopio o instrumentos similares que estn conectados a tierra como tu PC, ya que esto falsificara los resultados de la medicon pues el JDM usa la conexin de tierra para Vdd). Otros programadores que soportan el JDm y sus variantes: WINPIC800, WINPICPGM Por tanto para probar el TE20 ,usaremos el IC-PROG y un multmetro con batera .Sigue estas instrucciones: Ve a Settings->Hardware menu, ponlo en JDM Programmer, selecciona el Puerto (COM1, COM2, ?), Selecciona Interface Direct I/O (bueno para Windows 9x) o API (Windows ME/NT/2000/XP). Comienza con I/O Delay 0, No inviertas ninguna seal: Ahora selecciona el dispositivo correcto:: Settings->Device->Microchip PIC>PIC16F84) Start Settings->Options, ve al sub-men Programming

Habilita Verfiy after programming y Verify during programming. La ltima opcin asegura que se te notifiquen inmediatamente los errores de programacin. La primera opcin es especialmente necesaria para los derivados de PIC16F87xA, ya que IC-Prog no verifica estos chips durante la programacin. Ve al submen Misc, habilita Vcc control for JDM y selecciona Realtime en Process Priority Ve a Settings->men Hardware Check Prepara tu multmetro y revisa los voltajes de tu programador. Notas: Cuando se deshabilita una seal, el voltaje cae hasta 0V muy, muy despacio, ya que los capacitadores no se descargan con una carga. As que no ests pendiente de los valores de seales desactivadas, solo revisa las seales habilitadas. Los voltajes cambiarn a los valores correctos y especificados cuando haya un PIC en el socket. El propsito de la revisin de hardware no es ver los voltajes correctos, sino asegurarse de que las seales puedan ser controladas (switched on/off) por tu PC. Si te quieres asegurar de que el voltaje no sea demasiado alto en la carga para verificar que el circuito est correctamente cableado, conecta temporalmente una resistencia de 1k entre Vss y el pin en pruebas. Asegrate de que no haya PIC en el socket de programacin!!! Pulsa sobre Enable Data Out: La caja de Data In debe ser automticamente seleccionada para soporte de hardware (Data Out->Data In). Desconecta Data out de nuevo. No te preocupes si Data In se acciona en los siguientes tests, este es el comportamiento normal. Pulsa sobre Enable MCLR, mide el voltaje entre Vss (Pin 12/31) y MCLR# (Pin 1) : ca. 14 V Deshabilita todas las seales Pulsa sobre Enable Vcc, mide el voltaje entre Vss (Pin 12/31) y Vdd (Pin 11/32): ca. 5 V Si esta prueba falla, asegrate de que la opcin Vcc control for JDM est activada en el submen Misc(Settings->Options) Deshabilita todas las seales y p Pulsa sobre Enable clock, mide el voltaje entre Vss (Pin 12/31) y RB6 (Pin 39): ca. 5 V +/- 1 V, despues deshabilita todas las seales Pulsa sobre Enable Data Out, mide el voltaje entre Vss (Pin 12/31) y RB7 (Pin 40): ca 5 V +/- 0.5 V Ahroa enchufa el PIC en el socket de programacin. Start Command->Read All Durante la lectura: Mide el voltaje entreVss (Pin 12/31) y MCLR# (Pin 1) : ca. 13.7 V Mide el voltaje entre Vss (Pin 12/31) y Vdd (Pin 11/32): ca. 5.1 V No tiene sentido medir los voltajes de los otros pines, ya que se accionan muy rpido. Nota: El programador JDM no funcionar cuando pruebes estos pines con un osciloscopio (GND->Earth problem) Si no mides 13.7V entre Vss y MCLR cuando el PIC est enchufado, puedes incrementar/decrecer el voltaje con el I/O Delay en el men Hardware. Retrasos ms bajos incrementan el voltaje, retrasos ms altos decrecern el

voltaje! Me di cuenta de que no se pueden alcanzar 13.7V cuando se accede al JDM a travs de las funciones API de Windows Start File->Open File: carga el firmware (archivo .hex ) en IC-Prog Start Command->Program All Ahora pasarn unos 3 min. hasta que el PIC est programado. Si la escritura no funciona, IC-Prog lo notificar como Verify failed cuando esten marcadas Verfiy after programming y Verify during programming en Settings->Options>submen Programming Nota:Parece que con algunos PCs, el proceso de programacin solo pasa cuando el pin 5 (GND) del enchufe SubD-Plug est conectado con el chsis de metal(tierra) del conector. Despus de que la programacin est hecha, tu PIC estar preparado Solucin de problemas Compara tu circuito con el esquema y la base PCB una y otra vez- Revisa especialmente la polaridad de los diodos, capacitadores y transistores. Asegrate de que las soldaduras estn bien (sin falsos contactos) IC-Prog a veces se olvida alguna opcin bajo circonstancias desconocidas (por ej. el retraso I/O y el nmero de puerto COM ). As que si falla el proceso de quemado, asegrate de tu configuracin no se ha cambiado. Prueba diferentes valores de retraso I/O Usa la funcin de verificacin de IC-Prog para asegurar que el firmware se haya quemado correctamente si ves que el PIC no funciona. Si el voltaje MCLR# no fuera suficientemente alto (este problema se ha visto en porttiles, pero tambin en PCs con un puerto COM dbil), puedes proporcionar este voltaje desde el exterior de 15-20v en los extremos de C1(de 100mf).Usa o dos bateras de 9V o un PSU que entrega al menos 15V. No hace falta ningn regulador ya que los diodos zener limitan el voltaje. No olvides la resistencia de 220 Ohm que limita la corriente y protege el circuito JDM.

Si esta solucion no es suficiente para alcanzar la tension necesaria de programacion ,se puede probar con un amplificador RS2323 con alimentacion externa, tal vez sea un solucion drastica pero muchos usarios qeu lo han probado han tenido exito. Si usted mira esta pgina, usted probablemente parece hice cuando trat de controlar a un programador autoimpulsado PIC con mi ordenador porttil. S, el puerto serie era el tipo el poder extremo bajo y wouldn ` la t proporciona bastante corriente para impulsar al programador. El problema era claro y la solucin tambin . Yo podra haber modificado al programador para conseguir el poder de en otra parte, pero en el futuro yo me estrellara con la misma pared. Necesit algo al interfaz el

puerto serie de poder bajo al programador hambriento. No encontr nada en el web, entonces decid disearlo solo. Otra vez, la MXIMA deba all ayudar con uno de su ICS simptico tramado, el MAX205 El MAX205 es algo similar a MAX232 popular pero estos son las buenas noticias: Ello hast 5 receptores y 5 conductores en vez de slo 2 + 2. Esto no necesita condensadores de bomba de precio externos!! Si usted une(conecta) las salidas TTL de los receptores RS-232 (al TTL) las entradas de los conductores RS-232, usted con eficacia consigue las seales originales con mucha corriente para cualquier dispositivo impulsado por serie con un circuito sumamente simple:

No olvide de conectar los conectores DB9 a tierra del circuito. Como se puede observar en el esquema las entradas del RS-232 no necesitan ser amplificadas , por lo que todo lo que tiene que hacer usted es alimentar el Max205 con 5v.(por ejemplo puede usar cualquier fuente en desuso y aadirle un simple 7805 de regulador).

Vous aimerez peut-être aussi