Facultad de Ingeniera Electrnica y Elctrica E.A.P. INGENIERIA ELECTRNICA I mplementacin de un circuito de muestreo con un Arduino y el compilador Bascom
Implementacin de un circuito de muestreo con un Arduino y el compilador Bascom Objetivos.- 1.- Estudiar el compilador Bascom . 2.- Estudiar los diferentes componentes del microcontrolador ATMEGA8 de la fabrica ATMEL. 3.- Analizar el uso del microcontrolador atmega como un circuito de muestreo.
Desarrollo de la experiencia. Implementar un circuito con el ATMEGA8 que visualice un contador hexadecimal con un tiempo de muestreo de 2 segundo. Use el 4 pines del puerto B NOTA Se debe considerar que los atmega8 nuevos vienes programados con oscilador interno de 1 MHz.
DIAGRAMA DE FLUJO
PROGRAMA EN BASCOM
'Control_temperatura.BAS '-------------------------------------------------------------------- 'Descripcion: Programa que implementa un control todo o nada con ' histeresis mediante Atmega8. '-------------------------------------------------------------------- $regfile = "m328pdef.dat" ' specify the used micro $crystal = 16000000 ' used crystal frequency $hwstack = 32 $framesize = 16
Dim A As Byte Dim Cont As Byte Cont = 0
Config Portb = Output 'Configura el puerto b como salida
'Configura el timer1 como contador, con preescalador de 1024, 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 se tiene una interrupcion 'Calcular el tiempo de muestro T 'se contara hasta el valor para un T=2s ' 31240=H7A12 'Compare1a = &H7A12 Compare1a = &H7A12 Enable Compare1a 'Habilita la interrupcion por comparacion de timer1 Enable Interrupts 'Habilita las interrupciones en general
Do A = 0 Loop End 'final del programa
'Rutina de interrrupcion (actualizar salida)
Muestreo1: Timer1 = 0 Incr Cont If Cont = 16 Then Cont = 0 End If Portb = Cont