![]() |
Статьи : Телефония / Сотовая телефония / NMT /Интерфейс и протокол M-BUSДобавлено пользователем RN6LMR 27.01.2025 в 07:00.
|
M-BusM-Bus — это двунаправленная шина с одним выводом, предназначенная как для передачи, так и для приема данных с телефона. Она работает медленно и только в полудуплексном режиме. На телефоне используются только два вывода: один общий и один для передачи данных. M-Bus работает со скоростью 9600 бит/с, 8 бит данных, нечетная четность, один стоп-бит (8-O-1). Вывод готовности терминала передачи данных (DTR) должен быть сброшен вместе с запросом на отправку (RTS). Это приводит в действие электронику в кабеле и настраивает её на работу с M-Bus.Аппаратный уровень
Ниже приведена ещё одна схема адаптера M-BUS. Ниже приведена схема кабеля для Nokia 5110, 61xx, 7110, 6210: Вот ещё схемы адаптера MBUS для NOKIA 32xx/51xx/61xx: Программный уровеньПакеты данныхСтруктуры пакетов
Описание полей пакетов
Вычисление checksum for( checksum = 0; i = 0; i < packet[2] + 5; i++ ) Общение телефона с компьютером происходит по следующей схеме:
После удачного обмена данными компьютер должен увеличить packet_number на 1. КомандыКоманды Nokia 640Команда — набор байт в поле data, который посылается с компьютера для чтения/записи данных телефона при помощи простейшего адаптера, схема которого приведена ниже. Телефон отвечает пакетом подтверждения и пакетом с ответными данными. После получения этих 2-х пакетов от телефона компьютер должен подтвердить приём пакетом подтверждения. Вот основные команды: Запрос строки с версией телефона: 00 03 00 Ответ телефона: 00 03 56 20 20 31 2E 30 | ..V 1.0 Чтение АЦП номер num: 19 02 01 num Поле num может принимать следующие значения:
19 02 MSB LSB где MSB и LSB — соответственно старший и младший байты значения АЦП. АЦП в Nokia 640 12-разрядные. ( Достаточно забавно следить за напряжением батарейки — большая разрядность АЦП позволяет наблюдать как телефон её "кушает" во время разговора) Чтение серийного номера телефона: 0F 19 03 00 01 0B 00 00 Ответ телефона: 0f 19 01 04 01 0b 00 00 | ........ 10-й байт содержит длину серийного номера, далее идёт сам номер в ASCII. Данная команда может пригодится при проверке подлинности телефона. Чтение состояния NetMonitor'а: 0F 19 03 00 06 03 00 00 Ответ телефона: 0f 19 01 04 06 03 00 00 | ........ 11-й байт содержит режим работы NetMonitor'а. (см. ниже) Запись состояния NetMonitor'аЖ 10 080300060300000001 нM где нM — режим работы NetMonitor'а.
10 08010406030000 | ........ т.е. он просто подтвердит запись. О NetMonitor'е можно рассказать очень многое. Это около 40 различных экранов, на которых выводится информация о работе того или иного блока телефона. Узнать можно всё — от номера канала БС, уровня RSSI в дБ, типа подключённого зарядного устройства, напряжения и температуры аккумулятора, до времени работы телефона и причины по которой сорвался последний звонок. На 90% экраны NetMonitor'а в NMT телефонах Nokia совпадают с аналогичными экранами GSM телефонов, за исключением параметров, специфичных для стандарта NMT. Подробнее о NetMonitor'е можно прочитать например здесь, или в документации к Gnokii. Чтение записи номер num из записной книжки телефона: 0f 2d 03 00 07 1f 7f f0 00 num 00 00 Здесь num может принимать следующие значения:
0f 2d 01 08 07 1f 7f f0 | .-...... 15-й байт содержит длину номера телефона, байты 16—30 — номер телефона закодированный по 4 бита на цифру (в примере — 12345678). Кодировка такая: Символ: 1 2 3 4 5 6 7 8 9 0 * # p w + Байты 31—46 содержат имя. Кодировка для русского текста используется нестандартная. Байт 47 — группа. Для записной книжки — всегда 5, для последних набранных номеров — соответственно порядка в котором они были набраны — последний номер имеет наибольшую величину. Запись в позицию num записной книжки: 10 080300071F 7F F0 00 num 00 00 00 21 data data — массив из 33 байт. Формат данных совпадает с форматом байт 15—47 ответа телефона на команду чтения телефонной книжки. Ответ телефона: 10 080108071F 7F F0 00 num т.е. он просто подтвердит запись в ячейку num. Чтение текущей картинки, которую вы видите при включении телефона (wake-up logo): 0f 60 03 00 07 3A 7f f0 00 num 00 00 Картинка хранится в формате 84x48. Каждые 8 пикселов упакованы в 1 байт, в виде 6 массивов по 84 байта. Подробнее о wake-up logo можно узнать практически на любом сайте про GSM-телефоны Nokia. Ответ телефона такой же, как и при чтении записной книжки, только длиннее — 98 байт. 84-байтный массив начинается с 15-го байта. Запись wake-up картинки: 10 080300073A 7F F0 00 num 00 00 00 54 data data — массив из 84 байт. Т.е. в телефон надо залить 6 (48/8) массивов по 84 байта, меняя num от 0 до 5. Ответ телефона такой же, как и на запись в телефонную книгу: 10 080108073A 7F F0 00 num Маленький совет: Прежде чем заливать новую картинку — сохраните "родную", она может понадобится если с вашим телефоном что-то случится, и вам придётся нести его в ремонт. Иначе сотрудники сервис-центра сразу придумают сотню причин чтобы взять с вас побольше денег. Запись собственного номера для SMS: 10 080300056E 00 00 00 sz data Здесь sz — длина поля data в байтах, а само поле data — номер телефона для поля RP-Originator-address RP-MTI СМС-ки. Номер телефона упаковывается по две цифры в байт, по схеме, аналогичной упаковке номера в записной книжке. Символ: 1 2 3 4 5 6 7 8 9 0 * # + [ Все статьи ]
|