General purpose micro wanted

I'm looking to get a microcontroller that I can plug other devices into, and control them from a PC or through on-board switches.

At the moment, I want:

  • to decode IR signals and transfer them to my PC
  • to connect an IR transmitter to it which will receive signals from my PC
  • to connect a humidity/temperature sensor to it (to be polled by a PC)
  • to connect an LCD (hopefully something better than a 16x2 screen - maybe something colour?)
  • to drive some LEDs (will probably need extra components for this)

Hopefully what I need is a bit clearer now. I want a micro (preferably with a board) that will control and manage I/O to/from special devices (IR RX/TX, temp sensors, LEDs etc.) from a PC.

Now, here is where I am not sure exactly what I'd like. Initially, I thought that having all this done through a serial port and writing specialised software was the way to go. However, I'm reluctant to use the serial port because it is fast disappearing from PCs and I do not want to deal with USB-serial convertors in the future.

So, the choices at the moment are USB and Ethernet. I'm even sceptical about USB because of USB 1.1/2.0 speed issues. Ethernet looks like a winner. I'm in a switched environment so I don't care if the device hogs its own segment as long as it doesn't affect performance for other hosts on the switch.

Which micro would suit me best? Any comments/suggestions welcome. The whole Ethernet idea is quite new to me, actually.

cheers,

C3

Reply to
C3
Loading thread data ...

There are really two issues:

(1) having a microprocessor that controls a bunch of sensors and interfaces

(2) network connectivity to your friendly personal computer

I'll address the second issue:

On the personal computer, you should look for a utility software that speaks serial port or Ethernet seamlessly. So your application software is immune to the network connectivity that is to be dictated by other factors. We routinely switched from one to the other while troubleshooting an emebedded system that supported both serial and Ethernet.

USB support should be feasible along the same line.

A key point is the use to PPP framing on the serial link connection in order to a) uniformly detect transmission errors (erroneous packets are quietly ignored by the PPP receiver), and b) make the serial link very similar to packet-oriented transmission such as Ethernet. We use a subset of Internet RFC 1549 as framing specifications.

This has been done and is now available as the commui utility part of the ABCD Proto-Kernel(tm) distribution. If you like MS-Windows development, that's a good start (the rest of the ABCD Proto-Kernel(tm) is outside of Microsoft influence). See

formatting link

I prefer Linux development, and I guess the Linux box will find a place on the electronics workbench now or later. So I decided to make a similar utility software in Linux (simple command-line interface). That's the lab-comm utility. It's in the works ...

Sincerely,

- Thierry Moreau

CONNOTECH Experts-conseils inc.

9130 Place de Montgolfier Montreal, Qc H2M 2A1

Tel.: (514)385-5691 Fax: (514)385-5900

web site:

formatting link
e-mail: snipped-for-privacy@connotech.com

Reply to
Thierry Moreau

PC

The micro will be connect to an IR receiver (for receiving signals from my IR remote controls) and also an IR transmitter for sending data to my hi-fi system and air conditioner (not the PC).

At the moment I'm using WinLIRC with an el cheapo integrated IR circuit connected to the serial port. I now want to add some extra devices to my computer, like an IR transmitter, a few LEDs and an LCD. I will definitely not have enough ports to do this if I keep using serial, so I've decided to connect all of these components to a microcontroller, and hopefully to control this microcontroller over ethernet.

I want to get away from serial and parallel. I know people will say they are easier to interface, but I really do *not* want to deal with USB-serial/parallel convertors.

Yes, that is one part of what I need. If I use Ethernet, the micro will have to receive and decode these signals, process them and send them to the right component. Similarly, when there is an IR signal received, it will have to create an Ethernet frame (assume I'll be using Ethernet).

I also think that driving a colour LCD will not be trivial. I still want to try and do it, though. Any suggestions on a colour LCD and a micro that can control it?

Serial is ok now, but will be a pain to deal with in the future. I want to avoid this pain. No, really.

I think Ethernet is a lot more flexible than USB because USB requires relatively complex software to use. Ethernet only requires you to be able to hand-craft packets, and to manually decode them. I want to use Ethernet.

Assume I'll be using Ethernet. Are my requirements still modest? What about driving the colour LCD? I want to use the colour LCD for displaying things like the current song playing in winamp etc. But it has to be a real pixel-addressable colour LCD (I don't want a 16x2 character LCD).

cheers,

C3

Reply to
C3

Yes. Well within the capabilities of, say the, Atmel '51 I mentioned.

Your ONLY simple option for using an APA color LCD from an 8-bit micro

- and I mean it! - is to acquire something like a cellphone LCD, that has the driver, controller and framebuffer integrated onto the LCM.

Driving a color LCD of any resolution directly is best done with a micro that has integral LCD controller, and they simply don't make many 8-bit parts that can handle this. (There are some parts - cheap digital camera ICs - that have a '51 core and a hires LCD controller, but you can't buy them off the shelf).

Maybe the Sharp LH79520 would be a better fit for you if you MUST have this color LCD. Can't you be happy with a regular mono character LCM and tricolor LEDs PWMed to produce pretty backlight shades? :) If you go the LH79520 route, your cheapest development path is to buy the Revely board

formatting link
You'll need to add an Ethernet module to it. I'd suggest eCos as the operating system.

Reply to
Lewin A.R.W. Edwards

Pretty well any mid-range MCU with ADC will do that. I mostly use Microchip PICs, but it's purely a matter of taste and what you're familiar with.

How much do you want to pay? 4-inch colour LCDs come in at around $250-300 one-off. A 320x240 mono is around $120.

Unless it's a high-power LED, an MCU output pin will source/sink enough current, so you only need a current-limiting resistor.

There are devices around that have in-built USB transceivers, but USB isn't really for the faint-hearted (and do you really fancy writing Windows drivers?). You'd be better using a USB-to-serial chip or module - something like:

formatting link

AFAIK, there aren't yet any MCUs around with Ethernet MAC/PHY, so you have to use seperate devices. The most common designs seem to use the Realtek RTL8019 and a mag-jack to provide 10-baseT, with a simple TCP/IP stack in firmware. Alternatively, you could go for the Wiznet W3100A, which embeds the protocol stack:

formatting link
With the addition of a phyciever chip and a mag-jack, you get full

10/100-baseTX

Again, there are various Ethernet-to-serial modules around.

If you want a ready-made prototyping board with 10-baseT, have a look at:

formatting link

--
  Max
Reply to
Max

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.