Skip to content

Processors for Raspberry Pi and Arduino CoMs

by Jim Harrison

Two popular low cost computer-on-modules (CoM) are the Raspberry Pi and the Arduino.

Raspberry Pi reportedly sold out the 11,000 unit first production run in one day. So what’s the big deal? Price of $25 or $35 is the big deal. With HDMI and Ethernet 10/100 and USB connections, the credit card sized board is really cool. But, I never would have guessed at the popularity. element14, the leading distributor of Raspberry Pi, recently announced that it has now manufactured more than 500,000 of the boards since the launch in February of 2012. Where are all these Pis? What are they doing?

I suspect many are in a dark desk drawer someplace. But many, I’m certain, are also useful contributors to society. If you have done a Raspberry Pi design and can share something about it with us – please do so at www.eebeat.com. Search for R-Pi and add a comment.

The Raspberry Pi BCM2835 can run at up to 700 MHz and has a multimedia co-processor

The processor for the R-Pi is the Broadcom BCM2835. The BCM2835 is a full HD, multimedia applications processor for advanced mobile and embedded applications. Optimized for power efficiency, the processor features:

● Low power ARM1176JZ-F applications processor
● dual core VideoCore IV multimedia co-processor
● OpenGL-ES 1.1/2.01; Gpixel/s fill rate
● 1080p30 Full HD HP H.264 video encode/decode
● advanced image sensor pipeline or up to 20-Mpixel cameras operating at up to 220 Mpixels/s
● Simultaneous display outputs for high resolution LCD and HDMI with HDCP at 1080p60

and it has the following peripherals which may safely be accessed by its ARM core:

● • Timers
● • Interrupt controller
● • GPIO; USB; PCM / I2S
● • DMA controller
● • I2C master; SPI
● • PWM
● • UART0, UART1

The Raspberry Pi CPU is clocked at 700 MHz and may have up to 512 MB of RAM (model B). For R-Pi, running on 5 V, I’ve seen supply measurements of 320 mA in idle without a network, 370 mA with Ethernet. Model B users should have at least a 700 ma supply because of the USB ports potential power output. 1080p video playback can push current 750 mA, I’m told.

You can choose from a number of free Linux OS distributions, which you load via the SD card. Raspbian is one choice, and it comes with a GUI, the Python object-oriented programming language (www.python.org), and IDLE 3, a Python integrated development environment. IDLE 3 seems to be mostly a text editor. But, it is a starting point. The web site http://www.raspberrypi.org/downloads has many links to SD card images for various operating system distributions. It is recommended you use a 4 Gbye SD card or larger, but most packages are about 500 Mbytes.

You may see a hard float distribution. This uses hard code for floating-point of the ARM-11 based CPU. A soft float is a lot slower and a lot smaller, more reliable, and more fixable.

Meanwhile, the Arduino open-source electronics prototyping platform uses different processors, some of which are shown in the table below. It has considerably less processing power than an R-Pi, But when power consumption is of paramount importance the Arduino has the edge with microwatt consumption when in sleep mode.

The Arduino Due uses a 32-bit Atmel SAM3 processor.

The Arduino microcontroller is programmed using the Arduino programming language (based on Wiring, http://wiring.org.co) and a development environment – which is basically a text editor and a compiler. There are a lot of different Arduino boards available (see: http://arduino.cc/en/Main/Products). An Arduino microcontroller is pre-programmed with a boot loader.

The Arduino Uno board uses an 8-bit 8MHz Atmega 328, the Arduino Mega an 8-bit 16MHz ATmega2560, and the newest member, the Arduino Due, uses a 32-bit 84MHz ARM Sam32 processor. The first two boards have 6 or 16 10-bit A/D converters, while the Due has 2 12-bit. The Uno has 32 Kbytes of flash, the Mega 256 Kbytes, and the Due has 512 Kbytes.

You can have the Uno for just $24.52, the Mega for $47.22, and the Due will set you back $49.99.

Unlike other Arduino boards, the Arduino Due board runs at 3.3V. The maximum voltage that the I/O pins can tolerate is 3.3V. Providing higher voltages, like 5V to an I/O pin may damage the board.

Post a Comment

Your email is never published nor shared.