IT News: Digital Camera, OS, Laptop, Smartphone, Smart TV, Sound...

The Author's Project by Valeri N.Kravchuk
Сайт проверен Dr.Web
Меню сайта
  • Главная страница
  • Информация о сайте
  • Дневник
  • Каталог файлов
  • Обратная связь
  • Каталог сайтов
  • FAQ
  • Доска объявлений
  • Форум
  • Фотоальбом
  • Категории раздела
    Автомобильные гаджеты, ремонт... [220]
    Безопасность IT [484]
    Блоки питания, Power Banks, зарядки... [490]
    Видеорегистраторы [220]
    Гаджеты для спорта и здоровья... [190]
    Гаджеты, аксессуары... [625]
    Измерительная техника, инструменты [449]
    Накопители данных [226]
    Нетбуки, Ноутбуки, Ультрабуки [679]
    Мультиварки, блендеры и не только... [158]
    Планшеты [758]
    Радар-детекторы [26]
    Роботы-пылесосы [37]
    Своими руками [356]
    Сети, сетевые технологии, оборудование... [269]
    Смартфоны [4966]
    Фотокамеры, объективы, искусство фотографии.. [543]
    Умный дом [47]
    Электронные книги [96]
    CB, LPD, PMR- связь... [169]
    DECT, IP-телефоны [18]
    Drones, boats, cars... [108]
    electric cars [35]
    GPS-навигаторы, трекеры... [51]
    Linux и не только [4380]
    mini computers и не только... [409]
    News IT, Это интересно, ликбез... [1113]
    Smart TV, UltraHD, приставки, проекторы... [414]
    Smart Watch [263]
    Sound: наушники, плееры, усилители... [616]
    Windows 10... [298]
    Windows 11 [28]
    Погода

  • Метеорадар БРЕСТ
  • Погода в Бресте от www.yr.no

    Яндекс.Погода БРЕСТ

  • Интересные ссылки

    COMPIZOMANIA

    Наш опрос
    Оцените мой сайт
    Всего ответов: 1339
    Статистика
    Анализ веб сайтов

    Яндекс.Метрика

    Рейтинг@Mail.ru Яндекс цитирования

    Russian America Top. Рейтинг ресурсов Русской Америки.

    eXTReMe Tracker

    Правильный CSS!


    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Locations of visitors to this page
    Форма входа
    Главная » 2013 » Декабрь » 21 » Новогодняя малина — прикручиваем экран HD44780 к Raspberry Pi
    12:03
    Новогодняя малина — прикручиваем экран HD44780 к Raspberry Pi
    сегодня в 11:31

    Новогодняя малина — прикручиваем экран HD44780 к Raspberry Pi




    С наступающим!
    Проникшись идеями постов: «Поздравление по гиковски, без написания дров» и «Создание собственных драйверов под Linux» решил поделится ещё одним способом управления экраном на базе контроллера HD44780 с помошью Raspberry Pi.

    Библиотека bcm2835


    Основной задачей LPT порта, демоплат и прочих крутых штук, при управлении экраном, является — дёргать нужными ногами экрана в соответствии с получаемыми от компьютера данными.
    В моём случае нет разделения на комп и управляющюю плату так как у RPI есть прекрасный интерфейс General-purpose input/output (GPIO) которым можно рулить напрямую из программы. Для этого я решил использовать библиотеку bcm2835.

    Подключение экрана



    Тут не должно быть ничего сложного. Обратате внимание что у меня малина второй ревизии и распиновка разъёма немного отличается от первой.
    Посмотреть распиновку разъёма на обе версии можно например тут.

    Программа управления


    Для удобной работы с экраном мною была написана простенькая библиотека самых важных на мой взгляд функций работы с экраном. Библиотека довольно сырая и неполная но для текущей задачи подойдёт.
    Для начала её нужно немного настроить:
    файл HD44780.h
    #define HD44780_DB4 RPI_V2_GPIO_P1_11
    #define HD44780_DB5 RPI_V2_GPIO_P1_12
    #define HD44780_DB6 RPI_V2_GPIO_P1_13
    #define HD44780_DB7 RPI_V2_GPIO_P1_15
    #define HD44780_RS RPI_V2_GPIO_P1_03
    #define HD44780_RW RPI_V2_GPIO_P1_05
    #define HD44780_E RPI_V2_GPIO_P1_07
    

    Тут требуется указать соответствия контактов GPIO и LCD, если схема подключения не отличается от приведенной ничего менять не нужно.
    Так-же, возможно, придётся поправить lcd.c:
    #define MAX_DISP_ROWS 2 // The HD44780 supports up to 4 rows
    #define MAX_DISP_COLS 16 // The HD44780 supports up to 40 columns
    

    Требуется указать размеры своего экрана.

    Важно: экран питается от напряжения 5 вольт, а малина работает с логическими уровнями напряжением 3,3в экран отлично понимает данные уровни, а вот малина, если экран попытается ей что-то передать может и не выдержать, ибо «GPIO voltage levels are 3.3 V and are not 5 V tolerant. There is no over-voltage protection on the board» отсюда. Поэтому читать что либо из экрана настоятельно не рекомендуется. Чтобы всё работало по уму нужен преобразователь уровней, а не прямое подключение.

    Работа с программой не слишком отличается от работы с портом из статьи goodic-а тут всё те-же управляющие последовательности так как основывался я на коде из его проекта который основан на проекте от dlinyj который использовал код за авторством Michael McLellan. OpenSource рулит. :)
    последовательности

    Единственное изменение: добавлена последовательность [i отвечающая за начальную инициализацию дисплея.
    Её нужно передать при первом обращении к экрану.

    Например:
    Инициализируем экран.
    root@raspberrypi:/home/pi/lcd# echo -en "\033[i" | ./lcd

    Выводим текст.
    root@raspberrypi:/home/pi/lcd# echo -en "\033[R0\004\016\037\004\016\037\025\016\033[J\
    033[HHappy New Year\041*\r\n\000\000\000 RPI LCD \000\000\000" | ./lcd



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

    Исходники


    Сборка:
    root@raspberrypi:/home/pi/lcd$ gcc -o lcd lcd.c HD44780.c -lrt -lbcm2835
    Чтобы не потерять выкладываю в виде zipjpeg:

    UPD: sources

    С наступающим Новым годом!

    http://habrahabr.ru/post/206782/

    Категория: mini computers и не только... | Просмотров: 827 | Добавил: laptop | Рейтинг: 4.0/1
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]
    Волк слабее льва и тигра, но в цирке волк не выступает!
    Волк слабее льва и тигра, но в цирке волк не выступает!
    Волк - единственный из зверей, который может пойти в бой на более сильного противника.
    Если же он проиграл бой, то до последнего вздоха смотрит в глаза противника. После этого умирает...

    Праздники сегодня

    Поиск
    Календарь
    Архив записей
    Друзья сайта
  • Официальный блог
  • JEEP - the best! Mercedes - the best! Автомобильный портал города Бреста: технические характеристики с фото, авторынок, автоспорт...
    Наша кнопка
    IT новости с моего лаптопа...

    Внимание!
    Администратор сайта laptop.ucoz.ru не несет ответственности за содержание рекламных объявлений. Все используемые на сайте зарегистрированные товарные знаки принадлежат своим законным владельцам! Используемая со сторонних источников информация публикуется с обязательными ссылками на эти источники.
    Copyright Valeri N.Kravchuk © 2007-2024