EmbeddedRelated.com
Forums

CPU recommendations?

Started by Unknown March 23, 2009
Hi All,

I'm starting a new embedded control project soon, it looks fairly
simple so far, read some analog and digital inputs and provide some
PRM, digital & serial RS485 outputs.  Sampling at about 10Hz should be
sufficient.  I'm thinking a lower speed 16 or 32bit CPU will do the
job.

I'd like to use a CPU which:

supports source level debugging & fast code download for rapid turn
around cycles
has onboard Flash for of at least 64K
has plenty of eval. boards and ref. designs available
has uCos|| ported to it
a free compiler and tools (I would pay if the tools where really good)
optionally, can support C++

I'm wide open to using a PIC, ARM, Freescale, Atmel chip, anything at
this stage

I know this question is fairly general but can anyone recommend a CPU
meeting the above requirements?

Thanks,
Fred
<fredbasset1000@gmail.com> wrote in message 
news:df23d9fc-e93f-44eb-90cd-b4b1c239863d@v23g2000pro.googlegroups.com...
> Hi All, > > I'm starting a new embedded control project soon, it looks fairly > simple so far, read some analog and digital inputs and provide some > PRM, digital & serial RS485 outputs. Sampling at about 10Hz should be > sufficient. I'm thinking a lower speed 16 or 32bit CPU will do the > job. > > I'd like to use a CPU which: > > supports source level debugging & fast code download for rapid turn > around cycles > has onboard Flash for of at least 64K > has plenty of eval. boards and ref. designs available > has uCos|| ported to it > a free compiler and tools (I would pay if the tools where really good) > optionally, can support C++ > > I'm wide open to using a PIC, ARM, Freescale, Atmel chip, anything at > this stage > > I know this question is fairly general but can anyone recommend a CPU > meeting the above requirements?
You might check out the ST STM8. The source-level debugger works pretty well. Cosmic has a free compiler for up to 16K, and as best I can tell from the license, there are no restrictions on using the free compiler for a commercial purpose. The full tools that will produce a larger FLASH image are something around $1800. The necessary debugging pod is only about 100 Euros. However, I do work with high production volumes, and ST's pricing is attractive. If you're doing work with annual volumes of less that 10K or so, I'm not sure the STM8 would be the right choice. For low volumes, naturally piece-cost is less important. Not sure about uCos. If you're not easily able to find info or a sales rep, post again and we can get into direct contact. The Lizard
fredbasset1000@gmail.com wrote:
> Hi All, > > I'm starting a new embedded control project soon, it looks fairly > simple so far, read some analog and digital inputs and provide some > PRM, digital & serial RS485 outputs. Sampling at about 10Hz should be > sufficient. I'm thinking a lower speed 16 or 32bit CPU will do the > job. > > I'd like to use a CPU which: > > supports source level debugging & fast code download for rapid turn > around cycles > has onboard Flash for of at least 64K > has plenty of eval. boards and ref. designs available > has uCos|| ported to it > a free compiler and tools (I would pay if the tools where really good) > optionally, can support C++ > > I'm wide open to using a PIC, ARM, Freescale, Atmel chip, anything at > this stage > > I know this question is fairly general but can anyone recommend a CPU > meeting the above requirements?
I have been successful with the Atmel AVR under similar circumstances. Avr-gcc is very good. Equally supported on Windows and FreeBSD. Linux guys can take clues from the FreeBSD port as to the good patches such as the one adding binary constant support (specify values in binary). The AVR JTAG ICE mkII is pricy at $300 but the ECROS ICE Cube at $40 is 99.99% as good so long as you select a CPU that it supports. Is best to buy an Atmel AVR-ISP for about $40 as ISP is needed to enable JTAG but once JTAG is enabled its all you need for uploading code and debugging. 64k is a pretty big code space for a "simple" project. Keep it down to 32k CPUs and the AVR Dragon (from Atmel) is $50. Supports debugWire, JTAG, and ISP (in-system programming in Atmel-speak). But once again one must ensure in advance that the CPU is supported by the Dragon. Only way to get the Dragon list is download and install AVR Studio, then go to the online help file for Dragon. The Dragon will program parts larger than 32k via ISP, it just won't debug.
<fredbasset1000@gmail.com> wrote in message 
news:df23d9fc-e93f-44eb-90cd-b4b1c239863d@v23g2000pro.googlegroups.com...
> Hi All, > > I'm starting a new embedded control project soon, it looks fairly > simple so far, read some analog and digital inputs and provide some > PRM, digital & serial RS485 outputs. Sampling at about 10Hz should be > sufficient. I'm thinking a lower speed 16 or 32bit CPU will do the > job. > > I'd like to use a CPU which: > > supports source level debugging & fast code download for rapid turn > around cycles > has onboard Flash for of at least 64K > has plenty of eval. boards and ref. designs available > has uCos|| ported to it > a free compiler and tools (I would pay if the tools where really good) > optionally, can support C++
C++? Noooooooo!!!!! ;) The venerable H8 family might fit all your needs, except for the C++/64k bloat thing... The KPIT/GNU toolchain is free, as is the HEW environment from Renesas, and the flash programming utilities... I mean, really: C++ on embedded? Seriously? By all means write OO code, but C++ is not a serious contender. It's just b0rked. On a desktop you can get away with it, but otherwise this emperor is nekkid. Steve -- http://www.fivetrees.com
fredbasset1000@gmail.com wrote:
> Hi All, > > I'm starting a new embedded control project soon, it looks fairly > simple so far, read some analog and digital inputs and provide some > PRM, digital & serial RS485 outputs. Sampling at about 10Hz should be > sufficient. I'm thinking a lower speed 16 or 32bit CPU will do the > job. > > I'd like to use a CPU which: > > supports source level debugging & fast code download for rapid turn > around cycles > has onboard Flash for of at least 64K > has plenty of eval. boards and ref. designs available > has uCos|| ported to it > a free compiler and tools (I would pay if the tools where really good) > optionally, can support C++ > > I'm wide open to using a PIC, ARM, Freescale, Atmel chip, anything at > this stage > > I know this question is fairly general but can anyone recommend a CPU > meeting the above requirements? > > Thanks, > Fred
You have a slightly mixed up set of requirements here - it does not sound like you need anything more than a small 8-bit device, and 64k flash is probably at least four times overkill. If you don't have any particular reason (such as familiarity) to choose anything else, then go for an Atmel AVR. If you want to use uCOS, your easiest starting point is to find an evaluation board with example code for uCOS - there should be lots to choose from. Go for avr-gcc for development tools (from <http://winavr.sourceforge.net/>) along with AVR Studio. C++ support is limited to the language only (i.e., you can work with classes, templates, etc., but there is no library support for exceptions, or run-time interfaces, and no class libraries).
On Mar 23, 8:51=A0pm, fredbasset1...@gmail.com wrote:
> Hi All, > > I'm starting a new embedded control project soon, it looks fairly > simple so far, read some analog and digital inputs and provide some > PRM, digital & serial RS485 outputs. =A0Sampling at about 10Hz should be > sufficient. =A0I'm thinking a lower speed 16 or 32bit CPU will do the > job. > > I'd like to use a CPU which: > > supports source level debugging & fast code download for rapid turn > around cycles > has onboard Flash for of at least 64K > has plenty of eval. boards and ref. designs available > has uCos|| ported to it > a free compiler and tools (I would pay if the tools where really good) > optionally, can support C++ > > I'm wide open to using a PIC, ARM, Freescale, Atmel chip, anything at > this stage > > I know this question is fairly general but can anyone recommend a CPU > meeting the above requirements? > > Thanks, > Fred
Look at STM32. Has all of those periperals. Free compiler upto 32kb from IAR (and with Thumb2 instructions you get quite a lot of code in that) - next step is the 256kb baseline edition. A number of uC/OSII ports available for download. IAR has embedded C++ support STM32 with IAR / J-Link provides trace information using SWO. J-Trace module for bigger external trace memory available for less then 1000EUR (cheapest Cortex trace you will ever find). STM32 can go to the lower speeds/powers if needed Kit of STM32 and JLink for around 200EUR - look around. I do not quite understand your idea of looking for a free compiler, but then using an expensive RTOS.. seems like you should build on concrete by using good tools and start to use the silicon vendor supplied librarys/freeRTOS and decide to buy an RTOS.
On Mar 23, 2:02=A0pm, "Jujitsu Lizard" <jujitsu.liz...@gmail.com> wrote:
> <fredbasset1...@gmail.com> wrote in message > > news:df23d9fc-e93f-44eb-90cd-b4b1c239863d@v23g2000pro.googlegroups.com... > > > > > Hi All, > > > I'm starting a new embedded control project soon, it looks fairly > > simple so far, read some analog and digital inputs and provide some > > PRM, digital & serial RS485 outputs. =A0Sampling at about 10Hz should b=
e
> > sufficient. =A0I'm thinking a lower speed 16 or 32bit CPU will do the > > job. > > > I'd like to use a CPU which: > > > supports source level debugging & fast code download for rapid turn > > around cycles > > has onboard Flash for of at least 64K > > has plenty of eval. boards and ref. designs available > > has uCos|| ported to it > > a free compiler and tools (I would pay if the tools where really good) > > optionally, can support C++ > > > I'm wide open to using a PIC, ARM, Freescale, Atmel chip, anything at > > this stage > > > I know this question is fairly general but can anyone recommend a CPU > > meeting the above requirements? > > You might check out the ST STM8. =A0The source-level debugger works prett=
y
> well. =A0Cosmic has a free compiler for up to 16K, and as best I can tell=
from
> the license, there are no restrictions on using the free compiler for a > commercial purpose. =A0The full tools that will produce a larger FLASH im=
age
> are something around $1800. > > The necessary debugging pod is only about 100 Euros. > > However, I do work with high production volumes, and ST's pricing is > attractive. =A0If you're doing work with annual volumes of less that 10K =
or
> so, I'm not sure the STM8 would be the right choice. =A0For low volumes, > naturally piece-cost is less important. > > Not sure about uCos. > > If you're not easily able to find info or a sales rep, post again and we =
can
> get into direct contact. > > The Lizard
I can only second this recommendation by adding, go to the STM8S. There have been a couple new ones just announced, meaning ST has definitely still some focus on these devices. There was another recommendation to use STM32, well these two families share peripherals, so if you start out with the STM8S and need to upgrade later, the STM32 will provide a very easy upgrade. Both are supported by Raisonance and if you are using this particular compiler, switching between the two is a piece of cake. What Lizard did not mention, if you start out and need 16/32k flash or less of programming space, the compiler for the STM8S (16k) as well as the one for STM32 (32k) from Raisonance are free. For further reading: http://www.mcu-raisonance.com/~stm8st7-c-compiler__microcontrollers__tool~t= ool__T018:4cpm5flha55r.html Features of the new STM8S devices http://www.mcu-related.com/index.php?option=3Dcom_content&view=3Darticle&id= =3D55:stm8s105-and-stm8s207&catid=3D35:cortex-m3&Itemid=3D18 An Schwob
On Mar 24, 3:19=A0pm, An Schwob in USA <schwo...@aol.com> wrote:
> On Mar 23, 2:02=A0pm, "Jujitsu Lizard" <jujitsu.liz...@gmail.com> wrote: > > > > > <fredbasset1...@gmail.com> wrote in message > > >news:df23d9fc-e93f-44eb-90cd-b4b1c239863d@v23g2000pro.googlegroups.com..=
.
> > > > Hi All, > > > > I'm starting a new embedded control project soon, it looks fairly > > > simple so far, read some analog and digital inputs and provide some > > > PRM, digital & serial RS485 outputs. =A0Sampling at about 10Hz should=
be
> > > sufficient. =A0I'm thinking a lower speed 16 or 32bit CPU will do the > > > job. > > > > I'd like to use a CPU which: > > > > supports source level debugging & fast code download for rapid turn > > > around cycles > > > has onboard Flash for of at least 64K > > > has plenty of eval. boards and ref. designs available > > > has uCos|| ported to it > > > a free compiler and tools (I would pay if the tools where really good=
)
> > > optionally, can support C++ > > > > I'm wide open to using a PIC, ARM, Freescale, Atmel chip, anything at > > > this stage > > > > I know this question is fairly general but can anyone recommend a CPU > > > meeting the above requirements? > > > You might check out the ST STM8. =A0The source-level debugger works pre=
tty
> > well. =A0Cosmic has a free compiler for up to 16K, and as best I can te=
ll from
> > the license, there are no restrictions on using the free compiler for a > > commercial purpose. =A0The full tools that will produce a larger FLASH =
image
> > are something around $1800. > > > The necessary debugging pod is only about 100 Euros. > > > However, I do work with high production volumes, and ST's pricing is > > attractive. =A0If you're doing work with annual volumes of less that 10=
K or
> > so, I'm not sure the STM8 would be the right choice. =A0For low volumes=
,
> > naturally piece-cost is less important. > > > Not sure about uCos. > > > If you're not easily able to find info or a sales rep, post again and w=
e can
> > get into direct contact. > > > The Lizard > > I can only second this recommendation by adding, go to the STM8S. > There have been a couple new ones just announced, meaning ST has > definitely still some focus on these devices. There was another > recommendation to use STM32, well these two families share > peripherals, so if you start out with the STM8S and need to upgrade > later, the STM32 will provide a very easy upgrade. Both are supported > by Raisonance and if you are using this particular compiler, switching > between the two is a piece of cake. > What Lizard did not mention, if you start out and need 16/32k flash or > less of programming space, the compiler for the STM8S (16k) as well as > the one for STM32 (32k) from Raisonance are free. > For further reading:http://www.mcu-raisonance.com/~stm8st7-c-compiler__mi=
crocontrollers__...
> Features of the new STM8S deviceshttp://www.mcu-related.com/index.php?opt=
ion=3Dcom_content&view=3Darticle&...
> > An Schwob
pray tell me where are the uc/OSII ports for STM8 or Raisonance ?
fredbasset1000@gmail.com wrote in news:df23d9fc-e93f-44eb-90cd-
b4b1c239863d@v23g2000pro.googlegroups.com:

> Hi All, > > I'm starting a new embedded control project soon, it looks fairly > simple so far, read some analog and digital inputs and provide some > PRM, digital & serial RS485 outputs. Sampling at about 10Hz should be > sufficient. I'm thinking a lower speed 16 or 32bit CPU will do the > job. > > I'd like to use a CPU which: > > supports source level debugging & fast code download for rapid turn > around cycles > has onboard Flash for of at least 64K > has plenty of eval. boards and ref. designs available > has uCos|| ported to it > a free compiler and tools (I would pay if the tools where really good) > optionally, can support C++ > > I'm wide open to using a PIC, ARM, Freescale, Atmel chip, anything at > this stage > > I know this question is fairly general but can anyone recommend a CPU > meeting the above requirements? > > Thanks, > Fred
I've used both PIC and Atmel AVR with the free GNU C tool chain. Both companies provide a decent development environment that wraps the compiler. PIC does charge too much for an 'advanced' version of the compiler, but you do not need it. Microchip (PIC) has an online store selling directly in small quantities at good prices. I find this quite valuable. Very Important: Excellent on-line community support. PIC - http://www.microchip.com/forums/Default.aspx? AVR - http://www.avrfreaks.net I repeat, both are excellent! Unless you are sitting in a university or a professinal engineering company, you may have trouble with getting help with other products. I cannot see much value to C++ in this context. Without dynamic memory allocation, C++ is just bloatware. Joe
On Mar 29, 3:48=A0pm, joemcder <jm1...@hotmail.com> wrote:
> fredbasset1...@gmail.com wrote in news:df23d9fc-e93f-44eb-90cd- > b4b1c2398...@v23g2000pro.googlegroups.com: > > > > > Hi All, > > > I'm starting a new embedded control project soon, it looks fairly > > simple so far, read some analog and digital inputs and provide some > > PRM, digital & serial RS485 outputs. =A0Sampling at about 10Hz should b=
e
> > sufficient. =A0I'm thinking a lower speed 16 or 32bit CPU will do the > > job. > > > I'd like to use a CPU which: > > > supports source level debugging & fast code download for rapid turn > > around cycles > > has onboard Flash for of at least 64K > > has plenty of eval. boards and ref. designs available > > has uCos|| ported to it > > a free compiler and tools (I would pay if the tools where really good) > > optionally, can support C++ > > > I'm wide open to using a PIC, ARM, Freescale, Atmel chip, anything at > > this stage > > > I know this question is fairly general but can anyone recommend a CPU > > meeting the above requirements? > > > Thanks, > > Fred > > I've used both PIC and Atmel AVR with the free GNU C tool chain. =A0Both > companies provide a decent development environment that wraps the > compiler. =A0PIC does charge too much for an 'advanced' version of the > compiler, but you do not need it. > > Microchip (PIC) has an online store selling directly in small quantities > at good prices. =A0I find this quite valuable. > > Very Important: =A0Excellent on-line community support. > PIC -http://www.microchip.com/forums/Default.aspx? > AVR -http://www.avrfreaks.net > > I repeat, both are excellent! =A0Unless you are sitting in a university o=
r
> a professinal engineering company, you may have trouble with getting > help with other products. > > I cannot see much value to C++ in this context. =A0Without dynamic memory > allocation, C++ is just bloatware. > > Joe
Interesting suggestion - again no uC/OSII and no C++. Gosh i wish you guys luck with your projects, given the specifications required you come up with every solution that does not meet spec. BTW PIC and AVR librarys and available code in abundace but it truly truly poor and crap. Good luck if you want to move away to a different 'controller.