I like to share with you how to ping 8051 by ethernet protocol,
It's basic ethernet protocol implementation, and it's not necessory to spend much money to practice it.
If you know How it works in ethernet and ping and TCP/IP protocol, then it 's much helpful to implement
others Internet protocol like UDP , TCP , telent, FTP and http ..
1. Base on my previous article, you should know how to move out from DM9000 a packet , and move in
a packt to DM9000 and transmimt it.
FIFO move in/output is basic function.
2. We can know is IP or ARP from Ethernet header protocol, Then we can implement two function two
branch this two different protocol.
3. We can easy to use Windows Commander, and type pin 192.168.0.200, then PC will send a broadcast command to etherent , our 8051 will get this packet from DM9000, then know PC is ask DM9000 MAC address. So DM9000 will reply and MAC address to PC.
4. PC will use new MAC address , and send ICMP packet to 8051.
5. When 8051 get new packet from DM9000, and know is IP packet not ARP packet.
6. 8051 will check the IP packet protocol, is ICMP or UDP or TCP and pass to ICMP protocol..
7. 8051 will know hte packe the ICMP request. then prepare another packet to transmit.
8. 8051 well prepare ICMP packet , then Pass back the IP layer .
9. 8051 will prepare IP header and add in front of ICMP Packet , then pass back to Ethernet layer.
10. 8051 move all of IP + ICMP packet and add ethernet header , then move into DM9000, and transmit.
11. PC will get this packet and show delay time.
You can see this, We using DOS windows ping command, to send ICMP packet to 8051+DM9000, Due to 8051 have eto calcute checksum, so it took some times delay ..
We show the meeasge in debug window when 8051+dm9000 got packet or send packet.
you also be able to use wireshark to capture packet, to know your transmit packet are correct or not .
http://class.ruten.com.tw/user/index00.php?s=indiana_jonesif you intersting this toy , you can buy it from this , or contact with me.
jones.hsu@gmail.com ..