- PVSM.RU - https://www.pvsm.ru -
Конечно, это «каша из топора», ведь помимо LPC810 с его шестью GPIO, нужен ещё GSM-модуль. За основу прошивки взяты примеры отсюда [1], сама прошивка лежит здесь [2].
Для подключения четырёх контактных групп (трёх кнопок и номеронабирателя), а также дисплея на HD44780, работающего в четырёхбитном режиме, к трём выводам микроконтроллера применена следующая схема:
Сдвиговый регистр — типа 74HC164. Для опроса одной из контактных групп в него необходимо записать число 0x01, 0x02, 0x04 или 0x08. Дисплейный модуль «не обращает внимания» на происходящее, так как на линии EN нуль, а сигнал о состоянии выбранной контактной группы поступает на линию DAT.
Резисторы выбраны такими, чтобы сигнал с микроконтроллера имел приоритет перед сигналом с контактной группы, а именно, R2 — несколько кОм, R3 (подтягивающий вниз) — 22 кОм.
Сигнал STATUS с GSM-модуля управляет стабилизатором напряжения. Если включить модуль, на этой линии появится напряжение, и включится всё устройство. При ручном или автоматическом отключении GSM-модуля всё устройство тоже отключается. Полная схема:
Прошивка состоит из двух конечных автоматов. Первый обрабатывает прерывания с приёмной линии UART, записывает поступающие оттуда знаки в буфер и при обнаружении AT-последовательностей устанавливает соответствующие флаги. Другой конечный автомат — основной цикл событий, считывающий эти флаги и меняющий своё поведение в зависимости от их состояния. Цикл занимает порядка 16 мс, и этого хватает на считывания всех цифровых входов, включая вход с номеронабирателя.
Корпус выбран достаточно крупным, чтобы поместились номеронабиратель, аккумулятор на 1000 мАч, и всё остальное. В ПЗУ осталось достаточно места, чтобы в дальнейшем можно было реализовать управление линией DTR, переход в энергосберегающий режим и АОН.
Много картинок [4], файлы в формате Eagle 6 [5], исходники прошивки [6]
Автор: tormozedison
Источник [7]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/diy/316918
Ссылки в тексте:
[1] отсюда: https://github.com/microbuilder/LPC810_CodeBase
[2] здесь: https://github.com/jaromir-sukuba/rdmp
[3] Эта же схема в PDF: http://jaromir.xf.cz/phone/files/sch.pdf
[4] Много картинок: https://picasaweb.google.com/111890741167251011072/RotaryDialMobilePhone?authuser=0&authkey=Gv1sRgCOvzkIvmvLi_vQE&feat=directlink
[5] файлы в формате Eagle 6: http://jaromir.xf.cz/phone/files/design_files.zip
[6] исходники прошивки: http://jaromir.xf.cz/phone/files/lpc810-mp.zip
[7] Источник: https://habr.com/ru/post/450946/?utm_campaign=450946
Нажмите здесь для печати.