|
|
Castellano
Deutsch
English
|
El software permite programar ('grabar', 'quemar') controladores Flash 12Fxxx/16Fxxx de la empresa Microchip a través del puerto serie de la PC. Además ofrece un depurador simple y la posibilidad de alinear el oscilador.
El paquete también incluye diseños de placas de circuitos para un módulo de programación y tres módulos de prueba.
El software y las placas están destinados a usuarios particulares o con fines educativos. El uso comercial está restringido al campo de investigación y desarrollo.
Requiere: Windows 98 o mejor, 15 MByte espacio en el disco rígido, un puerto serie.
(Como el software usa sólo funciones estándar de Windows, debiera funcionar también con 'WinE' en Linux.)
Para instalar en un idioma diferente se puede ejecutar: "picpr246.exe /L=XX", donde 'XX' es 'DE', 'EN' o 'ES'.
Controladores respaldados:
| 8 pines: | 12F609*, 12HV609*, 12F615*, 12HV615*, 12F629, 12F635, 12F675, 12F683 |
| 14 pines: | 16F610*, 16HV610*, 16F616*, 16HV616*, 16F630, 16F636, 16F676, 16F684, 16F688 |
| 18 pines: | 16F627, 16F628, 16F627A, 16F628A, 16F648A, 16F716, 16F818, 16F819, 16C84, 16F83, 16F84, 16F84A, 16F87, 16F88 |
| 20 pines: | 16F631, 16F639, 16F677, 16F685, 16F687, 16F689, 16F690, 16F785, 16HV785 |
| 28 pines: | 16F72, 16F73, 16F76, 16F737, 16F767, 16F870, 16F872, 16F873, 16F876, 16F873A, 16F876A, 16F882, 16F883, 16F886, 16F913, 16F916 |
| 40 pines: | 16F74, 16F77, 16F747, 16F777, 16F871, 16F874, 16F877, 16F874A, 16F877A, 16F884, 16F887, 16F914, 16F917 |
* = ¡sin testear!
El depurador funciona con: 16F7x7, 16F818/819, 16F87x, 16F87xA, 16F87/88, 16F88x, 16F91x.
Las especificaciones de los controladores están disponibles como archivos PDF en el sitio de Microchip.
La interface de usuario se ha mantenido simple deliberadamente y permite el acceso directo a todos los parámetros y comandos esenciales. Además del tipo del controlador y del puerto serie, se pueden elegir los bloques de memoria del controlador que se quieren programar, verificar o leer.
![La ventana principal de PicProm [Ventana principal]](pp1_es.png)
![[Info...]](info.png)
En el submenú Ver se puede elegir el idioma de la interface de usuario y acceder al menú de opciones.
En conexión con el módulo de programación especial, por ejemplo, se pueden determinar detalladamente los voltajes de cada una de las operaciones. Esto puede ser importante cuando se desea programar o leer el PIC directamente en el circuito de la aplicación.
![El menú 'Ver' da acceso a funciones especiales [Menú 'Ver']](pp2_es.png)
![Las opciones permiten ajustar los niveles de tensión [Ventana 'Opciones']](po2_es.png)
Algunos PIC 16Fxxx tienen un circuito interno de depurador. Para usarlo, hay que guardar en el PIC un software especial, adicionalmente al programa del usuario.
Cuando se usa el depurador, las últimas 160 locaciones de la memoria de programa no están disponibles para el uso general, y tampoco los siguientes recursos: un nivel de pila, cuatro registros y los conexiones /MCLR, RB6 y RB7 para la comunicación con el módulo de programación.
A deferencia del depurador de Microchip ICD, se puede activar el temporizador WatchDog ("perro guardián").
| Diferencias principales con el ICD2, ICD3: | ||
| 'PicProm' | ICD2, ICD3 | |
| Controladores respaldados: | unos 16Fxxx | toda la gama |
| Locaciones de la memoria: | 144 or 160 | 256 |
| Registros de usuario ocupados: | 4 | 12 |
| WDT utilizable: | sí | no |
| Tiempo de entrada de depuración: | hasta 70ms | - |
| Tiempo de lectura de un registro: | 1500 Tosc* | 7000 Tosc* |
| Tiempo de lectura de 16 registros consecutivos: | 24000 Tosc* | 22000 Tosc* |
| * períodos elementales del oscilador del PIC | ||
![El depurador da acceso a los registros [Ventana 'Depurador']](pd1_es.png)
El software del depurador trabaja con el oscilador del PIC.
Entre 15kHz y 60MHz, 'PicProm' se adapta a la frecuencia del oscilador midiendo el período elemental del PIC en cada entrada de depuración (por interrupción o paso por paso). De este modo, la comunicación del depurador se da siempre a la máxima velocidad posible.
Después de activar el depurador, el PIC ejecuta la primera instrucción y luego para.
Ahora se puede:
El editor muestra el archivo HEX en sintaxis de ensamblador. Al leer el archivo, 'PicProm' lo analiza detalladamente. En particular, trata de encontrar, para cada instrucción, el banco de registros activo para poder mostrar el nombre correcto del registro.
![El editor muestra sintaxis de ensamblador [Ventana 'Editor']](pe1.png)
'PicProm' ofrece la posibilidad de medir tanto la frecuencia del oscilador interno como la del oscilador RC externo.
Durante la medición, el valor es actualizado cuatro veces por segundo. La precisión es del ±0,01% en todo el rango de medición: desde 15kHz hasta 60MHz.
Con un resistor variable en el oscilador RC es posible ajustar libremente la frecuencia de reloj.
![PicProm puede alinear el oscilador interno [Ventana 'Alineación del oscilador']](pp3_es.png)
Los PIC modernos tienen un oscilador interno que, dentro de ciertos límites, se puede alinear escribiendo un valor de corrección en el registro OSCTUNE. Para una frecuencia dada, 'PicProm' puede averiguar este valor OSCTUNE y guardarlo automáticamente en el archivo HEX abierto.
Se debe tener en cuenta que este valor sirve solamente para el ejemplar medido, y que además depende de la temperatura ambiente y del voltaje de alimentación.
Con fines educativos a veces es necesario equipar varias placas experimentales con PIC programados idénticamente.
Para facilitar esta tarea, el software incluye una función de programación en serie.
'PicProm' reconoce el momento en que un PIC es insertado en el zócalo de programación y automáticamente empieza el ciclo de programación después de un tiempo de retardo elegido.
El módulo de interface es el encargado de la adaptación de los niveles del puerto serie de la PC y del microcontrolador.
Si bien 'PicProm' soporta una versión simple que usa pocos componentes, ésta tiene la desventaja de permitir sólo lectura y programación del PIC. Además, requiere obligatoriamente de una PC de escritorio con un puerto serie "potente": para una programación perfecta el puerto debe proveer un nivel estable de por lo menos +11V con una corriente de 5mA.
![Esquema de un programador simple [Esquema]](simple.png)
Para aprovechar todas las posibilidades de 'PicProm' se necesita el módulo de programación a medida que forma parte del paquete. El corazón del módulo es un PIC 16F628(A) que recibe los comandos de un puerto serie de la PC y los procesa en forma autónoma.
![Diseño del módulo de programación [Módulo de programación]](promm.png)
Al desarrollar los circuitos se dio mucha importancia a mantener el consumo de corriente del módulo de programación lo más bajo posible. En Stand-By el consumo es menor que 3mA, y al programar es de alrededor de 9mA. En conexión con un puerto serie potente de una PC de escritorio, el módulo puede 'quemar' un PIC sin necesidad de una fuente externa de alimentación.
Las características principales del módulo son:
Los siguientes esquemas muestran cómo se conectan las señales de programación al PIC.
![Esquemas de conexión para ICSP [Esquemas de conexión]](icsp_c.png)
Algunos tiempos típicos de programación de toda la memoria (incluye verificación):
| Controlador | Tamaño | Módulo a medida | Módulo simple | |
| Vdd = 5V | Vdd = 3,3V | |||
| 12F629 | 1024 | 7s | - | 14s* |
| 16F818 | 1024 | 3s | 4s | 8s* |
| 16F84 | 1024 | 20s | - | 24s* |
| 12F683 | 2048 | 6s | - | 13s* |
| 16F716 | 2048 | 5s | - | 11s* |
| 16HV785 | 2048 | - | 7s | 13s* |
| 16F648A | 4096 | 34s | - | 50s* |
| 16F690 | 4096 | 11s | 14s | 23s* |
| 16F737 | 4096 | 9s | - | 23s* |
| 16F873 | 4096 | 26s | 45s | 42s* |
| 16F913 | 4096 | 11s | 14s | 23s* |
| 16F876A | 8192 | 13s | 22s | 35s* |
| 16F886 | 8192 | 15s | 21s | 36s* |
* Depende de la configuración de la PC.