Download Hardware CADmega128 R1.0

Transcript
CAD Ingeniería S.A.
SAN ISIDRO 255 OFICINA F
Santiago, Chile
MANUAL DEL USUARIO
Placa de Entrenamiento / Desarrollo
CADmega128
1
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.
1. Introducción
La placa de Entrenamiento / Desarrollo CADmega128 proporciona un entorno electrónico compacto y versátil para el
aprendizaje (y aplicación) de la programación de microcontroladores Atmel ATmega128. Los principales periféricos,
tales como botones, pantalla, LEDs, etc. ya están listos para su uso, así como conexiones seriales, ADC y DAC. Ello
evita los clásicos problemas de los proto-boards, como son conexiones ruidosas, cables quebrados, etc. Además se
ofrecen dos conectores con señales del micro para expansión u otros propósitos.
Un conector JTAG Atmel estándar permite programación y depuración en circuito, preferiblemente en lenguaje C, para
programar de forma moderna y eficiente al microcontrolador. Junto con la placa se entrega código fuente para utilizar
de inmediato periféricos más complicados como lo son los puertos seriales, ADC y DAC, LCD, etc.
Precauciones para el uso de la placa CADmega128
-
No utilice otro adaptador de corriente que no sea el suministrado con la placa.
-
Nunca manipular la placa con las manos húmedas o en entornos húmedos, y hacerlo sólo por los bordes.
-
No tocar la electrónica (excepto los botones, perilla y conectores) cuando la placa esté encendida, ello puede
introducir interferencia y alterar el funcionamiento del micro.
-
Evite tocar el borde del regulador de voltaje que se encuentra a la izquierda del buzzer (por debajo de la
placa), en operación normal se calienta pero nunca hasta un punto de provocar quemaduras u otras
molestias.
-
Al conectar voltajes externos a la placa, nunca deben exceder de 5V.
2
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.
2. Hardware
2.1. Alimentación
La placa CADmega128 se alimenta mediante un transformador externo de 220VAC/12VDC, 600mA (incluido con
cada unidad). En la placa se aplica filtrado para atenuar el ruido switching de esta alimentación y se distribuyen
los 12V en diferentes partes de la placa que lo requieren. Además se obtienen 5V necesarios para el micro y toda
la lógica digital mediante U5.
ALIMENTACION Y FILTRADO
Entrada 12VDC
V12
J20
1
1
100uH
JUMPER
DC_JACK
C3
C4
100n
10u
J4
VI
VO
3
1
GND
TIP
VCC
7805
CONN-SIL1
2
SLV
JP6
2
U5
L1
J3
1
CONN-SIL1
VCC
C6
C5
C8
C7
C10
100n
100n
100n
100n
100n
El jumper JP6 es el interruptor maestro de la alimentación, puede usarse para apagar o encender la placa sin
desconectar el transformador externo.
2.2. CPU
La placa CADmega128 posee como cerebro el avanzado microcontrolador RISC Atmel Atmega128, con cristal a
16 Mhz (máxima velocidad posible, permite hasta 16 MIPS, Millones de Instrucciones por Segundo). La
programación/depuración se realiza mediante conector JTAG Atmel estándar (J1).
3
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.
ATmega128 soldado en la cara inferior de la placa CADmega128
4
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.

Como se observa en el esquemático, se dispone de un botón manual de Reset (SWR), que reinicia el
programa del micro desde cero.

El cristal X1 es de 16 Mhz, para velocidades menores debe usarse el oscilador interno del micro y programar
esto en los fusibles.

El terminal J7 permite conectar una referencia de voltaje externa (AVREF) para el conversor ADC integrado
del micro, dicha referencia no puede ser negativa ni exceder 5V.

El cristal X2 es de tipo reloj de cuarzo, frecuencia 32,768 kHz, y puede usarse para implementar un reloj de
tiempo real por software (sin respaldo de batería).
2.3. Programación y Puerto JTAG (J1)
El puerto JTAG permite programación y depuración del micro, mediante programador JTAG USB Atmel o
compatible.
JTAG USB
Cable estándar
IDC 10 pines
CADmega128
PC con entorno
AVR Studio
La programación se realiza generalmente en lenguaje C, usando el entorno de programación AVR Studio. El
uso del lenguaje C provee gran flexibilidad y rapidez en el desarrollo, ya que no es necesario usar las
instrucciónes de máquina (assembly) de la CPU.
Los programas son grabados en el micro en su memoria Flash permanente, y pueden ser pausados (e incluso
“RESETeados”) a voluntad usando las facilidades de depuración del JTAG.
o
Se recomienda no conectar el programador JTAG a la placa estando ésta conectada.
2.4. LEDs
5
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.
La placa CADmega128 posee 3 LEDs programables (D2,D3 y D4), conectados directamente al puerto G del
microcontrolador (pines PG0, PG1 y PG2 respectivamente).
VCC
D2
R12
LED_G0
2.2k
LED
D3
R13
LED_G1
2.2k
LED
D4
R14
LED_G2
2.2k
LED
Al estar los LEDs conectados a VCC (5V), para encenderlos es necesario escribir un ‘0’ lógico en el pin
correspondiente, previamente configurado como salida.
2.5. Buzzer
La placa CADmega128 incorpora un buzzer (BZ1) controlado por transistor, conectado al puerto PF3 del micro
(etiq. BUZ en el esquemático).
VCC
BZ1
+
+
-
BUZ-OLIMEX
R11
Q2
2N3904
BUZ
2.2k
Este buzzer no es del tipo auto-oscilador, por lo que para generar sonido es necesario enviarle un tren de pulsos
cuadrados dentro de un rango de hasta 2 kHz. Ello es fácil de lograr alternando ‘1’s y ‘0’s en este pin.
2.6. Botones
La placa CADmega128 posee 5 botones (SW1 a SW5), ubicados directamente bajo el LCD. Están conectados a
pines del puerto D, con la correspondencia:
6
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.
-
[SW1] está conectado a PD0, lo que además permite detonar la interrupción INT0.
-
[SW2] está conectado a PD1, lo que además permite detonar la interrupción INT1.
-
[SW3] está conectado a PD4.
-
[SW4] está conectado a PD5.
-
[SW5] está conectado a PD6, lo que además permite incrementar el Timer 1 si se selecciona el modo de
contador.
7
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.
Botones y Filtrado de Rebotes
VCC
R4
10k
U2:A
R3
1
2
SW1
1k
74HC14
C18
10n
VCC
R6
10k
U2:B
R5
3
4
SW2
1k
SW1
1/2
74HC14
C19
3/4
10n
SW-SPST
SW2
1/2
3/4
VCC
SW-SPST
SW3
1/2
3/4
R8
SW-SPST
10k
SW4
1/2
3/4
SW-SPST
5
6
SW3
1k
74HC14
C20
SW5
1/2
U2:C
R7
10n
3/4
SW-SPST
VCC
R10
10k
R9
U2:D
13
12
SW4
1k
74HC14
C21
10n
VCC
R15
10k
R1
U2:E
11
10
SW5
1k
C28
74HC14
10n
Los switches poseen filtrado anti-ruido y anti-“rebotes” mediante resistores, capacitores y el TTL 74HC14. De
acuerdo a la lógica, al presionar un switch aparece un ‘1’ lógico en el pin correspondiente del micro.
8
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.
2.7. LCD
La placa CADmega128 incorpora un LCD de 16 caracteres x 2 líneas, estándar HD44780 en modo de 4 bits
(usando los bits de datos D7 a D4). Se dispone de potenciómetro integrado en la placa (RV1) para el contraste,
que varía con el ángulo de visión y la temperatura ambiente. El LCD está conectado al puerto A. El backlight (luz
de fondo) está siempre activo, aún cuando lógicamente no se inicialice el LCD.
LCD1
BL-K
BL-A
16
15
D4
D5
D6
D7
11
12
13
14
RS
RW
E
LCD_E
VCC
LCD_D4
LCD_D5
LCD_D6
LCD_D7
VCC
2
4
5
6
LCD_RS
1
2
3
VSS
VDD
VEE
LCD_16X2_4BIT
RV1
1
3
10k
Para inicializar y escribir caracteres en el LCD, se ofrece una librería completa en el CD adjunto con la placa,
en los archivos LCD44780.c, LCD44780.h
2.8. UARTs
La CPU ATmega128 posee 2 canales de comunicación serial (USARTs), que pueden ser operados en modo
síncrono o asíncrono. En la placa CADmega128, ambas USARTs pueden ser usadas de manera directa en modo
asíncrono (es decir, como UARTs) y ello otorga inmediata compatibilidad con infinidad de equipos que usan estos
estándares.

La UART0 está alambrada a un convertidor TTL/RS232, de modo que sus señales aparecen listas para
conectarse a un PC u otro equipo compatible con EIA232. El conector hembra (J2) corresponde al estándar
232 DCE:
o
Pin 2: TX UART0 (data transmitida desde la placa)
o
Pin 3: RX UART0 (data recibida por la placa)
9
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.
o
Pin 5: GND (tierra de comunicaciones)
o
Los demás pines no están conectados.
o
Los LEDs D1 y D7 indican, por hardware, transmisión y recepción a esta UART.
C14
1
TX0
RX0
11
12
10
9
100n
3
C1+
C1-
T1IN
R1OUT
T2IN
R2OUT
T1OUT
R1IN
T2OUT
R2IN
U4
MAX232 VS+
VSPACKAGE=SO16
C2+
C2-
J2
14
13
7
8
C17
2
6
VCC
100n
1
6
2
7
3
8
4
9
5
CONN-D9F
C16
100n
4
C15
5
100n
* Para conectar la placa a un PC, basta con un cable serial DB9 macho – hembra.

La UART1 no está alambrada a ningún convertidor TTL/RS232, de modo que sus señales corresponden a
niveles TTL directos, y están disponibles en los pines J11:
o
Pin 1: TX UART1 (data transmitida desde la placa)
o
Pin 2: RX UART1 (data recibida por la placa)
o
Pin 3: GND (tierra de comunicaciones)
o
Los LEDs D5 y D6 indican, por hardware, transmisión y recepción a esta UART.
o
Estos pines están conectados de manera directa al microcontrolador, por tanto es necesario sumo
cuidado en su conexión.
Importante: Cuando no se use o no se conecte nada a la UART1, debe colocarse un jumper (suministrado con la placa)
que haga un puente entre los pines TX1 y RX1. De otro modo, el LED RX1 puede encenderse aleatoriamente, haciendo
molesto el uso de la placa.
2.9. Entradas Análogas (ADC)
La placa CADmega128 posee 2 entradas análogas externas (para voltaje o corriente), conectadas a las entradas
ADC0 y ADC1, y además se ofrece un potenciómetro divisor de tensión (RV2, 0 a 5V) permanente en ADC2,
como perilla para variar datos en los programas del microcontrolador.
10
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.
J5
1
2
J8
1
2
JP3
JP8
Pin para volt.
ref. externo

Cada entrada análoga externa dispone de un jumper para usarla en modalidad de voltaje o corriente:
o
Si JP3 está puesto, ADC0 se puede usar para medir corriente.
o
Si JP8 está puesto, ADC1 se puede usar para medir corriente.
o
Notar que ambas entradas poseen resistencias idénticas de 250 ohm (±1%). La máxima corriente que
se puede medir es de 20 mA, con voltaje de referencia interno 5V (del micro, seleccionable por
software) o externo (terminal J7). En caso de usar resistencias externas y referencia externa, el
producto i*R no puede exceder de 5V.
11
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.
o
Sin jumper puesto, la entrada correspondiente mide voltaje positivo, siempre respecto a la referencia
interna de 5V o bien referencia externa, hasta un máximo de 5V. Exceder este voltaje puede dañar de
manera irreversible al micro.
o
El potenciómetro RV2 es un divisor de voltaje conectado directamente a la entrada ADC2 del micro,
permitiendo variar desde 5V (izq.) a 0V (der.)
o
Para usar un voltaje de referencia positivo externo, conectarlo al pin J7 al costado derecho del LCD.
La tierra de este voltaje externo debe unirse a la tierra de la placa CADmega. Este voltaje externo no
puede exceder de 5V.
2.10.
Salidas Análogas (DAC)
La placa CADmega128 incorpora un DAC dual AD7303, que ofrece 2 salidas de voltaje independientes de 8
bits de resolución (canales DAC 0 y 1). Dado que el pin VREF del DAC no está accesible para conectar una
referencia externa, debe usarse la opción software REFINT al enviarle información digital al DAC. Esto
selecciona una referencia interna de alta precisión de 5V.
Salida DAC
U7
SPI_CLK
DAC_CS
SPI_MO
5
7
6
8
J9
SCK
VOUTA
SYNC
VREF
DIN
VOUTB
AD7303
1
4
1
2
Salida análoga 0 a 5V, 8 bit, usar bit REFINT del DAC
TBLOCK-2P-3.5MM
C39
100n
V12
V12
Salida análoga 0-20 mA
C25
J10
1
2
RV4
U6:A
TBLOCK-2P-3.5MM
8
2
100n
3
Q1
3
1
2N3904
1k
LM358
4
1
2
J9
3
RV3
1
1
2
2
1
2
200
J10
Se ofrecen entonces 2 salidas análogas:
12
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.

Salida de voltaje en J9, se pueden obtener desde 0.01 a 5V en incrementos de 5 / 256 = 19.5 mV. Notar que
por limitación del DAC, es imposible obtener 0V exactos en su salida. El pin 1 de J9 es el voltaje del canal
DAC 0, y el pin 2 es tierra de la placa (0 V).
o
Esta salida es lineal, es decir, para obtener 0.01V se envía el valor digital 0 al DAC, y para obtener 5V
8
se envía el valor 255 (2 -1) al DAC.
o
Notar que esta salida está directamente conectada al DAC, y no soporta carga directa más allá de
un par de mA, por tanto esta tensión es de control y debe ser amplificada mediante circuito externo.

Salida de corriente en J10: se implementa una salida análoga de corriente programable utilizando el canal
DAC 1. La corriente (desde 0 a 20 mA) fluye desde el terminal 1 al terminal 2 de J10, la máxima carga es de
250 ohm. Esta salida es lineal, es decir, para obtener 0 mA se envía el valor digital 0 al DAC, y para obtener
8
20mA se envía el valor 255 (2 -1) al DAC. Esta salida se puede usar para manipular equipos de control
industrial con entrada de 4-20 mA.

Este DAC es un periférico externo al micro, por tanto se programa mediante SPI. Con la placa CADmega128
se adjunta código en C listo para acceder al DAC, consultar la documentación en el CD adjunto.

Los potenciómetros RV3 y RV4 son parte de la calibración de la salida de corriente y NO deben ser alterados
de sus posiciones por ningún motivo.
2.11.
Conectores para expansión
La placa CADmega128 ofrece dos conectores (tipo IDC) que permiten acceso a los voltajes de alimentación (+12,
+5, GND) de la placa y a la mayoría de los puertos del micro (B,C,D y E). Como estas conexiones son directas al
micro, deben utilizarse con cuidado para no dañarlo.
V12
V12
VCC
VCC
J6
SPI_CS
SPI_CLK
SPI_MO
SPI_MI
PB4
PB5
PB6
PB7
PD7
PE2
PE3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
J12
PE4
PE5
PE6
PC0
PC1
PC2
PC3
PC4
PC5
PC6
PC7
TRANS 14 DIL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
TRANS 14 DIL
J6
13
Manual del Usuario – CADmega128 – CAD Ingeniería S.A.