Inbäddad webbserver med Tiva ansluten Launchpad (1 / 3 steg)
Steg 1: Webbserverprogrammet
Som ni vet servrar är stora och dyra system. Detta är servera oss webb-platser, Audio, video, filer etc. Jämföra web servrar launchpad är egentligen enkel. Med launchpad tjäna inte vi så komplexa och funktionella webbplatser eller filer. Vi bryr oss inte det eftersom vi bara vill kontrollera elektriska enheter och mäta vissa kvantiteter över internet.
I detta sammanhang gjorde jag enkel webbplats. Du kan se skärmdump av webbplatsen ovan.
Som ni se webbplats är en mycket enkel. Den har bara några texter, knappar och geometriska drar. Launchpad har en fyra lysdioder och två tryckknappar för allmänna ändamål användning. På webbplatsen jag använde knappar att styra lysdioder och fyllda cirklar för att se lysdioder och knappar situationer. Textelement används för att ge information. Du kan se JavaScript kod på webbplatsen nedan.
< p > var led1, x 1, led2, x 2, led3, x 3, led4, x 4; < br > funktion GetSwitchState()
{
NoCache = led1 + led2 + led3 + led4 + "& nocache =" + Math.random() * 1000000;
var begäran = nya XMLHttpRequest();
Request.onreadystatechange = function()
{
om (this.readyState == 4)
{
om (this.status == 200)
{
om (this.responseText! = null)
{
om (this.responseText.indexOf("LED1ON") > -1)
{
document.getElementById("LED1").style.fill = "gula";
}
annat
{
document.getElementById("LED1").style.fill = "black".
}
om (this.responseText.indexOf("LED2ON") > -1)
{
document.getElementById("LED2").style.fill = "gula";
}
annat
{
document.getElementById("LED2").style.fill = "black".
}
om (this.responseText.indexOf("LED3ON") > -1)
{
document.getElementById("LED3").style.fill = "gula";
}
annat
{
document.getElementById("LED3").style.fill = "black".
}
om (this.responseText.indexOf("LED4ON") > -1)
{
document.getElementById("LED4").style.fill = "gula";
}
annat
{
document.getElementById("LED4").style.fill = "black".
}
om (this.responseText.indexOf("S1:ON") > -1)
{
document.getElementById("SW1").style.fill = "röd";
document.getElementById("text1").innerHTML = "SW1:ON";
}
annat
{
document.getElementById("SW1").style.fill = "white";
document.getElementById("text1").innerHTML = "SW1: OFF";
}
om (this.responseText.indexOf("S2:ON") > -1)
{
document.getElementById("SW2").style.fill = "röd";
document.getElementById("text2").innerHTML = "SW2:ON";
}
annat
{
document.getElementById("SW2").style.fill = "white";
document.getElementById("text2").innerHTML = "SW2: OFF";
}
}
}
}
}
Request.Open ("få", "ajax_switch" + nocache, true);
Request.send(null);
setTimeout('GetSwitchState()', 500);
}
funktion SetLEDStates(num)
{
Switch(NUM)
{
fall 1:
IF(x1==1)
{
LED1 = "& LED1ON";
x 1 = 0;
}
annat
{
LED1 = "& LED1OFF";
x 1 = 1;
}
bryta;
fall 2:
IF(x2==1)
{
LED2 = "& LED2ON";
x 2 = 0;
}
annat
{
LED2 = "& LED2OFF";
x 2 = 1;
}
bryta;
fall 3:
IF(x3==1)
{
LED3 = "& LED3ON";
x 3 = 0;
}
annat
{
LED3 = "& LED3OFF";
x 3 = 1;
}
bryta;
fall 4:
IF(X4==1)
{
LED4 = "& LED4ON";
x 4 = 0;
}
annat
{
LED4 = "& LED4OFF";
x 4 = 1;
}
bryta;
fall 0:
LED1 = "& LED1OFF";
x 1 = 1;
LED2 = "& LED2OFF";
x 2 = 1;
LED3 = "& LED3OFF";
x 3 = 1;
LED4 = "& LED4OFF";
x 4 = 1;
bryta;
}
} < /p >
Som ni ser på funktionen koder GetSwitchState skapar XMLHttpRequest begäran och anger själv att köra regelbundet av setTimeout funktion. Tidsintervall jag valde 500ms för denna applikation. Om du vill kan du ändra värdet. När sida onload-händelsen när GetSwitchState funktion loppet och det är gå... Detta är den huvudsakliga driften av koder och ajax teknik. Således kan du använda webbplatsen utan alltid uppdatera. Kolla in här att lära detaljerad info om ajax.