Re: Ethernet in its most basic form

On May 2, 7:02 pm, Tomás Ó hÉilidhe <t...@xxxxxxxxxxx> wrote:
On May 3, 12:17 am, "robertwess...@xxxxxxxxx"

<robertwess...@xxxxxxxxx> wrote:
If what you're wanting to do is implement the protocol stack, then you
definitely want to use a canned Ethernet controller.  And that will
give you exactly what you want.  You hand it a frame, and it sends it,
and it will let you know when it's received one.  Just pick one that
easy to interface with the CPU of your choice.

This is exactly what I'm looking for, a microcontroller that sends
frames when I tell it to, and also hands frames to me when they're
received. I want to write all the protocol stuff myself.

You say "pick one that's easy to interface with the CPU of your
choice"; I thought that these devices were fully-fledged
microcontrollers and so I wouldn't have the option of mix-matching
CPU's.. ? Do I misunderstand?

Can anyone suggest a very simple Ethernet micrcontroller that will do
what I want? I've considering going with the ENC28J60 which can do 10
Mbps, but I just want to check first to see if there's anything that
does 100 Mbps or maybe even gigabit.

Microcontrollers vary greatly in how they can interface to external
devices. For example, you might find one with two Ethernet
controllers on the chip, and you're all set. I don't happen to know
of a PIC like that, but don't take that to mean anything in
particular. Other controller families *do* have products with
multiple Ethernet interfaces built in, although typically in higher
end parts.

Or you might have enough I/O pins on your microcontroller to interface
a traditional Ethernet controller chip, or your controller might
actually support a PCI interface, and then any of the current PCI
compatible chips will work for you.

Or you might have a CAN or SPI (or other) local bus interface on your
controller, and you can get a Ethernet controller with a matching
interface (for example, many PICs have SPI, and you can get a ENC28J60
to attach to that).

For your project, you might well end up with a combination of a
controller with an integrated Ethernet controller, and then a second
external Ethernet controller attached via SPI, or something like that.