- Подключение LCD 16×2 на базе HD44780 к Orange Pi, Banana Pi и Raspberry Pi
- Подключение ЖК-дисплея на базе HD44780 к Orange Pi
- Подключение ЖК-дисплея в 8-битном режиме
- Подключение ЖК-дисплея в 4-битном режиме
- Программирование ЖК-дисплея на С /C++
- Orange pi как подключить дисплей
- Нерабочий планшет + Orange Pi
- Предыстория
- Orange Pi PC
- Охлаждение
- Установка ОС
- Питание
- Включаем и фиксим оверклокинг
- Клавиатура
- Дисплей
- К чему это всё?
Подключение LCD 16×2 на базе HD44780 к Orange Pi, Banana Pi и Raspberry Pi
Подключение ЖК-дисплея на базе HD44780 к Orange Pi, Banana Pi и Raspberry рано или поздно заинтересует вас. ЖК-дисплеи отлично подходят для вывода показаний датчиков, обычных сообщений, а также материалов из Интернета, таких как твиты. Что бы вы ни выбрали для показа, ЖК-дисплей — это простой и недорогой способ сделать это.
В этом уроке я покажу вам два разных способа подключения ЖК-дисплея на базе HD44780 к Orange Pi с помощью контактов GPIO. Первый способ — это 8-битный режим, который использует 10 контактов GPIO. Затем я покажу вам, как подключить HD44780 к Orange Pi в 4-битном режиме, который использует только 6 контактов. После того, как мы подключим ЖК-дисплей, я покажу вам, как программировать его с помощью C/C++, используя библиотеку LCD Gordon Henderson’s WiringPi.
Я покажу вам, как вывести текст на дисплее, очистить дисплей. Вы также увидите, как создавать пользовательские символы, печатать данные с датчиков.
Я буду использовать ЖК-дисплей 16×2, но приведенные ниже примеры будут работать с любым ЖК-дисплеем, который использует драйвер Hitachi HD44780.
Подключение ЖК-дисплея на базе HD44780 к Orange Pi
Большинство людей, вероятно, хотят подключить свой ЖК-дисплей в 4-битном режиме, так как он использует меньше проводов. Но в случае, если вы заинтересованы, я покажу вам, как подключить его в 8-битном режиме.
Подключение ЖК-дисплея в 8-битном режиме
В 8-разрядном режиме каждая команда или символ отправляется на ЖК-дисплей в виде одиночного байта (8 бит) данных, для обмена информацией используются контакты от D0 до D7, данные пересылаются за один такт. 8-битный режим быстрее, чем 4-битный, но основной недостаток данного режима состоит в том, что он использует большое количество контактов GPIO.
Подключение LCD в 8-битном режиме требует 10 контактов GPIO:
Потенциометры яркости и контрастности — 10 кОм, но здесь вы также можете использовать резисторы от 1 до 3 кОм.
Подключение ЖК-дисплея в 4-битном режиме
В 4-битном режиме каждый байт данные пересылаются на LCD за 2-а такта по 4 бита, сначала старшие 4-е бита, потом младшие 4-е бита, а для обмена используются только контакты D4 – D7.
4-битный режим требует 6 контактов GPIO для ввода/вывода, что делает его популярным для многих проектов:
Потенциометры яркости и контрастности — 10 кОм, но резисторы от 1 до 3 кОм также будут работать.
Программирование ЖК-дисплея на С /C++
WiringPi — это модуль C, который упрощает программирование ЖК-дисплея. Если у вас не установленный WiringPi, переходите на странице Установка и настройка BPI-WiringPi/WiringPi на Banana Pi или Установка и настройка WiringOP/WiringPi на Orange Pi PC, где есть инструкция по установке WiringPi для Banana Pi и Orange Pi, соответственно.
Также рекомендую установить CodeBlocks или CodeLite.
Важно:
Не забудьте добавить следующие параметры в Linker:
Code::blocks
-lwiringPi
-lwiringPiDev
-lpthread
CodeLite
wiringPi
wiringPiDev
pthread
Чтобы использовать библиотеку LCD, вам нужно будет добавить следующие строчки в начале вашей программы:
Источник
Orange pi как подключить дисплей
Orange Pi One и Orange Pi PC/PC Plus
MyTmpFile=»$(mktemp /tmp/$<0##*/>.XXXXXX)» echo «Successfully repaired broken overvolting/overclocking settings. Reboot necessary for changes to take effect» Тоже вначале грешил на кривые образы Но оказалось, что плата очень привередлива к SD-картам! У меня на разных картах один и тот же образ Android вёл себя по-разному и не загружался, в том числе и просто висел на лого H3. У меня плата исправно загружается с карточки SanDisk 4 Gb Class 4, но при этом отказывается воспринимать SanDisk 16 gb Class 10 и другие карты. В общем, нужно подбирать SD-карту. Нормальная загрузка выглядит так: При включении, на экране монитора появляется логотип H3 (или другой логотип, в зависимости от образа), а на самой плате загорается красный светодиод. Далее, секунд через 5, светодиод на несколько секунд переключается на зелёный, а на экране всё тот же логотип, потом логотип сменяется анимацией и тут уже становится понятно, что операционная система загружается. Система Debian_wheezy_mini Изначально, после установки системы, устройство IR не доступно, так как не загружены соответствующие модули, в случае Orange Pi PC — это модуль sunxi_ir_rx apt-get update && sudo apt-get upgrade # lsmod Также важным фактором, чтобы удостовериться, что все заработало, нужно проверить, появилось ли устройство ввода: # cat /proc/bus/input/devices I: Bus=0019 Vendor=0001 Product=0001 Version=0100 I: Bus=0019 Vendor=0001 Product=0001 Version=0100 самый верный способ проверить, то ли это устройство, это выполнить При нажатии на кнопки пульта в терминале видим # cat /dev/input/event2 | hexdump (Остановить процесс можно [Ctrl]+[C]) проверяем /keybinder# keybinder /dev/input/event2 . /usr/local/bin/keybinder /dev/input/event2 >/dev/null & тестировал с подобными пультами У вас Orange pi pc v1.2? Откуда лубунту ставили? Схема Orange Pi PC Температуру процессора можно контролировать командой dmesg | grep IR Или, пересобирать debian с другим драйвером. Прошивка Андроид 4.4.2 от ZIDOO X1 v1.0.19 для Orange Pi PC IMHO самая толковая прошивка с андроидом. Источник Нерабочий планшет + Orange PiПредысторияOrange Pi PCЭта штука была куплена для поиграться. Тут про неё уже писали, но вкратце опишу, что я с ней сделал и могу рекомендовать сделать другим. ОхлаждениеЧипы памяти почти не греются. Радиатор нужен только для основного чипа. Я купил вот такие 40x40x11 мм: Вырезал нужный размер ножовкой и приклеил на Алсил-5. Сам чип 14х14 мм, но радиатор можно сделать чуть больше. Установка ОСРекомендуемый satie образ не поддерживал мой WiFi свисток (RTL8188CUS). Образ взял отсюда — по ссылкам из первого поста только реклама, кое-как удалось скачать по ссылке из второго поста, а чтобы вам было удобней, выложил на гуглодрайв. ПитаниеЗапитывать через гребёнку GPIO не удобно и опасно — можно ошибиться и что-нибудь сжечь. Я купил вот такой шнур: Но оказалось, что провод там настолько тонкий, что при потребляемых в среднем 250 мА из-за падения напряжения в проводе Orange Pi включаться не хочет. Так что провод пришлось заменить, но покупка не была напрасной — разъёмы я те использовал. Включаем и фиксим оверклокингДля пользователей orangepi и root по умолчанию установлен пароль orangepi. Кроме того, по ssh по умолчанию можно зайти рутом, так что думайте о безопасности! Если не работает монитор и сеть, можно подключиться терминальной программой через UART. Теперь про оверклокинг. Есть файл /media/boot/script.bin. В этом файле хранятся настройки чипа. В удобочитаемый вид его можно конвертировать утилитой bin2fex. Так и делаем. В получившемся fex файле ищем секцию [dvfs_table] и убираем оттуда неприемлимые с вашей точки зрения режимы. Я оставил: На таких режимах без корпуса чип греется не более чем до 55С. Хорошо бы ещё уменьшить частоту памяти и GPU, но мне пока не удалось этого сделать. КлавиатураВ комплекте с Lenovo Thinkpad Tablet была вот такая клавиатура-чехол: Как оказалось, это обычная USB клавиатура и она может работать даже с обычным компом с Windows. Трекпоинт при этом тоже работает. Единственная проблема — вместо клавиш F1 — F12 на ней всякие клавиши регулировки громкости и т.п., и не работают комбинации Alt + Ctrl + т.к. Alt и Ctrl представлены разными USB точками. Пришлось переназначить некоторые клавиши. Как это сделать я узнал отсюда. Получившийся в итоге файл переназначений клавиш: Подключаем клавиатуру и теперь можно пользоваться комбинациями Alt + Ctrl + Fx! ДисплейЧип контроллера LVDS легко разогревается до 70С. Пока охлаждаю вентилятором, но надо будет тоже приклеить радиаторы к нему и стабилизаторам напряжения. В итоге получилось:
К чему это всё?А к тому, что если у вас сломается планшет или ещё какой девайс, знайте, что многим его компонентам можно дать вторую жизнь. Давайте пользоваться тем, что наша электроника — это пока не чёрные ящики залитые эпоксидкой (хотя движение в этом направлении есть). А ещё есть у меня мечта продвинуть идею специализированных свалок/фримаркетов, где можно будет оставить то что тебе уже не нужно, но что кто-нибудь ещё сможет использовать. Источник Adblockdetector |