👥 Autores


Jesús Camarena

🔸 Introducción


Las estructuras iterativas, también conocidas como bucles o loops, son fundamentales en la programación, incluido el lenguaje C, especialmente cuando se trata de programar microcontroladores. Estas estructuras permiten ejecutar un conjunto de instrucciones repetidamente mientras se cumpla una condición especificada.

Tabla de contenido

🔷 Fundamento Teórico


En C, hay tres tipos principales de estructuras iterativas:

🔹 For

La estructura for es ideal para cuando sabemos el número exacto de veces que queremos que se ejecute un bloque de código.

Se compone mediante 3 parámetros

  1. Valor de inicio,
  2. Condición de su valor final
  3. Acción del tipo de cambio del valor
for (valor de inicio; criterio o condicion; tipo de cambio) 
{
	//declaraciones
}

//ejemplo.
for (uint8_t i = 0;i < 7; i++)
{
	//code
}

Ejemplo de un parpadeo de un LED:

6 
{
    PORTB = PORTB | (1 << 5);  // Encender LED en el pin PB5
    _delay_ms(1000);           // Retardo de 1 segundo
    PORTB = PORTB & ~(1 << 5); // Apagar LED en el pin PB5
    _delay_ms(1000);           // Retardo de 1 segundo
}

🔹 While

Es una estructura de control **while**que evalúa una condición y permanece ejecutando de forma indefinida el código dentro de sus llaves, hasta que la condición ya no sea cumplida

👁️ Ejemplo:

Ejemplo de espera activa:

int main() 
{
    // Inicializar condiciones necesarias
    while (1) 
		{
        // Código que se ejecuta indefinidamente
    }
}
while (condicíon a evaluar) 
{
	//declaraciones
}

//ejemplo.
uint8_t i = 0;
while (i < 7)
{
	i++;
}

🔹 Do-While

La estructura do-while asegura que el bloque de código se ejecuta al menos una vez, y luego repite la ejecución mientras la condición sea verdadera.

Funciona de manera similar al WHILE solo que en esta estructura se ejecuta la acción de código una vez sin evaluar el criterio y a partir de la segunda evalúa el código

do
{
	//declaraciones
}
while (condicíon a evaluar) 

//ejemplo.
uint8_t i = 0;
do
{
	i++;
}
while (i < 7)

Ejemplo de uso de do-while para crear un retardo:

int counter = 0;
do 
{
    _delay_ms(1000); // Retardo de 1 segundo
    counter++;
} 
while (counter < 10);

🔹 Break y Continue

Además, las palabras clave break y continue se utilizan dentro de las estructuras de control iterativas para alterar el flujo normal de ejecución.

🔹 for vs while


En términos generales, la elección entre usar un ciclo for o un ciclo while depende del problema específico que se está abordando. En general, se prefiere un ciclo for cuando se sabe cuántas veces se debe repetir una acción, mientras que un ciclo while se utiliza cuando se repite una acción mientras se cumple una condición.

🧠 Ejercicios


❗Véase también


✔️ Referencias


👁️‍🗨️ Otros temas


📚 Tabla de contenido

🗓️ Semana 4 - 📗 Fundamentos de Programación para Microcontroladores

Diagramas de Flujo y Pseudocódigos

Introducción Lenguaje C para microcontroladores

Introducción Lenguaje Assembler para microcontroladores

Ejecución secuencial de instrucciones en un Microcontrolador

Retardos de tiempo

Operadores de desplazamiento (bit shifting)

Práctica N.º02 - Gestión Secuencial de Salidas

🗓️ Semana 5 - 📗 Lectura de entradas y estructuras condicionales

Macros y etiquetas de texto

Operadores lógicos (bit a bit)

Creación y Uso de Funciones en Microcontroladores

Configuración de entradas y puerto paralelo

Sentencias condicionales con operadores lógicos

Práctica N.º03 - Decodificación de Entradas Binarias

🗓️ Semana 6 - 📗 Estructuras iterativas

Tipos de Display

Control de display 7 segmentos

Custom port

Manejo de Arreglos de Datos

Estructuras iterativas en C

Actividad Fundamental N.º02 - Análisis de arquitectura de microprocesadores

🗓️ Semana 7 - 📗Motores de DC y asesorías de medio curso

Sentencias condicionales y lectura de entradas (1)