Saludos!!! Seguimos con los ejemplos básicos de la usando la Stellaris y Energia, en esta ocasión utilizaremos una comunicación serial, con el monitor que tiene energia, vamos a mandar letras y cada una de ellas encenderá o apagara los LEDs incluidos en la tarjeta, el código no es nada complejo, configuramos a 9600 baudios, seteamos como salidas los LEDs, en nuestro loop checamos si se recibió un dato y lo almacenamos en una char, a la cual evaluamos con un switch y ejecutamos según sea el caso.
Aquí el código que hace posible esto:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/******************************************************************************* | |
* | |
* Manejo del puerto serie | |
* | |
******************************************************************************* | |
* FileName: LM4F_E003.ino | |
* Processor: EX-LM4F120XL | |
* Complier: Energia 0101e0017 | |
* Author: Pedro Sánchez Ramírez (MrChunckuee) | |
* Blog: http://mrchunckuee.blogspot.com/ | |
* Email: mrchunckuee.psr@gmail.com | |
* Description: Ejemplo basico para el manejo del puerto serial, encender | |
LEDs usando el monitor serial de Energia. | |
******************************************************************************* | |
* Rev. Date Comment | |
* v1.00 14/10/2016 Creación del firmware | |
******************************************************************************/ | |
unsigned char inputByte = 0; // incoming serial byte | |
void setup(){ | |
// start serial port at 9600 bps | |
Serial.begin(9600); | |
pinMode(RED_LED, OUTPUT); | |
pinMode(BLUE_LED, OUTPUT); | |
pinMode(GREEN_LED, OUTPUT); | |
} | |
void loop(){ | |
if (Serial.available() > 0) { | |
inputByte = Serial.read(); // get incoming byte | |
switch(inputByte){ | |
case 'a': | |
digitalWrite(RED_LED,HIGH); | |
Serial.print("LED Rojo encendido\n"); | |
break; | |
case 'b': | |
digitalWrite(RED_LED,LOW); | |
Serial.print("LED Rojo apagado\n"); | |
break; | |
case 'c': | |
digitalWrite(GREEN_LED,HIGH); | |
Serial.print("LED Verde encendido\n"); | |
break; | |
case 'd': | |
digitalWrite(GREEN_LED,LOW); | |
Serial.print("LED Verde apagado\n"); | |
break; | |
case 'e': | |
digitalWrite(BLUE_LED,HIGH); | |
Serial.print("LED Azul encendido\n"); | |
break; | |
case 'f': | |
digitalWrite(BLUE_LED,LOW); | |
Serial.print("LED Azul apagado\n"); | |
break; | |
case 'g': | |
digitalWrite(RED_LED,LOW); | |
digitalWrite(GREEN_LED,LOW); | |
digitalWrite(BLUE_LED,LOW); | |
Serial.print("LEDs apagados\n"); | |
break; | |
default: | |
digitalWrite(RED_LED,LOW); | |
digitalWrite(GREEN_LED,LOW); | |
digitalWrite(BLUE_LED,LOW); | |
break; | |
} | |
} | |
} |
Descargas:
Aquí el enlace directo para DESCARGAR los archivos disponibles, también puedes revisar o descargar la información desde mi repositorio en GitHub, si no sabes como descargarlo puedes checar aquí, bueno por el momento es todo si tienes dudas, comentarios, sugerencias, inquietudes, traumas, etc. dejarlas y tratare de responder lo mas pronto posible.
Donaciones:
Si te gusta el contenido o si los recursos te son de utilidad, comparte el enlace en tus redes sociales o sitios donde creas que puede ser de interés y la otra puedes ayudarme con una donación para seguir realizando publicaciones y mejorar el contenido del sitio. También puedes hacer donaciones en especie, ya sea con componentes, tarjetas de desarrollo o herramientas. Ponte en contacto para platicar, o puedes volverte uno de nuestros sponsors.
Pido una retroalimentación avisando cada que un enlace no sirva o tenga errores al momento de abrirlo, así también si una imagen no se ve o no carga, para corregirlo en el menor tiempo posible.
0 Comentarios