Mecrisp Forth for the STM32WB
Interactive and extensible language. Built-in lexical analysis (tokenizer, parser), needs less than 32 KiB Flash and 4 KiB RAM.
The competitor is
MicroPython, but it needs more than 250 KiB of Flash.
But what about
uLisp? It is also small and self-contained.
CMSIS-SVD for STM32WB
SVD 2 Forth
Install the
STM32CubeIDE and get the
STM32WBxx_CM4.svd
from the folder:
Version 1.6: stm32cubeide_1.1.0/plugins/com.st.stm32cube.ide.mcu.productdb.debug_1.1.0.201910081157/resources/cmsis/STMicroelectronics_CMSIS_SVD
Version 1.7: stm32cubeide_1.2.0/plugins/com.st.stm32cube.ide.mcu.productdb.debug_1.2.0.201912201802/resources/cmsis/STMicroelectronics_CMSIS_SVD
Install the Mecrisp-Stellaris and copy the
STM32WBxx_CM4.svd
into
common/svd2forth-v3
. Edit the
Makefile
common/svd2forth-v3> diff Makefile Makefile~
5c5
< FOLDED_SVD = STM32WBxx_CM4.svd
---
> FOLDED_SVD = STM32L07x.svd
Edit the shell script
raw-svd-clean.sh
. Replace
gsed
with
sed
.
Generate the Forth and Assembler source files:
common/svd2forth-v3> make everything
common/svd2forth-v3> make mem
STM32WB Nucleo Board
https://www.st.com/en/evaluation-tools/p-nucleo-wb55.html
Schematic Nucleo Board MB1355
Schematic Nucleo Dongle MB1293
Build
Linux packages:
- cross-arm-binutils
- cross-arm-none-gcc9
- cross-arm-none-newlib-devel
- stlink
- stlink-gui
- stm32flash
- openocd
/opt/STMicroelectronics/STM32Cube/STM32CubeProgrammer/bin/STM32_Programmer_CLI -c port=SWD -ob displ
Debug
--
Peter Schmid - 2019-12-29
Comments