.. Mecrisp Stellaris documentation master file, created by sphinx-quickstart on Sun Feb 21 07:47:20 2016. Mecrisp Stellaris Unofficial UserDoc ==================================== .. image:: pics/thinking-cap-forth.jpg What is Mecrisp-Stellaris? -------------------------- Mecrisp-Stellaris is an **embedded Forth Operating System** for ARM :ref:`Cortex-M` Microprocessors. It is closest to the Subroutine Threaded Code model (STC), but it isn't threaded at all. What is Mecrisp-Stellaris used for ? ------------------------------------ To create :ref:`microprocessor` controlled devices, your imagination is the only limit. Example: Photoacoustic Gas Sensing Device ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. image:: /pics/photo-electric-gas-sensing.jpg Abstract ~~~~~~~~ The circuitry comprises a sine wave generator based on direct digital synthesis, a laser diode driver module, a band-pass frequency filter, a synchronous detector with phase adjustment circuitry and a low pass filter to form an analog lock-in amplifier, and an analog-to-digital converter. A 32-bit ARM microcontroller programmed with the open source Mecrisp dialect of the Forth interpreter language is used to set the frequency, and read the data from the analog-to-digital converter. The circuitry is tethered via a serial interface to a personal computer. A graphical user interface written in Phython allows easy interaction with the microcontroller by sending the appropriate Forth commands. The data acquired is visualized and stored on the personal computer for further processing. The circuitry is easy to build as it is based on through-hole devices, except for two necessary surface mount items, which, however, still can be soldered with a fine tipped soldering iron. The performance of the circuitry was demonstrated by the photo-acoustic detection of NO2 using a laser diode with a wavelength of 450 nm. Full detailed design notes with schematic and code: https://www.hardware-x.com/article/S2468-0672(22)00025-6/fulltext .. seealso:: I think this Mecrisp-Stellaris project required true genius to imagine and create. https://mecrisp-across-folkdoc.sourceforge.io/ What is this Website ? ---------------------- *"This website provides an unofficial user documentation for Mecrisp-Stellaris, which is an embedded Forth Operating System for ARM Microprocessors. It is a port of Mecrisp Forth to the ARM Cortex M architecture written by Matthias Koch. The documentation includes information on the Forth programming language, the Mecrisp-Stellaris Forth, its features, and how to get started with it. The site also offers insights into the history of Forth, its characteristics, and its applications in embedded systems. Additionally, it provides guidance on using Mecrisp-Stellaris Forth for real-time interactive development on microcontrollers, including quick start instructions and tips for beginners. The website also mentions Mecrisp-Across, which is a strong optimizing cross-compiler designed by Matthias Koch for generating code for small classic MSP430 chips like MSP430F2012. It offers global optimizations, automatic inlining, dead code elimination, and register allocation of both data and return stack across control structures. In summary, the website serves as a valuable resource for individuals interested in learning about and working with Mecrisp-Stellaris Forth and Mecrisp-Across, providing detailed information, practical guidance, and historical context."* - https://www.perplexity.ai/search * The QUICK way to find things, use the :ref:`genindex` and the [QUICK search] box on the left. * :ref:`WHAT'S NEW ?` * :ref:`Supported Hardware` * `Definitions (Subroutines, Words, Programs) `_ * `The Forth 200x STANDARD Wordlist with Interpretation semantics `_ * :ref:`MCU Documentation` * :ref:`User Contributed Peripheral Sourcecode` .. _getms: * 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. * :ref:`Contact Site Maintainer` * Ok, I've run Forth using a off-the-shelf board, I made a led blink, I have a basic understanding now, so :ref:`WHAT SHOULD I DO NEXT ?` This Table Shows Why :ref:`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: .. toctree:: :maxdepth: 2 quickstart.rst common-problems.rst words.rst about-this-site.rst documentation-mcu.rst alternate-functions.rst antiforth.rst arrays.rst asyncronous-message-passing.rst assembly.rst assembly-language-blinky-gdbtui.rst autobaud.rst autodoc-fs.rst atomic-writes.rst beginner.rst benchmarks.rst bigger-better-faster.rst blinky-1a.rst bitfields-and-structures.rst bitfields-declare-early.rst bit-manipulation-tips.rst bluepill-diagnostics-v1.6.rst bluepill-diags-v1.640.rst bluepill-examples.rst bluepill-stlink-programmer.rst bluepill-bmp.rst bugs.rst buffers.rst c-api-2-forth.rst c-forth-comparison2.rst c-forth-examples.rst charles-more.rst chips.rst chip-pics.rst chip-supply-times.rst clones-stm32-mcus.rst cloning.rst cloning-integrated.rst code-error.rst code-review.rst colour.rst common.rst compiling.rst contributing-code.rst contributors.rst critical-systems.rst data-stack.rst debugging-with-swdcom.rst defining-words.rst delay.rst devenv.rst devtips.rst digipot.rst dos.rst electronic-design.rst emacs.rst endianess.rst example-programs.rst examples.rst examples-from-therelease file-system.rst f0-disco-48-mhz-clock.rst f0-disco-blinkies.rst f1-usb.rst f4+rcc_pllcfgr.rst gd32vf103.rst fixed-point.rst first-rule-of-forth.rst flash-sizes.rst flashing-mecrisp_stellaris.rst floating-point.rst flowcharting.rst folding.rst forth-alternatives.rst forth-books.rst forth-links.rst forth-variants.rst forth-vs-c.rst forth-versus-others.rst forth-videos.rst forth-wizard.rst forth-wisdom.rst fossil.rst garbage-collector.rst gdb-c-stm32f051.rst gema.rst glossary.rst graphics.rst heartblink.rst hosted-or-tether.rst hosted-or-tether-pt2.rst html.rst lowpower.rst ihex-32bit.rst instrument-mcu.rst interactive-assy-delay.rst interpreter-inner.rst interpreter-outer.rst interrupts.rst intro.rst irc.rst jump-too-far.rst kernel-configurations.rst levels.of.code.rst learning-modules.rst library.rst license.rst lisp.rst list4.rst machine-code.rst macros.rst mecrisp-stellaris-readme.rst mecrisp-unsupported-mcu.rst memmap-obsoleting.rst memstat.rst mcu-specific-special-words.rst microscope.rst misc.rst muforth.rst modern-forth-development-environment.rst ms-not-working.rst msp430.rst mcu-embedded-ideal.rst nokia-5110.rst non-cortexm.rst numworks.rst parsing.rst patches.rst pcb.rst pcb-rnd.rst plang.rst plang-how.rst plang-reader.rst plang.stm32f103c8.rst plang2-status.rst porting.rst project.3temp.sensors.rst project-suggestions.rst project-stm32f103-lmt01.rst projects/blink-f0disco-gdbtui/doc/readme.rst prototyping.rst prototyping-different-methods.rst quadrature-rotary-switch.rst radiation-hardening.rst ram.rst ram-vs-flash.rst ra-kernel.rst rants.rst real-projects.rst real-time.rst recognisers.rst references.rst register-generator.rst repl.rst retro.rst serial-terminals.rst source-documentation.rst special-chip.rst stair-stepping.rst stacks.rst stack-sensitive-prompt.rst stepper.rst stm32-books.rst stm32-boards.rst stm32-links.rst stm32f103c8t6-128kb.rst stm32f103-which-board.rst stm32f103-vs-gd32vf103.rst stm32g431xx.rst stm32wle5c8.rst storage.rst supported-hardware.rst svd2db-v1.rst svd2gas.rst svd2forth-v3.rst svd2forth-v6-f0disco-blinky.rst svd2mem-sqlite.rst swdcom.rst swdcom-binaries.rst swdcom-install.rst swdcom-speed.rst terminal.rst terminal-connections.rst terminal-hardware-handshaking.rst terminal-problem-the.rst thinking-forth-tips.rst thumb.rst thumbulator.rst todo.rst turnkey.rst turret-pins.rst unusual-forths.rst user-q+a.rst vim.rst vim-syntax-highlighter.rst visualising-stack.rst vocabularies.rst xon-xoff.rst youtube.rst zeptocom.rst