You are on page 1of 5

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

UNIVERSIDAD DEL PER, DECANA DE AMRICA.

FACULTAD DE ING. ELECTRNICA Y ELCTRICA

LABORATORIO 1: Implementacin de un circuito


de muestreo con un ARDUINO y el compilador
BASCOM

CURSO

INGENIERIA DE CONTROL

PROFESOR

ING CIFUENTES

NOMBRE

CHVEZ GARCA RAL JORGE

CDIGO

09190151

HORARIO

LUNES

INTRODUCCION
-

En el presente laboratorio, veremos los diferentes usos y utilidades del


programa BASCOM-ARV, as como tambin las herramientas y funciones
que contiene, las cuales nos permitirn desarrollar futuros laboratorios
haciendo un mejor uso del software para facilitar la programacin y
entendimiento del curso.

OBJETIVO
-

Familiarizarse y utilizar el SOFTWARE de programacin BASCOM-ARV para


desarrollar un programa contundente para la aplicacin de un contador
por interrupciones utilizando un ATMEGA8.

MATERIALES
-

ATMEGA8

LEDs

ARDUINO UNO

PROCEDIMIENTO
1. Realizar la programacin en el software BASCOM-AVR, en base a la
programacin sugerida por el previo.
2. Una vez terminada la programacin, se pasara a guardar el archivo del
programa y despus se proceder a compilar en el BASCOM-AVR para
seguir con la verificacin.
3. Una vez verificada la programacin mediante la simulacin en el
BASCOM-AVR usando los leds proporcionados por el programador.
4. Se procede ahora a conectar el ATMEGA8 al quemador y este ltimo
mediante el cable serial/USB a la PC donde se encuentre el programa listo
para ser escrito.
5. El programa reconocer de manera automtica el dispositivo utilizado (en
este caso el ATEMGA8).
6. Una vez reconocido el dispositivo, se proceder a su escritura o quemado
en el microcontrolador para que funcione de acuerdo a la programacin
solicitada.
7. Se implemente el circuito en un protoboard para verificar la completa
funcionalidad del dispositivo.

PROGRAMACION (BASCOM-AVR)
$regfile = "m328pdef.dat"
dispositivo a usar
$crystal = 16000000

'indica al compilador el

'la frecuencia del reloj (16MHz) '


$hwstack = 32
$framesize = 16
Dim Cont As Byte
Dim A As Byte
Config Portb = Output
como salida

'Configura el puerto b

'Configura el timer1 como contador, con preescalador de 64, y que se


reinicie a luego 'de tomar el valor
Config Timer1 = Counter , Prescale = 1024
, Clear Timer = 1
'especifiado por Compare1A
Timer1 = 0

'inicializa el timer1 en cero.

On Compare1a Muestreo1
'Muestreo1 es el LABEL a la cual debe saltar cuando de tiene una
interrupcion
'Calcular el tiempo de muestro
T
'se contara hasta el valor 31250 para un T=2s
Compare1a = &H7A12
Enable Compare1a
comparacion de timer1
Enable Interrupts
general
Do
A=0
Loop
End

31250=H7A12

'Habilita la interrupcion por


'Habilita las interrupciones en

'final del programa

'Rutina de interrrupcion (actualizar salida)


Muestreo1:
Timer1 = 0
Incr Cont
Portb = Cont

'

'Desarrollar el algoritmo de control:


Return

'fin de la rutina de interrupcion

Simulacin en proteus

Implementacin:

You might also like