Оглавление:

Калькулятор текстовых сообщений: 6 шагов
Калькулятор текстовых сообщений: 6 шагов

Видео: Калькулятор текстовых сообщений: 6 шагов

Видео: Калькулятор текстовых сообщений: 6 шагов
Видео: Мега простой калькулятор римских и арабских чисел из Ката академиии 2024, Июль
Anonim
Калькулятор текстовых сообщений
Калькулятор текстовых сообщений

Теперь продукт!

Получение степени магистра электротехники потребовало немалых усилий. Это был долгий пятилетний путь, который мне очень понравился. В конце 2015 года я закончила университет, и впереди у меня был трехмесячный отпуск. Нет лучшего способа потратить их, чем немного инженерных исследований и разработок! Сделаем калькулятор текстовых сообщений!

Шаг 1. Выберите существующий научный калькулятор

Выберите существующий научный калькулятор
Выберите существующий научный калькулятор

Этот шаг практически обязателен.

Вряд ли можно найти компанию, которая слепила бы им пару футляров для калькуляторов и кнопок по дешевой цене.

Теперь осталось просто вырвать внутренности и вставить в них наши собственные схемы.

Шаг 2: выбор компонентов

Три наиболее важных компонента для проекта - это ЖК-дисплей, MCU и модуль Bluetooth.

Для ЖК-дисплея я использовал «162COG-BA-BC» от Displaytech. ЖК-экран должен быть сверхтонким, чтобы поместиться в корпус калькулятора, и этот ЖК-дисплей удовлетворял этому требованию. Кроме того, это отражающий ЖК-дисплей, поэтому он не потребляет большой ток. Наконец, этот ЖК-дисплей использует контроллер, совместимый со знакомым Hitachi HD44780, и упрощает программирование благодаря огромному количеству онлайн-документации.

Для микроконтроллера необходимо большое количество выводов ввода-вывода общего назначения, чтобы учесть количество кнопок научного калькулятора. Также требуются приличный объем флеш-памяти и интерфейс UART для модуля Bluetooth.

Для модуля Bluetooth необходимо, чтобы модуль мог действовать как ведущий, так и ведомый. То есть не только другие устройства могут подключаться к модулю, но и модуль может сканировать другие устройства Bluetooth и сам инициализировать подключения. Без этой возможности калькуляторы не могли бы подключаться друг к другу и могли бы принимать запросы на подключение только от более умных устройств, таких как смартфоны.

Шаг 3: Проектирование силовой схемы

Проектирование силовых цепей
Проектирование силовых цепей

Просматривая таблицы данных, мы узнаем, что нам понадобятся две шины напряжения. Нам понадобится шина 3,3 В для модуля Bluetooth и шина 5,0 В для ЖК-дисплея.

У нас есть питание 3,0 В от двух последовательно соединенных щелочных батарей. Чтобы получить требуемые напряжения, мы будем использовать повышающий преобразователь и стабилизатор с малым падением напряжения (LDO). Выходное напряжение повышающего преобразователя определяется соотношением резисторов R3 и R4 на диаграмме. Повышающий преобразователь повысит напряжение с 3,0 В до 5,0 В с указанными значениями.

Затем мы можем использовать шину 5,0 В для создания шины 3,3 В с помощью LDO. Просто убедитесь, что на входах и выходах этих регуляторов установлены SMD-конденсаторы приличного размера, так как они имеют решающее значение для успешной работы.

Наконец, мы добавляем триггер для некоторого умного переключения, которое мы будем использовать с кнопками включения и выключения, встроенными в корпус калькулятора.

Шаг 4: Проектирование схемы управления

Схема управления
Схема управления

Схема цепи управления относительно проста.

Мы используем JTAG ATmega для отладки устройства.

Мы подключаем модуль Bluetooth к одному из интерфейсов UART микроконтроллера, добавляя некоторые предохранительные резисторы, чтобы гарантировать, что мы никогда не увидим напряжение выше 3,3 В на модуле Bluetooth. Резисторный делитель необходим, поскольку микроконтроллер работает от шины 5 В (микроконтроллер не может работать от шины 3,3 В из-за того, что 3,3 В недостаточно для высокого логического уровня ЖК-дисплея).

ЖК-дисплей напрямую подключается к входам / выходам общего назначения на MCU. Делитель напряжения используется для контраста. В качестве альтернативы здесь можно использовать потенциометр. Однако мне нравится надежность статического продукта, который поставляется с отдельными резисторами для регулировки контрастности.

Добавьте несколько развязывающих конденсаторов, кристалл на 16 МГц для микроконтроллера, подтягивающие резисторы для кнопок, и схематический дизайн готов.

Шаг 5: Дизайн печатной платы

Дизайн печатной платы
Дизайн печатной платы

Для проектирования печатной платы я использовал Altium Designer. Самая важная и сложная часть конструкции печатной платы заключалась в измерении физических размеров калькулятора. Плата не только должна иметь идеальную ширину и высоту, чтобы хорошо поместиться в корпусе калькулятора, но и должен соблюдаться ряд других физических размеров. Отверстия ЖК-дисплея должны располагаться в правильном положении на печатной плате, чтобы они хорошо совпадали с окном в корпусе. На печатной плате потребуется несколько отверстий, через которые винты проходят от задней части корпуса к передней части корпуса. Наконец, на печатной плате должны быть колодки для кнопок, которые будут хорошо выровнены.

В конструкции подушечки для кнопок используется стандартная чередующаяся форма для обеспечения высокой надежности при нажатии на токопроводящий коврик для кнопок.

Обязательно вырежьте медь из печатной платы, используя «Защищенную зону» вокруг антенны модуля Bluetooth, чтобы гарантировать отсутствие компромиссов при передаче сигнала. Мой производитель неожиданно решил вырезать всю плату там, где я отмечал, но, к счастью, это не вызвало у меня никаких проблем.

Шаг 6. Отказ от кода

Image
Image

Я использовал AVR Studio со старым отладчиком JTAG ICE для написания всего кода. Мой код отнюдь не был изящно написан, но в конце концов все заработало. В итоге я использовал 64 Кбайт из 128 Кбайт доступной флеш-памяти.

Модуль Bluetooth действительно довольно мощный. Мне удалось дать своему устройству возможность подключаться к другим калькуляторам, iPhone и Android.

Требования к кодированию - это знание контроллеров Hitachi LCD, базовые навыки программирования AVR и понимание того, как взаимодействовать с периферийным устройством с помощью AT-команд и UART.

Большое спасибо за чтение!

www.rubydevices.com.au/productSelect/RubyCalculator

www.ebay.com.au/itm/Text-Messaging-Calculat…

Рекомендуемые: