Diferencias
Muestra las diferencias entre dos versiones de la página.
Próxima revisión | Revisión previa | ||
doc:tec:elo:uc_arduino:proteus_serie:inicio [2025/03/18 09:54] – creado euloxio | doc:tec:elo:uc_arduino:proteus_serie:inicio [2025/03/27 11:10] (actual) – [Lectura de datos en el programa] euloxio | ||
---|---|---|---|
Línea 1: | Línea 1: | ||
+ | ====== Uso del terminal serie virtual en Proteus y Arduino ====== | ||
+ | * Sirve para enviar datos de los sensores al ordenador o para enviar comandos del PC al Arduino. | ||
+ | * También puede ser útil para depurar programas, observando el valor de ciertas variables que nos interesen. | ||
+ | * Importante: Si la comunicación serie está activada, no se pueden usar los pines '' | ||
+ | \\ | ||
+ | ===== Configuración en el Proteus 8.11 ===== | ||
+ | |||
+ | <image shape=" | ||
+ | \\ | ||
+ | * Si no apareciera la ventana del terminal durante la simulación, | ||
+ | \\ | ||
+ | ===== Previa configuración del terminal serie ===== | ||
+ | |||
+ | * En '' | ||
+ | \\ | ||
+ | ===== Envío de datos en el programa ===== | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | * Si la transmisión es muy rápida podemos poner un '' | ||
+ | * Ejemplo < | ||
+ | |||
+ | // Programa para escribir algo a través del terminal serie | ||
+ | void setup() { | ||
+ | // Configuración del puerto serie | ||
+ | Serial.begin(9600); | ||
+ | } | ||
+ | void loop () { | ||
+ | // Envío de datos | ||
+ | Serial.println(" | ||
+ | delay(400); | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | \\ | ||
+ | ===== Lectura de datos en el programa ===== | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | * Ejemplo < | ||
+ | |||
+ | // Programa para recibir algo a través del terminal serie | ||
+ | // Declaración de variables | ||
+ | int mensaje=0; // Almacenará el código ASCII del caracter recibido | ||
+ | void setup() { | ||
+ | // Configuración del puerto serie | ||
+ | Serial.begin(9600); | ||
+ | } | ||
+ | void loop () { | ||
+ | if(Serial.available() > 0) | ||
+ | { | ||
+ | // Terminal serie disponible | ||
+ | // Se almacena el código ASCII recibido | ||
+ | mensaje=Serial.read(); | ||
+ | // Se visualiza el código ASCII del caracter | ||
+ | Serial.print(" | ||
+ | Serial.println(mensaje); | ||
+ | // Se visualiza el caracter recibido | ||
+ | Serial.print(" | ||
+ | Serial.write(mensaje); | ||
+ | Serial.println(); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | \\ | ||
+ | ===== Resumen ===== | ||
+ | |||
+ | **Previa configuración del terminal serie** | ||
+ | * En '' | ||
+ | |||
+ | **Envío de datos en el programa** | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | **Lectura de datos en el programa** | ||
+ | * '' | ||
+ | * '' | ||
+ | \\ | ||
+ | ===== Consulta ===== | ||
+ | |||
+ | <WRAP center round help> | ||
+ | |||
+ | {{ico: | ||
+ | |||
+ | - [[https:// | ||
+ | |||
+ | {{: | ||
+ | |||
+ | |||
+ | |||
+ | <TEXT align=" | ||
+ | |||
+ | < | ||
+ | < | ||
+ | |||
+ | [[https:// | ||
+ | {{ youtube> | ||
+ | \\ | ||
+ | </ | ||
+ | < | ||
+ | |||
+ | [[https:// | ||
+ | {{ youtube> | ||
+ | \\ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | </ | ||
+ | \\ |