Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of 2014ENE20_XBEETESTROUT by
main.cpp@2:ff11ef31aee5, 2015-11-21 (annotated)
- Committer:
- marlonfulla
- Date:
- Sat Nov 21 22:09:52 2015 +0000
- Revision:
- 2:ff11ef31aee5
- Parent:
- 1:273b1f91d518
Version 2.0 Paper Point-to-point 2015-11-21
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
marlonfulla | 2:ff11ef31aee5 | 1 | /* |
marlonfulla | 2:ff11ef31aee5 | 2 | Este programa realiza el envio de ntransacciones, cada una conteniendo una cantidad de bytes igual a ncaracteres, donde cada |
marlonfulla | 2:ff11ef31aee5 | 3 | uno de ellos corresponde a un caracter que por defecto es la letra A. Entre transacciones existe una pausa de tiempo igual a delay para |
marlonfulla | 2:ff11ef31aee5 | 4 | estudiar el proceso de liberación del buffer de recepción. |
marlonfulla | 2:ff11ef31aee5 | 5 | */ |
marlonfulla | 0:681c5f49ef09 | 6 | #include "mbed.h" |
marlonfulla | 0:681c5f49ef09 | 7 | #include <string> |
marlonfulla | 0:681c5f49ef09 | 8 | |
marlonfulla | 0:681c5f49ef09 | 9 | Serial xbee(USBTX,USBRX); |
marlonfulla | 1:273b1f91d518 | 10 | Timer reloj; |
marlonfulla | 0:681c5f49ef09 | 11 | |
marlonfulla | 2:ff11ef31aee5 | 12 | string caracter,transaccion; |
marlonfulla | 2:ff11ef31aee5 | 13 | int ntransacciones,delay,ncaracteres; |
marlonfulla | 0:681c5f49ef09 | 14 | char read[64]; |
marlonfulla | 1:273b1f91d518 | 15 | int tiempo; |
marlonfulla | 0:681c5f49ef09 | 16 | |
marlonfulla | 0:681c5f49ef09 | 17 | int main() |
marlonfulla | 0:681c5f49ef09 | 18 | { |
marlonfulla | 2:ff11ef31aee5 | 19 | xbee.baud(115200); // se define la velocidad del UART |
marlonfulla | 2:ff11ef31aee5 | 20 | caracter="A"; |
marlonfulla | 2:ff11ef31aee5 | 21 | transaccion=""; //se inicializa el string transaccion |
marlonfulla | 2:ff11ef31aee5 | 22 | |
marlonfulla | 0:681c5f49ef09 | 23 | while(1) { |
marlonfulla | 0:681c5f49ef09 | 24 | |
marlonfulla | 2:ff11ef31aee5 | 25 | xbee.scanf("%s",read); // se lee el puerto |
marlonfulla | 2:ff11ef31aee5 | 26 | ncaracteres=atoi(read); // se solicita el numero de caracteres que se empaquetarán en la transacción |
marlonfulla | 0:681c5f49ef09 | 27 | |
marlonfulla | 2:ff11ef31aee5 | 28 | //se contruye la cadena de caracteres |
marlonfulla | 0:681c5f49ef09 | 29 | for(int s=1; s<=ncharacters ;s++) { |
marlonfulla | 0:681c5f49ef09 | 30 | tira=tira.append(caracter); |
marlonfulla | 0:681c5f49ef09 | 31 | } |
marlonfulla | 0:681c5f49ef09 | 32 | |
marlonfulla | 0:681c5f49ef09 | 33 | xbee.scanf("%s",read); |
marlonfulla | 2:ff11ef31aee5 | 34 | ntransacciones=atoi(read); // se solicita el numero de transacciones |
marlonfulla | 0:681c5f49ef09 | 35 | xbee.scanf("%s",read); |
marlonfulla | 2:ff11ef31aee5 | 36 | delay=atoi(read); // se solicita el tiempo de pausa entre transacciones |
marlonfulla | 0:681c5f49ef09 | 37 | |
marlonfulla | 2:ff11ef31aee5 | 38 | reloj.start(); // se inicia el cronometro |
marlonfulla | 1:273b1f91d518 | 39 | |
marlonfulla | 2:ff11ef31aee5 | 40 | for(int i=1; i<=ntransacciones ;i++) { |
marlonfulla | 2:ff11ef31aee5 | 41 | xbee.printf("%s",transaccion); // se envia la tira |
marlonfulla | 2:ff11ef31aee5 | 42 | wait_us(delay); // espera la pausa entre transacciones |
marlonfulla | 0:681c5f49ef09 | 43 | } |
marlonfulla | 1:273b1f91d518 | 44 | |
marlonfulla | 2:ff11ef31aee5 | 45 | reloj.stop(); |
marlonfulla | 1:273b1f91d518 | 46 | tiempo=reloj.read_us(); |
marlonfulla | 2:ff11ef31aee5 | 47 | xbee.printf("%d",tiempo); // se reporta el tiempo de envio |
marlonfulla | 2:ff11ef31aee5 | 48 | |
marlonfulla | 2:ff11ef31aee5 | 49 | // se reinicia las variables |
marlonfulla | 2:ff11ef31aee5 | 50 | transaccion=""; |
marlonfulla | 2:ff11ef31aee5 | 51 | reloj.reset(); |
marlonfulla | 0:681c5f49ef09 | 52 | |
marlonfulla | 0:681c5f49ef09 | 53 | } |
marlonfulla | 0:681c5f49ef09 | 54 | |
marlonfulla | 0:681c5f49ef09 | 55 | } |