docs(protocan-boot): уточни границы блоков слота
This commit is contained in:
@@ -52,9 +52,21 @@ STM32 HAL / другой MCU / host-тест
|
|||||||
|
|
||||||
```text
|
```text
|
||||||
offset = MsgBody * 8
|
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 только оставшиеся
|
Последний кадр дополняется `0xFF`; ядро передаёт во Flash только оставшиеся
|
||||||
байты фактического образа и включает в CRC только их.
|
байты фактического образа и включает в CRC только их.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user