Solicitando la versión china de BASCOM-AVR
Cuando hablamos de BASCOM-AVR, primero debemos comenzar con BASIC. El lenguaje BASIC es un código de instrucción simbólico universal para principiantes. Es muy parecido al lenguaje humano, como el inglés, fácil de aprender y fácil de recordar. El lenguaje QBASIC es un producto desarrollado por Microsoft. No es del origen BASIC correcto. Es muy similar al BASIC original, pero sus poderosas funciones son difíciles de lograr para la primera generación de BASIC. Se convirtió en el estándar BÁSICO de facto. Visual Basic es un producto de Microsoft en los últimos años. Creo que todos los que nunca lo han aprendido deben haber oído hablar mucho de él, ¿verdad? No me atrevo a decir más sobre esto porque nunca lo he aprendido. La sintaxis del compilador BASCOM-AVR es altamente compatible con los lenguajes QB y VB de Microsoft. Tiene una interfaz amigable, simulación incorporada, control de descarga y otras funciones. Integra muchas declaraciones poderosas comunes y prácticas para los recursos únicos del microcontrolador, como declaraciones LCD, varias declaraciones de interfaz de comunicación, etc. Por supuesto, cualquier software tiene sus aspectos insatisfactorios, y BASCOM-AVR no es una excepción. Es un software gratuito y su versión gratuita solo puede generar código menor que 4K, pero el código 4K es muy útil para aprender microcontroladores AVR y controlar ATmega48. ATtiny26, ATtiny13 y otros chips son más que suficientes y también tienen errores de software comunes. Sin embargo, siempre que tengas el coraje de descubrir y pensar, también puedes diseñar un programa satisfactorio. Dicho esto, mi comprensión de BASCOM es sólo un poco, y más detalles esperan que todos lo descubran y apliquen continuamente.
Mencione también BASCOM-8051, que es un producto de la misma empresa que BASCOM-AVR. Son básicamente iguales en muchos aspectos, porque algunos modelos de 51 microcontroladores son más pequeños que los microcontroladores AVR. ventaja de precio, y muchos entusiastas han entrado en contacto con el microcontrolador 51, por lo que no deja de ser beneficioso conocer BASCOM-8051.
Escribamos el ejemplo más simple a continuación, que consiste en dejar que el pin 'PC5' del microcontrolador ATmega88 controle el LED y parpadee continuamente con una frecuencia de 1 Hz. En primer lugar, la fuente de oscilación del nuevo. ATmega88 comprado es el predeterminado. El circuito de oscilación RC interno tiene una frecuencia de 1 MHz. Solo necesitamos conectar el chip a la fuente de alimentación de 5 V. El pin 28 se puede conectar al polo positivo o negativo del LED, pero el otro pin de. el LED debe conectarse al polo negativo o positivo correspondiente de la fuente de alimentación. Otros Es suficiente dejar el pin en el aire. Sin embargo, es mejor conectar una resistencia limitadora de corriente de 100 ~ 1 K en serie con el LED. El siguiente es el código detallado:
' *************** ******************** ******************************* *******************
' El pequeño punto en superíndice en el extremo izquierdo indica que el texto detrás de él es una declaración de comentario. No se genera código durante la compilación hasta que se cambia la línea.
' Nota. utilice signos de puntuación en inglés para todos los códigos de declaración
' ********************** ************* ************************************** ***********
' www.avrdiy.com
' Última modificación: 2006-02-20
' Software compilador: BASCOM-AVR 1.11.8.1
' Descripción del software: Comenzando con el primer ejemplo: LED parpadeante
' ************* ************* ************************************** *********** *******
$regfile = "m88def.dat" 'Define el microcontrolador de destino como ATmega88
$crystal = 1000000 'Define el ciclo de reloj del microcontrolador como 1000000Hz
DDRC.5 = 1 'Definir el puerto PC5 como salida
Led: 'Etiqueta de línea de declaración, seguida de dos puntos, en la etiqueta del compilador. Puedes ver la columna Etiqueta p>
PORTC.5 = 1 'Define el puerto PC5 para salida de alto nivel
Waitms 500 'Espera 500 ms segundos
PORTC.5 = 0 'Define el nivel de PC5 puerto de salida
Waitms 500
Goto Led ' Transferir incondicionalmente a la etiqueta Led para continuar ejecutándose
End ' End es el final de la Declaración del programa principal p>
No importa si no tiene una herramienta para probar a mano. También podemos ver los resultados de la simulación en ejecución en la interfaz de simulación del software.
Primero, ejecutemos el programa BASCOM-AVR y copiemos el código anterior a la ventana compilada. La interfaz es la siguiente:
Figura 1
Luego haga clic en el botón compilar y guardar. Aparecerá la opción de ubicación Supongamos que lo guardamos en la carpeta "LED intermitente" con el nombre noname1, como se muestra en la figura:
Figura 2
Después de seleccionar guardar, aparecerá lo siguiente. Aparecerá la pantalla:
Figura 3
Si se pasa correctamente, el software no mostrará ningún otro mensaje y volverá a la interfaz principal. Luego podremos ver en la carpeta que noname1. Se ha generado el archivo hexadecimal. Este es el archivo que queremos programar, el archivo que determina el tamaño del código final es el archivo noname1.bin.
Ahora abramos la ventana de simulación, haga clic en el botón de simulación de software, aparecerá la siguiente ventana, haga clic en el botón verde "LCD" y en el botón que parece un teclado, luego haga clic en el botón triangular de ejecución. Mire, ¿está parpadeando la luz roja en el puerto PC5 del microcontrolador?
Figura 4
Bien, ahora deberíamos tener una comprensión preliminar de BASCOM-AVR, ¿verdad? Sin embargo, mucha gente dice que deberíamos usar menos declaraciones goto, por lo que podemos escribir el siguiente código:
$regfile = "m88def.dat" ' Definir el microcontrolador de destino como ATmega88
$crystal = 1000000 ' Definir el ciclo de reloj del microcontrolador como 1000000Hz
DDRC.5 = 1 ' Definir el puerto PC5 como salida
Hacer
PORTC.5 = 1 ' Definir nivel alto de salida del puerto PC5
Waitms 500 'Esperar 500 ms segundos
PORTC.5 = 0 'Definir el nivel de salida por puerto PC5
Waitms 500
Loop
End ' End es la declaración final del programa principal
Maldita sea, ni siquiera sabía que habías aprendido a programar... .