Самый простой способ установки раста на любую операционную систему - через rustup.
Далее необходимо установить соответствующий таргет для сборки под Cortex-M4F:
rustup target add thumbv7em-none-eabihf
Для отладки потребуется probe-rs. И проверка переполнения стека flip-link.
cargo install probe-rs --features cli
cargo install flip-link
Для прошивки достаточно выполнить команду:
cargo embed --release
Для запуска с логированием в консоль:
cargo run --release
Для запуска тестов:
cargo test
Установить драйвер ST-LINK для прошивки и отладки.
Для удобства разработки рекомендуется использовать Visual Studio Code c следующим набором расширений:
code --install-extension \
rust-lang.rust-analyzer \
probe-rs.probe-rs-debugger \
tamasfe.even-better-toml \
serayuzgur.crates
Протокол в формате JSON. Каждое сообщение завершается нулевым байтом.
Можно отправлять повторно для изменения частоты отправки статистики.
{
"cmd": 1,
"delay_time": 1000 // в милисекундах
}
{
"cmd": 0
}
{
"cmd": 2,
"angle": 32.3 // в градусах
}
{
"gps_data": {
"latitude": 5546.959,
"lat_dir": "North",
"longitude": 3740.692,
"lon_dir": "East",
"time": 123035.0
},
"quat": {
"q0": 1,
"q1": 2,
"q2": 3,
"q3": 4
},
"motor_data": {
"motor_state": "Stopped",
"motor_angle": 60.0
}
}