Author Topic: ARM Microcontrollers  (Read 7889 times)

0 Members and 1 Guest are viewing this topic.

Offline Hal9000Topic starter

  • Supreme Robot
  • *****
  • Posts: 338
  • Helpful? 0
ARM Microcontrollers
« on: February 20, 2007, 10:43:22 AM »
I had a bit of a chat with my tutor the otehr day and he was saying that 8051s and PICs cannot compete with ARM architectures.

Is there anything particularly special about this microcontroller? Apparently in the next 5 years ARM will wipe the floor with all other microcontrollers  ???

Sounds like i'd better get started with that!
"The truth is, you can't hide from the truth, cos the truth is all there is" - Handsome Boy Modeling School

Offline hgordon

  • Expert Roboticist
  • Supreme Robot
  • *****
  • Posts: 373
  • Helpful? 7
    • Surveyor Robotics Journal
Re: ARM Microcontrollers
« Reply #1 on: February 20, 2007, 11:01:48 AM »
The most popular ARM processor for microcontroller applications is the ARM7TDMI.  It's a 32-bit processor that is typically found in the 50-60MIPS range (with hardware multiply), and generally includes plenty of i/o, program and data memory at a very reasonable cost (as low as $1.50 for an NXP LPC2101).  A number of companies produce microcontrollers based on ARM7 - ATMEL, Philips/NXP, Analog Devices, etc.  A wealth of development tools are available, including free compilers (GNUARM), RTOS, Linux, etc.  We use the Philips/NXP LPC2106 as our main processor, and are very pleased with the ease of software development and hardware integration.  You'll find a nice overview here -
    http://en.wikipedia.org/wiki/ARM_architecture
« Last Edit: February 20, 2007, 11:22:03 AM by hgordon »
Surveyor Corporation
  www.surveyor.com

Offline trigger

  • Full Member
  • ***
  • Posts: 115
  • Helpful? 0
  • It's an op amp, not a gun part.
Re: ARM Microcontrollers
« Reply #2 on: February 20, 2007, 12:19:05 PM »
The most popular ARM processor for microcontroller applications is the ARM7TDMI.  It's a 32-bit processor that is typically found in the 50-60MIPS range (with hardware multiply), and generally includes plenty of i/o, program and data memory at a very reasonable cost (as low as $1.50 for an NXP LPC2101).  A number of companies produce microcontrollers based on ARM7 - ATMEL, Philips/NXP, Analog Devices, etc.  A wealth of development tools are available, including free compilers (GNUARM), RTOS, Linux, etc.  We use the Philips/NXP LPC2106 as our main processor, and are very pleased with the ease of software development and hardware integration.  You'll find a nice overview here -
    http://en.wikipedia.org/wiki/ARM_architecture

With a *very* quick look, I wasn't able to find low-cost development boards for these devices. But they sound intriguing.
There are 10 kinds of people in this world: those who can read binary, and those who can't.

Offline hgordon

  • Expert Roboticist
  • Supreme Robot
  • *****
  • Posts: 373
  • Helpful? 7
    • Surveyor Robotics Journal
Surveyor Corporation
  www.surveyor.com

Offline Hal9000Topic starter

  • Supreme Robot
  • *****
  • Posts: 338
  • Helpful? 0
Re: ARM Microcontrollers
« Reply #4 on: February 21, 2007, 04:55:18 AM »
This is the one my department uses. My tutor probably gets a discount, though. It has a lot of possible uses.
http://www.olimex.com/dev/lpc-p2129.html
« Last Edit: February 21, 2007, 04:56:21 AM by Hal9000 »
"The truth is, you can't hide from the truth, cos the truth is all there is" - Handsome Boy Modeling School

Offline Admin

  • Administrator
  • Supreme Robot
  • *****
  • Posts: 11,703
  • Helpful? 173
    • Society of Robots
Re: ARM Microcontrollers
« Reply #5 on: February 21, 2007, 10:33:41 AM »
ummmm it has four RS-232 ports . . . interesting . . .

Offline Hal9000Topic starter

  • Supreme Robot
  • *****
  • Posts: 338
  • Helpful? 0
Re: ARM Microcontrollers
« Reply #6 on: February 21, 2007, 10:57:28 AM »
My tutor has written quite a lot of books and is pushing forward all sorts of patents and stuff at the moment. Our embedded system lab is growing a lot.

He probably chose this board, and therefore I would probably say it's the one to go for.
"The truth is, you can't hide from the truth, cos the truth is all there is" - Handsome Boy Modeling School

Offline hgordon

  • Expert Roboticist
  • Supreme Robot
  • *****
  • Posts: 373
  • Helpful? 7
    • Surveyor Robotics Journal
Re: ARM Microcontrollers
« Reply #7 on: February 21, 2007, 11:02:13 AM »
The hot new ARM7 is the Philips/NXP LPC2368 - it's packed with goodies -

512KB on-chip Flash ROM with In-System Programming (ISP) and In-Application Programming (IAP), 58KB RAM, CPU clock up to 72 MHz, On-chip crystal oscillator, On-chip 4MHz RC oscillator, On-chip PLL Enhanced Vectored Interrupt Controller, Ethernet 10/100 MAC with DMA, USB 2.0 Full Speed Device Controller, CAN 2.0B with two channels, General purpose DMA controller, Four UARTs, one with full modem interface, Three I2C serial interfaces, Three SPI/SSP serial interfaces, I2S interface, SD/MMC memory-card interface, 10-bit ADC with 6 channels, 10-bit DAC, Four 32-bit timers with capture/compare, Watchdog Timer, PWM unit for three-phase motor control, Real Time Clock with optional battery backup, Brown-out detect circuit, General purpose I/O pins.

The LPC2368 costs $6.50 in 1k volume.  Only issue is that it's a 160pin BGA package, so the circuit board isn't so cheap.  The LPC210x has only 48 pins.  Keil has a development board for the LPC2368.  I've looked pretty closely at this chip, but probably will move toward a multiprocessor LPC210x architecture in future development.

Surveyor Corporation
  www.surveyor.com

Offline Hal9000Topic starter

  • Supreme Robot
  • *****
  • Posts: 338
  • Helpful? 0
Re: ARM Microcontrollers
« Reply #8 on: February 21, 2007, 11:09:58 AM »
The hot new ARM7 is the Philips/NXP LPC2368 - it's packed with goodies -

512KB on-chip Flash ROM with In-System Programming (ISP) and In-Application Programming (IAP), 58KB RAM, CPU clock up to 72 MHz, On-chip crystal oscillator, On-chip 4MHz RC oscillator, On-chip PLL Enhanced Vectored Interrupt Controller, Ethernet 10/100 MAC with DMA, USB 2.0 Full Speed Device Controller, CAN 2.0B with two channels, General purpose DMA controller, Four UARTs, one with full modem interface, Three I2C serial interfaces, Three SPI/SSP serial interfaces, I2S interface, SD/MMC memory-card interface, 10-bit ADC with 6 channels, 10-bit DAC, Four 32-bit timers with capture/compare, Watchdog Timer, PWM unit for three-phase motor control, Real Time Clock with optional battery backup, Brown-out detect circuit, General purpose I/O pins.

The LPC2368 costs $6.50 in 1k volume.  Only issue is that it's a 160pin BGA package, so the circuit board isn't so cheap.  The LPC210x has only 48 pins.  Keil has a development board for the LPC2368.  I've looked pretty closely at this chip, but probably will move toward a multiprocessor LPC210x architecture in future development.



So, are you saying that the board I have suggested is pretty old now? These, after all, were bought half a year ago.

I was also wondering, whether, for the chips you have suggested, is there more cost involved to develop for them?

Are there better boards available for the same rough costing, that are free to develop for?
"The truth is, you can't hide from the truth, cos the truth is all there is" - Handsome Boy Modeling School

Offline hgordon

  • Expert Roboticist
  • Supreme Robot
  • *****
  • Posts: 373
  • Helpful? 7
    • Surveyor Robotics Journal
Re: ARM Microcontrollers
« Reply #9 on: February 21, 2007, 11:26:58 AM »
So, are you saying that the board I have suggested is pretty old now? These, after all, were bought half a year ago.

I was also wondering, whether, for the chips you have suggested, is there more cost involved to develop for them?

Are there better boards available for the same rough costing, that are free to develop for?

Just because a chip is newer doesn't necessarily make it better.  The LPC2368 draws about 3x as much current as the LPC2106, so the additional functions come at a cost.

It looks like Olimex makes some nice development boards.  We use the Embedded Artists boards because we like the engineers at the company, but we could easily work with other boards.

Other than the cost of the hardware, there don't have to be any addeddevelopment costs.  Though commercial software packages are available, we use free software (GNUARM) for all of our development.  We're not using any hardware debug interfaces (JTAG), but that would be an expense.

We selected the LPC2106 because it's the only ARM7 with 64kb of onboard RAM, and we need the memory for image processing.  There are so many ARM7's to choose between, and the choice depends a lot on your i/o requirements.  In any case, it's a very easy processor to use, and as your tutor noted, there's no reason to limit yourself computationally to old 8-bit microcontrollers when you have processors available with this kind of capability.
Surveyor Corporation
  www.surveyor.com

Offline Hal9000Topic starter

  • Supreme Robot
  • *****
  • Posts: 338
  • Helpful? 0
Re: ARM Microcontrollers
« Reply #10 on: February 22, 2007, 05:38:55 AM »
True, true. Thanks for your input!
"The truth is, you can't hide from the truth, cos the truth is all there is" - Handsome Boy Modeling School

Offline Nyx

  • Robot Overlord
  • ****
  • Posts: 204
  • Helpful? 0
Re: ARM Microcontrollers
« Reply #11 on: February 26, 2007, 05:27:28 PM »
Are there more powerful boards, say, with 1 MB of RAM and a ~25-50 MHz ARM processor? I'm wondering what could be used to build a small walker robot for example (say, something as big as plen the skateboarding robot, using servos to move all limbs). Something powerful enough to do a little bit of vision processing.

Offline trigger

  • Full Member
  • ***
  • Posts: 115
  • Helpful? 0
  • It's an op amp, not a gun part.
Re: ARM Microcontrollers
« Reply #12 on: February 26, 2007, 06:17:43 PM »
Are there more powerful boards, say, with 1 MB of RAM and a ~25-50 MHz ARM processor? I'm wondering what could be used to build a small walker robot for example (say, something as big as plen the skateboarding robot, using servos to move all limbs). Something powerful enough to do a little bit of vision processing.

If you're going to do vision processing, why not have a dedicated DSP?
There are 10 kinds of people in this world: those who can read binary, and those who can't.

Offline Nyx

  • Robot Overlord
  • ****
  • Posts: 204
  • Helpful? 0
Re: ARM Microcontrollers
« Reply #13 on: February 26, 2007, 06:51:57 PM »
Are there more powerful boards, say, with 1 MB of RAM and a ~25-50 MHz ARM processor? I'm wondering what could be used to build a small walker robot for example (say, something as big as plen the skateboarding robot, using servos to move all limbs). Something powerful enough to do a little bit of vision processing.

If you're going to do vision processing, why not have a dedicated DSP?

What do you mean by a DSP, do you mean an FPGA? I suppose that's an option, but I would still need some algorithmic control in there, so my question still stands...

There's also the fact that it's alot easier to tune a program.

Offline trigger

  • Full Member
  • ***
  • Posts: 115
  • Helpful? 0
  • It's an op amp, not a gun part.
Re: ARM Microcontrollers
« Reply #14 on: February 26, 2007, 08:56:57 PM »
What do you mean by a DSP, do you mean an FPGA? I suppose that's an option, but I would still need some algorithmic control in there, so my question still stands...

There's also the fact that it's alot easier to tune a program.

By DSP, I mean a digital signal processor. It's a specialized microcontroller for doing digital signal processing. :) You write programs for them just like on mcu's.
There are 10 kinds of people in this world: those who can read binary, and those who can't.

Offline hgordon

  • Expert Roboticist
  • Supreme Robot
  • *****
  • Posts: 373
  • Helpful? 7
    • Surveyor Robotics Journal
Re: ARM Microcontrollers
« Reply #15 on: February 26, 2007, 09:23:20 PM »
We do vision processing at relatively low resolution (160x128) in real-time on a 60MIPS ARM7.  There are versions of the ARM7 that have an external bus for program and data memory.  Here's a pretty good comparison chart -

http://www.gnuarm.com/ArmDevices_landscape.pdf

Note that the ARM7 has a hardware multiple that uses 1-4 clock cycles, depending on word size, and there's also a single cycle barrel shifter, so the ARM7 arithmetic performance is comparable a DSP of similar clock speed.
Surveyor Corporation
  www.surveyor.com

Offline Nyx

  • Robot Overlord
  • ****
  • Posts: 204
  • Helpful? 0
Re: ARM Microcontrollers
« Reply #16 on: February 26, 2007, 09:27:39 PM »
Yeah :P

Well, I found a serial 32-servo controller.... If I can't find what I'm looking for in ARM, maybe I can hook that with a nano ITX board and size up my walker robot to something like 18" high.

Hmm, are there such things as cheap serial gyroscopes?

Offline JesseWelling

  • Expert Roboticist
  • Supreme Robot
  • *****
  • Posts: 707
  • Helpful? 0
  • Only You Can Build A Robot!
Re: ARM Microcontrollers
« Reply #17 on: February 26, 2007, 10:30:32 PM »
bluetooth IMU's at Sparkfun.... ::)

 


Get Your Ad Here