Diferencia entre revisiones de «unsigned long»

De ArduWiki
Saltar a: navegación, buscar
m
Línea 5: Línea 5:
 
<pre>
 
<pre>
 
unsigned long variable = valor;
 
unsigned long variable = valor;
 +
variable = valorUL;
 
</pre>
 
</pre>
  
 
== Parametros ==
 
== Parametros ==
 
;variable: el nombre de nuestra variable
 
;variable: el nombre de nuestra variable
;valor: el valor que asignamos a la variable
+
;valor: el valor que asignamos a la variable en el rango desde 0 a 4,294,967,295.
 +
;valorUL: mismo rango que anterior pero debe ir forzado con '''UL'''
  
 
== Advertencias ==
 
== Advertencias ==
Nada.
+
* Si sumas 1 al valor maximo que de 4,294,967,295 pasa a 08.
 +
* Si restas 1 al valor minimo que de 0 pasa a 4,294,967,295.
  
 
== Ejemplo ==
 
== Ejemplo ==
 +
Un ejemplo de parpadeo sin usar [[delay()]].
 
<pre>
 
<pre>
 
unsigned long hora=0;
 
unsigned long hora=0;
 
void setup(){
 
void setup(){
   pinMode(13, OUTPUT);
+
   pinMode(LED_BUITIN, OUTPUT);
 
}
 
}
 
void loop(){
 
void loop(){
 
   if (millis() - hora > 500){
 
   if (millis() - hora > 500){
 
       hora = millis();
 
       hora = millis();
       digitalWrite(13, !digitalRead(13));
+
       digitalWrite(LED_BUITIN, !digitalRead(LED_BUITIN));
 
   }
 
   }
 
}
 
}

Revisión del 15:41 22 jun 2018

Descripción

Las variables long sin signo son variables de tamaño extendido para almacenamiento de números y almacenan números de 32 bits (4 bytes). A diferencia de los long estándar no almacenan números negativos, teniendo un rango desde 0 a 4,294,967,295 (2^32 - 1). Alternativamente puede verse declarado como tipo uint32_t, sin embargo funciona exactamente igual.

Sintaxis

unsigned long variable = valor;
variable = valorUL;

Parametros

variable
el nombre de nuestra variable
valor
el valor que asignamos a la variable en el rango desde 0 a 4,294,967,295.
valorUL
mismo rango que anterior pero debe ir forzado con UL

Advertencias

  • Si sumas 1 al valor maximo que de 4,294,967,295 pasa a 08.
  • Si restas 1 al valor minimo que de 0 pasa a 4,294,967,295.

Ejemplo

Un ejemplo de parpadeo sin usar delay().

unsigned long hora=0;
void setup(){
   pinMode(LED_BUITIN, OUTPUT);
}
void loop(){
   if (millis() - hora > 500){
      hora = millis();
      digitalWrite(LED_BUITIN, !digitalRead(LED_BUITIN));
   }
}

Vea también

Referencias