Saludos!!! En esta ocasión y continuando con nuestra serie de publicaciones acerca del MSP430 LauchPad, veremos pequeño ejemplo, claro esta programando en Code Composer Studio, dicho de otra manera sera nuestro "Hola Mundo con el LaunchPad" el circuito es básico para ello usaremos el microcontrolador MSP430G2231 y vamos utilizar los LEDs que vienen incluidos en la tarjeta: LED Verde en P1.6 y LED Rojo en P1.0, aremos que enciendan intercaladamente cada cierto tiempo. El circuito antes mencionada quedaría de la siguiente forma:
La parte del código es sencillo y no hay mucha dificultad en ellos, lo primero sera crear un proyecto nuevo (Si no saber como hacerlo puedes checar nuestra publicación de como hacerlo aquí) y en el archivo main.c incluimos la librería del MSP a usar. Para el retardo haremos un pequeño delay con un ciclo "for" y para alternar el encendido de los LEDS usamos un toggle con "^=". El código usado es el siguiente:
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
/******************************************************************************* | |
* | |
* MSP_004: LED Intermitente | |
* | |
******************************************************************************* | |
* FileName: main.c | |
* Processor: MSP430G2231 | |
* Complier: CCS 6.0.0 | |
* Author: Pedro Sánchez (MrChunckuee) | |
* Blog: http://mrchunckuee.blogspot.com/ | |
* Email: mrchunckuee.psr@gmail.com | |
* Description: Cambia el estado de LED cada cierto tiempo | |
******************************************************************************* | |
* Rev. Date Comment | |
* v1.00 12/02/2015 Creación del firmware | |
******************************************************************************/ | |
#include <msp430g2231.h> | |
volatile unsigned int i=0; | |
void main(void) { | |
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer | |
P1DIR |= BIT6 + BIT0; //LED ROJO(P1.0) y LED VERDE(P1.6) como salida | |
P1OUT &= ~BIT6; //BIT6 en cero, para alternar el encencido en while | |
while(1){ | |
P1OUT ^= BIT0 + BIT6; //Cambiamos el estado de los LEDs | |
//Considerando encendido alternadamente | |
for(i=0; i<50000; i++); //Pequeño retardo con un ciclo for | |
} | |
} |
Descargas:
Aquí el enlace para DESCARGAR los archivos disponibles 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