Open1
yuniboard: 開発環境の整理
いろいろと実験つづきでわけがわからなくなりつつあるのでちょっと立ちどまって整理する。。
ツールチェーン
ツールチェーンは全てcrosstool-NGで構築し、 /opt/yuniboard
以下にインストールする。
シンボル | CPU | ボード |
---|---|---|
arm-m4f |
CortexM4(FPU) | Wio Terminal、nRF52、Spresense |
arm-m0p |
CortexM0+ | Raspberry Pi Pico |
avr |
AVR | Arduino Uno |
xtensa-esp32 |
Xtensa | ESP32 |
rv64f |
RISC-V 64bit | Maix Amigo |
crosstool-NG はシンボル毎に別々のツリーを持つことにする。特に、ESP32のcrosstool-NGは専用品が必要。
同じARM CortexM4Fでも、Spresenseのリンクには古いldが必要といった都合があるので適当にバージョン類は調整している。
その他ツール
- OpenOCD(Picoprobe)
- UF2
- https://github.com/buserror/simavr
- https://github.com/felias-fogg/dw-link
ベースOS
OSの定義がなかなか難しい。。要はプロトコルスタック等はボード標準のものを使おうと思っているので、それに付いてくるランタイムがどうしても存在する。
ボード | シンボル | Bootloader | OS |
---|---|---|---|
Wio Terminal | wioterminal |
UF2 | FreeRTOS + Arudino runtime |
nRF52 | nrf52840-generic |
UF2 | Zepher + Nordic SDK + Nordic SoftDevice |
Spresense | spresense |
? | NuttX |
Raspberry Pi Pico | rp2040-pico |
UF2(ROM) | (Basic BSP) |
Arduino Uno | arduino-uno |
Arduino | Arduino runtime |
ESP32 | esp32-generic |
ESP-IDF | FreeRTOS + ESP-IDF |
Maix Amigo | maix-amigo |
? | (Basic BSP) |
原則的に、ボードベンダが提供しているライブラリ以外は使わない方針にしている。
Basic BSPは起動やロックしか面倒をみてくれない簡易ランタイムのみのもの。これらではスレッドが使えない。
prev