docs(protocan-boot): уточни границы блоков слота
This commit is contained in:
@@ -52,9 +52,21 @@ STM32 HAL / другой MCU / host-тест
|
||||
|
||||
```text
|
||||
offset = MsgBody * 8
|
||||
65536 * 8 = 512 КиБ на слот
|
||||
512 КиБ = 512 * 1024 = 524 288 байт
|
||||
524 288 / 8 = 65 536 блоков на слот
|
||||
```
|
||||
|
||||
| `MsgBody` | Номер блока | Смещение | Байты слота |
|
||||
|---:|---:|---:|---:|
|
||||
| `0x0000` | 0 | `0x00000` | `0x00000..0x00007` |
|
||||
| `0x0001` | 1 | `0x00008` | `0x00008..0x0000F` |
|
||||
| `0xFFFF` | 65 535 | `0x7FFF8` | `0x7FFF8..0x7FFFF` |
|
||||
|
||||
Последний блок заканчивается на смещении `0x7FFFF`. Значение `0x80000`
|
||||
равно размеру слота и является первой позицией за его границей. В коде эти
|
||||
границы заданы константами `PCAN_BOOT_BLOCK_COUNT=65536` и
|
||||
`PCAN_BOOT_SLOT_SIZE=524288`.
|
||||
|
||||
Последний кадр дополняется `0xFF`; ядро передаёт во Flash только оставшиеся
|
||||
байты фактического образа и включает в CRC только их.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user