Diferencia entre revisiones de «Variables»

De ArduWiki
Saltar a: navegación, buscar
(Palabras reservadas)
(Fecha y hora)
(No se muestran 9 ediciones intermedias del mismo usuario)
Línea 41: Línea 41:
 
|}
 
|}
  
=== Numericos ===
+
=== Numéricos ===
 +
* [[char]]
 
* [[byte]]
 
* [[byte]]
 
* [[int]]
 
* [[int]]
 +
* [[unsigned int]]
 
* [[long]]
 
* [[long]]
 +
* [[unsigned long]]
 
* [[float]]
 
* [[float]]
 
* [[double]] - solo [[MEGA]]
 
* [[double]] - solo [[MEGA]]
* [[unsigned int]]
 
 
* [[word]]
 
* [[word]]
* [[unsigned long]]
+
 
 +
=== Fecha y hora ===
 +
* [[time_t]] - TimeLib.h
 +
* [[tmElements_t]] - TimeLib.h
 +
 
 +
{{Nota|Si usas la librería TimeLib.h puedes usar los tipos: '''time_t''' y '''tmElements_t'''}}
  
 
=== Caracteres ===
 
=== Caracteres ===
* [[char]]
 
 
* [[string]] - matriz
 
* [[string]] - matriz
 
* [[String]] - clase
 
* [[String]] - clase
Línea 60: Línea 66:
 
* [[bool]]
 
* [[bool]]
 
* [[void]]
 
* [[void]]
 
== Conversiones ==
 
Cuando requieres convertir un tipo de dato en otro puedes usar estas funciones:
 
* [[char()]]
 
* [[byte()]]
 
* [[int()]]
 
* [[long()]]
 
* [[float()]]
 
* [[word()]]
 
* [[atol()]]
 
* [[atof()]]
 
  
 
== Utilidades ==
 
== Utilidades ==
Línea 78: Línea 73:
  
 
== Calificadores ==
 
== Calificadores ==
En ocaciones es necesario calificar una variable de modo que le indicas en que tipo de memoria deberá ser almacenada: [[flash]], [[RAM]] o [[EPROM]].
+
En ocaciones es necesario calificar una variable de modo que le indicas en que tipo de memoria deberá ser almacenada: [[flash]], [[SRAM]] o [[EEPROM]].
 
* [[const]]
 
* [[const]]
 
* [[static]]
 
* [[static]]
Línea 91: Línea 86:
 
</pre>
 
</pre>
  
{{Nota|Si la matriz en '''multidimencional''' no puede dejar de expresar el segundo vector}}
+
{{Nota|Si la matriz en '''bidimencional''' no puede dejar de expresar el segundo vector}}
  
 
== Palabras reservadas ==
 
== Palabras reservadas ==
Línea 100: Línea 95:
 
* [[LED_BUILTIN]]
 
* [[LED_BUILTIN]]
 
* [[PI]]
 
* [[PI]]
 +
* [[MSBFIRST / LSBFIRST]]
 +
* [[RISING / FALLING]]
  
En el [[IDE]] veras que estas palabras se pintan de color azul si están bien escritas.
+
{{Nota|En el [[IDE]] veras que estas palabras se pintan de color azul si están bien escritas.}}
  
 
== Vea también ==
 
== Vea también ==
 
* [[Estructura]]
 
* [[Estructura]]
 
* [[Funciones]]
 
* [[Funciones]]
 +
 +
== Referencias ==
 +
* [https://aprendiendoarduino.wordpress.com/2017/06/21/arrays-y-strings-2/ Aprendiendo Arduino]
  
 
[[Category:Referencias]]
 
[[Category:Referencias]]

Revisión del 17:29 22 mar 2019

Una variable es una palabra que representa un espacio de memoria que fue reservado expresamente durante su declaracion asignándole un tipo de dato. Al mismo tiempo o posteriormente se puede inicializar con un valor dicha variable.

tipo nombre [= valor];

Alcance o ámbito

Las variables en el lenguaje de programación C++, que usa Arduino, tienen una propiedad llamada ámbito. Esto está en contraste con las primeras versiones de lenguajes de programación como BASIC, donde todas las variable siempre son del tipo global.

  • Una variable global es aquella que puede ser vista por cada función en un boceto. En el entorno Arduino, cualquier variable declarada fuera de una función (por ejemplo, setup(), loop() o función de usuario), es una variable global.
  • Las variables locales solo son visibles para la función en la que están declaradas.

Cuando un boceto comienza a hacerse más grande y complejo, las variables locales son una forma útil de asegurar que cada función tenga acceso a sus propias variables. Esto evita errores de programación cuando una función modifica inadvertidamente variables usadas por otra función.

También es útil a veces declarar e inicializar una variable dentro de un bucle for. Esto crea una variable a la que solo se puede acceder desde dentro de las llaves del bucle for.

Constantes

Tipos de dato

Estos son los tipos de datos que usa Arduino.

Tipos de dato en Arduino
Tipo Ocupa Rango
char 1 byte (8 bits) -128 a 127
byte 1 byte (8 bits) 0 a 255
int 2 byte (16 bits) -32,768 a 32,767
unsigned int o word 2 byte (16 bits) 0 a 65,535
long 4 byte (32 bits) -2,147,483,648 a 2,147,483,647
unsigned long 4 byte (32 bits) 0 a 4,294,967,295
float 4 byte (32 bits) -3.4E38 a 3.4E38

Numéricos

Fecha y hora

Nota: Si usas la librería TimeLib.h puedes usar los tipos: time_t y tmElements_t


Caracteres

Otros

Utilidades

Calificadores

En ocaciones es necesario calificar una variable de modo que le indicas en que tipo de memoria deberá ser almacenada: flash, SRAM o EEPROM.

Matrices

Son un tipo especial de variable múltiple. Puede ser uni o multidimencional.

tipo matriz[] = {valor1, valor2...};
tipo matriz[][n] = {valor11, valor12...},{valor21, valor22...}...;

Nota: Si la matriz en bidimencional no puede dejar de expresar el segundo vector


Palabras reservadas

Estas son palabra reservadas que tiene un significado especial y no pueden ser usadas como nombres de variable:

Nota: En el IDE veras que estas palabras se pintan de color azul si están bien escritas.


Vea también

Referencias