กลับไปหน้ารวมไฟล์
miccon-vm-with-shell-and-translator-113cdf-en.md

MicCon

MicConOS is a virtual machine for Arduino Due and Mega, that can execute files compiled for it and work with hardware, such as SD, TFT, PS/2 keyboard, RTC.

MicConAsm is a translator for MicConOS (from assembly-like).

Requirements

MicConOS requires the following libraries

  • Standart libraries from Arduino framework (Wire.h, SPI.h, libc, etc.)

Device Support

  • Arduino Mega2560
  • Arduino Due
  • SD cards (via SD & SPI Library)
  • RTC DS3231 (via Wire Library)
  • PS/2 Keyboard
  • LCD TFT (via UTFT Library)

Examples

You can compile examples from /prog with MicConAsm, copy *.bin files into SD and execute it with io.bin or 50.bin

Info

General description of system you can read in paradigm.md.

Assembly language table you can find in assembly_language.md.

License

MicConOS and MicConAsm is open-sourced software licensed under the GNU GPL v3.

EXPANDED TECHNICAL DETAILS

Embedded Virtual Machine Architecture

MicCon is an advanced software project that implements a simplified Virtual Machine (VM) and "Command Shell" directly on a standard Arduino.

  • Translator/Byte-Code Kernel: The project includes a "Translator" that converts a custom scripting language into compact byte-codes. The Arduino reads these codes from serial or memory and "Executes" them on its virtual stack.
  • Visual Studio 2015 Support Environment: The VM toolchain was developed in Visual Studio, ensuring the C++ code is highly modular and memory-efficient for the Arduino's 2KB of RAM.

Interaction

  • Live Shell Debugging Interface: Allows the user to "Talk" to the Arduino via a serial shell, executing programs and querying internal machine states in real-time, effectively creating a "Mini OS" for the hardware.

ข้อมูล Frontmatter ดั้งเดิม

title: "MicCon (VM with shell and Translator)"
description: "I present to you a virtual machine with shell that can execute files compiled for it and work with hardware, such as SD, TFT, keyboard, RTC."
author: "evost"
category: "Lab Stuff"
tags:
  - "embedded"
  - "operating system"
  - "virtual machine"
  - "os"
  - "shell"
views: 6505
likes: 5
price: 2450
difficulty: "Intermediate"
components:
  - "1x Pmod PS2"
  - "36x Male/Female Jumper Wires"
  - "1x TFT LCD supported by UTFT.lib"
  - "2x 3.6V 0.5W Zener Diode"
  - "1x PlatformIO"
  - "1x Arduino Due"
  - "1x DS3231MPMB1 Peripheral Module"
  - "1x Pmod SD"
tools: []
apps:
  - "1x Visual Studio 2015"
  - "1x Arduino IDE"
downloadableFiles:
  - "https://github.com/evost/MicCon"
  - "https://github.com/evost/MicCon"
documentationLinks: []
passwordHash: "c1b14c11080ccd0f0d83fbf5931ef5f698531e8501df3bf0479f07bd08bdabe2"
encryptedPayload: "U2FsdGVkX191AQa8+3ElQ7Q1hrxlRqCQUx5wH5Lr/nFB19Keb796QvyWR3/IDjyehtQi4z3IOxLGKN7q375w6UA2l1sNdIdf5HWFH4bEkqaEczNe4Z6UK47wCmoKRvxR"
seoDescription: "MicCon: A VM with shell for Arduino to execute compiled files and interface with hardware like SD, TFT, keyboard, and RTC."
videoLinks: []
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/miccon-vm-with-shell-and-translator-113cdf_cover.jpg"
lang: "en"