diff --git a/README.md b/README.md
index 770c73c..a5399a8 100644
--- a/README.md
+++ b/README.md
@@ -81,7 +81,7 @@ $$\text{Значение Byte 4 (DEC)} = \frac{\text{Желаемая скоро
| | | | | | | | | | | |
| :---: | :---: | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :--- |
-| **`0x17C`** | 8 | ECU (ДВС) | `00` | `00` | `00` | `00` | `00` | `00` | `00` | лампа CHECK + Предположительно Обороты двигателя (Тахометр) |
+| **`0x17C`** | 8 | ECU (ДВС) | `00` | `00` | `00` | `00` | `00` | `00` | `00` | лампа CHECK + круиз |
подробнее
@@ -108,6 +108,26 @@ $$\text{Значение Byte 4 (DEC)} = \frac{\text{Желаемая скоро
* **Byte 6:** — `00` -
+
+| | | | | | | | | | | |
+| :---: | :---: | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :--- |
+| **`0x1DC`** | 4 | ECU (ДВС) | `00` | `05` | `90` | - | - | - | - | Обороты двигателя (Тахометр) |
+
+
+ подробнее
+
+### Описание
+
+* **Byte 0:** — `00` - Фиксированный маркер/валидатор пакета. Должен быть строго равен 0x00, иначе панель игнорирует данные.
+* **Byte 1:** — `05` - High Byte — Старший байт значения оборотов двигателя
+* **Byte 2:** — `90` - Low Byte — Младший байт значения оборотов двигателя.
+
+Формула расчета полезной нагрузки (Byte 1 и Byte 2)Для получения итогового значения оборотов, отображаемых на панели, используется формула:
+RPM = ((Byte 1 * 256) + Byte 2)/4
+
+
+
+
| | | | | | | | | | | |
| :---: | :---: | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :--- |
| **`0x294`** | 8 | Панель | `02` | `16` | `F1` | `01` | `57` | `FE` | `00` | |
diff --git a/Src/DS_Accord_8_F-CAN.c b/Src/DS_Accord_8_F-CAN.c
index 9263613..4da7c12 100644
--- a/Src/DS_Accord_8_F-CAN.c
+++ b/Src/DS_Accord_8_F-CAN.c
@@ -7,10 +7,12 @@ extern CAN_HandleTypeDef hcan;
volatile CanTaskTypeDef tasks[] = {
// ID, DLC, Period, Alive, Last_Time, Start_Phase, { Исходные данные DATA[8] }
{0x158, 8, 10, 0, 0, 0, {0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00}}, // ECU Скорость
- {0x17C, 8, 10, 0, 0, 2, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}, //
+ {0x17C, 8, 10, 0, 0, 2, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}, // Гасим чек
{0x1A4, 8, 20, 0, 0, 4, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}, // ABS/VSA Тормоза
{0x324, 8, 20, 0, 0, 6, {0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}, // MICU Кузов
+ {0x1DC, 4, 20, 0, 0, 8, {0x00, 0x05, 0x90, 0x00}}, //RPM
+
// {0x490, 8, 20, 0, 0, 6, {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00}},
// {0x491, 8, 20, 0, 0, 6, {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00}},
// {0x492, 8, 20, 0, 0, 8, {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00}},
@@ -117,7 +119,7 @@ uint8_t calc_honda_halfbyte_checksum(uint16_t id, uint8_t *data, uint8_t dlc, ui
}
// 3. Добавляем длину пакета и шаг циклического счетчика
- sum += dlc & 0x0F;
+ sum += 8;
sum += alive_val & 0x0F;
// 4. Реализация правила дополнения до нуля (вычитание накопленного остатка из 16)