Raspberry pi: подключение платы к дисплею ноутбука

Заводим Raspberry Pi: установка, подключение, начало работы

Raspberry Pi — полноценный компьютер размером с кредитную карту. Контроллер умеет выводить изображение на дисплей, работать с USB-устройствами и Bluetooth, снимать фото и видео на камеру, воспроизводить звуки через динамики и выходить в интернет. Рассмотрим начало работы с одноплатнными компьютерами Raspberry Pi.

Платформы Raspberry Pi

Если вы только начинаете своё путешествие в мир Raspberry Pi, рекомендуем воспользоваться образовательным набором «Малина» и книгой Заводим Raspberry Pi.

Видеообзор

Установка и настройка

Включение компьютера

Если у вас нет карты памяти с ОС Raspbian, запишите образ самостоятельно.

Если хотите получить максимальную автономность — цветные сенсорные графические дисплеи превратят Raspberry Pi в настоящий планшетный компьютер.

Что то пошло не так

Если при загрузке Raspberry Pi появляется цветной квадрат, значит ваша версия операционной системы устарела. Для решения проблемы обновите ОС на SD карте .

Обновление пакетов

Для стабильной и правильной работы ОС Raspbian обновляйте версии пакетов программного обеспечения.

Операция может занять около получаса.

Теперь на операционной системе Raspbian установлены самые свежие программные пакеты.

Интерфейс I²C

Шина I²C — самый простой способ обмена информацией. Каждое подключенное к линии I²C устройство имеет свой адрес, по которому к нему обращается Raspberry Pi.

Линии интерфейса имеют встроенную подтяжку к питанию резисторами. Соответственно их невозможно использовать в качестве общих портов ввода/вывода в случаях, требующих отключения подтяжки.

Включения шины

По умолчанию шина I²C отключена. Для включения выполните следующие действия.

В ответ вы должны увидеть полотно файлов, среди которых: i2c-1 . Теперь вы можете использовать интерфейс I²C для коммуникации с датчиками и модулями.

I²C сканер

Список с адресами устройств, подключенных к линии I²C можно получить программой i2cdetect из пакета i2c-tools :

Интерфейс SPI

SPI — последовательный четырёх-проводной интерфейс передачи данных, предназначенный для обеспечения простого и недорогого высокоскоростного сопряжения микроконтроллеров и периферии.

Raspberry Pi имеет одну шину SPI — SPI0. Но более новые версии одноплатника, например Raspberry Pi 3 Model B, обладают двумя шинами: SPI0 и SPI1

Включения шины SPI0

По умолчанию шина SPI0 отключена. Для включения выполните следующие действия.

В ответ вы должны увидеть полотно файлов, среди которых два: spidev0.0 и spidev0.1 . Это значит что у вас включён SPI0 с возможностью подключения двух ведомых устройств. Теперь вы можете использовать интерфейс SPI для коммуникации с датчиками и модулями.

Включения шины SPI1

Если вы используете Raspberry Pi 3 Model B, то вам доступно две шины SPI: SPI0 и SPI1 .

Для включения шины SPI1, необходимо вручную отредактировать файл настроек загрузки системы config.txt .

В ответ вы должны увидеть полотно файлов, среди которых три отвечают за SPI1: spidev1.0 , spidev1.1 и spidev1.2 .

Если у вас включена шина SPI0, то будут ещё два файла: spidev0.0 и spidev0.1 .

Это значит что у вас включён SPI0 с возможностью подключения двух ведомых устройств и SPI1 с возможностью подключения трёх ведомых устройств.

Интерфейс UART

UART (Serial) — асинхронный интерфейс передачи данных, последовательно передающий биты из байта данных. Асинхронная передача позволяет осуществлять передачу данных без использования тактирующего сигнала от передатчика к приёмнику. Вместо этого приёмник и передатчик заранее договариваются о временных параметрах и специальных «стартовых битах», которые добавляются к каждому слову данных для синхронизации приёмника и передатчика. Существует множество устройств, с которыми Raspberry Pi может обмениваться данными по UART протоколу.

Zhornic › Блог › Соединяем несоединимое. 3.5″ TFT цветной дисплей на чипе ILI9486 от Raspberry Pi подключаем к Arduino DUE.

Я уже писал, что хочу малость доработать панель приборов в Патроле?
Показометры уровня топлива и температуры двигателя уйдут в помойку, а их место займут два TFT-дисплея.
Про то, что на них будет отображаться и зачем — про это я буду писать в бортжурнале Патрола.
А сейчас я хочу рассказать про свои с ними приключения.

У нас в Алма-Ате с электронными комплектующими напряжно. Про переделку приборки я задумался уже давно, потому зело обрадовался, когда появились в продаже вот такие дисплейчики:

Цена немножко кусалась, но интернет обещал замечательное качество картинки.
Размеры — прямо как мне надо!
55мм отверстия в панели приборов как раз перекрываются этими дисплеями безо всяких щелей.
Последовательный суперскоростной SPI с тактовой частотой до 32 МГц сулил высокую скорость работы и шлейф из 5-ти проводов вместо 25-ти…
Короче — сказка.

Правда предназначались эти дисплеи не для Аруин, а для неведомой мне зверюшки под названием Raspberry Pi… но какая нам нафиг разница, если интерфейс стандартный?! Один шут разъёмы выкорчёвывать придётся, чтобы толщину дисплеев довести до норм приличия — иначе в приборку не упихнуть.

Купил я пару этих дисплеев и через недельку взялся за них вплотную.
А не тут то было.

Маркировки выводов на них не было. Куда какие провода сувать — лотерея “5 из 26”.
Все драйвера, настройки и прочая информация — только под Linux.
Уже подробные ковыряния в интернете принесли ворох самой противоречивой информации.
Чтобы не спалить железки пришлось капитально проштудировать информацию по Raspberry Pi.
SPI на дисплеях в итоге оказался и не SPI вовсе, а какая-то пародия на сдвиговых регистрах:

Нахрена эти регистры понавешали — я так до сих пор не понял. У контроллера ili9486 есть свой собственный SPI прямо на борту — www.datasheetspdf.com/pdf…/I/L/I/ILI9486-ILITEK.pdf

Из-за псевдо-SPI ни одна из найденных ардуиновских графических библиотек с поддержкой ili9486 с этими дисплеями так и не заработала.

Вечер третьего дня переставал быть томным…

Неделя последующих плотных ковыряний и довольно таки приличная сумма норовили стать выкинутыми в помойку…

Но в итоге я их всех победил!
Барабанная дробь.

Не буду описывать все свои перипетии — это мало кому интересно.

Получайте краткую инструкцию о том как заставить работать 2.8-7″ LCD цветной дисплей от Raspberry Pi на Arduino DUE.

Проверенная таблица выводов дисплея:

Красным прописаны выводы необходимые дисплею.
Синим — сенсорной панели, но мне они в данном проекте не нужны. Прописал до кучи.
На плате стоИт трёхвольтовый стабилизатор — потому не пугайтесь пяти вольт. Все выводы — трёхвольтовые, к DUE и STM32 цепляем безо всяких согласователей.

C Arduino Due соединяем таким образом:

Display … … Signal … … ArduinoDue
… 02 … … … . +5V… … … .+5V
… 06 … … … .GND … … … GND
… 18 … … … . DC … … … . D6
… 19 … … … MOSI … … … D75
… 22 … … …RESET … … …D5
… 23 … … . … SCK … … … D76
… 24 … … … …CS … … … .D10

Соединить правильно железки — это уже половина дела!

Ну и на “закуску” — программное обеспечение.
С софтом — самое заковыристое, так как без подходящей библиотеки ничерта работать не будет.

Пока я нашёл только одну библиотеку, гарантировано работающую через то, что у этих дисплеев называется SPI — это GxTFT for Arduino. Скачать можно тут — github.com/ZinggJM/GxTFT
Настройки библиотеки расписывать пока не буду — опубликую окончательный вариант когда время придёт.
Ну а кому сильно надо — тот и сам разберётся.
Основную подсказку — чё с чем и как женить — я дал, а дальше сами.

Ну и что имеем в итоге?
Качество изображения — шикарное.
Подсветка очень равномерная, без пятен и засветов.
Углы обзора очень приличные после всех тех дисплеев, с которыми мне приходилось иметь дело года 3-4 назад. Прорисовка мелких деталей — просто изюмительная. Молодцы китайцы!
Пока не впечатлила скорость работы. Я понимаю, что в этом дисплее в два раза больше точек и потому данных нужно в него засовывать тоже в два раза больше, но после моих недавних экспериментов по “разгону” дисплеев на ili9341 — эти дисплеи полные тормоза. Буду ещё ковыряться на досуге с оптимизацией скорости их работы.
Ну а это первый результат:

Подключаем Raspberry Pi к монитору ноутбука

Простой способ использовать ваш ноутбук в качестве дисплея для Raspberry Pi, если у вас нет под рукой HD монитора.

Этот урок появился тогда, когда мы работали над нашей “малиной”, но под рукой не было ни одного HD-дисплея. Так появилась идея, которая поможет другим в такой же ситуации, – когда они могли бы использовать свой ноутбук в качестве монитора для своей Raspberry Pi.

Как мы знаем, Raspberry Pi известен как «Карманный компьютер» (англ. – Pocket-Size PC), но для отладки и проектных целей слишком громоздко иметь дополнительный дисплей для “малины”. Кроме того, многие не имеют доступа к дисплею HDMI, поэтому мы выяснили, как можно легко подключить Pi к дисплею ноутбука.

Как это работает?

Чтобы подключить Raspberry Pi к дисплею ноутбука, вы можете использовать сетевой кабель. Графический интерфейс пользователя Raspberry Pi (GUI – Graphical User Interface) можно просматривать через дисплей ноутбука используя Ethernet-соединение на 100 Мбит/сек. Есть много доступных программ, которые могут установить соединение между “малиной” и вашим ноутбуком. Мы использовали программное обеспечение сервера VNC для подключения Pi к нашему ноутбуку.

Установка VNC-сервера на ваш Pi позволяет удаленно видеть рабочий стол Raspberry Pi, используя мышь и клавиатуру, как будто вы сидите прямо перед своим Pi. Это также означает, что вы можете перенести плату куда-нибудь еще дома и все еще сможете её контролировать. Кроме того, интернет можно расшарить от WiFi вашего ноутбука через Ethernet. Это также позволит получить доступ к Интернету на Pi.

Настройка Raspberry Pi

Прежде чем перейти к подключению своего малинового Pi к дисплею вашего ноутбука, вам потребуется SD-карта с предустановленной ОС или нужно будет установить Raspbian на пустую SD-карту. Если вы не знакомы с командами Raspberry Pi, ознакомьтесь с руководством Basic Linux Commands, также в ближайших статьях мы постараемся создать небольшое руководство по подготовке SD-карты для “малины”. В целом, можно даже найти в продаже SD-карты с предустановленной операционной системой Raspbian и NOOB.

Дальше действуем по шагам:

  1. После настройки SD-карты вставьте её в Raspberry Pi.
  2. Затем подключите кабель микро-USB к “малине”, чтобы включить её.
  3. Подключите свой Raspberry к ноутбуку через кабель Ethernet.
  4. Подключите к нему клавиатуру и мышь.
  5. Подключите HDMI-дисплей (HDMI требуется только для запуска Pi в первый раз).
  6. Включите питание Pi.

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

Расшаривание Интернета через Ethernet

Этот шаг объяснит то, как вы можете поделиться своим интернетом ноутбука с Raspberry Pi с помощью Ethernet кабеля.

В Windows: для совместного использования Интернета с несколькими пользователями через Ethernet, перейдите в “Центр управления сетями и общим доступом”. Затем нажмите на сеть WiFi:

Нажмите «Свойства» (см. ниже), затем перейдите в раздел «Совместное использование» и нажмите «Разрешить другим пользователям сети подключаться» (англ. – Allow other network users to connect). Убедитесь, что сетевое подключение изменено на «Подключение по локальной сети» (англ. – Local Area Connection):

Теперь, чтобы проверить IP-адрес, назначенный вашему ноутбуку, нажмите на созданную новую ссылку для подключения к локальной сети:

Как показано выше, IP-адрес, назначенный ноутбуку: 192.168.137.1. Чтобы проверить IP-адрес, назначенный подключенному Ethernet-устройству, выполните действия ниже. Учитывая, что IP-адрес, назначенный вашему ноутбуку, 192.168.137.1, а маска подсети 255.255.255.0:

  • Откройте командную строку
  • Пропингуйте адрес вашего IP-адреса. Например: ping 192.168.137.255
  • Остановите пинг через 5 секунд
  • Проверьте ответ с устройства: arp -a

Настройка VNC-сервера для подключения Raspberry Pi к ноутбуку

Если у вас есть дисплей HDMI

Используя подключенный дисплей HDMI к вашему Pi, вы должны установить VNC-сервер на свою плату. Откройте LX-Terminal и введите следующие команды для установки VNC:

$ sudo apt-get update
$ sudo apt-get install tightvncserver

Если у вас нет дисплея HDMI

Если у вас нет дисплея даже для разовой настройки, вам не нужно беспокоиться. Установите Putty в соответствии с вашей конфигурацией Windows и через SSH вы можете подключиться к вашему Raspberry Pi. Когда вы получаете доступ к своему терминалу Pi, запустите те же команды, что и выше, для установки VNC.

Запуск VNC-сервера на Pi

Чтобы запустить VNC, введите в терминал SSH следующую команду:

$ vncserver :1

Вам будет предложено ввести и подтвердить пароль. Это будет только один раз, при первой настройке. Введите 8-значный пароль. Обратите внимание, что это пароль, который вам нужно будет использовать для подключения к вашей Pi удаленно. Вас также спросят, хотите ли вы создать отдельный «только для чтения» пароль (read-only) – говорим “нет” (no).

Теперь VNC-сервер работает на вашем Pi и теперь мы можем попытаться подключиться к нему. Во-первых, мы должны переключиться на ноутбук, из которого мы хотим управлять Pi. Затем настром клиент VNC для подключения к Pi.

Настройка клиентской стороны (ноутбук)

Скачайте VNC-клиент VNC и установите его. Когда вы впервые запускаете средство просмотра VNC, вы увидите следующее:

Введите IP-адрес вашей “малины”, динамически переданный вашим ноутбуком (вы получили адрес раньше) и добавьте: 1 (номер порта) и нажмите “connect”. Появится предупреждающее сообщение, нажмите «Продолжить»:

Введите 8-значный пароль, который был введен при установке сервера VNC:

Наконец, рабочий стол Raspberry Pi должен появиться как окно VNC. Вы сможете получить доступ к графическому интерфейсу и делать всё, как если бы вы использовали клавиатуру, мышь и монитор с Pi напрямую. Как и в случае с SSH, так как всё находится в вашей сети, ваш Pi может быть расположен где угодно, пока он подключен к сети.

Запуск VNC-сервера во время запуска Raspberry Pi GUI

Соединение вашей Pi удаленно с VNC отлично работает, пока вам не нужно перезагрузиться. Если всё-таки необходимость появилась вам нужно либо подключиться к SSH, либо перезапустить сервер VNC, либо организовать запуск VNC-сервера после перезагрузки Raspberry Pi. Чтобы гарантировать, что VNC запускается автоматически каждый раз при загрузке, выполните следующие команды в терминале – см. ниже.

Откройте папку «.config» на Pi: пользовательская папка (скрытая папка).

$ cd /home/pi
$ cd .config

Создайте в ней папку «autostart». Кроме того, создайте файл под названием «tightvnc.desktop» в этой папке. Вы можете использовать любой известный текстовый редактор для создания файлов. Для этого мы использовали gnome-text-editor:

$ mkdir autostart
$ cd autostart
$ gnome tightvnc.desktop

Измените содержимое файла следующим образом и сохраните файл:

[Desktop Entry]
Type=Application
Name=TightVNC
Exec=vncserver :1
StartupNotify=false

В следующий раз, когда вы перезагрузите свой Pi, vncserver запустится автоматически и без проблем подключит ваш Raspberry Pi к дисплею для ноутбука.

Всякий раз, когда вы хотите что-то сделать с вашим Pi, просто подключите его к ноутбуку с помощью кабеля Ethernet и включите его. Затем откройте VNCViewer, укажите IP-адрес вашего Pi, и вы можете использовать дисплей вашего ноутбука в качестве монитора Raspberry Pi.

Делаем ноутбук на Raspberry Pi


Портативный компьютер RasPSION

За четыре года с момента выхода Raspberry Pi что только не делали из этого маленького одноплатного компьютера — маленькие видеомагнитофоны, игровые консоли, автомобильные навигаторы, музыкальные плееры и многое другое. Но самая очевидная мысль — дополнить Raspberry Pi экраном, клавиатурой и аккумулятором, чтобы получился ультрапортативный ноутбук (его можно назвать нетбук или даже карманный компьютер).

Например, один экземпляр Raspberry Pi попал в руки японского моддера nokton35mm, который изготовил мини-компьютер RasPSION в стиле портативных компьютеров Psion конца 90-х.

В комплектацию входит 7-дюймовый экран, клавиатура Bluetooth, 5-вольтовая батарея и камера Pi, довольно стандартный набор для мини-ноутбуков на Raspberry Pi.

Что делает RasPSION особенным — так это красивый корпус из полупрозрачного пластика, вырезанный лазером точно по нужному размеру.

Здесь главная деталь — поворотный механизм на шарнирах. Он устроен по тому же принципу, что у старых карманных компьютеров Psion.

Автор говорит, что ноутбук работает от аккумулятора примерно два часа. Немало, учитывая отсутствие привычной для коммерческих ноутбуков системы управления питанием.

В прошлом энтузиасты уже показывали разные варианты ультрапортативных ноутбуков и карманных компьютеров на основе Raspberry Pi. Например, вот инструкция и схема сборки самого простого КПК. В отличие от продвинутой японской модели, здесь автор использовал дешёвые комплектующие, которые были под рукой. Плохонький 3,5-дюймовый ЖК-экран с соотношением сторон 4:3 — от автомобильной видеосистемы. Аккумуляторная батарея — от старого ноутбука Dell Latitude D600.

Чтобы вместить элементы батарей в корпус, пришлось снять с них пластиковый корпус.

Автор показывает, какие контакты нужно соединить на 9-контактной плате Dell.

Зарядка аккумуляторов в самодельном ноутбуке осуществляется через стандартное зарядное устройство.

Чтобы разводить питание от аккумуляторов на WiFi-модуль, Bluetooth-модуль, SSD-накопитель, передатчик беспроводной клавиатуры/мыши, а также на саму Raspberry Pi, моддер использовал маленькую хитрость. Вся перечисленная электроника запитывается от 5-вольтового хаба USB, а с батареи идёт 11,1 вольт на ЖК-экран. Но известно, что некоторые компоненты экрана требуют питания 5 вольт. То есть достаточно найти на плате ЖК-экрана встроенный регулятор напряжения и найти контакты на 5 вольт, а оттуда запитать хаб USB.

SSD-накопитель для Raspbery Pi тоже будет не лишним дополнением, потому что SD-карты работают медленно и имеют невысокий лимит на количество циклов записи/чтения. Да и просто увеличить доступное дисковое пространство тоже приятно.

Дополнительно была куплена беспроводная USB-клавиатура с тачпадом. В данном случае лучше бы, конечно, использовать проводное соединение, но именно в модели Bluetooth оказались правильные размеры и цена.

И вот на плате Raspberry Pi Model B (rev. 1) получился такой карманный компьютер.

Кирпичик весит примерно 750 граммов, зато это полноценная машина с Linux и SSD-накопителем, клавиатурой и тачпадом.

Автор выложил детали корпуса для печати на 3D-принтере в виде STL-файлов. На задней крышке корпуса для красоты он предлагает разместить логотип Raspberry Pi, который подсвечивается при включении питания. Для этого он взял светодиодную ленту от подсветки клавиатуры, вырезал из неё нужную форму, и подключил к 5-вольтовому выходу USB-хаба.

Сейчас в китайских магазинах есть уже немало комплектующих, чтобы собрать ноутбук на Raspberry Pi своими руками, было бы время и желание. Необязательно самостоятельно печатать корпус на 3D-принтере. Например ещё один умелец по имени Джо Тоттен (Joe Totten) использовал для этого готовую «оболочку» Motorola Lapdock. Motorola Lapdock — это такая «докинговая станция» для Android-смартфона, на eBay их можно найти примерно по $100 или дешевле.


Докинговая станция Motorola Lapdock для смартфона Motorola ATRIX 4G

Вставляешь смартфон в докинговую станцию — и сразу получаешь практически полноценный ноутбук, с экраном 1366 х 768 пикселов и клавиатурой. Только в нашем случае требуется вставить туда не смартфон, а Raspberry Pi, что и сделал Джо Тоттен.

Для соединения Raspberry Pi и Lapdock понадобится набор кабелей и адатеров.

Вот список необходимого:

  • Raspberry Pi
  • Motorola Lapdock (Atrix works)
  • 1 кабель USB Male to Micro USB Male (обычный кабель от телефона)
  • 1 кабель USB 2.0 A female to Micro USB B female
  • 1 кабель Micro HDMI Type D Female to Micro HDMI Type D
  • 1 кабель USB Male to USB Male (его придётся вскрыть и перерезать красный 5-вольтовый кабель)
  • 1 кабель MICRO HDMI to HDMI

Затем нужно правильно подключить все кабели, следуя инструкции.

У нас получится не самая мощная машина, да и таскать с собой кучу кабелей и сам одноплатный компьютер не совсем удобно. Но зато это самый дешёвый и практичный способ превратить Raspberry Pi в полнофункциональный ноутбук.

Источники:

http://www.drive2.ru/b/519493956430463073/

http://arduinoplus.ru/podkluchaem-raspberry-pi-k-monitoru-noutbuka/

http://habr.com/post/372467/

http://arduinoplus.ru/sbros-parametrov-esp8266/

Ссылка на основную публикацию