What’s New ?¶
31 May 2024: Small housekeeping updates to SVD2DB-V2 release including the Hackaday article URL.
04 Feb 2024: How can I stop that “Unhandled Interrupt 00000003 !” message ? UPDATED by adding a crashme Word and a bugfix
31 Oct 2023: Surface Mount, binocular microscopes and cameras
24 oct 2023: The Ideal Small Embedded MCU ?
24 Oct 2023: Another Rant, C v/s Forth source readability
23 Oct 2023: VIM plugin for Mecrisp-Stellaris featuring Syntax Highlighting, Help files, Forthtags and Code-completion !
23 Oct 2023: Plang2 Forth pre-processor development status
23 Oct 2023: The Docs are back after a 7 months delay caused by equipment failure. New versions and some changes, this is a test run/
18 Mar 2023: Added basic Flashing Howto to the Bluepill Diags.
06 Mar 2023: I discovered tons of omissions and more mistakes in Embedded learning modules, blinky-1a <doh>, so a lot more edits have been done. Once again I hope this makes more sense. Version 5183fa45.
05 Mar 2023: Fixed wrong line number references in Embedded learning modules, blinky-1a for beginners, oops !
04 Mar 2023: Edits to blinky-1a plus a flowchart by Freeplane. Hopefully it’s easier to read now.
03 Mar 2023: SVD2DB-V2 released. Description field bug fixed; last two words were often joined together. Makefile is totally new. Much better layout, more user error handling and messages.
26 Feb 2023: Hosted or Tethered; Part Two
23 Feb 2023: Complete Muforth system for a RPI-2
13 Feb 2023: Embedded learning modules for beginners, using different Blinkies on STM32F0 Discovery board or a standalone STM32F0xxx
11 Jan 2023: Want a easy GDB debugger for running C source on a STM32F0 Discovery board ? This is the easy way to learn assembly and C on Cortex-M0.
9 Jan 2023: Updates to Travis’s ZeptoCOM web Terminal page
4 Jan 2023: Hosted or Tethered Forth what’s the difference ?
4 Jan 2023: A very interesting Floating Point article by Peter Schmidt
9 Dec 2022: A review of Hardfault Exception Handling with CALLTRACE, how to DEBUG EXCEPTIONS and stop the very pesky “Unhandled Interrupt 00000003 !” message
9 Dec 2022: Build a Stlink Programmer/debugger from a Bluepill: Added a V2.0 Clone Schematic
14 Nov 2022: SVD2DB database for the latest Mecrisp-Stellaris port (by Ralph Sali), the STM32G431xx MCU. It’s very cool with four OP amps etc.
8 Oct 2022: Some pointers on bringing up a new unsupported MCU with Mecrisp-Stellaris
26 Sep 2022: Arrow.com seem to be getting some F0xxx and G0xxx stock now ?
26 Sep 2022: Bugfix to SVD2DB and READDB (forth database generation still had a testing config) https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/svd2db-v1.2c2d-26.09.22.zip
19 Sep 2022: SVD2DB and READDB. A SVD Database Search Tool For Micro-controllers, mainly STMicro Cortex-N but also works with some other makes/models. Designed so that the data can be quickly copied into project source-code, saving time and errors compared to using a PDF Reference Manual. READDB is like a MAN Pages for Microprocessors.
24 Aug 2022: Updated the Bluepill Diags Readme by adding a clones and news section and credits for those who submit clone data. There is also a Bluepill Diags User Guide PDF, it is identical to the html Readme above.
21 Aug 2022: Beginner Advice, updated. Some tips from my own Forth Journey that may be of assistance if you are just starting yours. This list constitutes the things that can save you MONTHS of time and serious angst if you sort them out FIRST, before actually doing any embedded Forth. Things like terminal flow control, source-code error detection etc.
21 Aug 2022: ESP32-C3 SVD2FORTH-V3: https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/svd2forth-v3-esp32c3-21.08.22-Fd78f.zip
21 Aug 2022: Calling C Functions from Forth and Vice Versa
20 Aug 2022: Update to demise of LISP at JPL
12 Aug 2022: A list of STM32 ‘gotcha’s
11 Aug 2022: A page for “Unusual Forths” that you should know about.
30 July 2022: My prototype Fourth Source Documentation Template Generator AutodocFs. NEW: Now with duplicate Word detection (don’t ask me why ;-) diags-1.640 23 July 2022: A PLANG CLI Reader for those that don’t like SQL.
20 July 2022: PLANG for the STM32F103C8 With examples and memmap.
13 July 2022: SWDCOM makes high speed debugging, minimally invasive to Forth development.
5 July 2022: A quick look at my Forth IDE.
5 July 2022: A quick look at Travis Bemann’s web based Forth serial terminal, Zeptocom.
24 Jun2 2022: Mecrisp-Stellaris user contributed drivers, added all the user device drivers I could locate in the release.
20 June 2022: Mecrisp-Stellaris user contributed drivers, listed by peripheral and sorted alphabetically.
20 April 2022: Make your own PCB’s ? A peek at a awesome PCB CAD, PCB-RND
20 April 2022: Using a MCP4011 Digipot with Forth.
14 April 2022: A pic of my new 24 ball DSBGA package MCU, it’s only 2.3 x 2.3 mm in size!
11 April 2022: A new Page to to record the historic chip shortage of 2020 - ?
6 April 2022: A new page for chip pictures
31 March 2022: SWDCOM doc split into three pages to simplify the processes. Swdcom Intro, Swdcom Install and Swdcom Premade Binaries
30 March 2022: UFQFPN32 package with Metcal STTC-545 Tip showing size required for hand soldering individual pins.
20 March 2022: Bluepill Diagnostics V1.640 released. It features the latest Mecrisp-Stellaris-2.6.2 kernel, New PDF Userguide, bugfixes, more tech doc and the full Forth source (as usual).
13 March 2022: Additions to the Soldering Iron Suggestions Page
11 March 2022: A list of Mecrisp-Stellaris user contributed peripheral programs, listed by peripheral and taken from the latest release.
11 March 2022: An excellent Mecrisp Forth article, featuring the RP2040 Pico by Carsten Fulde (Automatic Google translation from German language)
15 Feb 2022: A MSP430G2201IRSA16R Tethered Forth Blinky demo, with a detailed Mecrisp-Across explanation and full details.
09 Feb 2022: Some nostalgia, the Retro gear we had to make so we could use the old MCU’s.
07 Feb 2022: My Home Made PCB Vice. It’s designed for small pcbs under a Binocular Microscope.
03 Feb 2022: Various Protoytping Methods page added
03 Feb 2022: Protoytping page added
25 Jan 2022: Notable Forths for non Cortex-M small embedded architectures such as the 8051.
16 Jan 2022: You have made that “STM32 Discovery Board Blinky” and progressed to “Forth Embedded Beginner”, what’s the Next Steps?
16 Jan 2022: MecrispCube: Dealing with complex USB, BLE and other Middlewares by using CubeIDE, HAL, CubeMX with Forth running as a CMSIS-RTOS thread.
5 Jan 2022: Can’t get any STM32F0 for your projects ???, there are plenty of MSP430 available! Mecrisp-Across-0.9 released, now runs on the STM32F4 Discovery Board. Read all about it at https://mecrisp-across-folkdoc.sourceforge.io/index.html
29 Dec 2021: Memory Map Databases for STM32F051, STM32L07x, STM32F103xx, STM32F7x and STM32H7x3 A easy way to search for the absolute memory value for every register. This is CMSIS-SVD compliant.
11 Nov 2021: The Terminal Problem Is your embedded Forth development painfully slow ?
03 Nov 2021: Mecrisp-Stellaris Not Working on new MCU/board ?
02 Nov 2021: Compiling the Mecrisp-Stellaris Kernel/Image to modify for a new chip or a different boot up clock speed etc. s< 24 Oct 2021: Prototyping with pcb turret pins the test PCB using a MSP430G2201 is now made, ready to be tested.
19 Oct 2021: Minor updates to PLANG, Database can be download to test the search facility.
15 Oct 2021: Introducing PLANG my Language for STM32X peripheral configuration.
13 Oct 2021: Soldering problems with Out of Date QFN Chips ?
12 Oct 2021: Prototyping with pcb turret pins pin turret strength test and final results.
11 Oct 2021: Prototyping with pcb turret pins latest updates.
5 Oct 2021: Prototyping with pcb turret pins.
30 Sep 2021: So you want to tell the world about Forth ?
09 Sep 2021: Added MSP430 ‘Blinkies’ link
14 Aug 2021: RP2040 Assembler equates file with precomputed absolute addresses, i.e. “.equ XIP_CTRL_FLUSH, 0x14000004 @ Cache Flush control”. CMSIS-SVD compliant. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/RP2040.equates.abs.s
08 Aug 2021: Major updates to Quadrature Rotary Switches
03 Aug 2021: Quadrature Rotary Switches What are they ? how to use one with TIM3 in a STM32F0xx. Pictures, article, waveforms and source code.
27 July 2021: LMT-01 Questions, does this temperature sensor have a internal PSU that powers it for 50mS with no external power applied ?
24 July 2021: Updated A Word about Bitfields CLI bitfield database search examples
23 July 2021: Updated A Word about Bitfields with a preview of my prototype Bitfield Viewer and select tool.
21 July 2021: Updated Jump To Far” Error with the solution.
18 July 2021: A Word about Bitfields
18 July 2021: Thermometer (C and F) built with a LMT-01, STM32F051 (Cortex-M0) and SVD2FORTH-V6. Schematic and Source.
02 July 2021: A growing collection of Forth Wisdom for your entertainment.
26 Jun 2021: SVD2forth-V6 Video Blinky demo showing how it works.
19 Jun 2021: A more complex blinky to demo the intelligent Forth bitfields. Forth Sourcecode Dependency Generation
16 Jun 2021: Forth Sourcecode Dependency Generation using the Gema pre-processor. Forget about creating those pesky memory map constants and bitfield words!
02 Jun 2021: Accurate 105nS blocking delay. An old article but a good one.
30 May 2021: Namespace Collisions, why writing your own Forth memory maps can cause problems.
26 May 2021: SVD2FORTH V6 Pre-processing Forth Sourcecode to replace all peripheral register symbols with hex addresses and save 5% in dictionary size!
23 May 2021: A brief listing of the people who hang out on our IRC channel and their project URL’s.
22 May 2021: I’ve made a RP2040-memmap.fs which features precomputed Hex Addresses for every register, plus descriptions: https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/RP2040.memmap.fs
20 May 2021: I have moved to #forth-hardware-projects on irc.hackint.org. It’s for hardware people with Forth projects. If you’re a programmer only or a Forth Implementer, then #mecrisp on irc.hackint.org is for you.
19 May 2021: A sad story from 2002 about the demise of LISP at JPL.
30 April 2021: REVIEW: Zeptoforth, a LARGE Cortex-M4 Forth by Travis A Bemann. Not for Cortex-M0.
19 April 2021: Rant; How to solve STM32 problems.
18 April 2021: SWD2FORTH v3 and V5 beta; Stack Input Comment now contains complete bits 0 - 31. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/svd2forth-v3-stm32-18.04.21-F4e8a.zip and https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/svd2forth-v5-stm32-18.04.21-F6c01.zip
17 April 2021: Beta release of SVD2FORTH V5 for eval and comments. Contains a SVD for the STM32F7xx. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/svd2forth-v5-stm32-18.04.21-F6c01.zip
16 April 2021: A funny thing happened to me on my way to the STM32F407 RCC_PLLCFGR
11 April 2021: New Version of V1.6 of the Bluepill Diagnostics V1.631 now with JDEC identification of clone types.
11 April 2021: added “How to use Bluepill Diagnostics V1.6” to V1.6 of the Bluepill Diagnostics
08 April 2021: V1.6 of the Bluepill Diagnostics Fixed a couple of bugs when running via Windows. Menu is now back to the old ‘m’ key, stair stepping is fixed, bumped the version to 1.62, added a ‘Version’ menu to extras and updated the doc.
07 April 2021: V1.6 of the Bluepill Diagnostics Binary, many changes, much better STM3F103C8 authentication. Lots of developer aids including dissasembler-m3 and full sourcecode.
05 April 2021: CRITICAL PRETTY PRINT BUGFIX for SVD2FORTH: https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/svd2forth-v3-stm32-05.04.21-F4e41.zip
28 Mar 2021: STM32F407 Disco Random Number Generator (RNG)@ 8MHz. Runs on default Mecrisp-Stellaris with a serial terminal.
24 Mar 2021: STM32F407 Disco Random Number Generator (RNG) @ 168MHz clock code. For SWDCOM terminal use only.
22 Mar 2021: Introduction to using MACROS with Assembly Language.
20 Mar 2021: New release of SVD2FORTH with many improvements and bugfixes, see the release readme for more. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/svd2forth-v3-stm32-20.03.21-F7a01.zip BAD BUG IN THIS ONE … SORRY! thanks to dsmcfarl for reporting it. Fixed here: https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/svd2forth-v3-stm32-05.04.21-F4e41.zip
19 Mar 2021: Assembly Article showing one way to write maintainable source and run it in a GDB session on real hardware with a BlackMagicProbe. All files with PDF’s.
18 Mar 2021: New Mecrisp-Stellaris release out: https://sourceforge.net/projects/mecrisp/files/mecrisp-stellaris-2.5.7.tar.gz
04 Mar 2021: Update to the The Pico Mandlebrot Challlenge, this one generates two fractals, the Mandlebrot and a Tricorn. It also includes the smooth symmetrical cosine heartbeat of the Heartblink.
01 Mar 2021: Heartblink Assembly language fading led blinker for the STM F0 Discovery board. A differential equation is numerically approximated (providing the sine/cosine/triangle function), the result interpreted as a floating point number and converted to integer (to get an exp(x) approximation) and fed into a sigma/delta modulator, the output of which drives the LED. All in a 58-60 Byte binary.
01 Mar 2021: The Pico Mandlebrot Challlenge. Updated release, can you make a smaller one ? A Mandelbrot generator (to serial terminal) and a fader heartbeat led in only 252 Bytes!
28 Feb 2021: Yet another version of the RP2040 Assembly equates file. This time simpler, more description fields and a code example in the .equ comments header. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/RP2040.equates-v2.s.gz
27 Feb 2021: Mecrosp-Stellaris-2.5.6 released. New Targets, RP2040 on Raspberry Pico board, STM32F407 on DIYMORE board, STM32F767, STM32H743. https://sourceforge.net/projects/mecrisp/files/mecrisp-stellaris-2.5.6.tar.gz
27 Feb 2021: Mecrisp-Stellaris Pico Official Release
27 Feb 2021: RP2040 Assembly equates file with annoying “n” removed from the description field. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/RP2040.svd.equates.s.gz
26 Feb 2021: The Pico (board) is a low cost, high performance microcontroller board built around the Raspberry Pi RP2040 chip.
22 Feb 2021: Bigger, Better, Faster ? Does the fastest MCU around always solve your embedded project problems ?
19 Feb 2021: Simplifying the BluePill GPIO.
16 Feb 2021: EQU memory maps for the RPI RP2040 “pico” board. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/RP2040.svd.equates.s.gz and https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/RP2040.svd.equates-with-descriptions.s.gz
26 Jan 2021: Released STM32L432-SWDCOM which includes a binary with the patch file etc. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/STM32L432-SWDCOM-b31c.zip
21 Jan 2021: Contributed, terminal-nucleo-H743-usart3.s by Wim Verheyen. This includes the clock config for 480MHz. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/terminal-nucleo-H743-usart3.s.gz
19 Jan 2021: Released the latest STM32H7x3 Svd2forth. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/SVD2FORTH-V3-STM32H7x3_5dc6.zip
19 Jan 2021: Electronic Design Components Mecrisp-Stellaris doesn’t exist in a vacuum, at some point you will want to make something with it. This pages discusses the basics of how to make electronic devices starting with the Circuit Diagram. This page will be a work in progress for quite a while.
18 Jan 2021: More additions to SWDCOM. New Options List for Kernel Binaries and patch files where available. Technically the ONE premade binary should work for any chip in that FAMILY. It’s easy to try if your MCU is not in the Supported Hardware List.
14 Jan 2021: Reworked the SWDCOM Readme. This contains pointers to a couple of premade Mecrisp-Stelaris binaries using SWDCOM rather than a USART ready for download. STM32F051 (tested) and STM32F746 (tested). STM32F746 is reported to work on a Nucleo F767, Stm32F4xxx.
14 Jan 2021: Back after the Xmas break. I’ve been working on documentation improvements to my system, namely using the same project README here as in the actual projects themselves.
13 Dec 2020: STM32F746 Cortex-M7 SVD2FORTH files. This MCU is used in the F7 Discovery board. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/SVD2FORTH-V3-STM32F746_bd0c.zip
14 Nov 2020: Palanqin, an ARM Cortex M0 emulator for DOS by Robert Clausecker.
12 Nov 2020: Chip of the month, the STM32WLE5C8. Cortex-m4 with 150 - 960 MHz LORA radio subsystem, Shutdown Mode: 31 nA @ 3V and just packed with features!
02 Nov 2020: Make a BlackMagic Probe (BMP) using a STM32F103 (bluepill) board
25 Oct 2020: Make a Stlink V2 programmer/debugger using a STM32F103 board
22 Oct 2020: Released V1.5 of the STM32F1xx-Diagnostics. Runs on Bluepills and the Maple Mini board. Connect via USB. It is designed to determine if your chip has the ‘hidden’ extra 64kB Flash and tell you if your chip is a fake STM32F103 (CS32F or a APM32) or even a ‘compatible’ GD32F103. This is the same as V1.4 but now has fully robust menues.
17 Oct 2020: New release of SWDCOM. This one offers a CLOCK choice of 8 or 48 MHz due to reports of failure on a STM32F070 Disco and a STM32F0 Disco board at 48Mhz. The 8 MHz choice used the default internal RC CLOCK. Bugfix, thanks Yerba!
13 Oct 2020: Updates to the Forth Upload Speed Tests
13 Oct 2020: Additional STM32 clone information with die decapping pic links of the STM32F103 chip and clones.
01 Oct 2020: Updates to SWDCOM. SWDCOM uses SWD to communicate with your cortex-m target instead of a USART and serial terminal. This has many advantages and is much faster.
28 Aug 2020: Backported the latest STM32F051 SVD2FORTH improvements to various MCUS. These are many improvements including reset values, register access type, descriptions, etc. Bitfield actions are now user specified except where there is only one option such as bit@.
Note
SVD2FORTH creates Mecrisp* Forth memory mapping, bitfield template Words and Register pretty print output for Cortex-M MCU’s using ARM CMSIS-SVD files. These are the equivalent of Include files for The C Progrogramming language. Releases: See: https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/
27 May 2020: How Fast does your Forth upload ?
21 May 2020: STM32F0xx Touch Sensor (TSC) Project Tarball Release. Same as the STM32F0xx Touch Sensor (TSC)<touch-sensor below, but this includes the source, readme, wordlist etc. This is my new Forth project Tarball Release format which contains everything you need to develop this project.
20 May 2020: Using Vim completion to easily insert bitfield configuration template Words into your Forth programs
16 May 2020: Bit Testing Bit testing is a major component of embedded programs, here we examine the default bit testing Words available in Mecrisp-Stellaris.
07 May 2020: mecrisp-stellaris-2.5.3 PATCH to add CPU register printing, simple stack, no stair stepping, coloured error warnings, hardware handshaking, 460800 Baud. This is for Forthers developing on the Blue Pill etc and wishing to add some or all of these features to their kernel.
06 May 2020: Bitfields, Declare Early? This is an article about EMBEDDED development and maintenance coding style.
06 May 2020: Bitfields and Structures looking into methods used in Peripherals, Keil C v/s Svd2forth a comparison of how Keil C and Forth deal with embedded peripheral device configuration.
04 May 2020: Peripherals, Keil C v/s Svd2forth a comparison of how Keil C and Forth deal with embedded peripheral device configuration.
- 24 April 2020: STM32F103 BluePill ‘Developer’ image. It’s a bootable binary, requires a 128kB STM32F103C8 or STM32F103CB MCU and a 3.3v USB/serial dongle with CTS.
17 April 2020: A short demo to show how to use Manfred Marhlow’s VOCs to define register identifiers.
25 March 2020: New page about MCU Documentation, where to find it, what you need.
23 March 2020: Updated STM32F1xx-Diagnostics to V1.4. Changed PB9 to permanent LOW for Maple Mini, menu is run from boot, Version number is automatically displayed in the menu. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/stm32fxx-diagnostics-v1.4.bin
17 March 2020: Pictured Numerical Output; How to print without spaces ?
11 March 2020: STM32F0xx Touch Sensor (TSC) This project supplies a binary file ready to run on a STM32F0 Discovery Board. It provides a fully configured Touch Sensor and Menu so that various user created touch sensors may be tested and calibrated.
11 March 2020: Xon/Xoff flow control notes.
02 March 2020: Added causes for the Flash error message “Wrong address or data for writing flash !”
26 Feb 2020: New layout of the Interrupts Page, hopefully it makes a bit more sense now ?
- 23 Feb 2020: Updates to the general purpose interrupt driven systick timing library. There are now three options for elapsed time display:
Push milliseconds to TOS for computations
Print milliseconds
Print seconds, to three decimal places
23 Feb 2020: Updates to Benchmarking, added STM32F051 Cortex-M0 @ 75 MHz, and STM32F103 Cortex-M3 @ 75MHz
- 21 Feb 2020: Mecrisp Forth running as a CMSIS-RTOS thread on a STM32wb55. This is a fascinating development by Peter Schmid which allows the use of advanced and complex STM32WB peripherals such as USB, and BLE etc with tools such as CubeIDE, HAL and CubeMX, while also providing the development interactivity of Forth.
20 Feb 2020: STM32F1xx-Diagnostics A new diagnostics which runs on Bluepills and should run on the Maple Mini board. Connect via USB. It is designed to determine if your chip has the ‘hidden’ 64kB Flash and test it, tell you if your chip is a fake STM32F103 (CS32F or a APM32) or even a ‘compatible’ GD32F103. See the link for more.
- 18 Feb 2020: Mecrisp-stellaris-2.5.3.tar.gz released which fixes a serious RA compiler comparison bug. New chip supported: STM32wb55 which has two Cortex-M cores, a M0 and a M4 and inbuilt Bluetooth™ 5.0 and IEEE 802.15.4 wireless ! Cudos to Peter Schmid for using CMSIS-SVD for his STM32wb55 support.
06 Feb 2020 Hardfault Exception Handling with CALLTRACE, how to DEBUG EXCEPTIONS and stop the very pesky “Unhandled Interrupt 00000003 !” message
05 Feb 2020: Led blinky to run on the STM32F103C8 DIAGNOSTICS for the Blue Pill Board.
24 Jan 2020: Rant Hackerspaces or SalesPlaces?
21 Jan 2020: Another rant, The Hard Way
16 Jan 2020: Updates to STM32F103C8 DIAGNOSTICS. Does your Blue Pill have a hidden EXTRA 64kB of Flash?
16 Jan 2020: Updates to GD32VF103 RISC-V, Mecrisp-Quintus Forth for the Longan Nano RISC-V Board
15 Jan 2020: Updates to my Blue Pill Rants page.
12 Jan 2020: Memory Stats refactored. Now a parameter driven general purpose memory stats program.
08 Jan 2020: General purpose interrupt driven systick timing library now takes the “1ms-cal-value” as a parameter and should work with any STM32Fxxxx.
08 Jan 2020: How to produce a bootable binary file from a Mecrisp-Stellaris project.
02 Jan 2020: Comparison: STM32F103C8 V/S GD32VF103Cx
29 Dec 2019: The Philosophy of Problems.
25 Dec 2019: Xmas Special! Youtube video: Did your Blue Pill get a FREE 64kB Flash for Xmas ? https://youtu.be/xpTvd1Zhe0U
25 Dec 2019: Forth YouTube Video List.
24 Dec 2019: Create does>, The Jewel of Forth. Examples of the all-important ‘Defining Words’ of Forth.
11 Dec 19: Does every STM32F103C8T6 (used in the Blue Pill board) report 64kB of Flash but actually have 128kB of Flash?, is this a “Public Secret” ?
09 Dec 19: BluePill 128kB bootable Forth USB image. Memstats, ChipID, most Peripheral registers, stack sensitive red-prompt, can switch live between USB and USART2 with hardware handshaking. Details in the tarball readme. https://sourceforge.net/projects/mecrisp-stellaris-folkdoc/files/bluepill-128kb-usb.tar.gz/download
07 Dec 19: Buffers, how to use them.
23 Nov 19: A stack sensitive prompt
23 Nov 2019: Beginner advice
23 Nov 2019: Arrays, how to use them.
16 Nov 2019: Bit manipulation tips with examples.
16 Nov 2019: A link to “Blue Pill” Device ID’s collected using the Bootable Binary Image below.
14 Nov 2019: The Forth Outer Interpreter Design,(assembly language view) with syntax highlighting.
11 Nov 2019: DegreesF as well as degreesC; Rewrite and bug fixes of the ready to flash binary for a “Blue Pill Board” temperature sensor using the Texas Instruments LMT01. Also has bootable USB and ‘Device Electronic Signature’. 64KB of Flash required on the “Blue Pill”.
07 Nov 2019 Special 64KB Flash USB Blue Pill Image that can read the internal ‘Device Electronic Signature’ plus other utilities. Use it to check for FAKE STM32F103 MCU’s and let me know if it is useful ?
30 Oct 2019: Added s31.32 Insights by Andrew Palm. Very helpful if you are trying to get a grip on Fixed Point math.
27 Oct 2019: A one minute YouTube video showing the building of the 128KB STM32F103 developers image with RTS/CTS hardware handshaking . Basically it shows the 2000 byte source code file being uploaded to the MCU from the terminal in real time, plus demonstrates some of the Words. See https://www.youtube.com/watch?v=60sNQISzEks
27 Oct 2019: A 27 second YouTube video showing the on-MCU cloning process I use. This was used to produce the 128KB STM32F103 developers image with RTS/CTS hardware handshaking below. See: https://www.youtube.com/watch?v=uWykNpPGsAg&feature=youtu.be
26 Oct 2019: A realtime video showing how fast the 128KB Developers Image (running at 72 MHz) lists all its Words.
26 Oct 2019: STM32F103 72 MHz clock Word. It utilizes a 8Mhz Crystal and the PLL. This makes the MCU NINE TIMES FASTER than the standard Mecrisp-Stellaris image.
23 Oct 2019: A 128KB STM32F103 developers image with RTS/CTS hardware handshaking. This is the same Kernel as below (20 Oct) but fully loaded with development support files. For instance every Peripheral register can be read in real time.
20 Oct 2019: Special STM32F103 image with RTS/CTS hardware handshaking. When using RTS/CTS handshaking, no terminal “End of Line Delay” is required, plus it is much faster uploading source code. This Image will work on any STM32F103 based boards with 64KB Flash. such as BluePills, Olimex-P103 etc.
10 Oct 2019: My Forth IDE, a summary.
8 Oct 2019: Cortex-M Assembly, the THUMB Instruction Set.
7 Oct 2019: Using Interactive Assembly to create a millisecond delay for Cortex-M0 and M3.
1 Oct 2019: Using Arm-none-eabi-as to create Inline Machine Code for a accurate Cortex-M0 Delay Word. This should work on other Cortex-M chips.
24 Sep 2019: Fixed Point (s31.32) Example program, STM32F0xx Baud Rate Calculator
18 Sep 2019: Fixed a bad link in: What the heck are all those LSHIFT Words?
17 Sep 2019: Updated my GREEN PILL STM32F051K8 hand soldered (under $1.50) board.
13 Sep 2019: Added “POSTPONE” example to the glossary.
12 Sep 2019: Updated my Development Environment for Forth notes.
10 Sep 2019: Programming Questions and Answers Email me your Forth questions and I’ll try to answer them here. You can also leave them on Slashdot at https://sourceforge.net/p/mecrisp-stellaris-folkdoc/discussion/ under the “Questions about programming” topic.
04 Sep 2019: Two interesting articles regarding Critical System Safety Design
01 Sep 2019: Contributing Forth Code; How to submit your code to this site for others to see or use.
31 Aug 2019: How to make your program run after a reboot or power up (TURNKEY)
30 Aug 2019: User contributed BLUE PILL board EXAMPLE CODE.
22 Aug 2019: New Page This Months HOT MCU
20 Aug 2019: Notes on atomic operations
15 Aug 2019: Blue Pill Starter Kit. Contains files to help a new Forth Blue Pill user manipulate the GPIO pins to light the LED on GPIOC-13.
12 Aug 2019: Update: hand made prototype 2.3mm copper rivet soldered in pcb
11 Aug 2019: A Interesting Forth Article “There’s Forth In That!” https://wiki.forth-ev.de/doku.php/events:ef2018:forth-in-that
11 Aug 2018: Coloured columns added to Dictionary Lister
11 Aug 2019: Colour your output
10 Aug 2019: The First Rule Of Forth.
6 Aug 2019: Added a Common User Issues Page for beginners.
4 Aug 2019: Handmade copper rivets for prototype pcb construction.
30 July 2019: Levels of Code in Forth Programming, a essay by the late Jeff Fox.
28 July 2019: A new page about CHIPS
28 July 2019: Updated DEADBUG pics added to the Prototyping Page
27 July 2019: A four column Dictionary Lister
8 July 2019: A rant about the “Blue Pill”, a ‘bargain’ STM32F103 based hobby pcb.
21 June 2019: For those wanting to get into the wonderful world of Microprocessors, I’ve created a “Learning Microprocessors” web page at https://learning-microprocessors.sourceforge.io/index.html
8 June 2019: A new rant The Water Barons
30 May 2019: Started a C and Forth example/comparison page for common proceedures. Not much there now but it will grow in time.
26 May 2019: A blog page on Forth Sourcecode Documentation
19 May 2019: RANTS: Reinventing The Wheel, The Library Myth, Use MS Windows or Die
12 May 2019: Run Mecrisp-Stellaris-RA for a STM32F051 MCU on Linux easily without a VM or any hardware.
5 May 2019: Some general prototyping notes
30 April 2019: Matthias Koch architect of Mecrisp awarded the “Swap Dragon Prize” by the German Forth Association.
26 April 2019: April 2003 version of NASA staff’s list of the uses of Forth in space applications.
17 April 2019: Forth-sixel | terminal raster graphics and gui’s in forth by Andreas Wagner https://hub.darcs.net/pointfree/forth-sixel/ [andreas.wagner]
30 Mar 2019: Unhandled Interrupt 00000003 and how to erase with DF-UTIL
27 Mar 2019: A interesting article on Little-endian vs. big-endian
15 Mar 2019: Why are Atmel Sam series Arm chips (used by Arduino) problematic to port to Mecrisp-Stellaris ?
26 Feb 2019: A brand new 28 byte Blinky in pure Assembly Language for the STM32F0 Discovery Board by the Wizard of Assembly, Matthias Koch.
16 Jan 2019: Started a new page for Fixed Point Examples(s31.32)
10 Jan 2019: Autobaud Mod for a STM32F0xx Kernel
10 Jan 2019: Colourize your terminal ERROR MESSAGES with RED for CRITICAL and BLUE for warnings. This makes Source Code errors much more visible, hence easier to see as they upload to the target.
05 Jan 2019: A New, Easy Integrated Cloning Method
02 Jan 2019: Expansion of the INLINE Word Examples in the Glossary showing INLING differences between RA and Classic Kernels.
24 Dec 2018: Matthias Koch Christmas Special: CortexM WFI Insight Words for us!
23 Dec 2018: How Does Mecrisp-Stellaris deal with Random Access Memory ? Create a Free Ram program.
20 Dec 2018: Multitasking, STMF0 Discovery Board Push Button Press Counter using Interrupts DEMO:. I hope the new layout makes it easier to grok STM32 Interrupt usage.
20 Dec 2018: Stack sizes and how to change them
20 Dec 2018: Manipulate Your Stack with Forth Wizard by Peter Sovietov
20 Dec 2018: Added RA Kernel Page. Don’t have The Register Allocator Kernel for your MCU ? convert your Classic Kernel to RA by yourself!
20 DEC 2018: Roll and -Roll Words included in the RA Kernels (only).
19 Dec 2012: STMicroelectronics STM32F01x Interrupt and Exception Vectors
12 Dec 2018: Blocks, the Forth File System
10 Dec 2018: Do you have a MCU not listed in the suported hardware list but want to try Mecrisp-Stellaris on it ? See the Porters Guide.
8 Dec 2018: YouTube Videos you may find interesting.
6 Dec 2018: Word Flag Codes added to the Dictionary.
5 Dec 2018: Stepper Motor Demo, including a short YouTube Video.
4 Dec 2018: Forth for the Numworks Open Source Calculator.
2 Dec 2018: Stair Stepping, what is it, and how is it fixed ?
30 Nov 2018: A Modern Forth IDE, including a short YouTube Video.
27 Nov 2018: Added the Cornerstone Word to the Glossary with an example.
21 Nov 18: Added a svd2forth for the Nordic MCUs get it here. Release contains memmap.fs and bitfields.fs for the NRF51 and the newly supported nrf52840 MCU (24Nov2018).
20 Nov 18: All the Svd2forth tarballs are now in the one location here. They include STM32Fxx versions 1 -3, Tiva TM4C1294NCPDT and MSP430xx
18 Nov 2018: Do you have a Favorite MCU that you’d like to run Mecrisp-Stellaris on but it’s not in the supported hardware list?
18 Nov 2018: My favorite Mecrisp-Stellaris Kernel hacks
15 Nov 2018: Low Power on STM32F0
5 Nov 2018: Run Forth on a MSP430 MCU with 500 Bytes of Flash (or less) ! Mecrisp-Across Unofficial Documentation (A Tethered MSP430 Forth) added to this server.
Note
The STM32F103C8T6 regpack is built from the ARM STM32F103XX CMSIS-SVD which has every peripheral possible for the STM32F103XX family. Some of these peripherals are NOT present in the 48 pin STM32F103C8T6. I have removed many of them, such as the DAC,FSMC, extra GPIO’s and Timers but if you’re familiar with the STM32F103C8T6 and find errors, please email me.
17 October 2018: Official Freenode Mecrisp-Stellaris IRC channel created: chat.freenode.net #mecrisp-stellaris
28 Jun 2018: Updated the Supported Hardware Page adding Cypress and Analog Devices MCU’s. Updated the Forth Interactive Alternatives page.
8 June 2018: Updated the Executing/Inlining Assembly/Machine Code Page with a blinky comparison, one in assembler, one in Forth, which is smallest, which is easiest to write ?
1 June 2018: Updated the Inline Assembly/Machine Code Page with a workflow example.
30 May 2018 Programming Language Benchmarks Some Speed Comparisons.
25 May 2018: Svd2forth-v3 released. Peripheral Register Pretty Printing with Legends for easier real time development and debugging.
29 Apr 2018: A rewritten, stand alone 460800 Baud 48Mhz clock for the STM32F0 Discovery Board. It uses the Xtal Clock from the SWD subsystem but can easily be configured to use the onboard RC 8 MHz Internal Clock for any STM32F0xx.
27 Apr 2018: A ready built Kernel with CTS hardware handshaking at 406800 Baud for hardware Sourcecode Error Detection.
14 Apr 2018: Added a Compiler Message Table to the Dictionary page.
24 Mar 2018: Get a Nokia 5110 lcd display up and running, to ‘all pixels on’ test stage using Mecrisp-Stellaris, with code and Logic Analyser pictures of the data and control signals.
19 Mar 2018: Potentiometer driven comparator Window Mode Example on a STM32F0 Disco Board. The code runs standalone.
17 Mar 2018: Update to the 1mS Timer, it’s now standalone. Used to time software and hardware events.
16 Mar 2018: Code Reviews and Libraries, a short Rant.
25 Feb 2018: A Sunrise and Sunset Calculator project by Andrew Palm.
25 Feb 2018: A square root, trig, and inverse trig functions for 64bit Fixed point (s31.32) numbers library by Andrew Palm.
21 Dec 2017: A STM32F0 Discovery Board Interrupt Program using the USER pushbutton. It’s standalone, upload and run it.
19 Oct 2017: What are the Forth (interactive) Embedded Alternatives on Cortex M and how much Flash do they require to run ?
29 Sep 2017: Updates to the Example STM32 Boards supported by Mecrisp-Stellaris page. New boards and more pics added.
28 Sep 2017: Updated the how to flash Mecrisp-Stellaris page.
26 Sep 2017: Do you use MSP430 ? Svd2mecrisp is now available for MSP430xx.
12 Sept 2017: Manfred Mahlow’s VOCS is included in the latest Mecrisp-Stellaris release.
09 Sept 2017: Analog To digital 19ch scanner. Version 2, is a ADC all channel scanner, no DMA, no interrupts, using only a spin delay to wait for the end of conversion sequence(s). It works by scanning each channel and pushing the results on the Stack. After a conversion sequence of 19 channels is finished, it pops the results off the stack, scales and displays them.
01 Sept 2017: Interactive Assembly Language
21 August 2017: How to clone a Mecrisp-Stellaris image from a existing STM32F MCU or Board
27 July 2017:Vocabularies , details and demo by Manfred Mahlow
22 July 2017: A EPUB ebook
of this site, (generated automatically by Sphinx). File URL’s won’t resolve as it’s a ebook, but everything else should be ok.
22 July 2017: This example prints some GPIO Modes, i.e. IN, OUT, ANALOG etc, to demonstrate the versatility of <builds does>, often described as the ‘jewel of forth’.
15 July 2017: Benchmark your Forth MCU. Confirm that a standard STM32F051 is 6.7 times faster** than a Mega328 as used by Arduino, or 13.3 times faster when overclocked!
12 July 2017: Svd2forth-v2 updated (release-6ba968d6f6). In addition to Peripheral print Words, there are now individual Register print Words and Register BitField fetch Words.
04 July 2017: Push button switch debounce demo
02 July 2017: A new Svd2gas assembler version and the smallest Blinky binary file we can make, just 32 bytes.
16 June 2017: Mecrisp-Stellaris Interrupt mechanism documentation updated.
June-2017: A video page, for interesting and informative videos about Mecrisp-Stellaris.
May-2017: Mecrisp-Stellaris comes with a set of Common Programs, this work in progress attempts to describe them.
May-2017: Forth Development Tips
May-2017: Visualising The Forth Stack, or “The Stack is doing my head in !”
May-2017: A Forth loadmeter
May-2017: Kernel patches; modify the Mecrisp-Stellaris source, change the terminal USART, add hardware handshaking, simplify the Stack print word “.s”
May-2017: A (small) library of development words
May-2017: Writing STM32 assembly? … Svd2gas is designed to handle register names and memory mapping, to make your coding easier and less error prone
May-2017, Updated: hardware flow control for your serial terminal
April-2017: Seven blinkies; simple spinners, multi-tasking, interrupt driven and one assembly language Blinky. If you’d like to see another kind, just contact me