plusminus
25.08.2006, 21:47
Ein kleines Projekt, weil ich nix zu tun hatte:
Eigentlich sogar ganz praktisch:
Werde bei Zeiten ein komplettes-HowTo auf meiner HP erstellen... (http://www.alekto-programming.com)
Zeigt die Inet-IP auf einem LCD.
Besteht aus 3 Teilen:
1. PHP-File auf meinem Webspace:
<?php
$ip = getenv('REMOTE_ADDR');
echo $ip;
?>
2. Wahnsinns Visual-Basic-Programm:
Private Sub Form_Load()
MSComm1.CommPort = 3
MSComm1.PortOpen = True
End Sub
Private Sub Timer1_Timer()
Dim IP As String
IP = Inet1.OpenURL("http://www.alekto-programming.com/ip.php")
MSComm1.Output = IP & "!"
End Sub
Wer keinen Webspace besitzt kann auch das file auf meinem server nutzen.
Wobei ich das "!" als Schluss-Byte der IP gewählt habe. Der µC muss ja erkennen, wo die IP aufhört.
3. µC-Code
// Nur die Main-Schleife...
// QUICK & DIRTY !
char IP[16];
//==============================
int main (void)
{
int Counter;
char zeichen;
char FirstTime = 1;
wait_ms(200);
lcd_init();
lcd_goto(1,1);
lcd_displaystring("Awaiting IP-Data");
lcd_goto(2,1);
lcd_displaystring("XXX.XXX.XXX.XXX");
initUART();
while (1==1) // Mainloop
{
Counter = 0;
while (zeichen != 33)
{
zeichen=getChar();
IP[Counter]=zeichen;
Counter++;
}
if(FirstTime)
{
lcd_clear();
lcd_goto(1,1);
lcd_displaystring("Current IP:");
FirstTime = 0;
}
int Endpos;
Endpos = Counter;
zeichen =0;
for(Counter=Endpos;Counter < 17; Counter++)
IP[Counter] = 32;
for(Counter=0;Counter < (Endpos -1);Counter++)
{
lcd_goto(2,Counter + 1);
lcd_displaychar(IP[Counter]);
}
}
}
//=================================
Alles in allem sieht der Spaß dann so aus:
http://www.alekto-programming.com/images/tutorials/myAVR20usb_C/iplcd_1.jpg
http://www.alekto-programming.com/images/tutorials/myAVR20usb_C/iplcd_2.jpg
Schreibfehler inklusive...
Viel Spaß...
Edit: IP hab ich grade gewechselt :P
Eigentlich sogar ganz praktisch:
Werde bei Zeiten ein komplettes-HowTo auf meiner HP erstellen... (http://www.alekto-programming.com)
Zeigt die Inet-IP auf einem LCD.
Besteht aus 3 Teilen:
1. PHP-File auf meinem Webspace:
<?php
$ip = getenv('REMOTE_ADDR');
echo $ip;
?>
2. Wahnsinns Visual-Basic-Programm:
Private Sub Form_Load()
MSComm1.CommPort = 3
MSComm1.PortOpen = True
End Sub
Private Sub Timer1_Timer()
Dim IP As String
IP = Inet1.OpenURL("http://www.alekto-programming.com/ip.php")
MSComm1.Output = IP & "!"
End Sub
Wer keinen Webspace besitzt kann auch das file auf meinem server nutzen.
Wobei ich das "!" als Schluss-Byte der IP gewählt habe. Der µC muss ja erkennen, wo die IP aufhört.
3. µC-Code
// Nur die Main-Schleife...
// QUICK & DIRTY !
char IP[16];
//==============================
int main (void)
{
int Counter;
char zeichen;
char FirstTime = 1;
wait_ms(200);
lcd_init();
lcd_goto(1,1);
lcd_displaystring("Awaiting IP-Data");
lcd_goto(2,1);
lcd_displaystring("XXX.XXX.XXX.XXX");
initUART();
while (1==1) // Mainloop
{
Counter = 0;
while (zeichen != 33)
{
zeichen=getChar();
IP[Counter]=zeichen;
Counter++;
}
if(FirstTime)
{
lcd_clear();
lcd_goto(1,1);
lcd_displaystring("Current IP:");
FirstTime = 0;
}
int Endpos;
Endpos = Counter;
zeichen =0;
for(Counter=Endpos;Counter < 17; Counter++)
IP[Counter] = 32;
for(Counter=0;Counter < (Endpos -1);Counter++)
{
lcd_goto(2,Counter + 1);
lcd_displaychar(IP[Counter]);
}
}
}
//=================================
Alles in allem sieht der Spaß dann so aus:
http://www.alekto-programming.com/images/tutorials/myAVR20usb_C/iplcd_1.jpg
http://www.alekto-programming.com/images/tutorials/myAVR20usb_C/iplcd_2.jpg
Schreibfehler inklusive...
Viel Spaß...
Edit: IP hab ich grade gewechselt :P