source: rtos_arduino/trunk/arduino_lib/libraries/Ethernet2/examples/UDPSendReceiveString/UDPSendReceiveString.ino@ 136

Last change on this file since 136 was 136, checked in by ertl-honda, 8 years ago

ライブラリとOS及びベーシックなサンプルの追加.

File size: 3.0 KB
Line 
1/*
2 UDPSendReceive.pde:
3 This sketch receives UDP message strings, prints them to the serial port
4 and sends an "acknowledge" string back to the sender
5
6 A Processing sketch is included at the end of file that can be used to send
7 and received messages for testing with a computer.
8
9 created 21 Aug 2010
10 by Michael Margolis
11
12 This code is in the public domain.
13 */
14
15
16#include <SPI.h> // needed for Arduino versions later than 0018
17#include <Ethernet2.h>
18#include <EthernetUdp2.h> // UDP library from: bjoern@cs.stanford.edu 12/30/2008
19
20
21// Enter a MAC address and IP address for your controller below.
22// The IP address will be dependent on your local network:
23byte mac[] = {
24 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED
25};
26IPAddress ip(192, 168, 1, 177);
27
28unsigned int localPort = 8888; // local port to listen on
29
30// buffers for receiving and sending data
31char packetBuffer[UDP_TX_PACKET_MAX_SIZE]; //buffer to hold incoming packet,
32char ReplyBuffer[] = "acknowledged"; // a string to send back
33
34// An EthernetUDP instance to let us send and receive packets over UDP
35EthernetUDP Udp;
36
37void setup() {
38 // start the Ethernet and UDP:
39 Ethernet.begin(mac, ip);
40 Udp.begin(localPort);
41
42 Serial.begin(9600);
43}
44
45void loop() {
46 // if there's data available, read a packet
47 int packetSize = Udp.parsePacket();
48 if (packetSize)
49 {
50 Serial.print("Received packet of size ");
51 Serial.println(packetSize);
52 Serial.print("From ");
53 IPAddress remote = Udp.remoteIP();
54 for (int i = 0; i < 4; i++)
55 {
56 Serial.print(remote[i], DEC);
57 if (i < 3)
58 {
59 Serial.print(".");
60 }
61 }
62 Serial.print(", port ");
63 Serial.println(Udp.remotePort());
64
65 // read the packet into packetBufffer
66 Udp.read(packetBuffer, UDP_TX_PACKET_MAX_SIZE);
67 Serial.println("Contents:");
68 Serial.println(packetBuffer);
69
70 // send a reply, to the IP address and port that sent us the packet we received
71 Udp.beginPacket(Udp.remoteIP(), Udp.remotePort());
72 Udp.write(ReplyBuffer);
73 Udp.endPacket();
74 }
75 delay(10);
76}
77
78
79/*
80 Processing sketch to run with this example
81 =====================================================
82
83 // Processing UDP example to send and receive string data from Arduino
84 // press any key to send the "Hello Arduino" message
85
86
87 import hypermedia.net.*;
88
89 UDP udp; // define the UDP object
90
91
92 void setup() {
93 udp = new UDP( this, 6000 ); // create a new datagram connection on port 6000
94 //udp.log( true ); // <-- printout the connection activity
95 udp.listen( true ); // and wait for incoming message
96 }
97
98 void draw()
99 {
100 }
101
102 void keyPressed() {
103 String ip = "192.168.1.177"; // the remote IP address
104 int port = 8888; // the destination port
105
106 udp.send("Hello World", ip, port ); // the message to send
107
108 }
109
110 void receive( byte[] data ) { // <-- default handler
111 //void receive( byte[] data, String ip, int port ) { // <-- extended handler
112
113 for(int i=0; i < data.length; i++)
114 print(char(data[i]));
115 println();
116 }
117 */
118
119
Note: See TracBrowser for help on using the repository browser.