alonso vallejo
/
lab5_UART
lab5 para curso mbed FIME
main.cpp@0:d91104365a09, 2015-05-24 (annotated)
- Committer:
- Alonso
- Date:
- Sun May 24 04:17:22 2015 +0000
- Revision:
- 0:d91104365a09
lab5 para curso mbed FIME
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Alonso | 0:d91104365a09 | 1 | #include "mbed.h" |
Alonso | 0:d91104365a09 | 2 | /* En esta practica se hace la configuracion para realizar un comunicacion serial por medio |
Alonso | 0:d91104365a09 | 3 | del puerto UART del microcontrolador, se controla el estado del led rgb de la tarjeta |
Alonso | 0:d91104365a09 | 4 | por medio de los comandos que se envien al microcontrolador desde la PC, como se indica: |
Alonso | 0:d91104365a09 | 5 | |
Alonso | 0:d91104365a09 | 6 | - Cuando se teclea "R" se encuende el LED rojo, Cuando se teclea "r" se apagar el led rojo |
Alonso | 0:d91104365a09 | 7 | - Cuando se teclea "V" se encuende el LED verde, Cuando se teclea "v" se apagar el led verde |
Alonso | 0:d91104365a09 | 8 | - Cuando se teclea "A" se encuende el LED azul, Cuando se teclea "a" se apagar el led azul |
Alonso | 0:d91104365a09 | 9 | - Si se teclea cualquier otro caracter, aparece un mensaje indicando que el dato es no es valido |
Alonso | 0:d91104365a09 | 10 | |
Alonso | 0:d91104365a09 | 11 | Se puede visualizar todo a travez de un Terminal serial, en este caso es Tera Term.*/ |
Alonso | 0:d91104365a09 | 12 | |
Alonso | 0:d91104365a09 | 13 | DigitalOut rgb_rojo(PTB18,1);// inicializamos el led rgb rojo con salida digital con estado inicial 1 |
Alonso | 0:d91104365a09 | 14 | DigitalOut rgb_verde(PTB19,1);// inicializamos el led rgb verde con salida digital con estado inicial 1 |
Alonso | 0:d91104365a09 | 15 | DigitalOut rgb_azul(PTD1,1);// inicializamos el led rgb azul con salida digital con estado inicial 1 |
Alonso | 0:d91104365a09 | 16 | |
Alonso | 0:d91104365a09 | 17 | Serial teclado(USBTX,USBRX); // inicializamos el puerto UART del microcontrolador |
Alonso | 0:d91104365a09 | 18 | |
Alonso | 0:d91104365a09 | 19 | int main() |
Alonso | 0:d91104365a09 | 20 | { |
Alonso | 0:d91104365a09 | 21 | teclado.baud(115200); // indicamos la cantidad de baudios en la transferencia |
Alonso | 0:d91104365a09 | 22 | while(1) |
Alonso | 0:d91104365a09 | 23 | { |
Alonso | 0:d91104365a09 | 24 | switch(teclado.getc()) // dependiendo del caracter recivido por el teaclado |
Alonso | 0:d91104365a09 | 25 | { |
Alonso | 0:d91104365a09 | 26 | case 'R': |
Alonso | 0:d91104365a09 | 27 | rgb_rojo = 0; |
Alonso | 0:d91104365a09 | 28 | teclado.printf("Led rojo encendido \r\n"); |
Alonso | 0:d91104365a09 | 29 | break; |
Alonso | 0:d91104365a09 | 30 | case 'r': |
Alonso | 0:d91104365a09 | 31 | rgb_rojo = 1; |
Alonso | 0:d91104365a09 | 32 | teclado.printf("Led rojo apagado \r\n"); |
Alonso | 0:d91104365a09 | 33 | break; |
Alonso | 0:d91104365a09 | 34 | case 'V': |
Alonso | 0:d91104365a09 | 35 | rgb_verde = 0; |
Alonso | 0:d91104365a09 | 36 | teclado.printf("Led verde encendido \r\n"); |
Alonso | 0:d91104365a09 | 37 | break; |
Alonso | 0:d91104365a09 | 38 | case 'v': |
Alonso | 0:d91104365a09 | 39 | rgb_verde = 1; |
Alonso | 0:d91104365a09 | 40 | teclado.printf("Led verde apagado \r\n"); |
Alonso | 0:d91104365a09 | 41 | break; |
Alonso | 0:d91104365a09 | 42 | case 'A': |
Alonso | 0:d91104365a09 | 43 | rgb_azul = 0; |
Alonso | 0:d91104365a09 | 44 | teclado.printf("Led azul encendido \r\n"); |
Alonso | 0:d91104365a09 | 45 | break; |
Alonso | 0:d91104365a09 | 46 | case 'a': |
Alonso | 0:d91104365a09 | 47 | rgb_azul = 1; |
Alonso | 0:d91104365a09 | 48 | teclado.printf("Led azul apagado \r\n"); |
Alonso | 0:d91104365a09 | 49 | break; |
Alonso | 0:d91104365a09 | 50 | |
Alonso | 0:d91104365a09 | 51 | default: |
Alonso | 0:d91104365a09 | 52 | teclado.printf("El dato no es valido \r\n"); |
Alonso | 0:d91104365a09 | 53 | break; |
Alonso | 0:d91104365a09 | 54 | } |
Alonso | 0:d91104365a09 | 55 | } |
Alonso | 0:d91104365a09 | 56 | } |