Mecrisp Stellaris Unofficial UserDoc¶
Mecrisp-Stellaris is an embedded Forth Operating System for ARM Cortex-M Microprocessors** (Mecrisp is closest to the STC model, but not quite because it isn’t threaded at all)
INDEX¶
QUICK way to find things, use the Index and the [QUICK search] box on the left.
The Forth 200x STANDARD Wordlist with Interpretation semantics
- DOWNLOAD Mecrisp-Stellaris by Matthias Koch (GPL3)
See https://sourceforge.net/projects/mecrisp/files/ to download the latest version for Cortex-M processors mecrisp-stellaris-X.x.x.tar.gz, get the one with the most recent date.
Ok, I’ve run Forth using a off-the-shelf board, I made a led blink, I have a basic understanding now, so WHAT SHOULD I DO NEXT ?
This Table Shows Why CMSIS Matters.
MCU |
Peripherals |
Registers |
Register Bitfields |
|---|---|---|---|
MSP430G2553 |
17 |
113 |
503 |
STM32F0xx |
37 |
413 |
3044 |
STM32F303x |
38 |
549 |
3857 |
GD32VF103 |
45 |
? |
? |
STM32F103xx |
53 |
722 |
4833 |
STM32F103C8 |
33 |
466 |
3503 |
GD32VF103Cx |
46 |
1074 |
7713 |
TM4C129x |
65 |
2137 |
7347 |
STM32F746 |
98 |
1778 |
14338 |
Contents:
- Quickstart
- Common User Issues
- Dictionary
- Example Dictionary Listing
- Forth Definition Components
- RA Core Register Usage
- Number Bases
- Data Types
- Key to Tables
- Compiler Error Messages
- Terminal-IO
- Stack Jugglers
- Logic
- Single Number Math
- Double Number Math
- Fixed Point Arithmetic
- Decision Making
- Bits: Test, Toggle, Clear and Set
- Memory Status
- Memory Access
- String Formatting
- Deep Insights
- User Input and Interpretation
- Dictionary Expansion
- Flags and Inventory
- Folding
- Compiler Essentials
- Control Structures
- Common Hardware Access
- About This Site
- DOCUMENTATION FOR MCU(s)
- Alternate Functions
- Antiforth
- Arrays
- Asyncronous Message Passing
- Assembly Language: Interactive
- Assembly Language Blinky with GDB-TUI
- Autobaud
- AutodocFs
- Atomic read/modify accesses
- Beginner Advice
- Benchmarks
- Bigger, Better, Faster
- Blinky-1a.fs
- BITFIELDS AND STRUCTURES
- BITFIELDS, DECLARE EARLY ?
- Bit Manipulation Tips
- Bluepill Diagnostics
- Bluepill Diagnostics V1.6 User Guide
- Bluepill Examples
- BLUEPILL STLINK V2 PROGRAMMER/DEBUGGER
- BLACK MAGIC PROBE (BMP)
- Bugs or Benefits ?
- BUFFERS
- MecrispCube
- C and Forth Examples
- Charles (Chuck) Moore the inventor of Forth
- Chips
- Chip Pics
- Chip Supply Times
- STM32 CLONES
- Cloning, Manual
- Cloning, Integrated
- Code Errors, Detecting
- Code Reviews and Libraries
- Colour
- Common Programs
- assembler-m0.txt
- bitlog.txt
- blocks.txt
- calltrace.txt
- charcomma.txt
- conditional.txt
- disassembler-m0.txt
- disassembler-m3.txt
- dump.txt
- editor.txt
- examples.txt
- experimental/
- floored-divide.txt
- fonts/
- Flash
- graphics-unicode-8x16.txt
- graphics-unicode-8x8.txt
- graphics.txt
- longcomment.txt
- mecrisp-registergenerator/
- multitask.txt
- nvic.txt
- profiler.txt
- prompt.txt
- pseudorandom.txt
- quotations.txt
- registergenerator/
- romans.txt
- sine.txt
- sqrt.txt
- svd2forth-v2/
- Exceptions
- Compiling
- Contributing Code
- Contributors Go Here
- Critical Systems
- Data Stack
- Debugging With Swdcom
- Defining Words
- Delay
- FORTH DEVELOPMENT ENVIRONMENT
- Development Tips
- Digipot
- Palanqin, an ARM Cortex M0 emulator for DOS
- Electronic Design
- Emacs and Forth
- Endianess
- Example Forth Programs
- Examples: Word Usage
- User Contributed Device Driver Code
- File System
- F0 Discovery: 48 MHz Clock
- F0 Discovery Blinkies
- STM32F1 USB
- RCC_PLLCFGR
- GD32VF103 RISC-V
- Fixed Point (s31.32)
- The First Rule of Forth
- Flash Sizes
- Flashing Mecrisp-Stellaris onto a STM32: Methods
- Floating Point
- Forth Development Applications
- Folding
- Forth (embedded) Interactive Alternatives for Cortex M on STM32F
- Forth Books and Tutorials
- Forth Links
- Mecrisp-stellaris
- Why I Use Forth by Bernd Paysan
- Forth Still Suits Embedded Applications (Tom Napier | Nov 21, 1999)
- The Forth Programming Language - Why YOU should learn it
- Forth - the LEGO of Programming Languages 1995
- Why Forth ?
- Old Tutorial List
- Forths at Github
- Space-Related Applications of Forth
- Forth Variants
- Forth vs C
- Forth Versus Other Systems
- Forth Based Commercial Products
- Mecrisp-Stellaris Videos
- Forth Wizard
- Forth Wisdom
- Fossil Distributed Version Control System
- Garbage Collection
- Gdb for C On A Stm32f051 Disco
- Glossary
- Graphics
- heartblink README
- Hosted or Tethered ?
- Hosted Or Tether Part 2
- HTML
- Low Power on STM32F0
- Ihex 32 Bit
- Loadmeter
- Interactive Assembly Delay
- Interpreter: Inner
- Interpreter: Outer
- Interrupts
- Intro: Forth
- IRC
- Jump Too Far
- Kernel Deep Configurations
- Levels of Code in Forth Programming
- Learning Modules - Blinkies
- Library
- GNU General Public License
- LISP
- Words4
- Machine and Assembly Code
- Macros
- Mecrisp-Stellaris Changelog
- Mecrisp-Stellaris Known Issues
- Mecrisp-Stellaris Readme
- Mecrisp* on a Unsupported MCU
- Obsoleting the Memory Map
- Memstat
- Mcu Specific Special Words
- Miscellanious
- Muforth
- A Modern Forth IDE
- Youtube Videos
- Historical Forth Development
- Modern Development Systems
- C v/s Historical Forth
- C v/s Modern Forth
- Modern Forth IDE Elements
- Serial Terminal: GnuScreen
- Speedup Methods Employed
- Code editor
- Bourne Shell
- Coding/library support
- Fossil SCM
- Target Baud Rate increase to 480600
- Hardware handshaking (RTS)
- Automatic source-code error detection
- Add CR to LF
- Mecrisp-Stellaris Not Working
- MSP340
- Nokia 5110 LCD Display
- Non Cortex-M
- Numworks Calculator
- Patches: Kernel
- PCB
- Pcb-rnd
- PLANG
- PLANG ?
- Audience
- Synopsis
- Target MCU
- Scope
- STM32 Peripheral Howto
- Usage
- Configuring The Peripheral
- Find the SMS bitfield for TIM3
- PLANG Database Syntax Table
- Set TIM3_SMCR_SMS to %001
- includes.fs
- A Do Nothing Word ?
- Disassembled
- Inlined
- Disassembled
- The Old Dichotomy
- PLANG Flowchart
- Intelligent Processing ?
- PLANG Database
- Peripherals Configured
- Dependencies
- The End
- PLANG - How it Works
- Plang Reader
- Plang For STM32f103C8
- Plang2 Status
- Porters Guide
- Problem MCU’s
- Project: LMT01 Temperature Sensor
- Project Suggestions
- A Blue Pill LMT01 Temperature Sensor
- blink-greenpill README
- Prototyping
- Prototyping, Methods
- Quadrature Rotary Switch
- Radiation Hardened CPU
- Random Access Memory
- Compiling, Ram V/S Flash
- RA Kernel
- Rants
- I’m inspired by the epic rants of ttm richter
- How to Solve STM32 Problems
- QUICK, GRAB A BARGAIN
- A Bargain?
- Summary
- REINVENTING THE WHEEL
- THE C PROGRAMMING LANGUAGE
- THE C LIBRARY MYTH
- USE MICROSOFT WINDOWS OR DIE
- The Water Barons
- THE HARD WAY
- Flowchart
- Keep It Simple
- Asking For Help
- A Learning Challenge
- Hackerspaces or SalesPlaces?
- Today’s Gold Standards
- Tethered Forth
- Projects: Working Forth Programs
- Window Comparator
- A Sunrise and Sunset Calculator
- Benchmark Your Forth MCU ?
- Push button switch debounce demo
- Square Wave Generator
- 100 Microsecond Systick
- Overclock to 96 MHz
- F0 Discovery 48 MHz System Clock
- Delay using the interrupt driven 1 millisecond Systick
- Timer, 1mS Interrupt Systick
- Analog To digital 19ch scanner
- Morse code generator
- Real Time
- Recognisers
- References
- CMSIS-SVD
- The Mecrisp REPL
- Retro
- Serial Terminal: Software
- Source Documentation
- Special Chip?
- Stair-Stepping
- Stacks
- Stack Sensitive Prompt
- Stepper Motor Demo
- STM32 Book List
- STM32 Boards
- STM32 Links
- STM32F103C8T6, 2 x 64kB flash ?
- Stm32f103 Which Board ?
- STM32F103C8 V/S GD32VF103Cx
- STM32G431xx
- STM32WLE5C8
- Storage Space
- Supported Hardware
- Svd2db-v1 README
- Svd2gas - The Freedom To Assemble
- Svd2forth-v3
- Forth Sourcecode Dependency Generation
- svd2mem-sqlite
- SWDCOM Intro
- Swdcom Binaries
- SWDCOM Install
- FreeBSD
- Debian-10.6-xfce
- Apple Mac OSX
- Building SWD2
- Modifying your Mecrisp-Stellaris Kernel
- Cortex-M7 Example
- Swap SWDCOM for the terminal.s
- Transpose ‘bl uart_init’
- Recompile your MCU
- Flash the new binary
- To upload a file named ‘upload.fs’
- To upload files via a script
- Why do we transpose bl uart_init?
- to reduce the frequency?
- Swdcom Debugging Advantages
- Terminal
- Serial Terminal: Hardware
- Serial Terminal: Hardware Flow Control
- The Terminal Problem
- Thinking Forth Tips
- Thumb Instruction Set
- Thumbulator
- TODO LIST
- Turnkey
- PCB Turret Pins
- Brass, Solder Plated Turret Pins
- Typical Turret Pin Use
- My Turret Pins
- Pin Base End
- Pin Base Inner
- Flaring The Base
- Success
- The tools
- Tool #2, The Flattener
- The Anvil
- The Hammer
- Final Crimps
- Pin1
- Pin2
- Pin3
- Pin4
- Results
- Adhesive Backed Silver Paper
- Alternate Pin Fitting
- Building a Test PCB
- PCB Top
- PCB Bottom
- PCB With MCU
- Working
- Ruggedness ?
- Unusual Forths
- Programming Question And Answers
- VIM
- Vim Syntax Highlighter
- Visualising the Forth Stack
- wordlists, vocabularies, vocabulary prefixes and implicit context switching
- XON/XOFF
- YouTube Videos about Forth