Похожие презентации:
Разработка протокола обмена
1. Кейс занятие:
Разработка протокола обмена1
2. Определения
Протокол - документ, фиксирующий какое-либо событие, факт или договорённость;
Пакет - определённым образом
оформленный блок данных;
Кадр – фрагмент пакета данных.
2
3. Определения
Контроль целостности – способобнаружить и сообщить об изменениях в
обмене данными
Пакетная синхронизация - определение
начала и конца поступающих пакетов с
целью построения правильной
последовательности пакетов на приеме
3
4. О протоколах
Примеры протоколов:USB;
Bluetooth;
RFID;
NFC.
4
5. Задачи протокола
Определить способ обмена сообщениями;Защитить от возможный неисправностей
при обмене;
Осуществить обмен данными.
Необходимо учитывать, что далеко не все
протоколы гарантируют доставку и\или
достоверность передающихся данных.
5
6. Структурная схема системы
МК1МК2
Д1
АЦП
m - битное
...
Дm
Обмен кадрами UART По 8
бит данных
Необходимо:
1. Проработать пакетную синхронизацию
2. Предусмотреть контроль целостности
пакета
6
7. Контрольное задание
Разработать протокол обмена в видетаблицы;
2.
Сформировать
пакет
данных,
представить в виде «AA 0F 2E … »;
3.
Написать функцию разбора пакета на
составные части с учетом проверок
согласно протоколу на приемной стороне
(необходимо реализовать на языке С/С++,
продемонстрировать).
1.
7
8. Условия обмена
При передаче в каждом кадре можетменяться 1 бит информации.
Устройство передающее закодированную
информацию передает ее постоянно.
Устройство принимающее закодированную
информацию может включиться или
отключиться в любой момент передачи
пакета.
8
9. Варианты заданий
1. m = 12, n = 32. m = 10, n = 4
3. m = 14, n = 3
4. m = 16, n = 3
5. m = 48, n = 4
6. m = 24, n = 3
7. m = 12, n = 5
• m – общее число бит
полезной информации
• n – количество бит
полезной информации в
одном кадре UART
9
10.
1011. Алгоритм работы программы
Записываем полезные данные в файл – длинаполезных данных равна m.
Читаем файл и кодируем пакет для передачи
данных.
Записываем полученные данные в файл.
Используя другую программу или подпрограмму,
расшифровываем пакет, при наличии ошибок
выводим информацию об ошибке, в противном
случае выводим полезные данные в
шестнадцатеричной системе счисления.
11
12. Разбор задания
Желтым выделено nПолезные данные могут
располагаться в любом месте
кадра
X – имеет произвольное значение
Пример задания полезный данных в
программе:
m = 14: 0x33AB; 0x1FDA; 2CAE; 0x1111
m = 11: 0x7DC; 0x6EF; 0x145; 0x111
12
13. Разбор задания
Свободные места заполняютсялюбыми данными по вашему
выбору
Это могут быть:
логические операции:
«и», «или», «не» и т.д.
арифметические операции;
Красная стрелка показывает, как
0х1CFA = 0001 1100 1111 1010
размещены данные внутри пакета. в
примере. Придумайте размещение
для своего варианта сами.
13
14. Разбор задания
Пакет может содержать служебные кадры.Служебные кадры
не содержат данных.
Полезные данные могут
заполнятся старшим или
младшим битом вперед
14