daten.html
// AD-Werte
"CO2=%VA@04\r\n"
"Temperatur=%VA@05\r\n"
"Luftfeuchte=%VA@06\r\n"
"AD3=%VA@07\r\n"
"PORTA=%VA@11\r\n"
"PORTB=%VA@12\r\n"
"PORTC=%VA@13\r\n"
"PORTD=%VA@14\r\n"
"%END"};
// AD-Werte
"AD1=%VA@04\r\n"
*/
// Funktion zum Auslesen der Daten aus einer Webpage
function getAVRNetIOValue($id) {
$value = NULL;
error_reporting(0);
$avr_net_io = fopen("http://xxx.xxx.xxx.xxx/daten.html", "r") or die("Die Werte des AVR-NET-IO konnten nicht ermittelt werden!
Der AVR-NET-IO ist offline!"); //Hier IP des Boards eintragen
if ($avr_net_io!=false) {
while ( ($data = fgetcsv($avr_net_io, 1000, "=")) !== FALSE ) {
$num = count($data);
$row++;
if ($data[0] == $id) {
$value = $data[1];
}
}
fclose($avr_net_io);
}
return $value;
}
// Analoge Werte
$Wohnzimmer Temperatur = getAVRNetIOValue("Wohnzimmer Temperatur");
$Wohnzimmer Temperatur = $Wohnzimmer Temperatur / 10;
/*$Luftfeuchte = getAVRNetIOValue("Luftfeuchte");
$Luftfeuchte = $Luftfeuchte /10;
$AD3 = getAVRNetIOValue("AD3");*/
/*// Binäre Zustände am Beispiel des Ports C
$PORTC = getAVRNetIOValue("PORTC");
$PC0 = ($PORTC & 1) !=0; // Falls das Ergebnis der UND(&)-Verknüpfung mit der Bitmaske(00000001) ungleich null (!=0) ist, erhält Variable $PC0 den Wert 1
$PC1 = ($PORTC & 2) !=0;
$PC2 = ($PORTC & 4) !=0;
$PC3 = ($PORTC & 8) !=0;
$PC4 = ($PORTC & 16) !=0;
$PC5 = ($PORTC & 32) !=0;
$PC6 = ($PORTC & 64) !=0;
$PC7 = ($PORTC & 128)!=0;
// Kontrollausgaben (können weggelassen werden))
echo "Kontrollausgabe:
";
$PORTCBIN = decbin($PORTC);
echo "PORTC = $PORTC, also Binär: $PORTCBIN
";
echo "PORTC0 = $PC0
";
echo "PORTC3 = $PC3
";
echo "Auslesen der AVR Werte erfolgreich!
";*/
/* Verbindung zu mySQL aufbauen, Auswählen einer Datenbank */
$link = mysql_connect("localhost", "root", "xxxxx") // root: MySql Benutzername xxxx: MYSQL Passwort
or die("Keine Verbindung möglich: " . mysql_error() . "
");
echo "Verbindung zum Datenbankserver erfolgreich.
";
mysql_select_db("avrio") or die("Auswahl der Datenbank fehlgeschlagen
");
/* Erstellen der SQL Anfrage */
$query = "INSERT INTO avrdat (dattim, Temperatur Wohnzimmer) values ";
$query = $query . "(now(),'$Temperatur Wohnzimmer')";
/* Ausführen der SQL Anfrage */
$result = mysql_query($query) or die("Anfrage:\n\n$query\n\nfehlgeschlagen: " . mysql_error() . "\n");
echo "Daten wurden in Datenbank geschrieben.
";
/* schliessen der mySQL Verbinung */
mysql_close($link);
echo "Verbindung zum Datenbankserver abgebaut.
";
?>