Микрокомпьютер Raspberry Pi

И. КУТЕПОВ, Радио №1/2014 ст.17

В предлагаемой вниманию читателей статье речь пойдёт о компьютере, собранном на одной небольших размеров печатной плате, но способном полноценно работать под управлением опе­рационной системы семейства Linux. Разработчики Raspberry Pi ставили перед собой цель создать удобное и дешёвое средство для освоения начинающими компьютерной техники и програм­мирования. Но оказалось, что он может служить и основой раз­нообразных любительских конструкций, далеко опережая по своим возможностям ставшие уже привычными микроконтрол­леры и модули на их основе (например, популярный Arduino). Сегодня Raspberry Pi уже завоевал популярность во всём мире и используется в таких областях техники, как «умный дом», авто­матика, робототехника, обработка видеоинформации. Редакция надеется, что наши читатели также найдут ему множество полезных применений.

Основа компьютера Raspberry Pi — «система на кристалле» (SoC) Broadcom ВСМ2835 с процессором ARM1176JZF-S (тактовая частота 700 МГц) и видеоускорителем Video- Core IV, обеспечивающим разрешение Full HD 1080. Объём оперативной памя­ти — 512 Мбайт. Долговременная память — карта SD/MMC объёмом не менее 4 Гбайт с установленной на ней операционной системой семейства Linux. Такую карту с уже установленной операционной системой (ОС) Debian 6 Linux можно приобрести дополнительно к компьютеру.

Компьютер собран на плате разме­рами 85,6x54x17 мм, фотоснимок кото­рой показан на рис. 1. Изображена плата компьютера модели В последней на сегодня модификации Revision 2. Более ранние варианты имеют некото­рые отличия. Подробнее об этом можно узнать в [1]. На снимке обозначены интерфейс­ные разъёмы компьютера и разъём microUSB, на который подают только напряжение питания 5 В от внешнего источника (информационные линии не используются). Потребляемая компью­тером мощность — 3,5 Вт. Чтобы защи­тить плату от нежелательных воздейст­вий, её можно поместить в приобретае­мый отдельно ударопрочный корпус, показанный на рис. 2. Это защитит плату и от нежелательных случайных замыканий при различных эксперимен­тах с ней.

Raspberry Pi модели В оснащён сдво­енным разъёмом интерфейса USB 2.0 для клавиатуры, мыши и других пери­ферийных устройств с таким интерфей­сом. Поскольку этих разъёмов только два (у модели А он был всего один), для увеличения числа подключаемых уст­ройств рекомендуется использовать USB-хаб с внешним питанием (чтобы не перегружать источник питания компью­тера и тонкие печатные проводники его платы). Имеется также стандартный разъём RJ-45 интерфейса Ethernet 10/100 Мбит/с. Он предназначен для соединения с локальной сетью и с Интернетом. Предусмотрены два выходных ви­деоразъёма — HDMI и RCA («тюльпан»). Сигнал с последнего можно подать на композитный видеовход любого теле­визора. К разъёму HDMI можно подклю­чить оснащённый таким интерфейсом телевизор или монитор, а через специ­альный переходник, изображённый на рис. 3, — монитор SVGA Но в комплект поставки компьютера этот переходник не входит, его приобретают отдельно. Формируемый компьютером аудиосиг­нал выведен на гнездо под стандартный стереоштекер диаметром 3,5 мм. Вы­ход маломощный, к нему можно под­ключать активную акустическую систе­му или головные телефоны.

На рис. 4 представлены взаимное расположение и назначение выводов основного разъёма порта GPIO (General Purpose Input-Output — ввод—вывод общего назначения) Это двухрядный 26-контактный разъём с шагом штыре­вых контактов и расстоянием между их рядами 2,54 мм.

Многие контакты разъёма GPIO имеют альтернативные функции и могут использоваться в интерфейсах UART, SPI, 12С. На сегодняшний день сущест­вуют два варианта печатной платы Raspberry Pi модели В. Приведённое на рис.4 назначение выводов действи­тельно для Raspberry Pi, собранного на печатной плате Revision 2.0. На этой плате предусмотрено посадочное мес­то для ещё одного разъёма GPIO. На рис. 1 оно находится ниже основного разъёма, левее его середины. Сам восьмиконтактный разъём отсутствует, но его можно установить самостоятель­но с обратной стороны платы. Для первого контакта предназначена квадратная контактная площадка. Назначение контактов показано на рис. 5. Уровни сигналов на разъёмах GPIO характерны для логических микросхем с напряжением пита­ния 3,3 В. Большее напряжение на его контакты подавать нельзя. При необходимости взаимодействия с логическими микросхемами с более высоким напряжением питания должны применяться преобразователи уровня, примеры схем которых имеют­ся в [2].

В нижней по рис. 1 части платы Revision 2, справа от мик­росхемы стабилизатора напря­жения, имеется место для ещё одного разъёма. К нему можно подключить кнопку «Reset», устанавливающую компьютер в исходное состояние.

Питание к плате подводят через разъём microllSB от любого стабилизированного источника постоянного на­пряжения 5 В. Для Raspberry Pi модели В этот источник должен быть способен отдавать ток не менее 700 мА. Для модели А достаточно 300 мА. Я исполь­зовал зарядное устройство для смартфона NOKIA с максималь­ным током нагрузки 1200 мА.

Известны случаи, когда при работе с Raspberry Pi наблюда­лись «залипания” клавиш и про­пуски их нажатий. Причиной этого всегда были «провалы» напряжения питания при рез­ких изменениях потребляемого от него тока. Разработчики компьютера рекомендуют при­менять в таких ситуациях ис­точник питания большей мощ­ности. Разъём JTAG используется при изготовлении и тестирова­нии компьютера. При обычной работе необходимости под­ключения к нему, как правило, не возникает, и на некоторых платах (в том числе на изобра­жённой на рис. 1) этот разъём даже не установлен. К разъёму DSI можно подключить ЖК- панель с одноимённым после­довательным интерфейсом [3]. Разъём CSI предназначен для подключения видео- или фотокамеры [4]. Можно, конечно, подключить видео­камеру и к разъёму USB.

На плате имеются пять светодиодов, которые сигнализируют о следующих ситуациях:

ACT (зелёный) — обращение к SD-кар- те;

PWR (красный) — наличие напряже­ния 3,3 В;

FDX (зелёный) — полнодуплексное подключение к сети;

LNK (зелёный) — активность сети;

100 (жёлтый) — сеть 100 Мбит/с.

Платы расширения Raspberry Pi

Существуют различные дополни­тельные платы, что позволяет подклю­чать к микрокомпьютеру разные датчи­ки и исполнительные устройства. Вот некоторые из них. Плату PiFace устанавливают сверху на плату Raspberry Pi. Она имеет такие же размеры и вырезы для разъёмов композитного видео, Ethernet и USB (рис.6). При этом PiFace соединяется с разъёмом GPIO, а все остальные разъёмы Raspberry Pi остаются свобод­ными. На PiFace установлены два реле, способные коммутировать ток до 10 А, четыре кнопки, имеются восемь дис­кретных входов и восемь выходов с открытым коллектором, а также восемь светодиодов. Исполнительные устрой­ства (лампы, электродвигатели) и кон­тактные датчики подключают к PiFace с помощью винтовых зажимов. Плата поставляется вместе с обучающими материалами и примерами программ на языках С и Python.

На плате Gertboard, изображённой на рис. 7, имеются множество портов, восьмиразрядный микроконтроллер Atmel AVR (ATmega168 или ATmega328), контроллер электродвигателя, кнопки, светодиоды и пр. Зоны платы, занятые основными узлами, выделены на рис. 7 цветными рамками. Тестовые програм­мы для Gertboard, написанные на язы­ках С и Python, находятся в свободном доступе в Интернете. Совместно с Raspberry Pi получается идеальный инструмент для разработки домашней автоматики и созда­ния робототехнических уст­ройств.

Отладочная плата Embed­ded PI (рис. 8) позволяет со­единять микрокомпьютер с платами расширения (шилдами) Arduino, имеет микроконт­роллер STM32F103 и допол­няется удобными в использо­вании примерами программ. Она может быть прекрасной оценочной платформой для этого микроконтроллера се­мейства Cortex-МЗ. Оснащена интерфейсом JTAG/SWD для программирования и отладки, совместима с бесплатной сре­дой разработки СооСохIDE.

Предусмотрены три режи­ма работы, переключаемых джамперами. В режиме Rasp­berry Pi плата служит соедини­тельным мостом между этим микрокомпьютером и платами расширения Arduino. В авто­номном режиме управление берёт на себя микроконтрол­лер STM32, и (забота происхо­дит без участия Raspberry Pi. В режиме адаптера микроконт­роллер STM32 управляет пла­тами расширения Arduino, а Raspberry Pi обеспечивает ин­терфейс с пользователем или служит консолью для подачи команд и приёма информации от Embedded Pi. В этом режиме возможности Raspberry Pi рас­ширяются за счёт использования ресурсов STM32.

Программное обеспечение Raspberry Pi

Дистрибутивов различных ОС для Raspberry Pi существует много: Arch Linux, Debian, OpenELEC и др. Подроб­ную информацию о них можно посмот­реть на сайте [5].

Процесса установки дистрибутива как такового нет, обычно на SD-карту записывают рабочий образ ОС, а при первом запуске выполняют несколько простых команд. Что касается настрой­ки системы под свои нужды, то Интернет просто изобилует как готовыми реше­ниями, так и подробными объяснениями и инструкциями. Установка дополни­тельных программ и библиотек не вызы­вает затруднений, но необходимым ус­ловием является подключение Raspberry PI к Интернету. Все операции по установ­ке, обновлению и удалению выполняют­ся менеджером пакетов, который име­ется во всех основных дистрибутивах.

Я выбрал для себя ОС Raspbian. Она оптимизирована под Raspberry Pi и широко описана в Интернете. По адресу http://downloads.raspberrypi.org/download.php?file=/images/raspbian/ 2012-07-15-wheezy-raspbian/2012- 07-15-wheezy-raspbian.zip можно скачать образ этой ОС. Он находится в ZIP-архиве, и его необходимо разархи­вировать. Также потребуется утилита Win32Disklmager [6}, запустить которую нужно с правами администратора.

Установите чистую SD-карту в кард­ридер, подключённый к компьютеру, работающему под ОС Windows, посмот­рите в «Проводнике», какую букву она получила в системе, чтобы случайно не затереть информацию, хранящуюся на другом носителе.

В программе Win32Disklmager выбе­рите файл со скачанным и разархиви­рованным ранее образом ОС Raspbian, укажите нужную букву носителя и на­жмите на экранную кнопку Write. На вы­веденное на экран предупреждение дайте ответ Yes». Начнётся процесс раз­биения карты на разделы и загрузки на неё ОС (рис. 9) Он должен завершить­ся сообщением об успехе (рис. 10).

Теперь необходимо отредактировать файл config.txt в корневом директории карты памяти это конфигурацион­ный файл системы для Raspberry Pi. Обратите внимание, что приводимые далее настройки действительны для ЖК-мониторов с разрешением экрана 1920×1080 пкс.

Если не предполагается использо­вать видеовыход на разъём RCA, пара­метр disable_overscan=1 следует рас­комментировать. Советую также ус­тановить фиксированное разрешение, раскомментировав строки hdmijjroup и hdmimode. Значение параметра hdmi_mode следует изменить в соот­ветствии с таблицей, которая имеется в [7]. Например, для монитора с разре­шением 1920×1080 пкс необходимо написать hdmi_mode=16. Там же приве­дены значения и других параметров, которые, возможно, будут полезны.

Не забыв сохранить изменения, из­влеките SD-карту из кардридера и вставьте её в Raspberry Pi. Подав на плату питание, увидите на мониторе отчёт о процессе загрузки, а на плате Raspberry Pi — мигание светодиодов.

При первой загрузке будет автома­тически запущена программа настрой­ки системы raspi config (рис. 11). В ней выполните следующие действия:

  • командой expand rootfs расширьте корневой раздел root на всю SD-карту;
  • войдя в раздел configure keyboard, выберите наиболее подходящий тип клавиатуры, я выбрал Logitech Cordless Desktop;
  • войдя в раздел change_pass, уста­новите новый пароль для пользователя pi (обратите внимание, что вводимые символы не отображаются вообще, да­же в виде звёздочек!);
  • в пункте change locale установите дополнительные локали (я не стал этого делать и оставил единственную локаль по умолчанию — en GB UTF8);
  • установите часовой пояс (set timezone). Например, чтобы установить московское время, необходимо вы­брать пункт Europe, а в нём — Moscow;
  • установите Memory split. Если предполагается пользоваться графиче­ским интерфейсом, рекомендую отвес­ти под video 32 Мбайт;
  • обязательно активируйте SSH;
  • если необходимо, чтобы при за­грузке Raspbian автоматически запус­калась графическая среда, активируйте boot behaviour;

В завершение нажмите комбинацию клавиш Ctrl+F и выберите пункт Finish, соглашаясь на перезагрузку устройст­ва. По её завершении на экране про­явится приглашение ввести имя поль­зователя и пароль. Имя пользователя — pi, пароль был задан при настройке системы Raspbian. На этом установка и первичная настройка системы завер­шены.

Рассмотрим ещё один популярный дистрибутив Fedora Remix Linux. Он состоит в основном из пакетов проекта Fedora ARM, а также небольшого числа адаптированных пакетов обычной ОС Fedora и библиотек, которые не могут быть включены в обычную Fedora в силу лицензионных ограничений. В частнос­ти. это библиотеки для доступа к воз­можностям GPU Raspberry Pi.

Образ системы для записи на SD-кар- ту включает в себя более 640 пакетов программного обеспечения: консоль, графические оболочки LXDE и XFCE с набором языков программирования, приложения, системные инструменты и службы для обеих оболочек. В репози­ториях Fedora ARM доступны более 16000 пакетов программ, которые мо­гут быть легко установлены через Ин­тернет для настройки системы под кон­кретные нужды.

Дистрибутив включает в себя сле­дующие приложения:

  • языки программирования python, perl, ruby, bash;
  • систему контроля версий git;
  • системные приложения для на­стройки различных параметров систе­мы (дата/время и прочее), управления пользователями, принтерами и другим оборудованием;
  • инструменты для установки, уда­ления и обновления программного обеспечения;
  • SSH и службы принтера;
  • текстовый процессор ApiWord, электронные таблицы Gnumeric, графи­ческий редактор GIMP, web-браузер Fi refox;
  • текстовые редакторы для про­граммистов vim, gedit с плагинами для управления файлами, Python-консоль.

Самый простой способ установить Raspberry Pi Fedora Remix Linux — вос­пользоваться установщиком, который написал Jon Chiappetta. Установщик сам скачивает образ Fedora Remix из Ин­тернета и записывает его на SD-карту. Размер образа — 1,6 Гбайт. Он досту­пен в трёх вариантах:

  1. RPM-пакет для Fedora Linux <http://files.velocix.com/c1410/fedora/installer/fedora/fedora-arm-installer-1.0.0.zip>.
  2. Пакет для пользователей Windows <http://files.velocix.com/c1410/fedora/installer/windows/fedora-arm-installer—1.0.0.zip>. Для доступа к SD-карте может потребоваться запуск установ­щика с правами администратора, воз­можны также проблемы, если в пути к образу дистрибутива будут содержать­ся пробелы. Недостатки планируется устранить в будущих версиях установ­щика. Работает он в Windows 7 и Windows Vista.

Специальный Python-скрипт уста­новщика для пользователей прочих операционных систем <http://files.velocix.com/c1410/fedora/installer/source/faii-1.O.O.tar.gz>

Для первой загрузки рекомендуется, чтобы к HDMI-выходу Raspberry Pi был подключён HDMI- или DVI-D-монитор. Необходимо наличие USB-клавиатуры и подключение к сети IPv4 с динамиче­ским распределением IP-адресов.

Во время первой загрузки размер образа будет скорректирован, чтобы полностью заполнить SD-карту. Далее необходимо задать корневой пароль, создать аккаунт первого пользователя для входа в систему, выбрать часовой пояс и вариант загрузки системы — консольный или графический. В случае отсутствия клавиатуры эти шаги будут пропущены, автоматически запустятся консольный интерфейс и SSH-сервер, чтобы к устройству можно было под­ключиться по сети (корневой пароль по умолчанию — fedoraarm).

Используется ядро версии 3.1.9. Закрытые библиотеки Raspberry Pi, заголовочные файлы и утилиты распо­ложены в стандартных директориях /usr/lib, /usr/include, /usr/bin, /usr/sbin/, а не в /opt/vc (как в Debian для Rasp­berry Pi).

Исходные тексты программ для де­монстрации мультимедийных возмож­ностей находятся в директории /usr/ share/vc-demo-source. Информация об их компиляции и использовании име­ется на официальной Wiki-странице Fedora Remix <http://zenit.senecac.on.ca/wiki/index.php/Raspberry_Pi_ Fedora_Remix>.

Все библиотеки, скрипты загрузки, прошивка GPU, ядро доступны в виде RPM-пакетов, а значит, могут устанав­ливаться и обновляться из онлайн- репозиториев с помощью менеджера пакетов yum <http://files.velocix.com/c1410/fedora/installer/windows/fedora-arm-installer-1.0.O.zip> Более под­робную информацию можно найти в [8].

Настройка и запуск удалённогорабочего стола

Для чего нужен удалённый рабочий стол? Чтобы иметь возможность рабо­тать со своим Raspberry Pi откуда угод­но. При наличии IP-адреса, даже вре­менного, можно подключиться к Rasp­berry Pi из любой точки мира. Если выделенного IP-адреса нет, можно под­ключиться с любого компьютера до­машней сети.

Удалённый рабочий стол даёт воз­можность дистанционно управлять уст­ройством, запускать приложения, пи­сать и отлаживать программы, находясь далеко от Raspberry Pi А подключив к Raspberry Pi видеокамеру, можно по Интернету наблюдать за помещением, в котором она установлена, находясь даже в другой стране. Для организации удалённого рабо­чего стола потребуются две программы: PuTTY и Xming. Первую можно взять по адресу <http://putty.org.ru/ download. html>, а вторую — по адресу <http://sourceforge.net/projects/xming/>. PuTTY — универсальный SSH-клиент ти­па Телнета, но с шифрованием. Xming — это локальный Х-сервер для Wndows.

Именно он будет отображать рабочий стол Raspberry Pi на компьютере.

На Raspberry Pi ничего устанавли­вать не требуется. Единственное, нужно включить SSH-сервер, если это не было сделано раньше. Для этого командой

$ sudo raspi-config

запустите конфигуратор, включите в пункте меню SSH опцию enable и пере­запустите Raspberry Pi. Теперь он готов к удалённой работе.

Далее необходимо установить на компьютере, с которого требуется до­ступ к Raspberry Pi, скачанные из Интернета PuTTY и Xming.

PuTTY достаточно просто разархиви­ровать. Настройка клиента очень про­ста. На вкладке «Сеанс» введите IP-ад­рес Raspberry Pi, номер порта оставьте 22 и выберите тип соединения SSH. В строке «Сохранённые сеансы» введите любое имя организуемого соединения и нажмите «Сохранить». Теперь сделан­ные настройки сохранены в созданном профиле.

Далее перейдите в пункт «Соедине- ние-»Данные» и введите имя и пароль для входа в Raspberry Pi. Если их не меняли, то имя — pi, а пароль — ras­pberry. Это делается для того, чтобы не вводить имя и пароль при каждом входе.

Перейдя в пункт «SSH-»X11», отметь­те пункт «Включить переадресацию Х11». В строке «Отображение дисплея X» напишите «localhost:0» Возвратив­шись на вкладку «Сеанс», сохраните все установленные режимы под именем созданного профиля. На этом настрой­ка завершена. Если захотите поэкспе­риментировать с другими режимами, это можно сделать позже.

Теперь щёлкните мышью по создан­ному профилю и нажмите на экранную кнопку «Соединение». Если всё сделано правильно, на экране компьютера будет отображён знакомый терминальный режим Raspberry Pi С ним можно пол­ноценно работать. Все введённые команды будут исполняться точно так же, как если бы их ввели непосред­ственно с клавиатуры, подключённой к Raspberry Pi.

Если хочется иметь полноценный рабочий стол, пришло время вспомнить о программе Xming. Устанавливая её, давайте утвердительные ответы на все вопросы, которые будут заданы в про­цессе установки. При первом запуске на этапе «Select display settings” выбе­рите пункт «One window», a «Display num­ber» установите равным нулю. В окне «Select how to start Xming» выберите «Start no client». Изменить настройки или исправить допущенную ошибку можно с помощью XLanch. Запустите Xming. В трее должен по­явиться его значок, свидетельствующий о том, что Х-сервер работает. Чтобы появился рабочий стол, введите в тер­минале PuTTY команду startlxde. На эк­ране раскроется рабочий стол Rasp­berry Pi. Кстати, независимо от него можно продолжать работать и в терми­нале, например, запускать из команд­ной строки любые графические прило­жения. Xming можно научить запускать PuTTY в автоматическом режиме. Тогда рабочий стол будет открываться одним нажатием кнопки. Подробности ищите на сайтах, посвящённых этим програм­мам, например [9].

Разработка прикладных программ для Raspberry Pi

Писать прикладные программы мож­но на языках C++ и Python. В составе дистрибутивов есть и популярный язык программирования Scratch. Можно также создавать приложения, исполь­зующие GUI (Graphical User Interface — графический интерфейс пользователя), на языке Qt.

Ниже рассмотрим, как работать с Raspberry Pi на примере управления логическими уровнями на линиях порта GPIO.

Работа с портом ввода—вывода общего назначения

Анализируя логические уровни, установленные внешними устройства­ми на линиях порта GPIO, настроенных как входы, и изменяя уровни на других линиях, настроенных как выходы, Raspberry Pi может управлять этими устройствами Любыми, от обычной сигнальной лампы до беспилотного летательного аппарата. Область приме­нения ограничена лишь вашей фантази­ей и знаниями.

Чтобы в программе на языке Python работать с портом ввода—вывода GPIO, необходима специальная библиотека. Ее можно получить, зайдя по адресу http://code.google,com/p/raspberry-gpio-python/ в Интернет или выполнив консольную команду

$ wget http://pypi.python.org/pacicages/source/R/RPi .gpio/RPi.GPIO-O.l.O.tar.gz

Вводить ее следует единой строкой. Далее для установки библиотеки выполните следующие дей­ствия:

$ tar zxf RPi.GPIO-O.l.O.tar.gz

$ cd RPi.gpio-O.1.0

$ sudo python setup.py install

Рассмотрим простейший пример — управление светодиодом. Выбираем для его питания контакт 17 разъема GPIO, на который выведено напряжение 3,3 В. Такое же напряжение имеется и на контакте 1, можно использовать и его. Для управления светодиодом исполь­зуем линию GPIO10 (контакт 19), но мож­но и любую другую. Схема подключения светодиода показана на рис. 12. Там же имеется кнопка SB 1, о которой будет рассказано позже, а пока её и резистор R1 подключать не обязательно. Назна­чение резистора R2 — ограничить по­требляемый светодиодом HL1 ток, ко­торый без этого резистора может дос­тичь очень большого значения, опасно­го не только для светодиода, но, что ещё хуже, и для самого порта, находящегося внутри установленной на плате микросхемы, повреждение которой приведёт к отказу компьютера.

Теперь можно написать и запустить программу, приведённую в табл. 1 При вводе текста обратите внимание на пробелы. В языке Python они имеют большое значение, пропускать их нель­зя. Во время работы этой программы мигает с периодом 2 с светодиод HL1, подключённый, как было описано выше.

Пришло время подключить к разь- ёму GPIO кнопку SB 1. Когда она отпуще­на, на линии GPI011 благодаря резис­тору R1 будет установлен высокий логи­ческий уровень, а когда нажата — низ­кий. После запуска программы, приве­дённой в табл. 2, светодиод будет включён при отпущенной кнопке, а при нажатой — выключен.

Raspberry Pi можно программиро­вать и на языке C/C++. Рассмотрим пример использования порта GPIO на этом языке. Но прежде выполним сле­дующую команду, тоже условно разби­тую на две строки

$ wget http://www.open.com.au/mikem/bcm2835/bcm2835-1.17.tar.gz

Скачанную по этой команде библио­теку необходимо установить, а для это­го сначала разархивировать командой $ tar zxvf bcm2835-1.17.tar.gz Перейдём в директорий, в который помещена разархивированная библио­тека, и установим её:

$ cd bcm2835-1.17

$ ./configure make

$ sudo make check

$ sudo make install

Компилятор языка С теперь может использовать установленную библиоте­ку. Но прежде чем начинать писать про­грамму, возвратитесь в домашний директорий

$ cd ..

В нём нужно создать для будущей программы новый директорий под любым именем (например, myprog), перейти в него и вызвать текстовый редактор nano, указав ему имя созда­ваемого файла программы GPIO-test.c:

$ mkdir myprog

$ cd myprog

$ nano GPIO-test.c

Текст программы приведен в табл. 3. Более полную информацию можно най­ти в [10]. Там же есть подобный пример и его описание [11].

Заключение

Сегодня существуют множество про­ектов на основе микроконтроллера Raspberry Pi. Хочу кратко упомянуть один из них, которому посвящён сайт [12]. На мой взгляд, он заинтересует читателей, пытающихся создать «умный дом» свои­ми руками. При этом следует учитывать не только ассортимент и стоимость дат­чиков и исполнительных устройств, но и возможности контроллера. Большинст­во продаваемых контроллеров сразу готовы к работе «из коробки», но предо­ставляют ограниченные возможности. Проект, о котором идёт речь, построен на базе микрокомпьютера Raspberry Pi и технологии Z-Wave с использованием платы расширения RaZberry. Она пре­вращает микрокомпьютер в Z-Wave контроллер домашней автоматики.

Хочется отметить тот факт, что в Интернете очень много сайтов с раз­личными статьями, блогами, форума­ми, посвящёнными Raspberry Pi. Это доказывает наличие интереса к нему и свидетельствует о его популярности.

ЛИТЕРАТУРА