Sunday, December 20, 2009

New WiZnet's software-Virtual Serial Port

In order to support the customer's development,reduce the development difficulty,WIZnet is going to promote the Vitual Serial Port Programme.Virtual Serial Port has totally 2 advantages.
1. Reduce the development difficulty when the customer want to upgrade their system.It upgrades from the serial to the ethernet,WIZnet can convert the serial to the ethernet and vice versa.2. Expand the number of unit PCs Virtual Serial Port,it is supposed to support 255 Virtual Serial Ports and the distant serial throught the internet communication.
The comparison figure:

Translated from Johnny Yan,''WIZnet即将推出虚拟串口(Virtual Serial Port)''

Source:http://blog.sina.com.cn/s/blog_61b952280100gcrn.html

Friday, December 18, 2009

Common Register Part 1

Hi All,

Last week, I have briefly go through the types of registers within our chipset. This week we will go through the common registers. So the figures below shows an overview of our common registers.


The Mode Register: This is used for soft reset, enabling indirect bus mode, and other modes

Gateway Address Register: This is where the gateway IP address is stored

Subnet Mask Register: This is where the subnet mask is tored

MAC Address Regiter: This register is for storing the MAC address of the device. Notice that the first byte must be a even number. You should register your own MAC address with IEEE before using a MAC address to prevent collision.

Server IP Register: This is where the IP address of the device is stored.

Interrupt Register: This is for checking which interrupt is occuring

Interrupt Mask Register: This is used for enabling various interrupts

Retry Time Register: This sets the number of 100us before our chipset attempts to resend. Besure to set this value to longer if your network is slow to avoid any packets duplication.


Retry Count Register: This sets the number of tries before the connection times out.

We will go through part two of the common registers next week!

See you :)

Friday, December 11, 2009

Registers within our Chip

Hi all,

I just wanted to clarify about the registers within our chipset.
There are two types of registers within our chip. One type is the Common register which stores source IP address, gateway address, Subnet Mask Address, and the MAC address. Because all sockets uses the same common source IP address that is the reason why these registers are called common registers. The second type of registers is the Socket Register. They are specifically used for storing socket information such as source port, destination IP address, destination port and so forth. Notice that W3150A+ and W5100 have 4 hardware sockets so there are 4 sets of socket registers. The same is true for the W5300 with 8 sockets. There will be 8 sets of socket registers inside the chip.

In the case of W5100, the common registers' address starts from 0x0000 to 0x3FF. The 4 sets of socket registers are located from 0x0400 to 0x04FF,0x0500 to 0x05FF,0x0600 to 0x06FF,0x0700 to 0x07FF.

For my next post, I will get into the details of each registers. Be sure to check it out! :)

Thank you

WIZnet HK

Friday, December 4, 2009

LED Status

Our chip provides six different network statues. Here are the six different LEDS:

1) LINKLED: Link LED / Active low in link state indicates a good status for 10/100M. It is always ON when the link is OK and it flashes while in a TX or RX state


2) SPDLED: Link speed LED / Active low indicates the link speed is 100Mbps


3) FDXLED: Full duplex LED / Active low indicates the status of full-duplex mode.


4) COLLED: Collision LED / Active low indicates the presence of collision activity.


5) RXLED: Receive activity LED / Active low indicates the presence of receiving activity.


6) TXLED: Transmit Activity LED/ Active low indicates the presence of transmitting activity.

Generally the yellow and green LEDs in the RJ45 jack are connected to the Full Duplex LED signal, and the Link LED signal respectively. During receive and transfer, the LINK LED blinks. If you want to separate the LINK LED signal from the transfer and receive LED, the following circuit should be implemented.

I hope you enjoy Thanks!



Thursday, November 26, 2009

Hybrid Mode

What is Hybrid Mode? Hybrid mode is used when both hardware and software TCP/IP processing are required. So what is the advantage of using this kind of system? As you may know, for the hardware TCP/IP stacks, there is a limited number of sockets available. If the user wants to use more sockets than our chip can provide, he can take advantage of the Hybrid mode because the software TCP/IP stack offers unlimited sockets. With the hybrid mode, the user can create unlimited number of sockets since hardware and software TCP/IP stack are running at the same time. In order to use the hybrid mode, MAC raw mode should be setup for the hardware socket 0. The socket 0 will be used as a tunnel to send and receive Ethernet frame for the software stack. While socket 0 is used for the tunneling, the remaining sockets can be used with the hardware stack. Notice that using this hybrid mode, the user is required to port the software stack into the MCU.

I hope you enjoyed. Thank you!

Monday, November 9, 2009

WIZnet Chipset Modes

In this entry, I will explain about the different modes within our chip set. This concept might be hard to understand without a reference model to refer to. That is why I show you this picture
the Bottom Network layers.


Our chipset offers 3 different modes: TCP/UDP Mode, IP Raw Mode, and MAC Raw Mode. Each of these modes represents the different network layer. In MAC RAW mode, the entire Ethernet frame is provided to the MCU without any processing. In IP Raw Mode, the IP datagram is extracted from the Ethernet Frame. In this case, the IP datagram along with the IP header is provided to the MCU. Lastly, in TCP/UDP mode, all the networking headers are removed. You might have expected that TCP/UDP headers are included in the TCP/UDP mode, but actually only the encapsulated data within TCP packets /UDP datagram are provided to the MCU. Most applications use the TCP/UDP mode.

That's it for today. I hope you enjoyed it! Thanks! :)

Tuesday, October 6, 2009

HTTP Client Concept

Recently, I have been working on a HTTP client. This HTTP client is for connecting to the Internet and retrieve any types of files. I am working on a platform which uses an Atmega128 with 128KByte of Flash. As you can see, this platform has limited resource. For example, if I download a 1 Mbyte picture. It is impossible to store all the data into the flash. Even if I am able to store all the data, there is no LCD monitor to display the picture.

To overcome this limitation, I have thought of outputting all the received data in HEX via SERIAL. Then I use my computer's terminal program to capture all of the HEX received by the COM port. With this method, I can download any files regardless of the file size.

Now the question is I have a bunch of HEX which resemble the actual file, but how do I open this file? Now the HEX editor comes into play. You first use your favorite HEX editor and open a new file. Then Import all the HEX values into the HEX editor. Once this step is done, you should save this file as the file type which you have downloaded (e.g. .jpg, .bmp, .mp3)