Está en la página 1de 4

Facultad de Informática y Ciencias Aplicadas

Escuela de Informática

Asignatura: Sistemas Digitales

Docente: Ing. Omar Otoniel Flores Cortez

Práctica 4 E3
Tema: DEMO USO DE UN PUERTO SERIAL EN ARDUINO

Alumnos:
López Jiménez, Guillermo Antonio 29-5664-2018
Letona Tobar, Randy Adonis 29-0812-2019
Magaña Torres, Mercedes Iveth 29-3571-2016
Merlos Quijada, Néstor Iván 29-0261-2018
Paz Rivas, Danilo Armando 29-4312-2007

San Salvador, 23 de mayo de 2022


a. Objetivos:

Aprender a realizar sistemas en Arduino que interactúen con el PC por medio


del puerto USB.

b. Procedimientos estudiante:

Actividad previa:

0. Leer y visualizar el material y clase sobre Comunicación Serial


Arduino - Aula Virtual

Actividades a desarrollar:
1. Demostración: en el simulador TinkerCad – Circuits
a. Del documento Comunicacion Serial-USB en Arduino.pdf en
el aula virtual....
b. simular y verifique el funcionamiento del SE del ejemplo
Serial.01 de material de clase Aula Virtual
c. simular y verifique el funcionamiento del SE del ejemplo
Serial.02 de material de clase Aula Virtual
d. simular y verifique el funcionamiento del SE del ejemplo
Serial.03 de material de clase Aula Virtual
e. utilice el circuito del ejemplo anterior, simule y verifique el
funcionamiento del código disponible AQUÍ - tome video
captura del funcionamiento del SE del punto e. (3 corridas del
mismo código con diferentes valores de entrada), y súbala a
YouTube. - incluya nombres del equipo en la simulación

A entregar: un único PDF con:

1. (20%) Investigue y conteste, ¿cuál es el uso de las instrucciones,


Serial.parseInt() y de Serial.parseFloat()?

Serial.parseInt() devuelve el primer número entero válido del buffer serie. Los
caracteres que no sean dígitos (o el signo menos) son ignorados.parseInt()termina
cuando encuentra el primer carácter que no corresponda a un número entero.
Serial.parseFloat() devuelve el primer número válido en coma flotante del buffer serie.
Los caracteres que no sean dígitos (o el signo menos) son ignorados.parseFloat()
termina cuando encuentra el primer carácter que no sea un número en coma flotante.

2. (30%) Basado en la demostración del S.E. del punto (e), conteste:

1. (10%) ¿Qué tipo de Automatismo. es ?

Es de tipo serial y se comunica por medio de la tarjeta Arduino a través


de su capacidad de comunicación mediante del puerto USB dispuesto en
ella, esta comunicación es bidireccional y de tipo Serie, y sirve para dos
propósitos, el principal es permitir la descarga del Sketch desde el Arduino
IDE hacia la memoria del Microcontrolador, y la segunda es la transferencia
de información desde el propio Sketch hacia la computadora, ya sea para
visualizar datos producidos por el Arduino o enviar información de
configuración o funcionamiento hacia un Sketch.

Para poder utilizar en los sketches de este tipo de comunicación se hace


uso de un elemento del lenguaje Arduino llamado Serial, se debe conocer
entonces las funciones derivadas de Serial para poder realizar con Arduino
el envío o recepción de datos desde y hacia una PC.

2. (10%) Investigue: Para qué sirve la función Serial.readString()?

Serial.readString () lee caracteres del búfer serial en una cadena. La


función se anula si se acaba el tiempo de espera. Cabe destacar que el
monitor serial "convierte" a su equivalente ASCII todo carácter enviado
hacia Arduino, esto quiere decir que el Sketch Arduino deberá reconvertir
o trabajar con códigos ASCII de los caracteres alfanuméricos, recordando
que el lenguaje Arduino reconoce caracteres en código ASCII con la
sintaxis, entre comillas simple: 'x'.

readString() lee caracteres de un stream y los escribe en un string.


setTimeout() sirve para establecer el tiempo de espera de la función
Serial.readString(). Esta función forma parte de la clase Stream y es
llamada por cualquier clase que herede de Stream (Wire, Serial, etc).

3. Serial.parseInt() devuelve el primer número entero válido del buffer


serie. Los caracteres que no sean dígitos (o el signo menos) son
ignorados.parseInt()termina cuando encuentra el primer carácter
que no corresponda a un número entero.
4. Serial.parseFloat() devuelve el primer número válido en coma
flotante del buffer serie. Los caracteres que no sean dígitos (o el
signo menos) son ignorados.parseFloat() termina cuando
encuentra el primer carácter que no sea un número en coma
flotante.

5. (10%) analice el código de la demostración (del codigo del literal e),


deduzca y explique, ¿que realiza en el código la línea de
instrucción while(Serial.available()==0) { }?

Como pueden ver las instrucciones while (Serial.available() == 0) {}; no


permiten hacer nada mas hasta que se llene el registro de datos o buffer de
transmisión

Serial.available(): devuelve el número de bytes-caracteres-disponibles para ser


leído que provienen a través del canal serie (vía USB o vía pines Rx/Tx). Estos
bytes ya han llegado al Microcontrolador y permanecen almacenados
temporalmente en una pequeña memoria o buffer de 64 bytes. Si no hay bytes
para leer, esta instrucción devolverá 0.

3. (50%) Enlace de su video – literal e

También podría gustarte