Statistics
| Branch: | Revision:

brix5 / firmware / sliposc / SerialSendMessage / SerialSendMessage.ino @ master

History | View | Annotate | Download (978 Bytes)

1
// vim:ts=2:sw=2:expandtab
2
// OSC Lib Example
3
// messages work fine over slip udp, 
4
// osc bundles likely require tcp stream
5
#include "OSC/OSCMessage.h"
6

    
7
/* Make an OSC message and send it over serial */
8

    
9
#ifdef BOARD_HAS_USB_SERIAL
10
#include <SLIPEncodedUSBSerial.h>
11
SLIPEncodedUSBSerial SLIPSerial( thisBoardsSerialUSB );
12
#else
13
#include <SLIPEncodedSerial.h>
14
 SLIPEncodedSerial SLIPSerial(Serial1);
15
#endif
16

    
17

    
18
void setup() {
19
  //begin SLIPSerial just like Serial
20
  SLIPSerial.begin(9600);   // set this as high as you can reliably run on your platform
21
#if ARDUINO >= 100
22
  while(!Serial)
23
    ; //Leonardo "feature"
24
#endif
25
}
26

    
27

    
28
void loop(){
29
  //the message wants an OSC address as first argument
30
  OSCMessage msg("/analog/0");
31
  msg.add((int32_t)analogRead(0));
32

    
33
  SLIPSerial.beginPacket();  
34
    msg.send(SLIPSerial); // send the bytes to the SLIP stream
35
  SLIPSerial.endPacket(); // mark the end of the OSC Packet
36
  msg.empty(); // free space occupied by message
37

    
38
  delay(20);
39
}