Advertisement
Villalba2006

POST_51_Receptor

Nov 28th, 2016
38,970
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.21 KB | None | 0 0
  1. /*  TITULO: Comunicación serie entre dos Arduinos - Receptor_serie_RX
  2.  
  3.     AUTOR:
  4.    
  5.     MARIANO DEL CAMPO GARCÍA (@2016) --> INGENIERO TÉCNICO INDUSTRIAL ESPECIALIDAD ELECTRÓNICA
  6.     - FACEBOOK: https://www.facebook.com/mariano.delcampogarcia
  7.     - TWITTER: https://twitter.com/MarianoCampoGa
  8.     - CORREO: marianodc83@gmail.com
  9.    
  10.    
  11.     DESCRIPCIÓN DEL PROGRAMA
  12.    
  13.     Programa que recibe un carácter a través del puerto serie "mySerial" creado por software:
  14.     - Si el carácter recibido es "H" se enciende el LED (pulsador presionado).
  15.     - Si el carácter recibido es "L" se apaga el LED (pulsador no presionado).
  16.    
  17.    
  18.     ESQUEMA DE CONEXION
  19.    
  20.                                       +-----+
  21.          +----[PWR]-------------------| USB |--+
  22.          |                            +-----+  |
  23.          |         GND/RST2  [ ][ ]            |
  24.          |       MOSI2/SCK2  [ ][ ]  A5/SCL[ ] |    
  25.          |          5V/MISO2 [ ][ ]  A4/SDA[ ] |    
  26.          |                             AREF[ ] |
  27.          |                              GND[ ] |
  28.          | [ ]N/C                    SCK/13[ ] |  
  29.          | [ ]IOREF                 MISO/12[ ] |  
  30.          | [ ]RST                   MOSI/11[ ]~|  
  31.          | [ ]3V3    +---+               10[ ]~|   Pin TX del "Arduino Emisor"
  32.          | [ ]5v    -| A |-               9[ ]~|  
  33.          | [ ]GND   -| R |-               8[ ] |  
  34.          | [ ]GND   -| D |-                    |
  35.    +5V   | [ ]Vin   -| U |-               7[ ] |  
  36.          |          -| I |-               6[ ]~|  
  37.          | [ ]A0    -| N |-               5[ ]~|   LED(+)
  38.          | [ ]A1    -| O |-               4[ ] |  
  39.          | [ ]A2     +---+           INT1/3[ ]~|  
  40.          | [ ]A3                     INT0/2[ ] |  
  41.          | [ ]A4/SDA  RST SCK MISO     TX>1[ ] |  
  42.          | [ ]A5/SCL  [ ] [ ] [ ]      RX<0[ ] |  
  43.          |            [ ] [ ] [ ]              |
  44.          |  UNO_R3    GND MOSI 5V  ____________/
  45.           \_______________________/
  46.  
  47.   NOTAS:
  48.    - Cátodo(-) del LED (pata más corta) a GND a través de una R=220 omhs.
  49.    - Este Arduino se alimenta conectando el pin "Vin" a los +5V del "Arduino Emisor".
  50.    - Las masas de los dos Arduinos tienen que estar unidas entre sí.
  51.    
  52. */
  53.  
  54.   // Incluimos la librería
  55.   #include <SoftwareSerial.h>
  56.  
  57.   const int LED = 5;  // Pin digital para el LED
  58.   char estado;
  59.  
  60.   // Declaro un nuevo puerto para la comunicación serie
  61.   SoftwareSerial mySerial(10, 11); // RX, TX
  62.  
  63.   void setup()
  64.   {
  65.     mySerial.begin(9600); // Comienzo de la comunicación serie
  66.     pinMode(LED, OUTPUT);   // Pin digital 5 como salida
  67.   }
  68.  
  69.   void loop()
  70.   {
  71.     // Si por el puerto serie llegan datos (RX)
  72.     if (mySerial.available())
  73.     {          
  74.       // Almaceno el carácter que llega por el puerto serie (RX)
  75.       estado = mySerial.read();  
  76.      
  77.       // Si es una 'H'
  78.       if (estado == 'H')          
  79.       {
  80.         // Enciendo el LED (nivel ALTO)
  81.         digitalWrite(LED, HIGH);        
  82.       }
  83.      
  84.       // Si es una 'L'
  85.       if (estado == 'L')          
  86.       {
  87.         // Apago el LED (nivel BAJO)
  88.         digitalWrite(LED, LOW);        
  89.       }
  90.     }
  91.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement