Создание полносенсорного телефона с электронными чернилами размером с палец | Проект отображения электронных чернил
Создание полносенсорного телефона с электронными чернилами размером с палец | Проект отображения электронных чернил
В современном смартфоне используется либо дисплей с подсветкой, либо OLED дисплей, который может нанести вред нашим глазам при длительном использовании. Вот почему телефоны с электронными чернилами в настоящее время становятся популярными. Это снижает нагрузку на глаза.
Возможно, вы задавались вопросом, как устроены телефоны и можно ли сделать собственный смартфон.
Для создания проекта дисплея E-ink мы использовали E-ink Display и Raspberry Pi.
Этот сенсорный телефон размером с палец использует операционную систему Linux с пользовательским интерфейсом (OS), доступ к которой можно получить с помощью любого OS и VNC HDMI. Он может выполнять все основные функции телефона.
Телефон с дисплеем E-ink
Он настолько мал, что его можно прикрепить к мизинцу.
Домашний телефон размером с палец
Технология E-ink экономит электроэнергию за счет отсутствия дисплея с подсветкой и удобна для тех, кто хочет избежать бликов OLED и дисплеев с подсветкой. Дисплей E-Ink, как и отпечатанная бумага, остается видимым даже при отключении питания, пока вы его не обновите.
Однако это еще не все. Мы собираемся разработать телефон E-Ink, и без каких-либо дополнительных затрат вы также получите полноценный портативный компьютер размером с палец на базе Linux!
Итак, приступим к сбору необходимых компонентов, которые перечислены ниже-
Спецификация
Разработка смартфона с электронными чернилами
Хотя это полностью самодельный телефон, мы можем сделать его тонким и привлекательным. Итак, для телефона сделайте его корпус такого же размера, как сенсорный дисплей E-ink. Затем освободите место для встраивания модуль GSM внутри корпуса телефона.
Корпус для телефона с электронными чернилами
Далее проделайте небольшое отверстие в месте размещения динамика, чтобы вы могли слышать звук. Аналогичным образом сделайте отверстия для микрофона и входа питания. Теперь, после разработки корпуса телефона, распечатайте его на 3D-принтере.
Отверстия в корпусе телефона
Конфигурация Raspberry Pi
Подготовьте Raspberry Pi с последней версией OS, а затем включите SPI и I2C и последовательные порты Raspberry Пи.
Для этого выполните следующую команду в терминале Linux и включите настройку программного обеспечения одну за другой.
Конфигурация программного обеспечения Raspberry Pi
sudo raspi-config
Затем установите драйвер для сенсорного дисплея E-ink и модули Python для использования дисплея. Для этого откройте терминал Linux и выполните следующие команды:
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.68.tar.gztar zxvf bcm2835-1.68.tar.gzcd bcm2835-1.68/sudo ./configure && sudo make && судо сделать проверьте && sudo make installsudo apt-get install Wirepi#Для Pi 4 необходимо обновить его:wget https://project-downloads.drogon.net/wiringpi-latest.debsudo dpkg -i Wiringpi-latest.debgpio -v#Вы получите 2.52 информацию if you установите его правильнообновление sudo apt-getsudo apt-get install python3-pipsudo apt-get install python3-pilsudo apt-get install python3-numpysudo pip3 install RPi.GPIOsudo pip3 install spidevкомпактный диск ~клон git https://github.com/waveshare/Touch_e-Paper_HAT
Дизайн пользовательского интерфейса телефона с дисплеем E-ink
Нам нужно создать пользовательский интерфейс (UI) для телефона, чтобы он выглядел красиво. Вы можете выбрать любую иконку и создать собственный пользовательский интерфейс по вашему выбору. В этом прототипе использованы круглые значки.
Интерфейс телефона E-ink
Для пользовательского интерфейса нам необходим базовый дизайн для выполнения основных функций. Итак, вот список страниц пользовательского интерфейса для основных функций телефона:
<ул>
Главный экран
Экран набора номера
Экран контактов
Сообщения
Входящий звонок
Экран вызова
Для каждого экрана пользовательского интерфейса нам нужно получить значок, изменить его размер и разместить его так, чтобы он соответствовал фактическому размеру дисплея телефона (размер 5,4 см в прототипе).
В пользовательском интерфейсе на главном экране значок батареи используется для получения информации о питании, значок тура для получения информации о сигнале и значок набора номера для экрана набора номера, контактов и сообщений.
Посередине поле остается пустым для отображения времени, даты и т. д.
Интерфейс главного экрана телефона
Создайте пользовательский интерфейс экрана набора номера для номеров и других значков. Наберите номер и перейдите на главный экран или сотрите и обновите экран. Аналогичным образом создайте интерфейсы для остальных функций телефона и экрана.
Сохраните изображения из пользовательских интерфейсов в папке pic библиотеки Python, которая была клонирована ранее. Откройте код для отображения.
Создаем собственный мобильный телефон OS
Чтобы создать код OS для телефона, импортируйте модули и библиотеку для взаимодействия с сенсорным дисплеем E-ink. Затем импортируйте модули Python для использования модуля SIM800L GSM.
Затем укажите путь, по которому будут храниться изображения пользовательского интерфейса телефона, и создайте цикл while для проверки экрана. Отображаемая страница аналогична предыдущей, но новая if и предыдущая имеют новый номер страницы. Обновите дисплей, добавив изображение пользовательского интерфейса.
Код Python для телефона с дисплеем E-ink
Для (первой) домашней страницы проверьте точки касания для таких значков, как значок циферблата, значок контакта или значок сообщения. Также проверьте входящий вызов, проверив значок звонка.
Затем создайте ’if’ условие, в котором вы проверяете соответствие точек касания диапазону значков в пользовательском интерфейсе. Если вы коснетесь значка телефона, точка касания должна совпадать с точкой касания, соответствующей телефону.
Установите функцию в условии if, чтобы изменить номер страницы на следующую (№ 2). То есть в изображении пользовательского интерфейса экрана набора номера обновите экран телефона и установите номер страницы на 2.
Теперь телефон переходит к экрану набора номера с номерами кнопок. Создайте условие if для проверки цифр и значков.
Код главного экрана
Прикоснитесь к экрану панели набора номера if диапазон точек касания номера — одна или две или другие цифровые кнопки. Обновите пустую строку с именем Number и добавьте это число в строку.
Если точка касания совпадает со значком вызова, он отправляет команду модулю GSM для вызова этого номера. Он также устанавливает номер страницы для экрана вызова и обновляет отображение экрана вызова.
На экране вызова проверьте точки касания значка завершения вызова. Если ваша точка касания соответствует диапазону значка завершения вызова, она отправит команду на модуль SIM800L GSM, чтобы прервать вызов и повесить трубку.
При этом номер страницы будет изменен на 0, а на дисплее появится пользовательский интерфейс главного экрана.
Код функции вызова
Аналогично проверьте точки касания и входящие вызовы, а затем измените номер страницы и обновите экран дисплея с помощью пользовательского интерфейса для экрана сообщения, контакта или звонка.
Затем на этом экране проверьте точку касания значка кнопки и диапазон точек касания, а также настройте функции для этих кнопок, например «подвешивание телефона», «домой», «главный экран», «вызов» и другие функции для значков кнопок.
Код функции сообщенияТелефон с электронными чернилами после сборки
Подключение телефонной цепи с дисплеем E-ink
После кодирования соедините компоненты согласно схеме, показанной ниже. Поместите модуль Raspberry Pi и SIM800L внутри разработанного корпуса/корпуса. Закрепите динамик и микрофон в отверстиях, сделанных для них в корпусе.
Подключение цепи телефона с дисплеем E-ink
Закрепите аккумулятор и зарядное устройство между дисплеем и Raspberry Pi. Затем прикрепите дисплей к корпусу так, чтобы контакты соответствовали гнездовому разъему E-ink на Raspberry Pi.
Пинцы E-ink между заголовками на Raspberry Пи
Закрепите модуль GSM в гнезде и экран телефона на базовой крышке телефона.
GSM модуль, закрепленный в корпусеИсправление экрана телефона
Тестирование
Теперь телефон с электронными чернилами готов продемонстрировать свое волшебство. Вставьте SIM-карту в модуль GSM и запустите код OS, и вы готовы его использовать.
В видео ниже вы можете увидеть, как телефон выглядит и работает…
Нажмите на значок вызова, и вы увидите экран набора номера. Введите номер телефона и коснитесь значка «Вызов», чтобы совершить звонок. Нажмите значок «Домой», чтобы перейти на главный экран, и нажмите «Контакты», чтобы просмотреть номера контактов.
Далее попробуйте позвонить с другого телефона на свой телефон E-ink. При подключении раздастся звуковой сигнал, и вы перейдете на экран звонка. Здесь коснитесь значка «Принять вызов», чтобы принять участие в вызове, и значка «Завершить вызов», чтобы завершить вызов.
Вот как вы можете сделать свой собственный телефон дома с помощью E-ink Display и Raspberry Pi.
Мы также создали самый маленький ноутбук на базе дисплея E-ink с использованием Raspberry Pi, который вы обязательно должны проверить один раз.
Одна важная вещь….
Если у вас возникнут какие-либо проблемы while при работе над этим проектом, задайте их в комментариях ниже.
Все ссылки на книги и журналы, представлены на этом сайте, исключительно для ознакомления, авторские права на эти публикации принадлежат авторам книг и издательствам журналов!
Подробно тут! Жалоба