Advertisement

Processors for Raspberry Pi and Arduino CoMs

Processors for Raspberry Pi and Arduino CoMs

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 2012. Where are all these Pis? What are they doing?

I suspect quite a few 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 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 coprocessor
• 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

The processor has the following peripherals, which may safely be accessed by its ARM core:

• Timers
• Interrupt controller
• GPIO; USB; PCM / I2 S
• DMA controller
• I2 C master; SPI
• PWM
• UART0, UART1

The Raspberry Pi CPU is clocked at 700 MHz and may have up to 512 Mbytes 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.

Processors for Raspberry Pi and Arduino CoMs

Fig 1: The Raspberry Pi BCM2835 can run at up to 700 MHz and has a multimedia coprocessor.

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 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.

Processors for Raspberry Pi and Arduino CoMs

Fig 2: 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 preprogrammed with a boot loader.

Parameter | Type Uno Mega Due
Digital I/O: 14 54 54
I/O that can PWM: 6 15 12
Operating Voltage 5V 5V 3.3V
Analog Inputs (ADC): 6x 10-bit 16x 10-bit 12x 12-bit
Analog Outputs (DAC) 2x 12-bit 1MSPS
Processor: Atmega 328 ATmega2560 SAM3X8E
Processor Architecture: 8-bit RISC at16MHz 8-bit RISC at 16MHz 32-bit ARM at 84MHz
Flash Memory (for firmware) 32kB 256kB 512kB
RAM: 2kB 8kB 96kB
DMA: Yes, for up to 17 peripherals
USB Host USB OTG
Timers 2x 8-bit, 1x 16-bit 2x 8-bit, 4x 16-bit 9x 32-bit
Power in lowest state (uC chip only) 0.1uA 0.1uA 2.5uA
Ethernet MAC (EMAC) One 10/100
Price $24.52 $47.22 $49.99

Table 1: A table from the element14 web site shows three of many Arduino boards

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

Advertisement



Learn more about Electronic Products Magazine

Leave a Reply