Воодушевленные успехом Raspberry, многие производители выпустили собственные миникомпьютеры. И хотя по цене никто к Raspberry подобраться не смог ( ведь RPI не задумывался как коммерческий проект, и, соответственно, в его стоимость не заложены те 2% нормы прибыли, на которые все и живут)), по функционалу было предложено много интересных решений.
Для меня интересным показался проект pcDuino — при более менее средних показателях производительности (немного быстрее RPI, немного медленнее Odroid) ее главное преимущество — достаточно много портов ввода- вывода, возможность прямого подключения шилдов от Arduino.
image

Общие характеристики pcDuino:
  • 1GHz ARM Cortex A8 CPU
  • GPU: OpenGL ES2.0, OpenVG 1.1 Mali 400 core
  • 1GB DRAM
  • Onboard Storage: 2GB Flash, microSD card (TF) slot for up to 32GB
  • Arduino-Style Peripheral Headers (Adapter Needed for Shield Form-Factor)
  • HDMI Video Output
  • Linux3.0 + Ubuntu12.10 Supported + Android ICS 4.0 (по умолчанию поставляется с Ubuntu)
  • 0.1" Spaced GPIO Headers
  • RJ45 Ethernet Connection (10/100)
  • Power Requirements: 2A @ 5VDC
  • API to access the following interfaces:
  • UART
  • ADC
  • PWM
  • GPIO
  • I2C
  • Program in C, C++ with GNU tool chain
  • Program in Java with standard Android SDK

И немного подробнее про GPIO
  • 14 digital pins for GPIO
  • One UART RX, one UART TX
  • Two PWM pins
  • Six ADC pins (2 шестибитных, и 4 12-ти битных
  • Four SPI pins
  • Two I2C pins

А теперь посмотрите как эти порты расположены:

Ножки полностью соответствуют ножкам Arduino Uno, только расположены близко друг к другу. (Собственно, как заявляет производитель, для прямого включения шилдов нужно использовать плату — переходник. Правда, как она выглядит, я так и не смог найти, нашел только такой способ подключения:
— Цепляем макетку на проводах
image
— Ставим в макетку шилд с портами и подключаем датчики
image

Программирование действительно выглядит в стиле Arduino:
/*
* Touch Sensor module of Linker Kit for pcDuino
* http://linksprite.com/wiki/index.php5?title=Touch_Sensor_Module
*/
#include <core.h>
int led_pin = 8; //Connect LED module to GPIO 8
int btn_pin = 7; //Connect touch module to GPIO 7

void setup()
{

pinMode(led_pin, OUTPUT);
pinMode(btn_pin, INPUT);
}

void loop()
{
int value = digitalRead(btn_pin); // get button status

if ( value == HIGH ) // button pressed
{
digitalWrite(led_pin, HIGH); // turn on LED
}
else // button released
{
digitalWrite(led_pin, LOW); // turn off LED
}
delay(100);
}


Непонятным для меня осталось, насколько легко можно использовать библиотеки Arduino для работы с LCD, DC18b20 — никакой информации об этом я пока не нашел. Видимо придется помучиться.
Стоимость с доставкой обычной почтой рассчитывается на сайте поставщика в 64 USD, RPI обходится примерно в те же деньги…
Заказываю и через месяц посмотрю, насколько она соответствует моим ожиданиям