- Размеры: TBA
- Напряжение питания: TBA
- Потребляемые ток, пиковый: TBA
Подключение к головному устройству осуществляется по протоколу RS-485 через разъем SH04, расположенному на плате модуля ФПГ. Распиновка приведена на рисунке ниже.
Длина запроса - 8 байт.
Байт # | Поле | Тип | Значение | Описание |
---|---|---|---|---|
0 | start_byte | uint8_t | 0xAA | Стартовый байт. Всегда равен 0xAA |
1 | id | uint8_t | 0x40 | Идентификатор получателя пакета. 0x40 - получатель - Датчик ФПГ |
2 | type | uint8_t | 0x01 | Тип пакета. 0x01 - пакет команды управления |
3 | action | uint8_t | 0x00 | Действие, которое необходимо выполнить. 0x00 - Чтение |
4 | param | uint8_t | 0x40 | Параметр для действия. 0x40 - Данные пульса |
5 | data | uint8_t | 0x00 | Данные для действия. 0x00 - нет данных |
6 | payload | uint8_t | 0x00 | Дополнительные данные для действия. 0x00 - нет данных |
7 | checksum | uint8_t | 0x2B | Контрольная сумма пакета - младший байт суммы всех байтов пакета |
Длина ответа - 12 байт.
Байт # | Поле | Тип | Значение | Описание |
---|---|---|---|---|
0 | start_byte | uint8_t | 0xAA | Стартовый байт. Всегда равен 0xAA |
1 | id | uint8_t | 0x01 | Идентификатор получателя пакета 0x01 - получатель - Головное устройство |
2 | type | uint8_t | 0x40 | 0x40 - Данные пульса |
3 | systime | uint32_t | 0xXX | Системное время модуля в миллисекундах. Порядок байт - little endian |
4 | 0xXX | |||
5 | 0xXX | |||
6 | 0xXX | |||
7 | pulse | uint32_t | 0xXX | Частота сердечных сокращений в Уд/мин Порядок байт - little endian |
8 | 0xXX | |||
9 | 0xXX | |||
10 | 0xXX | |||
11 | checksum | uint8_t | 0xXX | Контрольная сумма пакета - младший байт суммы всех байтов пакета |
- Поле systime содержит значение системного времени модуля с дискретностью 1 миллисекунда.
- Поле pulse содержит значение частоты сердечных сокращений.
Все команды приведены в HEX-формате без указания 0x
Запрос: AA 40 01 00 40 00 00 2B
Ответ: AA 01 40 AB 83 00 00 46 00 00 00 5F
Интерпретация ответа:
- тип пакета - данные пульса,
- systime = 00 00 83 AB = 33707 мс,
- пульс = 00 00 00 46 = 70 уд/мин.
Длина запроса - 8 байт.
Байт # | Поле | Тип | Значение | Описание |
---|---|---|---|---|
0 | start_byte | uint8_t | 0xAA | Стартовый байт. Всегда равен 0xAA |
1 | id | uint8_t | 0x40 | Идентификатор получателя пакета. 0x40 - получатель - Датчик ФПГ |
2 | type | uint8_t | 0x01 | Тип пакета. 0x01 - пакет команды управления |
3 | action | uint8_t | 0x00 | Действие, которое необходимо выполнить. 0x00 - Чтение |
4 | param | uint8_t | 0x41 | Параметр для действия. 0x41 - Данные сатурации крови. |
5 | data | uint8_t | 0x00 | Данные для действия. 0x00 - нет данных |
6 | payload | uint8_t | 0x00 | Дополнительные данные для действия. 0x00 - нет данных |
7 | checksum | uint8_t | 0x2C | Контрольная сумма пакета - младший байт суммы всех байтов пакета |
Длина ответа - 12 байт.
Байт # | Поле | Тип | Значение | Описание |
---|---|---|---|---|
0 | start_byte | uint8_t | 0xAA | Стартовый байт. Всегда равен 0xAA |
1 | id | uint8_t | 0x01 | Идентификатор получателя пакета 0x01 - получатель - Головное устройство |
2 | type | uint8_t | 0x41 | 0x41 - Данные сатурации крови |
3 | systime | uint32_t | 0xXX | Системное время модуля в миллисекундах. Порядок байт - little endian |
4 | 0xXX | |||
5 | 0xXX | |||
6 | 0xXX | |||
7 | spo | uint32_t | 0xXX | Сатурация крови в процентах. Порядок байт - little endian |
8 | 0xXX | |||
9 | 0xXX | |||
10 | 0xXX | |||
11 | checksum | uint8_t | 0xXX | Контрольная сумма пакета - младший байт суммы всех байтов пакета |
- Поле systick содержит значение системного времени модуля с дискретностью 1 миллисекунда.
- Поля spo содержат значения сатурации крови в процентах.
Все команды приведены в HEX-формате без указания 0x
Запрос: AA 40 01 00 41 00 00 2C
Ответ: AA 01 41 34 D4 00 00 62 00 00 00 56
Интерпретация ответа:
- тип пакета - данные сатурации,
- systime = 00 00 D4 34 = 54324 мс,
- сатурация = 00 00 00 62 = 98%.
Длина запроса - 8 байт.
Байт # | Поле | Тип | Значение | Описание |
---|---|---|---|---|
0 | start_byte | uint8_t | 0xAA | Стартовый байт. Всегда равен 0xAA |
1 | id | uint8_t | 0x40 | Идентификатор получателя пакета. 0x40 - получатель - Датчик ФПГ |
2 | type | uint8_t | 0x01 | Тип пакета. 0x01 - пакет команды управления |
3 | action | uint8_t | 0x00 | Действие, которое необходимо выполнить. 0x00 - Чтение |
4 | param | uint8_t | 0x42 | Параметр для действия. 0x42 - Сырые данные |
5 | data | uint8_t | 0x00 | Данные для действия. 0x00 - нет данных |
6 | payload | uint8_t | 0x00 | Дополнительные данные для действия. 0x00 - нет данных |
7 | checksum | uint8_t | 0x2D | Контрольная сумма пакета - младший байт суммы всех байтов пакета |
Длина ответа - 26 байт.
Байт # | Поле | Тип | Значение | Описание |
---|---|---|---|---|
0 | start_byte | uint8_t | 0xAA | Стартовый байт. Всегда равен 0xAA |
1 | id | uint8_t | 0x01 | Идентификатор получателя пакета 0x01 - получатель - Головное устройство |
2 | type | uint8_t | 0x42 | 0x42 - Сырые данные |
3 | systime | uint32_t | 0xXX | Системное время модуля в миллисекундах. Порядок байт - little endian |
4 | 0xXX | |||
5 | 0xXX | |||
6 | 0xXX | |||
7 | ppg_raw_red | uint32_t | 0xXX | Сырые данные датчика ФПГ с красного светодиода в отсчетах АЦП. Безразмерная величина. Порядок байт - little endian |
8 | 0xXX | |||
9 | 0xXX | |||
10 | 0xXX | |||
11 | ppg_raw_ir | uint32_t | 0xXX | Сырые данные датчика ФПГ с ИК-светодиода в отсчетах АЦП. Безразмерная величина. Порядок байт - little endian |
12 | 0xXX | |||
13 | 0xXX | |||
14 | 0xXX | |||
15 | ppg_raw_green | uint32_t | 0xXX | Сырые данные датчика ФПГ с зеленого светодиода в осчетах АЦП. Безразмерная величина. Порядок байт - little endian |
16 | 0xXX | |||
17 | 0xXX | |||
18 | 0xXX | |||
19 | acc_x | int16_t | 0xXX | Линейное ускорение по оси X в 0.244 mg = 1 LSB. Порядок байт - little endian |
20 | 0xXX | |||
21 | acc_y | int16_t | 0xXX | Линейное ускорение по оси Y в 0.244 mg = 1 LSB. Порядок байт - little endian |
22 | 0xXX | |||
23 | acc_z | int16_t | 0xXX | Линейное ускорение по оси Z в 0.244 mg = 1 LSB. Порядок байт - little endian |
24 | 0xXX | |||
25 | checksum | uint8_t | 0xXX | Контрольная сумма пакета - младший байт суммы всех байтов пакета |
- Поле systick содержит значение системного времени модуля с дискретностью 1 миллисекунда.
- Поля ppg_red, ppg_ir и ppg_green содержат значения освещенности, снятые с фотодиода по соответствующему каналу (цвету светодиода). Размерность - отсчеты АЦП и поэтому данная величина безразмерная.
- Поля acc_x, acc_y и acc_z содержат значения линейного ускорения по соответствующим осям в формате 0.244 mg = 1 LSB.
Все команды приведены в HEX-формате без указания 0x, что удобно для копирования в терминал.
Запрос: AA 40 01 00 42 00 00 2D
Ответ: AA 01 42 AE C3 08 00 89 83 00 00 26 85 00 00 00 00 00 27 FE 7F FC 0F 10 DC
Интерпретация ответа:
- Тип пакета - сырые данные ФПГ
- systime = 00 08 C3 AE = 574382 мс,
- ppg_raw_red = 00 00 83 89 = 33673,
- ppg_raw_ir = 00 00 85 26 = 34086,
- ppg_raw_green = 00 00 00 00 = 0,
- acc_x = FE 27 = -115,412 mg,
- acc_y = FC 7F = -218.868 mg,
- acc_z = 10 0F = 1003.084 mg.