readme rewrite

fix

fix
This commit is contained in:
Игорь Брылёв 2025-03-24 14:01:36 +03:00
parent add1a30827
commit f928f03112

View file

@ -2,32 +2,61 @@
## Для разработки
- [Установить platformio](#introduction)
- Установить platformio
```bash
pip install -U platformio
```
- [Скомпилировать проект](#build_project)
- Скомпилировать проект
```bash
platformio run --environment robotroller_reborn
```
- [Загрузить прошивку](#upload_project)
- Загрузить прошивку
```bash
platformio run --target upload --environment robotroller_reborn
```
- [Открыть монитор UART](#monitor_port)
- Открыть монитор UART
```bash
platformio device monitor
```
Чтобы отправить прошивку по can нужно:
1) сместить в линкере прошивки её адрес. Иoите файл с .ld и меняете область FLASH на 0x08008000 и соотвественно занимаемая память = 480K
пример:
MEMORY
{
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 128K
FLASH (rx) : ORIGIN = 0x8008000, LENGTH = 480K
}
меняем и в FLASH.ld и в RAM.ld
2) скомплиировать в hex формате
3) в терминале прописать: python3 boot_test.py /*адрес на hex файл*/ /*адрес устройства*/
4) прошивка после чего микроконтроллер автоматически перезагрузится и будет уже запускаться с вашей прошивки, минуя бутлоадер
## Загрузчик (Bootloader)
В директории `bootloader` расположен код загрузчика, который позволяет загрузить/обновить управляющую программу контроллера.
## Инструкция по загрузке ПО в контроллер по CAN-шине
1. Сместить в линкере прошивки её адрес. В файле с расширением .ld замените область FLASH на 0x08008000 и занимаемую память на 480K
пример (FLASH.ld и RAM.ld):
```cpp
MEMORY
{
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 128K
FLASH (rx) : ORIGIN = 0x8008000, LENGTH = 480K
}
```
2. Cкомпилировать в `hex` формате
3. Запустить в терминале
```bash
python3 boot_test.py <адрес на hex файл> <адрес устройства>`
```
4. После завершения процесса прошивки микроконтроллер автоматически перезагрузится и запустится загруженная программа, минуя загрузчик.
## Запись CAN ID в контроллер
TODO
Пример
```bash
python test/write_can_id.py "1"
```