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.
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 | } |