INSTRUCCIONES B SICAS DE BASCOM AVR
$regfile
Esta instrucción va siempre al inicio de cualquier proyecto que
realicemos, ya que es la encargada de direccionar el respectivo
microcontrolador que vamos a usar.
Por ejemplo:
Atmega 8: $regfile=”m8def.dat”
Atmega 16: $regfile=”m16def.dat”
Atmega 32: $regfile=”m32def.dat”
$crystal
Esta instrucción va especificar la frecuencia de oscilación con laque va
a funcionar el microcontrolador.
Por ejemplo:
$crystal=1000000 para 1MHZ
$crystal=4000000 para 4MHZ
$crystal=8000000 para 8MHZ
Config
Esta instrucción especifica la configuración de un pin, un puerto o un
dispositivo, ya que pueden ser configuradas como entrada o salida de
datos.
Por ejemplo:
Config portb=output Puerto B como salida
Config pina.0=input
Pin A.0 como entrada
Config lcd=16*2LCD de 16 caracteres y 2 líneas
Wait,waitms,waitus
Esta instrucción sirve para crear un retardo, ya sea en segundos,
milisegundos y microsegundos respectivamente.
Por ejemplo:
Wait 3
Espera 3 segundos
Waitms 7
Espera 7 milisegundo
Waitus 500
Espera 500 microsegundos
Do-loop
Esta instrucción es un lazo cerrado, en el cual se ejecuta un conjunto
de instrucciones de forma indefinida.
DoInstrucciones
Loop
Do-loop until
Es un lazo definido por la condición de una variable que está dentro del
lazo, la cual define cuando termina de ejecutarse el conjunto de
instrucciones.
Por ejemplo:
Do
A=A+1
Loop until A =10 termina el lazo cuando A=10
Toggle
Este comando sirve para complementar el estado anterior de alguna
variable o pin de algún puerto.
Por ejemplo:
Toggle portb.0
complementa elportb.0
Dim
Dim sirve para dimensionar el tipo de variable que se va utilizar, entre
los tipos de variables están los siguientes:
TIPO
DIMENSION
BIT
0-1
BYTE
0 a 255
WORD
0 a 65535
LONG
-2147483648 a 2147483647
INTEGER
-32768 a 32767
SINGLE
1.5
a 3.4
STRING
CADENA DE CARACTERES MAXIMO 254
ARRAY
MATRIZ 65535
DOUBLE
5.0*
a 1.7*
DIM var as tipo
Ejemplo: DIM A as byte
Alias
Sirve para dar unnombre general dentro de un proyecto ya sea un
puerto o un pin de un puerto.
Ejemplo:
Foco Alias portb.0
El portb.0 ahora se llama el foco
Declare sub nombre ( )
Sirve para declarar subrutinas que en el programa principal, se las
llamara con la instrucción CALL nombre.
Goto
Salto incondicional a una etiqueta.
Gosub
Llama a una subrutina. La subrutina debe escribirse después de END y
terminar conla instrucción RETURN.
SET,RESET
Pone a “1L”y “0L” respectivamente un pin de salida
Ejemplo: SET PORTD.0 pone a uno el pind.0
Incr
Incrementa en una unidad una variable.
Ejemplo: Incr x
IF-THE; ELSE
Son sentencias condicionales, las cuales responden a un estado de
voltaje (0L, 1L), de contenido (caracteres), etc.
IF (condición) THEN
Instrucción1
ELSE
Instruccion2
END IF
FOR-NEXT
Soninstrucciones de repetición, ya que ejecutan un conjunto de
instrucciones, dependiendo de una variable incremental dentro del
lazo.
FOR var=val_inicial to val_final
Instrucciones (mientras val_inicial ≤ var ≤ val_final)
Next var
WHILE –WEND
Lazo de repetición con el cumplimiento de una condición.
Var
While
Instrucciones si condición es verdadera
Wend
SELECT –CASE
Son sentencias que sepueden ejecutar, dependiendo del estado de
una variable de selección. Nos sirve para realizar diferentes acciones
en función del valor de una variable, en nuestro caso, el valor leído por
el puerto de entrada.
Var
Select case var
Case1: instrucción 1
Case2: instrucción 2
……..
Case else: instrucciones otros casos
End select
SIMBOLOS Y OPERADORES
Dentro de los operadores, pueden utilizarse losmatemáticos, de
relación y lógicos. Además se deben tomar en cuenta que Bascom nos
permite realizar operaciones únicamente con dos variables a la vez.
A continuación podremos observar los operadores más comunes.
Operadores matemáticos
Suma: a =b+c
Resta: a =b-c
Multiplicación: a=b*c
División: x=a \ b
Residuo= a MOD b
Operadores de relación
= igual x=y
<> No es igual x<>y
< Menor que x
Regístrate para leer el documento completo.