IndusPhone — создание самого маленького программируемого смартфона (часть 1)
IndusPhone — создание самого маленького программируемого смартфона (часть 1)
Смартфоны стали необходимостью в повседневной жизни. Умные часы также помогают оставаться на связи с телефоном и получать уведомления. Доступ к звонкам доступен непосредственно через умные часы.
В продолжение этих разработок был разработан дизайн самого маленького в мире смартфона — IndusPhone. Этот смартфон длиной всего 3 см по размеру напоминает умные часы.
Поскольку проект довольно сложный и длинный, он будет опубликован в нескольких частях, что позволит лучше понять пошаговое руководство for.
Проектирование
Поскольку это будет самый маленький смартфон в мире, необходимо тщательно выбирать компоненты, чтобы они поместились в его небольшой корпус. Монета IndusBoard была выбрана из-за ее компактного размера (около 3 см) и того, что она включает в себя множество входов/выходов, поэтому для этого устройства требуется for.
Он также оснащен встроенными датчиками, такими как магнитометр, акселерометр, датчик температуры и Wi-Fi, все размером в пределах 3 см, что помогает сохранять устройство компактным. Также необходим дисплей такого же размера с сенсорным экраном.
Прежде чем приступить к проектированию, необходимо обозначить функции смартфона. Он поддерживает SIM-карты 2G и 4G, Wi-Fi и сенсорный дисплей. Основные функции телефона включают звонки, обмен сообщениями, контакты, набор номера и режим громкой связи.
После завершения разработки были добавлены дополнительные функции, такие как игры, калькулятор, обмен контактами Wi-Fi, вызовы на основе Wi-Fi и поиск телефона. Смартфон можно запрограммировать на дополнительные функции, если необходимо if.
Эта первая часть статьи, состоящей из нескольких частей, посвящена разработке базового пользовательского интерфейса и тестированию модуля GSM.
Примечание EFY. Прежде чем приступить к написанию кода пользовательского интерфейса, установите ESP32 на Arduino IDE. Затем установите библиотеки for TFT_eSPI display, GSMSim for, взаимодействующие с модулем SIM-карты, и CTS816 for с помощью сенсорного дисплея.
Законопроект Материалы
Идентификатор
Название
Обозначение
Занимаемая площадь
Количество
Производитель Деталь
Производитель
1
CST816 Сенсорный круглый дисплей Стекло
CN1
CST816
1
CST816
2
GSM Модуль
M1
SIM800LMODULE_SIM800LMODULE
1
800I
SIM Com
3
MIC14
M2
micro-usb-smd-kh-micro0.8cb-5pj
1
4
SMD Динамик
SP1
Динамик
1
gspk151035pn-8r0.5w-l35-1.25t
INGHAi
5
IndusBoard Монета
U1
Indusboard_coin
2
Монета IndusBoard
IndusBoard
6
GC9A01
U3
GC9A01
1
Waveshare
7
SMC-204-AR P6
U4
SIM-SMD_SIM-SMD_MICROSIM_SMC-204
1
SMC-204-ARP6
XUNPU
Проектирование пользовательского интерфейса
Базовый пользовательский интерфейс будет охватывать такие функции, как отображение номеров, участие в вызовах, ввод и отправка сообщений.
Сначала будет разработан пользовательский интерфейс вызова for, экран входящего вызова. Будет отображен номер входящего вызова, а также будут добавлены две сенсорные кнопки пользовательского интерфейса for для участия или отмены вызова.
Дизайн пользовательского интерфейса будет включать код для отображения номера и две кнопки с функциями для обнаружения точек касания на кнопках, отображаемых на экране. На рис. 2 показан дизайн пользовательского интерфейса экрана входящего вызова.
Рис. 3. Фрагмент кода for дизайн пользовательского интерфейса экрана вызова
Интерфейс панели набора номера
Следующим шагом является разработка пользовательского интерфейса экрана набора номера. К различным сенсорным кнопкам for будут добавлены разные номера.
Код проверит точки касания for каждого номера и определит, соответствует ли точка касания диапазону кнопок, отображаемых на экране. Функция сохранит номер в виде строки и отобразит его как набранный номер.
Рис. 4 показан пользовательский интерфейс панели набора номера. На рис. 5 показан фрагмент кода for дизайна пользовательского интерфейса панели набора номера for самого маленького телефона.
Рис. 4. Пользовательский интерфейс панели набора номера
Рис. 5. Фрагмент кода for дизайн пользовательского интерфейса панели набора номера for самый маленький телефон
Интерфейс ввода сообщений
Пользовательский интерфейс клавиатуры будет предназначен для ввода буквенно-цифровых символов и символов for при наборе текста и отправке сообщений. Этот процесс аналогичен набору номера, но на дисплее имеется больше сенсорных клавиш.
К switch будет добавлен специальный ключ между алфавитами, символами, специальными символами и для переключения заглавных букв. На рис. 6 показан пользовательский интерфейс for сообщения и клавиатура.
Рис. 6: Сообщение пользовательского интерфейса for и клавиатура
Базовый пользовательский интерфейс теперь готов к функциям for, таким как отправка сообщений, набор номеров и проверка входящих вызовов. Оставшийся пользовательский интерфейс будет рассмотрен в следующей части. Теперь давайте обратим внимание на интеграцию SIM-карты GSM.
GSM Интеграция
Модуль GSM работает через последовательное периферийное устройство и подключается к монете IndusBoard через последовательный порт. Гибкий ввод-вывод IndusBoard позволяет добавлять множество последовательных периферийных устройств.
Определение контактов в коде позволит им функционировать как последовательные контакты. Большинство модулей GSM взаимодействуют с монетой IndusBoard с помощью AT-команд, и большинство AT-команд являются стандартными для всех модулей.
Такие функции, как регулировка громкости, совершение вызовов, проверка уровня сигнала, состояние провайдера сети, хранение сообщений и многое другое, можно выполнять с помощью AT-команд.
Библиотеки упрощают доступ к этим функциям, и for в этом устройстве используется библиотека GSMSIM. Код можно загрузить для совершения вызовов и проверки уровня сигнала, а функции можно протестировать по мере необходимости.
Рис. 7 показан фрагмент кода for, тестирующий GSM и совершающий вызовы или отправляющий сообщения. На рис. 8 показан модуль 4G GSM.
Рис. 7. Фрагмент кода for для тестирования GSM, совершения звонков и сообщений
Рис. 8: Модуль 4G GSM
Примечание EFY. Любой модуль GSM 3G, 2G или 4G можно использовать for на SIM-карте. Для включения функций 4G рекомендуется использовать модуль A7670C. В качестве альтернативы можно использовать модуль 2G, например SIM800L. if Поддержка 4G не требуется.
Принципиальная схема
Принципиальная схема for самого маленького IndusPhone показана на рис. 9. Он построен на основе монеты IndusBoard, модуля GSM, круглого сенсорного дисплея, круглого LCD и нескольких других компонентов.
Рис. 9: Принципиальная схема IndusPhone
Создание и тестирование
Собрав компоненты, спаяйте их согласно схеме. Дисплей имеет сенсорный драйвер, который работает с I2C, while, сам дисплей работает с SPI, а модуль SIM-карты GSM работает через последовательный порт.
На монете IndusBoard любой контакт ввода-вывода может быть назначен периферийными функциями for путем определения контакта в коде.
В этом case контакты 8 и 9 используются for I2C (for дисплей), контакты 1–7 for SPI и контакты 44 и 43 for последовательный (for GSM SIM-модуль).
После подключения и пайки всех компонентов установите их за монетой IndusBoard, как показано на рис. 10.
Рис. 11 показано размещение и пайка компонентов IndusPhone.
Рис. 10. Размещение и пайка компонентов IndusPhone
Рис. 11. Ввод сообщения и набор номера
После того как устройство собрано, его можно включить и протестировать. Необходимо протестировать каждую функцию, включая SIM-карту GSM и пользовательский интерфейс for для ввода сообщений, набора номеров и участия в вызовах. На рис. 11 показан процесс набора сообщения и набора номера.
Примечание EFY. Это первая часть разработки самого маленького телефона в мире. Дальнейшие детали будут публиковаться сериями, так как конструкция обширная и продвинутая.
Все ссылки на книги и журналы, представлены на этом сайте, исключительно для ознакомления, авторские права на эти публикации принадлежат авторам книг и издательствам журналов!
Подробно тут! Жалоба