Uc 1

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 15

Practicario

de
microcontroladores

Nombre: Grupo:

Dr. Enrique Garcı́a Trinidad


Universidad Tecnológica Fidel Velázquez
https://sites.google.com/site/mysillyrobots
phd.enrique.garcia@ieee.org
Práctica 1

Salidas digitales

1.1. Material
El material enlistado es necesario para la realización de la práctica 1.

Ct Dispositivo Descripción Eti.


1 ATmega328P-PU Microcontrolador AVR RISC 8-bit 20Mhz U1
1 Regulador L7805CV Regulador de voltaje 5V 1 A IC1
1 Capacitor cerámico de 0.1µF 50V Código: 104 C1
1 Capacitor electrolı́tico de 470µF 25V Tolerancia ± 20 % C2
1 Capacitor electrolı́tico de 220µF 25V Tolerancia ± 20 % C3
9 Resistencia de 330Ω 1/4W Código: Naranja, naranja, café, oro R1 . . . R9
1 Resistencia de 10kΩ 1/4W Código: Café, negro, naranja, oro R10
1 Push button (Microswitch) Tipo push, 4 o 2 terminales S1
9 Led 5mm difuso Color rojo
2 Metro de alambre para protoboard
1 Protoboard
1 Grabador Usbasp Grabador microcontroladores AVR 8-bit J1
1 Fuente de alimentación de 12V 2A Eliminador de voltaje J2
1 Computadora con puerto USB

1.2. Conexión de los componentes


Conecte el siguiente diagrama:

1
Figura 1.1: Conexión de la fuente de alimentación.

Conecte su fuente de alimentación. Con un multı́metro cheque que realmente


VCC tenga el valor de 5.0V. Si no es ası́, revise sus conexiones.

Desconecte la fuente de alimentación. Complete el circuito anterior de acuerdo


al siguiente diagrama, a este circuito lo llamamos el Circuito base:

2
Figura 1.2: Conexión del circuito base .

Los pines del conector de 10-pin de la tarjeta Usbasp tienen las siguientes
señales, tenga cuidado al conectar, guı́ese por la muesca del conector.

3
Figura 1.3: Descripción de los pines de la tarjeta Usbasp.

Revise de nuevo sus conexiones. Conecte de nuevo la fuente de alimentación


e inicie Extreme Burner AVR. En el menú seleccione Chip>ATmega328P. Des-
pués elija Erase>Chip Erase. Extreme Burner AVR borrará la memoria del
microcontrolador:

4
Figura 1.4: Borrado exitoso de la memoria del microcontrolador

1.3. Preparación del proyecto


Ejecute los siguientes pasos:

Conecte el siguiente diagrama:

5
Figura 1.5: Conexión de la fuente de alimentación.

Inicie el software Codevision AVR. Cree un nuevo proyecto dando click en el


menú New>Project.

Figura 1.6: Creación de un nuevo proyecto.

6
Cuando el software pregunte si queremos usar el asistente CodeWizardAVR le
indicamos que No.

Figura 1.7: Seleccionemos No en esta ventana.

Posteriormente debemos dar el nombre prac01 al proyecto.

Figura 1.8: Estableciendo el nombre del proyecto.

Posteriormente seleccionemos el modelo del microncontrolador de la lista: ATmega328P.


Al final presionamos OK.

7
Figura 1.9: Estableciendo el modelo del microcontrolador.

En la siguiente ventana que se muestra, configuremos la velocidad del osci-


lador en la ficha C Compiler y en Clock: establecemos 1.000 Mhz. Al final
presionamos OK.

8
Figura 1.10: Estableciendo la velocidad del oscilador.

Modifique el código como se muestra a continuación:


// Prctica 1 , ejercicio 1
# include < mega328p .h >

void main ( void )


{
// Todo el puerto D como salida
// Bit 0 al 4 sacan GND
// Bit 5 al 8 sacan VCC
DDRD =0 xFF ;
PORTD =0 xF0 ;

while (1)

9
{
// Seales individuales
PORTD .0=1;
PORTD .1=1;
PORTD .2=1;
PORTD .3=1;
PORTD .4=0;
PORTD .5=0;
PORTD .6=0;
PORTD .7=0;
}
}

Compile el proyecto eligiendo desde el menú Project>Build All. Una compi-


lación correcta arrojará la información No errors, No warnings

10
Figura 1.11: Compilación correcta

De nuevo ejecute el software Extreme Burner AVR, en el menú seleccione


File>Open Flash y busque la carpeta Debug/Exe en el directorio donde guardó
su proyecto y seleccione el archivo prac01.hex. Extreme Burner AVR cargará
el ejecutable producto de la compilación.

11
Figura 1.12: Compilación correcta

Grabe el microcontrolador mediante la opción Write>Flash


Muestre el circuito funcionando al profesor, para que le sea tomado en cuenta.

1.4. Ejercicio 2.
Modifique el código como se muestra a continuación:
// Prctica 1 , ejercicio 2
# include < mega328p .h >

void main ( void )


{

12
// Todo el puerto D como salida
// Bit 0 al 4 sacan GND
// Bit 5 al 8 sacan VCC
DDRD =0 xFF ;
PORTD =0 xF0 ;

while (1)
{
// Sacar datos por el puerto D
// al mismo tiempo
PORTD =0 x0F ;
}
}

Compile, grabe y muestre el resultado al profesor para su evaluación.

1.5. Ejercicio 3.
Modifique el código como se muestra a continuación:
// Prctica 1 , ejercicio 3
# include < mega328p .h >

void main ( void )


{
// Todo el puerto D como salida
// Bit 0 al 4 sacan GND
// Bit 5 al 8 sacan VCC
DDRD =0 xFF ;
PORTD =0 xF0 ;

while (1)
{
// Led1 = prendido
// Led2 = apagado
// Led3 = prendido
// Led4 = apagado
// Led5 = prendido
// Led6 = apagado
// Led7 = prendido
// Led8 = apagado
PORTD =0 xA5 ;
}
}

13
Compile, grabe y muestre el resultado al profesor para su evaluación.

1.6. Ejercicio 4.
Modifique el código como se muestra a continuación:
// Prctica 1 , ejercicio 4
# include < mega328p .h >
# include < delay .h >

void main ( void )


{
// Todo el puerto D como salida
// Bit 0 al 4 sacan GND
// Bit 5 al 8 sacan VCC
DDRD =0 xFF ;
PORTD =0 xF0 ;

while (1)
{
// Alternando las seales a los Leds
// con retardo de 200 ms
PORTD =0 xA5 ;
delay_ms (200) ;
PORTD =0 x5A ;
delay_ms (200) ;
}
}

Compile, grabe y muestre el resultado al profesor para su evaluación.

14

También podría gustarte