MCS-51
DocumentsEdit
- 8051 Instruction Set
- File:270249 - MCS-51 Programmer’s Guide and Instruction Set.PDF
- File:121737-003 MCS-51 Utilities Users Guide For 8080 8085-Based Development Systems Nov1983.pdf
- File:Atmel 8051 Microcontrollers Hardware Manual.pdf
- File:MCS@51 MICROCONTROLLER FAMILY USER’S MANUAL.pdf
- File:MCS™-51 MACRO ASSEMBLER USER'S GUIDE.pdf
- File:MCU 8051 IDE handbook draft.pdf
- File:8051 MCU Assembly Programming (How to).pdf
- Schematic Drawing, 8051 Development Board, Rev 5
- 8051 Microcontroller Pin Diagram and Pin Description
- 8051 Instruction Set
- Intel MCS 51 (8051) User manual
- REG52.H
- File:C8051F32x.pdf
AssemblerEdit
- Simple Programs in 8051 Assembly Language
- 8051 Assemblers and IDEs - 8051 assembler and compilers which used to convert ASM/C/Basic/Pascal code to HEX code.
ASEM-51Edit
A51Edit
ToolsEdit
SDCCEdit
- 2.7 Testing the SDCC Compiler
- Thread: How to install sdcc on ubuntu
- SDCC - Small Device C Compiler Files
- The difference between Keil C51 and SDCC
- Notes on converting Keil 8051 C to SDCC C
- Tutorials for 8051-derivatives development using free software
CH341Edit
- How to Install CH340 Drivers
- a downloadable *.ZIP of standard CH340 drivers for Linux.
- CH341SER_LINUX.ZIP
- USB to serial driver for USB to serial chip ch340, ch341, etc.
- Tutorials for 8051-derivatives development using free software
stcgalEdit
stcgal requires Python 3.5 (or later), pyserial 3.0 or later and TQDM 4.0.0 or later. USB support is optional and requires pyusb 1.0.0b2 or later. You can run stcgal directly with the included stcgal.py script if the dependencies are already installed.
There are several options for permanent installation:
Use Python3 and pip. Run pip3 install stcgal to install the latest release of stcgal globally on your system. This may require administrator/root permissions for write access to system directories.
Use setuptools. Run ./setup.py build to build and sudo ./setup.py install to install stcgal.
$ sudo apt install python3-pip $ pip3 install stcgal $ stcgal -h $ ./stcgal.py -P stc89 $ ./stcgal xxxxx.ihx -P stc89 -p /dev/ttyUSB0 $ cd ../.local/bin $ ls -l /dev/ttyUSB0 $ sudo chmod 666 /dev/ttyUSB0 $ stcgal ~/Desktop/mcs-51/001*/uart.ihx -P stc89 -p /dev/ttyUSB0
pip3 install stcgal error: externally-managed-environment
× This environment is externally managed ╰─> To install Python packages system-wide, try apt install
python3-xyz, where xyz is the package you are trying to install. If you wish to install a non-Debian-packaged Python package, create a virtual environment using python3 -m venv path/to/venv. Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make sure you have python3-full installed. If you wish to install a non-Debian packaged Python application, it may be easiest to use pipx install xyz, which will manage a virtual environment for you. Make sure you have pipx installed. See /usr/share/doc/python3.12/README.venv for more information.
note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages. hint: See PEP 668 for the detailed specification.
pip3 install stcgal --break-system-packages Defaulting to user installation because normal site-packages is not writeable Collecting stcgal
Downloading stcgal-1.10-py3-none-any.whl.metadata (1.8 kB)
Requirement already satisfied: pyserial>=3.0 in /usr/lib/python3/dist-packages (from stcgal) (3.5) Collecting tqdm>=4.0.0 (from stcgal)
Downloading tqdm-4.67.1-py3-none-any.whl.metadata (57 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 57.7/57.7 kB 315.9 kB/s eta 0:00:00
Downloading stcgal-1.10-py3-none-any.whl (37 kB) Downloading tqdm-4.67.1-py3-none-any.whl (78 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 78.5/78.5 kB 615.8 kB/s eta 0:00:00
Installing collected packages: tqdm, stcgal
WARNING: The script tqdm is installed in '/home/mq/.local/bin' which is not on PATH. Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location. WARNING: The script stcgal is installed in '/home/mq/.local/bin' which is not on PATH. Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed stcgal-1.10 tqdm-4.67.1
stcgal -h stcgal: command not found cd /home/***/.local/bin ***:~/.local/bin$ ls stcgal tqdm ***~/.local/bin$ ./stcgal Serial port error: [Errno 13] could not open port /dev/ttyUSB0: [Errno 13] Permission denied: '/dev/ttyUSB0'
Serial StudioEdit
othersEdit
- 8051 Macro Assembler
- MIDE-51 Studio: IDE for MCS-51
- mcs51linux - MCS-51 programmer for Linux
- MCU 8051 IDE
- Flash Magic
- Tutorials for 8051-derivatives development using free software
TutorialsEdit
- Rickey's World - From Rikipedia Embedded Wiki
- Tutorial Microcontroller MCS-51 ATMEL ISP
- Assembly Programming Tutorial
- Interfacing LCD in 4-bit mode with 8051
- 8051 Programming Tutorial-Chapter 1
- 8051 Microcontroller
- 8051 Addressing modes
- 8051 Special Function Registers and Ports
- Serial I/O Routines Using the 8051's Built-In UART
- How to interface keypad with 8051 microcontroller (AT89C51)- (Part 13/45)
- Design Of Interrupt Based Matrix Keypad Embedded-C Driver For A Microcontroller
- Emulating 8051 serial port communication on Linux
- 8051 Assembly & C Program for 4×4 Keypad Matrix
- interrupt driven serial i/o for the built-in uart
Electro TechEdit
- Basic 8051 tutorial 1
- Basic 8051 tutorial 2
- Basic 8051 tutorial 3
- Basic 8051 tutorial 4
- Basic 8051 tutorial 5
- 8051 Microcontroller Tutorials in C Programming Examples
- 8051 Microcontroller Timers: How to Generate Delay Example
- How to use Input Output Ports 8051 Microcontroller: LED Blinking Example
- Getting started with MCS-51 development using free software: LED and timer on the C8051F120
- LED Blink Program Using The AS31 Assembler
- Using the Free SDCC C Compiler to Develop Firmware for the DS89C430/450 Family of Microcontrollers
- Free Microcontroller Projects - 8051-AVR-PIC
- How to Interface the 8051 MCU with an LCD Display
ExamplesEdit
Related LinksEdit
illustrationEdit
Media:A-minimal-Atmel-AT89C2051-circuit-with-RC-reset.png
Media:Interfacing LCD in 4-bit mode with 8051.jpg
ComponentsEdit
ProjectsEdit
- Microcontroller 89C51 Based Chor Pakdo Alarm Project with Circuit Diagram
- Interfacing Keypad with 8051 Microcontroller using Keil C
- Design Of Interrupt Based Matrix Keypad Embedded-C Driver For A Microcontroller
- How to interface keypad with 8051 microcontroller (AT89C51)- (Part 13/45)
- How to Interface the 8051 MCU with an LCD Display
