mirror of
https://github.com/arduino/Arduino.git
synced 2025-03-01 23:29:28 +01:00
Merge branch 'ide-1.5.x-discovery' into dev-ide-1.5.x-discovery
This commit is contained in:
commit
21ccdd0a96
@ -1,4 +1,5 @@
|
|||||||
|
|
||||||
|
#include <Bridge.h>
|
||||||
#include <HttpClient.h>
|
#include <HttpClient.h>
|
||||||
|
|
||||||
void setup() {
|
void setup() {
|
||||||
|
BIN
hardware/arduino/avr/libraries/Bridge/examples/TemperatureWebPanel/.DS_Store
vendored
Normal file
BIN
hardware/arduino/avr/libraries/Bridge/examples/TemperatureWebPanel/.DS_Store
vendored
Normal file
Binary file not shown.
@ -0,0 +1,121 @@
|
|||||||
|
/*
|
||||||
|
Temperature web interface
|
||||||
|
|
||||||
|
This example shows how to serve data from an analog input
|
||||||
|
via the Arduino Yún's built-in webserver using the Bridge library.
|
||||||
|
|
||||||
|
The circuit:
|
||||||
|
* TMP36 temperature sensor on analog pin A1
|
||||||
|
* SD card attached to SD card slot of the Arduino Yún
|
||||||
|
|
||||||
|
Prepare your SD card with an empty folder in the SD root
|
||||||
|
named "arduino" and a subfolder of that named "www".
|
||||||
|
This will ensure that the Yún will create a link
|
||||||
|
to the SD to the "/mnt/sd" path.
|
||||||
|
|
||||||
|
In this sketch folder is a basic webpage and a copy of zepto.js, a
|
||||||
|
minimized version of jQuery. When you upload your sketch, these files
|
||||||
|
will be placed in the /arduino/www/TemperatureWebPanel folder on your SD card.
|
||||||
|
|
||||||
|
You can then go to http://arduino.local/sd/TemperatureWebPanel
|
||||||
|
to see the output of this sketch.
|
||||||
|
|
||||||
|
You can remove the SD card while the Linux and the
|
||||||
|
sketch are running but be careful not to remove it while
|
||||||
|
the system is writing to it.
|
||||||
|
|
||||||
|
created 6 July 2013
|
||||||
|
by Tom Igoe
|
||||||
|
|
||||||
|
|
||||||
|
This example code is in the public domain.
|
||||||
|
|
||||||
|
*/
|
||||||
|
#include <Bridge.h>
|
||||||
|
#include <YunServer.h>
|
||||||
|
#include <YunClient.h>
|
||||||
|
|
||||||
|
// Listen on default port 5555, the webserver on the Yun
|
||||||
|
// will forward there all the HTTP requests for us.
|
||||||
|
YunServer server;
|
||||||
|
String startString;
|
||||||
|
long hits = 0;
|
||||||
|
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
|
||||||
|
// Bridge startup
|
||||||
|
pinMode(13,OUTPUT);
|
||||||
|
digitalWrite(13, LOW);
|
||||||
|
Bridge.begin();
|
||||||
|
digitalWrite(13, HIGH);
|
||||||
|
|
||||||
|
// using A0 and A2 as vcc and gnd for the TMP36 sensor:
|
||||||
|
pinMode(A0, OUTPUT);
|
||||||
|
pinMode(A2, OUTPUT);
|
||||||
|
digitalWrite(A0, HIGH);
|
||||||
|
digitalWrite(A2, LOW);
|
||||||
|
|
||||||
|
// Listen for incoming connection only from localhost
|
||||||
|
// (no one from the external network could connect)
|
||||||
|
server.listenOnLocalhost();
|
||||||
|
server.begin();
|
||||||
|
|
||||||
|
// get the time that this sketch started:
|
||||||
|
Process startTime;
|
||||||
|
startTime.runShellCommand("date");
|
||||||
|
while(startTime.available()) {
|
||||||
|
char c = startTime.read();
|
||||||
|
startString += c;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
// Get clients coming from server
|
||||||
|
YunClient client = server.accept();
|
||||||
|
|
||||||
|
// There is a new client?
|
||||||
|
if (client) {
|
||||||
|
// read the command
|
||||||
|
String command = client.readString();
|
||||||
|
command.trim(); //kill whitespace
|
||||||
|
Serial.println(command);
|
||||||
|
// is "temperature" command?
|
||||||
|
if (command == "temperature") {
|
||||||
|
|
||||||
|
// get the time from the server:
|
||||||
|
Process time;
|
||||||
|
time.runShellCommand("date");
|
||||||
|
String timeString = "";
|
||||||
|
while(time.available()) {
|
||||||
|
char c = time.read();
|
||||||
|
timeString += c;
|
||||||
|
}
|
||||||
|
Serial.println(timeString);
|
||||||
|
int sensorValue = analogRead(A1);
|
||||||
|
// convert the reading to millivolts:
|
||||||
|
float voltage = sensorValue * (5000/ 1024);
|
||||||
|
// convert the millivolts to temperature celsius:
|
||||||
|
float temperature = (voltage - 500)/10;
|
||||||
|
// print the temperature:
|
||||||
|
client.print("Current time on the Yún: ");
|
||||||
|
client.println(timeString);
|
||||||
|
client.print("<br>Current temperature: ");
|
||||||
|
client.print(temperature);
|
||||||
|
client.print(" degrees C");
|
||||||
|
client.print("<br>This sketch has been running since ");
|
||||||
|
client.print(startString);
|
||||||
|
client.print("<br>Hits so far: ");
|
||||||
|
client.print(hits);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Close connection and free resources.
|
||||||
|
client.stop();
|
||||||
|
hits++;
|
||||||
|
}
|
||||||
|
|
||||||
|
delay(50); // Poll every 50ms
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,16 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<script type="text/javascript" src="zepto.min.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function refresh() {
|
||||||
|
$('#content').load('/arduino/temperature');
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body onload="setInterval(refresh, 1000);">
|
||||||
|
<span id="content">0</span>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
2
hardware/arduino/avr/libraries/Bridge/examples/TemperatureWebPanel/www/zepto.min.js
vendored
Executable file
2
hardware/arduino/avr/libraries/Bridge/examples/TemperatureWebPanel/www/zepto.min.js
vendored
Executable file
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user