PCBA28 Manual
PCBA28 Manual
Manual de Ensamblado
y Primeros Pasos
PCB-A28
C AP Í TU L O 1
Requerimientos mínimos del computador 2 Utilizando los recursos del IDE. El osciloscopio 39
Esquema Electrónico 9 C AP Í TU L O 7
C AP Í TU L O 4 Definiciones importantes 49
y resonador 22
C AP Í TU L O 5
Primeros pasos 32
ATOM 34
I NNTTRRO
ODDU
UCCC
CIIÓ
ÓNN
Este kit contiene todos los elementos requeridos para que usted viva la experiencia de
construir su propia unidad de desarrollo basada en microcontroladores PIC. Todos los
materiales utilizados han sido cuidadosamente seleccionados para permitirle ensamblar una
unidad de experimentación compacta, de bajo costo pero de muy alta calidad que le
permitirá explorar el mundo de los microcontroladores de una forma fácil y rápida utilizando
al máximo el poder de estos dispositivos de alta tecnología. Usted aprenderá a utilizar al
microcontrolador PIC 16F876 “ATOM” para desarrollar sus propias aplicaciones, escribirá
programas para realizar labores complejas en tiempo record y observará como, a través de
ejemplos, podrá incorporar al microcontrolador PIC 16F876 “ATOM” en múltiples tareas, ya
sea en casa, oficina, automóvil y/o aplicaciones industriales.
Antes de continuar, tomaremos un tiempo para revisar el contenido del material que
acompaña a su sistema:
El circuito impreso suministrado para el armado del kit es de muy alta calidad, entre sus
características destacan:
• Elaborado en base a láminas de FR-4 de 0.062”, con 1.25 onzas de cobre (grosor del
cobre de 0.0017 “).
• Capa de protección “Solder Mask” estándar color verde LPI en ambas capas.
• Silkscreen color blanco en la cara de arriba de la tarjeta para permitir la ubicación
rápida y clara de los componentes.
• El acabado de la placa es el estándar industrial de SMOBC con “pads” de soldadura
libres de plomo de acuerdo a la directiva ROHS.
• Constante dieléctrica de la lámina de FR-4 comprendida entre 4.2 y 5.0.
• Temperatura máxima de operación de 125 ºC.
2
• Dimensiones reducidas de 2.460”x 1.930”, adecuadas para facilitar su utilización en
diferentes aplicaciones.
• Espacio adecuadamente distribuido para facilitar la instalación de todos los
componentes.
Al concluir el armado del Kit PCB-A28 usted tendrá un sistema de desarrollo completo, con
el cual podrá programar al poderoso microcontrolador PIC 16F876 ATOM sin requerir un
programador externo y sin utilizar los complicados entornos como el MPLAB® o similares.
Algunas de las características del sistema ya ensamblado se mencionan a continuación:
• Posee 16 terminales de E/S digitales disponibles, etiquetados con los nombres P00 a
P15. Estos corresponden con los terminales RB0 ..RB7 y RC0..RC7 del PIC 16F876.
• Tiene 4 terminales de E/S digitales o analógicas etiquetadas con los nombres AX0 a
AX3. Estos pines se corresponden con los terminales RA0..RA3 del PIC16F876.
• Una (01) salida analógica con altavoz piezoeléctrico preconectado al pin P03.
• Cuatro (04) salidas digitales con LED’s preconectados a los terminales P04 a P07.
• Interfaz de programación lista para conectar directamente al PC.
• Un Microcontrolador PIC 16F876 “ATOM” con su resonador de 20 Mhz incluido, listo
para ser programado y comenzar a trabajar.
• Fuente de poder y regulador de 5 Vdc en base al regulador lineal modelo LM7805.
• Pulsador de reset para reiniciar al microcontrolador.
• LED para indicar la alimentación del sistema.
• LED para indicar la actividad del puerto serial durante la escritura y depuración (debug)
de los programas.
• Se conecta de forma sencilla a cualquier protoboard permitiéndole realizar un sin fin de
experiencias.
• Puede programar al microcontrolador, luego retirarlo y colocarlo en la aplicación final.
De esta forma el PCB-A28 puede ser empleado para el desarrollo de aplicaciones
comerciales, eliminando la necesidad de adquirir un hardware programador y su
correspondiente software.
• Incluye software e IDE de programación en lenguaje MBASIC totalmente gratuito y
original, el cual, tiene un precio de aprox. US$250.
3
estos fabulosos microcontroladores para sacarle el máximo beneficio a su ATOM y llevar sus
aplicaciones a un nivel superior.
Y muchas otras características que hacen de este uno de microcontroladores más poderosos
y a la vez sencillos de usar para casi cualquier aplicación que usted pueda imaginar.
4
2
C
CAAPPIITTUULLO
O
IINNSSTTAALLAACCIIÓ
ÓNND
DEELL S
SOOFFTTW
WAAR
REE
Una vez concluida la instalación, dentro del Menú de inicio/Programas/PCB-A28, usted encontrará
acceso directo a los siguientes archivos:
• BMAtom.exe (instalador del IDE del ATOM).
• Manual Sintaxis ATOM.
• Especificaciones técnicas del microcontrolador PIC16F87X.
• PCB-A28 Manual de Ensamblado y Primeros Pasos.
• Guía rápida de instalación de componentes
• Códigos y programas de ejemplo.
Para poder programar al microcontrolador ATOM incluido en el sistema PCB-A28, deberá instalar
el entorno de programación y desarrollo (IDE) suministrado por Basic Micro. Este software nos
permitirá escribir, compilar, depurar y descargar nuestros programas al microcontrolador.
Nota.
La versión más actualizada del software de programación del microcontrolador ATOM puede ser encontrada
en Internet en la dirección www.basicmicro.com.
Al hacer esto le aparecerá el entorno de programación (IDE) del ATOM, ver figura 2.1.
5
Figura 2.1. Entorno de programación del ATOM.
Nota.
En la mayoría de los computadores personales, los puertos de comunicación serial COM
disponibles son COM1 y/o COM2 al momento de configurar el entorno de programación verifique
en cual puerto está conectada la tarjeta de desarrollo. Si lo desconoce utilice la utilidad “ATOM
Locator” suministrada en el CD de instalación, esta aplicación le permitirá identificar en que
puertos de su computador está ubicado algún hardware compatible con los productos de nuestra
empresa y en caso de tratarse de un microcontrolador nuevo le indicará exactamente el número
de puerto donde ha sido localizado.
6
3
C
CAAPPIITTUULLO
O
IIDDEENNTTIIFFIICCAANNDDO
O LLO
OSS
CCO OMMP POON NE ENNTTEES
SDDEELL S
SIISSTTEEM
MAA
7
Figura 3.2. Vista Posterior del impreso PCB-A28.
Observe que en la cara frontal del impreso se encuentran dibujados en color blanco el
contorno de todos los componentes facilitando su ubicación y montaje.
En la página siguiente encontrará el diagrama esquemático completo del sistema que indica
cuales son las conexiones existentes en el circuito impreso.
8
9
Listado de Componentes.
Ahora conoceremos todos y cada uno de los componentes a instalar en nuestro sistema:
10
1 D1 Diodo rectificador rápido 1N4148
2* R2 Resistencia 10 KOHM ¼ W
1 R3 Resistencia 1 KOHM ¼ W
El valor de este componente puede variar entre 330 OHM y 510 OHM
2* RST Pulsador tipo N.A tipo SPST 6 mm, cuatro terminales
11
1 U1F Regulador de voltaje tipo LM7805
1 NA Potenciómetro de 10 KOHM
Nota.
Lista sujeta a modificación sin previo aviso. Algunos de los componentes de su tarjeta
pueden diferir en la apariencia física, color y forma de montaje.
12
4
C
CAAPPIITTUULLO
O
E
ENNSSAAM
MBBLLA
AD OP
DO PAASSO
OAAP
PAASSO
O
Herramientas Requeridas.
Antes de comenzar, hagamos un listado de las herramientas que vamos a necesitar:
• Soldador (Cautín) de 12 W a 25 W. No se recomienda el uso de un cautín de mayor potencia.
• 2 metros de estaño (puede o no ser incluido en el sistema).
• Alicate de corte (piqueta), no incluido en el sistema.
• Alicate pequeño, no incluido en el sistema.
• Destornillados de estría #2, no incluido en el sistema.
Recomendaciones Generales
• Los componentes de montaje superficial siempre son los primeros en colocarse y
deben quedar tan ceñidos al impreso como sea posible.
• Instale siempre los componentes de menor tamaño y luego los más grandes.
• Jamás permita que el soldador permanezca por más de 15 segundos apoyado sobre
el mismo lugar del impreso ya que puede dañarlo.
• No derrita el estaño en el cautín, caliente el terminal y el “pad” del componente para
que el estaño se funda al entrar en contacto con éstos.
• Jamás utilice materiales abrasivos para limpiar la punta del cautín ya que esto
puede deteriorarlo de forma irreversible.
13
Ensamblado del Kit PCB-A28
Para comenzar el montaje, conecte el cautín a la red de alimentación eléctrica y espere unos
cinco minutos hasta que este alcance una temperatura adecuada.
2. Sujete firmemente (sin destruir) uno de los lados del condensador a instalar utilizando el
alicate y coloque en medio del espacio disponible para su colocación.
14
4. Verifique han quedado correctamente colocados y haga la soldadura del lado que quedó
libre.
TERMINAL POSITIVO
15
7. Revise si la polaridad de todos los componentes es correcta y proceda a finalizar la
soldadura del terminal negativo.
8. Repase las soldaduras que parezcan deficiente o carentes de suficiente estaño. No debe
colocar exceso de estaño en o sobre los componentes.
2. Doble los terminales para poder insertar los componentes en la tarjeta según lo
mostrado en la figura. Procure que la curvatura sea ligeramente redondeada y no en ángulo
recto.
16
3. Inserte el diodo D1, de vuelta al circuito impreso y fije uno de sus terminales.
4. Verifique que ha sido colocado de forma correcta y aplique la soldadura al otro Terminal.
5. Al finalizar corte los terminales tan a ras de la tarjeta como se sea posible.
17
Al finalizar su PCB-A28 debe lucir así:
1. Doble los terminales de las resistencias R1, R2 y R3 para poder insertarlas en el impreso.
3. Instale y suelde las resistencias R4, R5 y R6. Procure fijar primero el terminal superior
para facilitar el montaje.
18
Al finalizar su PCB-A28 debe lucir así:
1. Identifique en la muesca que marca el terminal No.1 tanto en la tarjeta impresa como en
la propia base a instalar, por favor no se equivoque ya que dañará la base de conexión.
MUESCA
PUNTOS DE SOLDADURA
19
3. Repita con la base de 28 pines.
PUNTOS DE
SOLDADURA
20
2. Identifique en la serigrafía el “lado plano” (el cátodo) de los LED’s (L0 a L3).
3. Inserte cada uno de los LEDs de modo que coincida con el dibujo.
5. Utilizando un alicate pequeño estire los terminales del diodo LED bicolor.
6. Inserte el LED bicolor tanto como le sea posible con el lado plano hacia la parte superior
de la tarjeta (coincidiendo la muesca del LED con el dibujo) y efectúe la soldadura.
Ya casi hemos terminado de armar el sistema pero debe prestar atención al montaje de los
últimos componentes.
21
Instalación de los condensadores electrolíticos y el resonador
1. Identifique en la serigrafía los condensadores CF1 y CF2 así como sus terminales
positivos.
5. Corte los terminales sobrantes al ras del impreso y trate de que la soldadura sea lo más
redonda y uniforme posible, no se exceda con la cantidad de soldadura.
22
Al finalizar su PCB-A28 debe lucir así:
23
3. Haga un pequeño punto de soldadura en uno de los tres terminales y revise que ha
quedado correctamente colocado.
4. Corte los tres terminales y comience a soldar. Tenga en cuenta que estos “pads” de
soldadura son bastante grandes y que requerirán una cantidad apreciable de estaño, sin
embargo, esta no debe ser excesiva, ya que podría derramarse hacia la cara frontal de la
tarjeta.
5. Rellene completamente los tres pads procurando que estos queden bastante
redondeados.
Esta parte del impreso puede llegar a ensuciarse considerablemente. Para limpiarla puede
utilizar algún tipo de solvente dieléctrico o alcohol de uso doméstico. Tenga muy en cuenta
que alcohol no es dieléctrico y que si lo utiliza, deberá esperar al menos dos horas luego de
limpiar su tarjeta para poder encenderla. Pude utilizar también pequeñas cantidades de
líquido removedor de pintura para uñas.
24
7. Corte los terminales del regulador y coloque un pequeño punto de soldadura en el
terminal central.
9. Inserte el conector DB9 hembra. Verifique que los terminales tanto de la parte inferior
como de la superior estén bien centrados en los “pad” de soldadura.
10. Aplique una soldadura generosa que cobra todo el pad pero tenga cuidado de no
provocar un cortocircuito entre los terminales.
25
AHORA SOLO FALTA EL TOQUE FINAL…
11. Con ayuda de un alicate, inserte sobre un protoboard estándar la tira de 23 pines de
extensión.
12. Coloque la tarjeta PCB-A28 sobre los pines y corte el sobrante de los terminales de las
esquinas (RA3 y GND).
26
13. Suelde los terminales de las esquinas.
14. Corte el sobrante de todos los pines y suéldelos con mucho cuidado procurando que la
soldadura quede bien redondeada y difundida correctamente en el orificio.
27
Armado del cable de programación.
Al momento de conectar dispositivos por el puerto serial RS232, existen dos tipos de
conexiones para puertos RS232, dependiendo si se implementan las configuraciones como
equipo terminal de datos (DTE) o como equipo de comunicaciones de datos (DCE). Esto
implica que un cable de conexión serial puede ser de dos tipos: Invertido (crossover) o No-
Invertido (extensión simple). De acuerdo con la disposición de los terminales en la tarjeta de
desarrollo PCB-A28, el cable que vamos a construir corresponde a este último tipo
28
(extensión simple). En la siguiente figura vemos el esquema de conexión de este tipo de
cable. Para la comunicación del PCB-A28, sólo se requieren los terminales RD(2), TD(3),
DTR(4) y GND(5).
1. Retire unos tres centímetros de la cubierta protectora del cable multi-conductor (en
ambos extremos).
2. Seleccione cuatro (4) conductores fácilmente distinguibles y corte el resto. Con ayuda de
un alicate descubra ligeramente la punta de cada conductor y aplique un pequeño punto de
soldadura (en ambos extremos).
3. Identifique el terminal 5 del conector DB9 hembra y suelde el primer cable. Repita para
los terminales 4,3,2. Anote el orden de conexión de los cables. Terminal DB9-5 ______,
Terminal DB9-4 ______, Terminal DB9-3 ______, Terminal DB9-2 ______.
29
4. Coloque el conector en el interior de la base plástica.
5. Instale los tornillos de fijación laterales y cierre la caja utilizando los tornillos con tuerca
suministrados.
6. Identifique el terminal 5 del conector DB9 macho y suelde los cables según la
identificación hecha en el paso 3.
30
YA SU CABLE DE PROGRAMACIÓN HA SIDO CONSTRUIDO!
31
5
C
CAAPPIITTUULLO
O
P
PRRIIM
MEER
RO SP
OS PAASSO
OSS
Vamos a comenzar a desarrollar actividades en nuestro sistema, para ello es necesario que
ubique claramente cada uno de los componentes.
Sobre la esquina superior del protoboard conecte firmemente el sistema PCB-A28, según se
muestra en la figura 5.5.
32
Figura 5.5. Fijando el sistema sobre el protoboard.
33
Precaución. El microcontrolador PIC 16F876 “ATOM” es un dispositivo semiconductor sensible a las descargas
electrostáticas. Para evitarse inconvenientes, procure tocar alguna superficie metálica correctamente aterrada antes
de manipular al microcontrolador.
Enchufe el cable del transformador al conector de alimentación. El diodo LED color verde
llamado PON (Power ON) deberá estar encendido, si esto no ocurre apague el sistema y
verifique que los conectores están firmemente unidos a la unidad de desarrollo.
Precaución. Jamás conecte o retire un componente electrónico de un equipo o sistema energizado, esto podría
destruir tanto al dispositivo en cuestión como a cualquier otra parte del equipo.
Si desconoce el número de
identificación del puerto donde
conectó al sistema PCB-A28, tendrá
que ir al administrador de
dispositivos en Windows®, al
hacerlo, aparecerá la ventana
mostrada en la figura 5.9.
34
¡Vamos a escribir nuestro primer programa!
• Inicialice el IDE haciendo clic sobre el icono correspondiente.
• Dentro del menú “File”, elija la opción “New”.
• En el cuadro de dialogo, seleccione “MBasic file” y presione ”OK”.
• Teclee el nombre “Primer_Programa” cuando el editor se lo solicite.
• Transcriba el texto que aparece a continuación.
'01_Primer_Programa.bas
'PROGRAMA PARA HACER PARPADEAR UN LED CONECTADO A P7
'------------------------------------------------------------------------------
PAUSE 1000 'Debe colocarse siempre antes del Programa principal.
Principal:
HIGH P7 'Pin P07 va a estado "alto" y el LED se enciende
PAUSE 500 'Espera de 500 ms para observar el encendido del LED
LOW P7 'Pin P07 va a estado "bajo" y el LED se apaga
PAUSE 500 'Espera de 500 ms para observar al LED apagado
GOTO Principal 'Saltar a la etiqueta "Principal" para repetir el parpadeo
'------------------------------------------------------------------------------
'FIN DEL PROGRAMA
35
¡Felicitaciones!, usted acaba de programar un microcontrolador.
En la parte inferior del IDE, aparecerá una ventana similar a la mostrada en la figura 5.12. que
contiene información del proceso de compilación, así como, de los recursos del microcontrolador
utilizados por el programa. Si la ventana de mensajes de salida no aparece haga clic en: View ->
Toolbar->Output.
Detalles adicionales pueden ser encontrados en el manual de sintaxis del ATOM versión 3.0,
página 20, el cual está incluido en el CD.
36
Corrigiendo errores en el programa.
Vamos a modificar el código del primer programa de la siguiente manera:
'02_Programa_Errores.bas
'PROGRAMA PARA HACER PARPADEAR UN LED CONECTADO A P7 (CON ERRORES)
'------------------------------------------------------------------------------
PAUSE 1000 'Debe colocarse siempre antes del Programa principal.
Principal:
HIGH P07 'Pin P07 va a estado "alto" y el LED se enciende
PAUSE 500 'Espera de 500 ms para observar el encendido del LED
LOW P07 'Pin P07 va a estado "bajo" y el LED se apaga
PAUSE 500 'Espera de 500 ms para observar al LED apagado
GOTO Principals 'Saltar a la etiqueta "Principal" para repetir el parpadeo
'------------------------------------------------------------------------------
'FIN DEL PROGRAMA
La ventana de información dirá:
Error: FILE C:\PRIMER_PROGRAMA_ERROR.BAS(LINE 6) : [TOKEN :] : Unexpected token type
Error en la línea 6
37
Utilizando los recursos del IDE: El Debugger.
La barra de herramientas “User Tools”
contiene cuatro (04) botones que realizan
determinadas funciones:
• Compile. Efectúa la revisión de sintaxis y compilación del programa.
• Program. Igual que Compile pero, transfiere el código ejecutable al microcontrolador.
• Debug. Descarga el programa al microcontrolador en modo de depuración.
• System Setup. Abre el cuadro de dialogo de configuración del puerto de programación.
El modo de depuración es una herramienta que posee el microcontrolador ATOM para poder ver
el contenido de los registros internos y de las variables del programa durante la ejecución del
programa. Cuando el ATOM esta haciendo “debug”, se puede controlar si se ejecutan las
instrucciones continuamente o una por una, efectuar un reset cuando se desee, utilizar “Break
points”, para detener el programa una vez alcanzado un punto y muchas otras características que
hacen de esta una herramienta increíblemente útil. Sin embargo, cada instrucción es ejecutada a
una velocidad muy inferior a la que alcanza el ATOM al ser programado, por ello, algunos
comandos y características del microcontrolador (especialmente las interrupciones) no deben
usarse al hacer “debug”.
Para ejemplificar el uso del “debug”, escribiremos un programa que le ayudará a comprender
todas las ventajas que tiene esta herramienta.
'03_Debugger.bas
'ESTE PROGRAMA ES UN EJEMPLO DEL USO DEL DEBUGGER DEL MICROCONTROLADOR ATOM
'SECCION DE VARIABLES Y CONSTANTES
'------------------------------------------------------------------------------
Dato VAR Byte 'Declaración de una variable tipo byte (8 bits)
'------------------------------------------------------------------------------
'CUERPO DEL PROGRAMA
PAUSE 1000 'Debe colocarse siempre antes del Programa principal.
FOR Dato=0 TO 255 'Ciclo FOR desde 0 hasta 255
DEBUG [0,DEC Dato] 'Enviar el valor decimal de la variable Dato
NEXT
END
'------------------------------------------------------------------------------
'FIN DEL PROGRAMA
38
La barra de herramientas de depuración, contiene los botones para controlar la ejecución del
programa. La figura 5.15 muestra todas las funciones disponibles.
Ver contenido
Conectar/Desconectar Ejecutar paso Saltar fuera de de las variables Ver contenido Auto
El debugger Ani mar Reset a paso una subrutina del programa de toda la RAM actualizar
Poner/Quitar Correr Pausa Ejecutar paso a Correr hasta Ver los Ver el Stack
breakpoint paso * la posición registros
del cursor
* Las subruti nas se ejecutan como si fueran una i nstrucci ón
El código del programa animado, nos muestra resaltando con una línea color verde la instrucción
que se está ejecutando actualmente, de esta forma se pueden seguir con facilidad los saltos y
bifurcaciones que toma el programa a medida que avanza.
En la parte derecha de la pantalla, se podrán ver los registros de función específica del
microcontrolador, las variables del programa, el Stack o el contenido de la memoria RAM según se
desee.
Presione el icono “Step Into” y observe como aumenta el valor de la variable Dato. Este aumento
se puede ver tanto en el terminal de comunicaciones como en el listado de variables del
microcontrolador.
Vamos a escribir un pequeño programa para graficar una señal en el osciloscopio. Transcriba el
siguiente programa con el nombre Osciloscopio.bas.
'04_Osciloscopio.bas
'ESTE PROGRAMA MUESTRA COMO USAR EL OSCILOSCOPIO INCLUIDO EN EL IDE DEL ATOM
'SECCION DE VARIABLES Y CONSTANTES
'------------------------------------------------------------------------------
Dato VAR LONG 'Declaración de una variable tipo long (32 bits)
Canal_01 CON $0E 'Canal 1 del osciloscopio
'------------------------------------------------------------------------------
'CUERPO DEL PROGRAMA
PAUSE 1000 'Debe colocarse siempre antes del Programa principal.
Principal:
FOR Dato=0 TO 255
SEROUT S_OUT,I9600,[Canal_01,Dato.Byte0,Dato.Byte1,Dato.Byte2,Dato.Byte3]
'Envío del dato al osciloscopio, primero el canal luego los 4 bytes
PAUSE 50
NEXT
GOTO Principal
'------------------------------------------------------------------------------
39
Presione el botón “Program”.
Para configurar y utilizar el osciloscopio, siga detalladamente los siguientes pasos:
• Seleccione Tools-> Oscilloscope.
• Ajuste Max Y = 255 y Min Y= 0.
• Coloque Min X = 0 y Max X = 1000.
• En el cuadro “Timing” , seleccione “Point” y ajuste X/point = 1.
• En el campo “COM Port”, seleccione el puerto utilizado para programar al ATOM y en
“Baud Rate” coloque 9600.
• Presione “Connect” y comenzarán a graficarse los datos.
40
'05_Osciloscopio_Multicanal.bas
'EJEMPLO DE GRAFICA MULTICANAL CON EL OSCILOSCOIPIO DEL IDE
'------------------------------------------------------------------------------
'CUERPO DEL PROGRAMA
PAUSE 1000 'Debe colocarse siempre antes del Programa principal.
Principal:
FOR Dato = 0 TO 255
Seno = SIN Dato
Cose = COS Dato
SEROUT S_OUT,I9600,[Canal_01,Dato,0,0,0]
SEROUT S_OUT,I9600,[Canal_02,Seno.Byte0,Seno.Byte1,Seno.Byte2,Seno.Byte3]
SEROUT S_OUT,I9600,[Canal_03,Cose.Byte0,Cose.Byte1,Cose.Byte2,Cose.Byte3]
PAUSE 50
NEXT
GOTO Principal
'------------------------------------------------------------------------------
41
6
C
CAAPPIITTUULLO
O
M
MAANNEEJJO OD EE
DE ENNTTRRAADDAASS YY
S
SAALLIIDDAASS
42
Función de los terminales del microcontrolador ATOM.
• Los pines GND y VDD proporcionan la energía necesaria para el funcionamiento del
microcontrolador. El nivel del voltaje de estos terminales debe ser 0 Vdc y 5 Vdc,
respectivamente.
• El terminal /RES es utilizado para reiniciar al microcontrolador.
• Los terminales OSC1 y OSC2 se emplean para conectar el resonador de 20 Mhz que
requiere el ATOM para poder trabajar.
• El terminal SIN/SOUT es de entrada/salida digital y se encuentra conectado a la interfaz
de programación del PCB-A28. Una vez programado el ATOM, puede ser usado como
puerto de comunicaciones.
• Los terminales AX0..AX3, son entradas/salidas digitales y también sirven de canales de
entrada al convertidor analógico/digital.
• Los terminales P0..P15, son entradas/salidas digitales.
Todos los terminales de E/S del microcontrolador ATOM, operan en niveles TTL/CMOS
compatible, esto significa, que las señales eléctricas llevadas a estos pines, deben estar
comprendidas entre 0 Vdc y 5 Vdc. La corriente de salida entregada por cada pin no debe
exceder los 25 mA. Mayores detalles de las características eléctricas del ATOM pueden verse en
las hojas técnicas del PIC 16F87X incluidas en el CD.
Nota: Los terminales de entrada/salida digital pueden usarse en todos los comandos e instrucción de uso general del
lenguaje de programación del microcontrolador ATOM. Algunos comandos especiales, que requieren utilizar recursos de
hardware del microcontrolador sólo operan sobre pines específicos.
La mayoría de las instrucciones del lenguaje MBASIC, se encargan de definir si los pines utilizados
son entradas o salidas, sin embargo, existen casos en los cuales debemos manipular directamente
los pines del microcontrolador, por ejemplo, cuando se quiere accionar varias salidas a la vez.
Al inicializar el microcontrolador ATOM, todos los pines son definidos como entradas. Las entradas
pueden ser leídas a través de los registros de 16 bits INS u OUTS.
El registro de control DIRS, permite definir los pines como entradas (DIRS = 1) o como salidas
(DIRS = 0). Las instrucciones INPUT y OUTPUT operan directamente sobre el registro DIRS y
permiten darle legibilidad al programa.
'06_SALIDAS.bas
'ESTE PROGRAMA ES UN EJEMPLO DE COMO MANEJAR LAS SALIDAS DIGITALES Y GENERAR
'UNA SEÑAL AUDIBLE CON EL SISTEMA PCB-A28.
'------------------------------------------------------------------------------
DIRB = $0 'Define los pines desde P4 hasta P7 como salidas
OUTPUT P3 'Define el terminal P3 como salida digital
'------------------------------------------------------------------------------
PAUSE 1000 'Debe colocarse siempre antes del Programa principal.
Principal:
FOR OUTB=0 TO $F 'mostrar un conteo en los LEDS del PCB-A28
PAUSE 200 'Espera de 200 ms para ver el conteo
NEXT
SOUND P3,[150\5500] 'Tono emitido por P3 de 150 ms duración a 5.5 Khz
SOUND P3,[250\3000] 'Tono emitido por P3 de 250 ms duración a 3.0 Khz
GOTO Principal 'Repetir indefinidamente
'------------------------------------------------------------------------------
43
Mayores detalles de la organización de los registros DIRS, OUTS e INS se encuentran en el
Manual de Sintaxis del ATOM, página 40, incluido en el CD.
En el ejemplo anterior, observamos como manipular dos periféricos de salida de uso frecuente,
los LED’s y el buzzer. Los LED’s emiten una llamativa luz que sirve de indicador en casi todos los
dispositivos electrónicos. Los buzzers o altavoces piezoeléctricos son un excelente medio para
producir señales sonoras de alarma o notificación, por ejemplo, los teléfonos celulares utilizan
estos dispositivos para emitir los tonos de alerta de la mensajería de texto, el repique que
acompaña a una llamada entrante, etc.
'07_ENTRADA_DIGITAL.bas
'PROGRAMA SIMPLE DE LECTURA DE UNA ENTRADA DIGITAL
'------------------------------------------------------------------------------
DIRB = $0 'Define los pines desde P4 hasta P7 como salidas
INPUT P0 'Define el terminal P0 como entrada digital
OUTB = $0 'Iniciar la cuenta en cero, todos los LEDS apagados
'------------------------------------------------------------------------------
PAUSE 1000 'Debe colocarse siempre antes del Programa principal.
Principal:
IF IN0 = 0 THEN 'Si el pin IN0 -> P0 esta en estado bajo, el pulsador
OUTB = OUTB + 1 'esta presionado y se debe aumentar el conteo
ENDIF
GOTO Principal 'Repetir indefinidamente
'------------------------------------------------------------------------------
La conexión utilizada en este ejemplo, se denomina activa baja por que al oprimirse el pulsador
aparece un cero “0” en el pin correspondiente.
Oprima repetidas veces y observe que el conteo no es uniforme, ni ordenado, sino que parece
aleatorio. Esto se debe a la presencia del rebote. Este es un fenómeno asociado a los dispositivos
que utilizan contactos electromecánicos y se debe a las rugosidades propias del elemento
metálico de contacto.
'07_ENTRADA_SIN_REBOTE.bas
'ESTE PROGRAMA MANEJA UNA ENTRADA DIGITAL POR MEDIO DE UN PULSADOR Y ELIMINA
'EL REBOTE POR RETARDO DE PROGRAMACION
'------------------------------------------------------------------------------
'INICIALIZACION DEL PROGRAMA
44
DIRB = $0 'Define los pines desde P4 hasta P7 como salidas
INPUT P0 'Define el terminal P0 como entrada digital
OUTB = $0 'Iniciar la cuenta en cero, todos los LEDS apagados
'------------------------------------------------------------------------------
PAUSE 1000 'Debe colocarse siempre antes del Programa principal.
Principal:
IF IN0 = 0 THEN 'Verificar si se oprimió el pulsador
PAUSE 50 'Esperar que el pin se estabilice
IF IN0 = 0 THEN 'Realmente se oprimió el pulsador?
OUTB = OUTB + 1 'Aumentar la cuenta
ENDIF
WHILE IN0=0 'Esperar hasta que el pulsador sea liberado
PAUSE 1 'y el pin esté en alto
WEND
ENDIF
GOTO Principal
'------------------------------------------------------------------------------
Sin embargo, existe una instrucción de BASIC que nos permite trabajar directamente con
interruptores y pulsadores, se llama BUTTON. El siguiente programa es un ejemplo de cómo
usar esta instrucción.
'ENTRADAS_3.bas
'ESTE PROGRAMA UTILIZA LA INSTRUCCION BUTTON PARA MANEJAR UN PULSADOR QUE
'CONTROLA UN CONTEO VISUALIZADO EN LOS LEDS DEL PCB-A28
'SECCION DE VARIABLES Y CONSTANTES
'------------------------------------------------------------------------------
Edo_Activo CON 0 'Estado lógico que ocurre al presionar el pulsador
Anti_Rebote CON 250 'Tiempo de espera para eliminar el rebote
Auto_Repeat CON 250 'Tiempo antes de comenzar las auto-repeticiones
Pulsador_Presionado:
OUTS.NIB1 = OUTS.NIB1 + 1 'Incrementar la cuenta
GOTO Principal
'------------------------------------------------------------------------------
Adicionalmente, hemos visto otra manera de direccionar al registro OUTS; decir OUT.NIB1 es
exactamente igual a OUTB. Se ha utilizado en este caso, un modificador de variable para tener
acceso a una parte de la variable OUTS.
45
Entradas Analógicas: El Conversor Analógico/Digital.
Un conversor analógico/digital (ADC) es un dispositivo que convierte una señal analógica o
continua en una representación digital. Los ADC’s le permiten a los equipos digitales como
microcontroladores o computadores medir y obtener información de las variables del mundo real
como temperatura, presión, fuerza, resistencia, voltaje, etcétera.
El ATOM posee un modulo ADC con una resolución de 10 bits y cuatro canales de entrada que lo
hacen bastante adecuado para muchas aplicaciones. Los terminales AX0 a AX3 dan acceso a los
cuatro canales de conversión.
'------------------------------------------------------------------------------
PAUSE 1000 'Debe colocarse siempre antes del Programa principal.
Principal:
ADIN AX0,Reloj_ADC,AD_RON,Valor_Digital
'Convierte la señal conectada en AX0 y guarda el valor en la variable
'Valor_Digital. Como el resultado es de 10 bits hay que darle formato para
'colocarlo en una variable de 16 bits, con AD_RON los 6 MSbits se llenan con 0
GOTO Principal
'------------------------------------------------------------------------------
Oprima sobre los iconos “Ver variables” y “Auto Actualizar”, del debugger. Ver figura 5.15.
Corra el programa con la opción “Animate” y gire el potenciómetro para ver los valores que arroja
la conversión.
Vref
Voltaje = ⋅ Re sultado _ Conversion
2n
46
• Se pueden usar los cuatros canales del ADC de modo alternado (multiplexado), no de
modo simultaneo.
• El terminal AX3 se puede utilizar como referencia de voltaje desde 1 Vdc hasta 5Vdc,
esto permite aumentar la resolución (cada valor digital corresponde a un menor voltaje).
• Con 10 bits se logran 1023 pasos o posibles valores para el resultado de la conversión.
Con una referencia de 5Vdc cada paso corresponde aproximadamente a unos 5 mV.
• Utiliza el algoritmo de aproximaciones sucesivas, que arroja una buena relación de
velocidad/exactitud.
• El reloj puede seleccionarse para lograr conversiones de mayor velocidad o de mayor
precisión, según se requiera.
47
7
C
CAAPPIITTUULLO
O
IINNTTEERRRRUUPPCCIIO
ONNEESSY YO OTTRRO
OSS
RREECCUURRSSO OSSA AVVAANNZZAADDO
OSS
48
• Modulo CCP1 (CCP1INT). Los módulos de CCP del ATOM pueden ser
configurados para realizar dos acciones: captura y comparación. La captura permite
tomar el valor que tiene el Timer1 al momento de producirse una determinada
transición (paso de alto o bajo, o viceversa) en el pin correspondiente. La
comparación, activa una interrupción cuando el valor del TMR1 coincide con un
valor deseado. Al ocurrir una interrupción por comparación, se pueden desatar otros
eventos de manera simultánea como: cambiar el estado de un pin (CCP1 o CCP2),
borrar el contenido del TMR1 o iniciar la conversión analógica/digital. El terminal
CPP1 corresponde a P10.
• Modulo CCP2 (CCP2INT). Funciona igual que el CCP1INT pero utilizando el
terminal P9.
Definiciones importantes.
Antes de comenzar con los ejemplos, es necesario definir algunos conceptos fundamentales
relacionados con las interrupciones:
• Fuente de interrupción. Recurso, elemento o dispositivo que está en capacidad
de producir una interrupción.
• Interrupción. Es el evento ocasionado y que debe ser atendido.
• Rutina de interrupción (ISR). Es el segmento de código que se ejecuta al ocurrir
la interrupción y que debe observar el manejo de la misma. Por ejemplo, guardar
algunas variables, efectuar una acción de corrección, emitir algún tipo de indicación
o alarma, etcétera.
• Habilitación de la interrupción. Para que la interrupción pueda ocurrir, hay que
indicar que la fuente de interrupción deseada este activa.
• Interrupciones recurrentes. Son aquellas que pueden ocurrir dentro de su
propia ISR. El microcontrolador ATOM no permite este tipo de interrupciones, de
ocurrir, conducen a que se quede “colgado” teniendo que producirse un reset para
salir de esta condición.
• Interrupciones anidadas. Dos fuentes de interrupción pueden, de forma
simultanea o no, producir una interrupción. En caso de ser simultaneas, el sistema
elegirá aquella que tenga mayor prioridad, si no existe una prioridad pre-
establecida, se atenderá de maneja arbitraria una u otra. Puede darse el caso de
estar atendiendo una interrupción y producirse otra. La nueva interrupción será
atendida primero y luego se continuara procesando la primera. El ATOM acepta este
tipo de interrupciones, pero, su uso debe limitarse a usuarios experimentados y
concientes de las limitaciones propias del microcontrolador, ya que, tal practica
puede generar un funcionamiento bastante inestable y hasta errático.
Información adicional puede ser encontrada en el Manual de Sintaxis del microcontrolador
ATOM capítulo 11 y en el data sheet del PIC16F87X, ambos incluidos en el CD.
Uso de la interrupción externa EXTINT.
Esta interrupción es particularmente útil, ya que, permite detectar cuando ocurren flancos
ascendentes o descendentes de una señal digital. Esto es comúnmente empleado para lograr la
sincronización entre sistemas diferentes y para atender eventos de importancia como condiciones
de alarma o de falla.
En nuestro ejemplo, tendremos un pulsador conectado al terminal P0 del ATOM y aumentaremos
un contador cada vez que se libere el pulsador. Cada vez que se oprime el pulsador, el estado de
un LED conectado a P7 deberá cambiar. Ciertamente, esto se puede hacer de muchas maneras
sin requerir de una interrupción; sin embargo, veremos que la utilización de la interrupción nos
49
permite liberar al programa principal de toda responsabilidad en el manejo del contador. En
efecto, el programa principal de nuestro ejemplo, manejará otro contador que nada tiene que ver
con el pulsador conectado a P0.
'EXT_INT.BAS
'ESTE PROGRAMA MUESTRA COMO CONFIGURAR LA INTERRUPCION EXTERNA DEL ATOM PARA
'ACTIVARSE AL PRESIONAR UN PULSADOR CONECTADO AL PIN P0 DEL PCB-A28
'CONFIGURACIÓN DE LAS INTERRUPCIONES
Presione CTRL + F12 para correr el programa en modo de depuración. Oprima el botón
“Animate” o CTRL + F5.
Oprima el pulsador en varias ocasiones; vea como el programa se mantiene ejecutando las pocas
instrucciones del lazo principal y cuando usted libera al pulsador se produce el aumento de la
cuenta y el cambio de estado del LED L0 del sistema PCB-A28.
Del ejemplo vemos claramente que:
• Antes de activar la interrupción, hay que configurar al microcontrolador para informarle
cual es la condición deseada.
• Se debe especificar la ubicación de la rutina de servicio de interrupción ISR, mediante la
directiva ONINTERRUPT.
• Habilitar la interrupción para que pueda ocurrir.
• Una vez que se ejecute la ISR, el retorno al programa principal se debe hacer con la
instrucción RESUME.
50
Interrupción por desbordamiento de un Timer.
Este recurso, es utilizado cuando se requiere que el programa realice una determinada acción
cada cierto tiempo. El Timer 1 del microcontrolador PIC16F876 ATOM presenta las siguientes
características:
• Es un contador de 16 bits por lo que puede llegar a realizar hasta 65535 conteos.
• Produce una interrupción al desbordarse, esto es al pasar de 65535 a 0.
• Tiene un pre-escalador con relación de escalado ajustable: 1:1, 1:2, 1:4, 1:8; de esta
manera puede temporizar hasta 104 milisegundos.
En este ejemplo se utilizará el Timer 1 para hacer una temporización de 3 segundos, veamos
como se hace!.
'11_Timer_1.bas
'EJEMPLO DE USO INTERRUPCIÓN DEL TIMER 1
SETTMR1 TMR1INT8 'Ajustar reloj interno con pre-escaler 1:8
ONINTERRUPT TMR1INT,ISR_TMR1 'Nombre de la rutina de interrupción
ENABLE TMR1INT 'Habilitar interrupción del TMR1
Principal:
TOGGLE P4 'Cambia de estado LED con. en P4
GOTO Principal
'SUBRUTINAS
'------------------------------------------------------------------------------
'Esta rutina se ejecuta aprox. cada 100 ms y es la base de tiempo del reloj
ISR_TMR1:
RESETTMR1 3036 'Reiniciar el TIMER 1
IntCuenta = IntCuenta + 1 'Incrementar el contador de control
TOGGLE P5 'Cambiar el estado del LED con. en P5
IF IntCuenta >= 30 THEN 'Verificar si ya transcurrió un segundo
IntCuenta = 0
SOUND P3,[50\3500] 'Produce sonido de señalización
TOGGLE P7 'Cambia el estado del LED con. en P7
ENDIF
RESUME
'------------------------------------------------------------------------------
En el programa Timer_1.bas, la rutina ISR_TMR1 se ejecuta cada vez que el Timer 1 del
microcontrolador ATOM se desborda. Esto ocurre cuando la cuenta alcanza el valor de 65535 y
como se reinicia en 3036, el Timer contará 62500 pulsos. Cada pulso tiene una duración de 0,2 us
x Pre-escalador; con la instrucción SETTMR1 TMR1INT8 se ajusta el pre-escalador en 8. De
esta forma, cada 100 ms tendremos una interrupción. En la mayoría de los casos, este valor
inicial debe ser ajustado experimentalmente debido a que en la mayoría de los casos no se
51
puede interrumpir cuando se está ejecutando una instrucción de BASIC, recuerde que estas
pueden ser bastante complejas y demorar un tiempo considerable en su ejecución.
Para determinar el valor de inicio de conteo del Timer 1, debe usarse la expresión:
TD(s)
V.Inicio =65536 −
0.2x10 −6 ⋅ PE
Donde TD es el tiempo deseado de interrupción y PE es el valor del Pre-Escalador.
Uno de los recursos con los que cuenta el microcontrolador ATOM, es realizar dos PWM por
hardware utilizando la instrucción HPWM. Esta PWM tiene una resolución máxima de 10 bits, esto
quiere decir, que se pueden obtener hasta 1023 anchos diferentes para el pulso alto de la señal.
Una vez iniciada, la PWM por hardware se seguirá generando como una tarea en segundo plano,
sin consumir recursos adicionales de programación del microcontrolador. De esta forma,
podremos destinar el grueso del programa a realizar otras labores y sólo cuando sea necesario
cambiar algún parámetro, ejecutar nuevamente la instrucción HPWM.
Para este ejemplo, tendrá que conectar un LED al pin P10 del
microcontrolador ATOM, siguiendo el esquema mostrado en la figura 7.2.
Al correr el programa, el LED comenzará a encenderse con poco brillo y
poco a poco irá aumentando su luminosidad hasta encenderse al
máximo.
Figura 7.2. Conexión del LED al CCP1.
'HPWM.bas
'ESTE PROGRAMA CONTROLA EL BRILLO DE UN LED CONECTADO A P10 POR HPWM
'SECCION DE VARIABLES Y CONSTANTES
'------------------------------------------------------------------------------
Periodo VAR WORD 'Periodo de la señal de PWM
Duty VAR WORD 'Duración del pulso alto de la PWM
HPIN0 CON 0 'Definición del pin de trabajo CPP1 --> P10
'------------------------------------------------------------------------------
PAUSE 1000 'Debe colocarse siempre antes del Programa principal.
Periodo = 8000 'Periodo de 400us -> frecuencia PWM = 2.5 KHZ
Principal:
FOR Duty = 0 TO 7000 STEP 500 'Genera una PWM de ciclo útil variable desde
HPWM HPIN0,Periodo,Duty 'cero hasta 87,5% (350 us). Cada paso dura
PAUSE 250 '250 ms y así veremos como se enciende el LED
NEXT 'con intensidad creciente
FOR Duty = 7000 TO 0 STEP -500 'Ahora veremos como se va apagando lentamente
HPWM HPIN0,Periodo,Duty 'el LED hasta quedar completamente apagado
PAUSE 250
NEXT
GOTO Principal
'------------------------------------------------------------------------------
52
Tips al momento de utilizar la HPWM:
• El periodo de la señal se calcula como PWM per = Periodo ⋅ 0.05 ⋅ µs .
• El tiempo que dura el pulso en alto se determina como: THIGH = Duty . 0.05µs.
• La base de tiempo del HPWM es el Timer 2, por lo tanto, no puede ser empleado
para otras funciones (por ejemplo, Capture o Compare).
• No es conveniente que la frecuencia de la PWM supere los 20 Khz, pues se pierde la
resolución de 10 bits.
• Si se generan dos señales de HPWM independientes por P9 y P10, ambas tendrán la
misma frecuencia aunque el ciclo útil sea diferente.
Nuestro objetivo en este caso, será utilizar el potenciómetro para variar el ciclo útil de la señal de
HPWM generada en P10. El terminal P0 y el comando PULSIN, nos permitirán medir la onda de
salida y ver como responde esta ante nuestros ajustes.
'HPWM_TMRO.bas
'ESTE PROGRAMA MUESTRA COMO USAR LA INTERRUPCION DEL TMR0 Y EL HPWM
'CONFIGURACION DE LA INTERRUPCION DEL TMR0
SETTMR0 TMR0INT256
ONINTERRUPT TMR0INT, TMR0_ISR
ENABLE TMR0INT
'SECCION DE VARIABLES Y CONSTANTES
'------------------------------------------------------------------------------
Periodo CON 10230 'Periodo de la PWM (1955Hz)
Ciclo_Util VAR WORD 'Pulso en alto de la PWM generada
Thigh VAR WORD 'Medición del pulso alto
Tlow VAR WORD 'Medición del pulso bajo
Pwmp VAR WORD 'Medición del periodo de la PWM
Freq VAR LONG 'Medición de la frecuencia de la PWM
'------------------------------------------------------------------------------
PAUSE 1000 'Debe colocarse siempre antes del Programa principal.
'PROGRAMA PRINCIPAL
DO
PULSIN P0,Alto,Thigh 'Mide el pulso alto en us
PULSIN P0,Bajo,Tlow 'Mide el pulso bajo en us
Pwmp = Tlow + Thigh 'Calcula el periodo en us
Pwmp = Pwmp min 2
Freq = 1000000/Pwmp 'Calcula el periodo en Hz
SEROUT S_OUT,I57600,[0,"TH=",DEC Thigh\5," uS TL=",DEC Tlow\5," uS",13]
SEROUT S_OUT,I57600,["PERIODO=",DEC Pwmp\5," uS FRECUENCIA=",DEC Freq\6," Hz",13]
SEROUT S_OUT,I57600,["CU=",REAL (FLOAT(Thigh) FDIV FLOAT(Pwmp) FMUL 100.0 )\2,"
%",13]
53
'SUBRUTINAS
'------------------------------------------------------------------------------
'Esta rutina se ejecuta aprox. cada 14 ms. en ella se hace la lectura de los
'dos potenciómetros y se actualiza la configuración de la PWM
TMR0_ISR:
TMR0 = 128
ADIN AX0,2,AD_RON, Ciclo_Util
Ciclo_Util = (5 min Ciclo_Util-1)
Ciclo_Util = Ciclo_Util * (Periodo/1023)
HPWM HPIN0,Periodo,Ciclo_Util
RESUME
Seleccione el terminal de comunicaciones Nro. 01 del IDE del ATOM y conecte el microcontrolador
al computador a una velocidad de 57.6 Kbs. Varíe lentamente la posición del potenciómetro
conectado en AX0, observe como cambia el valor de las variables Tlow y Thigh correspondientes
al tiempo que permanece la señal en los estados bajo y alto, respectivamente
Finalmente, vemos como es posible combinar varios recursos para hacer un programa bastante
sencillo que efectúa una labor relativamente compleja.
Consideraciones finales…
54
Solución de problemas frecuentes.
• Transformador defectuoso de muy poca corriente • Cambie el transformador por uno en buenas condiciones
de salida. o de mayor capacidad de corriente en su salida.
• Transformador inadecuado con centro negativo. • Invierta los cables del transformador en un punto
anterior al conector que entra en el PCB-A28.
• El regulador 7805 se encuentra en cortocircuito. • Desconecte cualquier componente o cable conectado a
los terminales identificados como +5V y GND.
• El regulador 7085 fue sobrecargado (se calienta y • Desconecte la causa de la sobrecarga, retire la
luego se apaga el LED). alimentación del sistema y espere 3 min antes de volver a
conectarla.
• Tiene errores en la sintaxis del programa. • Busque la línea a la que corresponde el error y compare
su sintaxis con la mostrada en el Manual de Sintaxis del
microcontrolador ATOM.
• Ha ocurrido un error no definido en el IDE en el • Reinicie el IDE, si persiste reinicie el PC.
momento de la compilación.
• Ha ocurrido un error dentro del compilador. • Reorganice el código de su programa y reinténtelo.
Problema. Aparece un cuadro de dialogo con el mensaje “ATOM must be connected to compile/program/debug”
• El circuito integrado ST232CN está mal conectado • Revise que el ST232CN esté colocado firme y
o dañado. correctamente sobre su base. Si se calienta, reemplácelo
por uno nuevo.
• El pulsador de RST está presionado.
• Libere cualquier objeto que pudiera estar haciendo
contacto con el pulsador.
• El microcontrolador ATOM ha sido retirado de su
base, se encuentra mal colocado o está dañado. • Verifique que el ATOM se encuentra en su base.
Verifique la posición del terminal ·#1 del ATOM con
respecto a la base. Presione ligeramente al
microcontrolador. Reemplace el microcontrolador.
• El microcontrolador ATOM ha sido grabado con
un programa que interfiere con el inicio de la re- • Dentro del IDE de programación seleccione:
programación. Tools -> System Setup -> Advanced cambie el valor
ReadTotalConstant a 100 intente programar nuevamente.
• Desconecte cualquier hardware conectado en el
protoboard.
55
Sitios de interés en la RED.
56