Hello world для Cubieboard2

Download a Free Game!

2014-04-01 15.46.26

Рассмотрим как быстро и просто задействовать GPIO на Cubie. Рассмотрим для начала ручное мигание светодиодиком, а потом уже и собственно напишем программу.
И так.
Хочу заметить, что мы так и остаемся на прошитом Android.

Описывать как подключить к монитору и воткнуть в USB мышку я рассказывать не буду.
Первым делом Вам надо будет скачать из Google Play или с любого другого ресурса Terminal Emulator
Для этой программы, есть Wiki, на случай вопросов. Вообще команды в андройде как и в линуксе. Так что знакомым будет просто. А для таких же как и я буду все рассматривать подробно.
Запускаем эту программу и пишем в ней первым делом

su

Это необходимо для переключения пользователя SwitchUser. После этого у вас место знака $ появится # перед курсором. Это значит что вы имеете права root пользователя.

По умолчанию прошивка собрана с этими правами, так что должно все работать, но если у вас нет root прав, то придется менять прошивку.

Далее пишем

# echo 214 > /sys/class/gpio/export
# ls /sys/class/gpio/
export 
gpio214
...
unexport

Первая команда задействует порт под номером 214, это порт PI13 находится он в левом верхнем углу (самый крайний порт). Следующей командой мы проверяем его наличие.

Названия портов Cubieboard2

Через 2 порта вниз GND. Собственно эти 2 порта нам и понадобятся сейчас.

Ваша задача подключить длинную ножку светодиода к порту PI13, а короткую через резистор номиналом около 330 Ом к порту GND.

Теперь рассмотрим саму суть этого и любого другого порта. Каждый порт может быть настроен как вход или как выход. По умолчанию все порты являются входами (такая настройка предотвращает случайное сжигание порта). Чтобы изменить направление порта на выход нужно написать команду

# echo out > /sys/class/gpio/gpio214/direction

соответственно, чтобы сделать порт входом надо заменить OUT на IN. Далее мы можем узнать состояние порта

# cat /sys/class/gpio/gpio214/value 
0

и изменить состояние порта

# echo 1 > /sys/class/gpio/gpio214/value 
1

Теперь записывая в порт 0 или 1 вы можете переключать светодиод подключенный на этот порт. При value == 0 через светодиод не течет ток, а при value == 1 через светодиод течет ток. Этот ток пропорционален  сопротивлению стоящему последовательно со светодиодом. Так что будьте внимательны! Если поставить слишком маленькое сопротивление, то можно сжечь порт, а если слишком большое то светодиоду может не хватить для эмиссии.

Далее некоторые полезные ссылки

Cubian wiki GPIO-Introduction Оригинал на английском.

habrahabr.ru Общая информация о плате

habrahabr.ru Сервер на такой плате

we.easyelectronics.ru еще один обзор с подключением через putty

likeaferrari.wordpress.com похожая статья на английском

How to access GPIO pins on a Cubieboard 2 инструкция от разработчиков платы