Basic es un lenguaje de programación de alto nivel, este
lenguaje nos proporciona herramientas, fácil de usar al momento de interactuar
con los elementos internos de un microcontrolador, es decir el código necesario
para poder utilizar el Timer, el LCD, el
ADC, el RCT, entre otras herramientas internas que nos proporciona el
microcontrolador, es tan fácil de programar, que cualquier niño lo podría
hacer.
Encendido y Apagado
de un LED
El siguiente proyecto hará que un led se encienda y se apague
con una frecuencia de 1Hz.
Esquema Electrónico:
Programa del Microcontrolador:
Explicación del
programa:
$regfile = M8def.dat
//con esta palabras reservadas del Bascom-AVR configuramos
el tipo de microcontrolador a usar, para este caso el Atmega8.
$crystal = 8000000
//Este comando es para definir el cristal, es decir el
oscilador o nuestra frecuencia de trabajo, para este caso vamos a usar un
cristal de 8 Mhz.
Config PORTB.0 =
Output
//Este comando nos permite configurar si los puertos van a
ser entradas o salidas, para este ejemplo se configura el PIN B0 del
microcontrolador Atmega8, como salida.
Led alias PORTB.0
//con el comando Alias, se pone nombre a los puertos, para
el ejemplo al PIN B0, le estamos dando el nombre de Led.
Led=0
//Esta es una asignación de valor, es decir le estamos dando
el valor de “0 lógico” a la variable Led, que en definitiva es el PIN B0.
Do
Loop
End
//Esta es la parte más importante del programa, pues en el
vamos a escribir todo nuestro programa, en este caso el Bascom-AVR, nos
proporciona un lazo indefinido con la palabra reservada DO. Es decir todo este
comando hace que todo su contenido se repita una u otra vez, es un lazo cerrado
indefinido.
Toggle Led
//El comando Toggle, hace que se invierta el valor de la
variable, o se aplique el complemento de la variable, o más claramente, se
aplica un operación not a la variable que engloba este comando.
Wait 1
//Con este comando, se establece los retardos de tiempo,
para nuestro ejemplo estamos haciendo un retardo de 1 segundo.
ANEXOS.
Anexo 1: Programando
en Bascom-AVR.
Hacemos doble clic en el icono de Bascom-AVR:
Nos aparecerá la siguiente ventana de inicio del inicio del
programa:
Creamos una hoja nueva, para ello nos vamos a la pestaña
FILE:
Le damos clic en new, nos generara una nueva hoja en blanco,
esta nueva hoja tan simple como una hoja de texto nos proporcionara todas las
herramientas necesarias para programar microcontroladores de la fábrica Atmel,
pero utilizaremos para su programación el lenguaje de alto nivel como Basic.
Nos genera el documento en blanco, como se muestra a
continuación:
Así que empecemos a escribir el programa, al final de redactar
todo el programa nos quedara algo así:
Para terminar, debemos de compilar el programa, así que le
damos clic en el icono del chip de color negro o presionamos la tecla F7, nos
presentara la siguiente ventana:
Si no hemos tenidos errores en la escritura, no se
presentara problemas en la compilación.
Para terminar con este anexo para la utilización del
programa Bascom-AVR, solo déjenme mostrarles todos los archivos generados por
el programa después de compilar.
De esta listas los archivos más importantes son los archivos
de extensión “. Bas” y el archivo de
extensión “.hex”, el archivo de extensión .bas, contiene el programa escrito en
Bascom-AVR, este archivo puede ser abierto por Notepad o WordPad.
El otro archivo de extensión .hex, es el más importante a la
hora de pasar el programa escrito en Bascom-AVR hacia el microcontrolador, es
decir el archivo necesario para grabar el microcontrolador.
Anexo 2: Simulaciones en ISIS Profesional 7.7 SP2.
(Proteus).
Dibujamos el esquema presentado en proteus, tal como se
muestra a continuación:
Cargamos es programa hecho en Bascom-AVR, para ello hacemos
doble clic en elemento del microcontrolador Atmega8, nos presentara la
siguiente ventana:
En la sección donde dice: “Program File”, hacemos clic en el
icono de la carpeta abierta, nos abrirá la ventana de examinar, es allí donde
seleccionaremos el archivo de extensión “.hex”, que nos a generado el programa
Bascom-AVR.
Para finalizar de cargar el programa, le damos clic en abrir,
y luego en Ok.
Empezamos a simular nuestro programa, para medir el tiempo
establecido en los cambios de valor, yo he utilizado el Osciloscopio que
incorporar Proteus en sus libreriras par medir dicho tiempo, veamos:
Activando los cursos del Osciloscopio, tomamos las medias:
Veamos que la señal de valor bajo (0 lógico), está activa
por un tiempo de 1 Segundo, en frecuencia seria de 1Hz, lo mismo ocurre con el
valor lógico alto (1 lógico).
NOTA:
Para poder implementar este pequeño ejemplo de programación
hecho en lenguaje Basic para microcontroladores Atmel, debemos añadir al
circuito electrónico una resistencia de 220 Ohmios, a la hora de grabar el
programa al microcontrolador debemos de configurar el reloj a usar que es de
8Mhz, recuerden que el microcontrolador Atmega8, de fábrica viene configurado
con un cristal interno de 1Mhz.
No hay comentarios:
Publicar un comentario