EmbeddedRelated.com
Forums

Which microcontroller do I need?

Started by Jay Maynard July 28, 2007
Jay Maynard pisze:
> I'm trying to select a microcontroller for an application, and having > little luck sifting through the masses of information on the web. > > I need: > 1) Two async serial ports, capable of running at 9600 BPS. I'd greatly > prefer this to be in hardware; bit-banging is too much work, and hard > to do in realtime with other things going on. RS-232 drivers are not > necessary, but the ability to accept inverted CMOS (1=0V, 0=+2.6V) > levels is. > 2) Ethernet, with TCP/IP stack provided. A web server isn't necessary, > but I'll use it if it's there. > 3) Reasonably inexpensive prototype board. This is a ham radio > project, and I intend to publish it so that other hams can use it. > 4) The ability to develop on Mac OS X, or at least Linux. I refuse to > run Windows unless there is absolutely no other option. > 5) Open source development tools. I can deal with C, and assembler > doesn't faze me; I'd rather not do BASIC. >
[CUT] Have a look at at Zilog's F91. Has most of the stuff you have mentioned. Although dev tools are Win only, but I've run them under linux with Win emulator. Maciek.
On Sat, 28 Jul 2007 08:19:25 -0700, Jay  Maynard <jaymaynard@gmail.com>
wrote:

>I'm trying to select a microcontroller for an application, and having >little luck sifting through the masses of information on the web.
[...] Have a look at www.ethernut.de. They use an AVR ATmega128 and a RTL8019 for Ethernet. The ATmega128 has two serial ports - the second one is on the pin headers. There is a Gcc for AVR, and there is a small kernel with IP stack for that board. Programming the AVR through the ISP interface (SPI plus -RESET) is easy - it took me half a day to write my own programmer, so you can easily build your own if you don't find mac programmers. Look at: http://www.nongnu.org/avrdude/ http://savannah.nongnu.org/projects/avr-libc/ http://www.avrfreaks.net/wiki/index.php/Documentation:AVR_GCC If you want to bring your BOM and hw costs down to the minimum, I'd choose an ATmega644P and connect a Microchip ENC28J60 Ethernet MAC/PHY via SPI. Both chips are also available in DIP packages (40 and 28 pins), so it's easy to work with. You don't need a full IP stack just for sending IP Multicasts or broadcasts and can get along just with the internal memory (64k program flash, 4k ram, 2k data eeprom). http://www.atmel.com/dyn/products/product_card.asp?PN=ATmega644P http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1335&dDocName=en022889 http://www.avrfreaks.net/index.php?func=viewItem&item_id=715&module=Freaks%20Tools https://berlin.ccc.de/wiki/AVR-Board_mit_Ethernet (sorry, German only, but you should be able to find the schematics. They use an Mega32, which has only one UART, but the changes for the Mega644P (the P is imPortant!!!!) should be minimal. Mit freundlichen Gr&#4294967295;&#4294967295;en Frank-Christian Kr&#4294967295;gel
Jay Maynard wrote:
> I'm trying to select a microcontroller for an application, and having > little luck sifting through the masses of information on the web. > > I need: > 1) Two async serial ports, capable of running at 9600 BPS. I'd greatly > prefer this to be in hardware; bit-banging is too much work, and hard > to do in realtime with other things going on. RS-232 drivers are not > necessary, but the ability to accept inverted CMOS (1=0V, 0=+2.6V) > levels is. > 2) Ethernet, with TCP/IP stack provided. A web server isn't necessary, > but I'll use it if it's there. > 3) Reasonably inexpensive prototype board. This is a ham radio > project, and I intend to publish it so that other hams can use it. > 4) The ability to develop on Mac OS X, or at least Linux. I refuse to > run Windows unless there is absolutely no other option. > 5) Open source development tools. I can deal with C, and assembler > doesn't faze me; I'd rather not do BASIC. > > I don't need: > 1) Bells and whistles on the prototype board. No LCD displays, > buttons, optoisolators, or any other such. > 2) A big, hairy realtime OS. The application's job is to monitor > traffic going from one serial port to another, interpret it, and make > the contents available via Ethernet, and to accept commands and insert > them in the serial datastream going the other way. A nice, small > kernel, OTOH, would probably be useful. > > I don't care about: > 1) Architecture wars. I have no investment in any microcontroller > architecture, so I'm free to select the best (or only) one to do the > job. > 2) I/O pins beyond Ethernet and async. > 3) Programming methods, as long as I can plug it into my Mac. This > means USB, practically speaking, although an Ethernet-bootstrappable > prototype board will also work. > 4) Whether programming is accomplished on the prototype board or via a > separate programmer. > > Thanks in advance for any help you can provide.
Sounds like you need a low-cost-module. So look thru the main suppliers for their lowest price, ready to go modules. One thing to watch, will be if the 'Demo' SW versions have a limit you will bump into, Atmel have something for the AVR32, you could also look at Rabbit. Zilog have just released a ZDOTs module, that they claim has Full Tcp/IP and operating system. http://www.zilog.com/products/partdetails.asp?id=eZ80F917050SBC Module is tiny, appx business card in area, with 0.1" expansion headers - think of it as Jumbo DIP :) I have not seen a price indication yet om the ZDot module. Their Z80 series have a LOT of legacy Sw, and will be known by your audience. So I'd favour "mature and proven" over "new kid on the block". -jg
Jay  Maynard <jaymaynard@gmail.com> writes:

> On Jul 28, 12:04 pm, Petter Gustad <newsmailco...@gustad.com> wrote: > > I don't think the DEMO board includes the USB programmer/debug > > interface. However, I'm a little uncertain since I only have the EVB > > and not the DEMO. Check with your dealer or on the Freescale site for > > more info. > > Hm. Wonder how you program the board's micro, then?
"The product page says: http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=M52233DEMO One BDM (Background Debug Mode) "wiggler" cable" and "The integrated BDM allow easy application development and debugging". so it seems like it's integrated on the board. If you click on the photo you can see a chip labeled "P&E BDM USB": http://www.freescale.com/files/graphic/product_freescale/M52233DEMO.jpg
> I did, and it raises a question: Based on your experience with your > sample code, am I going to get in trouble distributing the complete > code, ready to build, if I start from your example? There was a lot > of wrangling about it on the forum...
It's not my code (but another more experienced M5223x enthusiast also named Petter). The issues are related to the distribution of the Interniche code. To me it seems like you have to provide it in such a way that whoever downloads the code has to click and agree to the license prior to downloading. Petter -- A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing on usenet and in e-mail?
"Jay Maynard" <jaymaynard@gmail.com> wrote in message 
news:1185635965.944562.36650@g4g2000hsf.googlegroups.com...
> I'm trying to select a microcontroller for an application, and having > little luck sifting through the masses of information on the web. > > I need: > 1) Two async serial ports, capable of running at 9600 BPS. I'd greatly > prefer this to be in hardware; bit-banging is too much work, and hard > to do in realtime with other things going on. RS-232 drivers are not > necessary, but the ability to accept inverted CMOS (1=0V, 0=+2.6V) > levels is. > 2) Ethernet, with TCP/IP stack provided. A web server isn't necessary, > but I'll use it if it's there. > 3) Reasonably inexpensive prototype board. This is a ham radio > project, and I intend to publish it so that other hams can use it. > 4) The ability to develop on Mac OS X, or at least Linux. I refuse to > run Windows unless there is absolutely no other option. > 5) Open source development tools. I can deal with C, and assembler > doesn't faze me; I'd rather not do BASIC. > > I don't need: > 1) Bells and whistles on the prototype board. No LCD displays, > buttons, optoisolators, or any other such. > 2) A big, hairy realtime OS. The application's job is to monitor > traffic going from one serial port to another, interpret it, and make > the contents available via Ethernet, and to accept commands and insert > them in the serial datastream going the other way. A nice, small > kernel, OTOH, would probably be useful. > > I don't care about: > 1) Architecture wars. I have no investment in any microcontroller > architecture, so I'm free to select the best (or only) one to do the > job. > 2) I/O pins beyond Ethernet and async. > 3) Programming methods, as long as I can plug it into my Mac. This > means USB, practically speaking, although an Ethernet-bootstrappable > prototype board will also work. > 4) Whether programming is accomplished on the prototype board or via a > separate programmer. > > Thanks in advance for any help you can provide.
Arm7 or arm9 chip olimex make some cheap boards sparkfun sell them www.sparkfun.com have a look at lpc,cirrus ,sam7 , st and tms ranges most can be programmed via serial bootlader or jtag. Can get parallel port or fairly cheap usb jtag devices. lpctools.com sell a range of boards based on the nxp(philips) arm7 and arm9 chips arm gcc ports are available for linux , mac osx and windows. rowley make an ide + gcc with commerical support for windows and linux. futurlec.com sell some very cheap dev boards can take a while to ship codesourcery tools usually have support for the latest chips before the others but are not always as easy to use. lite versions are freely available http://www.codesourcery.com/gnu_toolchains/arm Some companies only provide examples for the commerical windows based tool chains Atmel make the avr32 have a demo board for US$69 http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4102 they supply prebuilt tools here http://www.atmel.com/dyn/products/tools.asp?family_id=682 Can use the same programmer as the avr series including usb isp tool (approx $30) works from both linux and osx. gumstix.org make some nice tiny little boards that run linux very easy to get up and running on linux. from 200 - 600MHz 32MB ram and up to 32MB flash. www.gumstix.org The netburner coldfire modules are nice. www.netburner.com They only provide windows tools. Linux tools are available, I haven't been able to get them to build on osx. The blackfin stamp boards also have a good feature set http://www.analog.com/en/prod/0,2877,BF537%252DSTAMP,00.html http://docs.blackfin.uclinux.org/doku.php?id=bf537-stamp_board http://blackfin.uclinux.org/gf/ http://www.blackfin.org/index.php http://docs.blackfin.uclinux.org/doku.php?id=buy_stuff Can buy them from digikey for approx US$220 Another similar blackfin board but for voip http://blackfin.uclinux.org/gf/project/bf1/ http://rowetel.com/ucasterisk/hardware.html Alex