Home PC Games Linux Windows Database Network Programming Server Mobile  
  Home \ Linux \ Build a Linux development environment under STC89C52RC     - To create and manage virtual machines on Ubuntu Redhat (Linux)

- MySQL Study of --Percona Server 5.5 Upgrade 5.6 (Database)

- Volatile keyword in C language understanding (Programming)

- Linux kernel panic (because glibc result) Repair (Linux)

- Ubuntu install the camera driver (Linux)

- CentOS-based Kickstart automated installation practice (Linux)

- Macro Analysis Performance: PHP Performance Analysis and Experiment (Programming)

- Linux security settings Basics (Linux)

- CentOS 7 - use cgroups limit process resource (Linux)

- HDFS Hadoop Distributed File System Works (Server)

- How to upgrade to Oracle 11g Oracle 12c (Database)

- Linux iptables port mapping settings (Server)

- lolcat: an output terminal rainbow effects in the Linux command-line tool (Linux)

- Android project and coding specifications (Programming)

- installation of Vim plugin YouCompleteMe under Ubuntu 15.04 (Linux)

- There are three ways to run a Linux operating system from a USB stick (Linux)

- How to track performance issues when using the Unity Game Development Android (Programming)

- Use ARChon runtime environment to run Android apps on Ubuntu (Linux)

- Python exception summary (Programming)

- pscp use Detailed Windows and Linux each file transfer tool (Linux)

  Build a Linux development environment under STC89C52RC
  Add Date : 2016-05-11      
  First contact with the microcontroller, natural selection a simple microcontroller 51. But my operating system is Linux. Under Windows 51 it seems very easy to get started. But to build 51 development environment is not very smooth on Linux.

So how can I talk about Linux development environment to build STC89C52RC it.


Choose their favorite code editor. vim, emacs, gedit so can.


Install the compiler. Generally choose sdcc. Generally can be installed directly from a distribution's package manager.

Arch as in:

$ Sudo pacman -S sdcc

If not, you need to download the compilation.

Brief use sdcc:

If the current directory has a written source file main.c. Use the following simple way to compile.

$ Sdcc main.c

Several files are generated in a main.ihx generated hexadecimal executable file. Later it can be burned into the device.


The resulting executable program to burn a microcontroller is required to download lines. Generally use USB to serial download cable. After plugging in / dev which has a device called ttyUSB * specification can be later content.

Otherwise, you may need to install USB to serial driver.

Choose Recorder tool. Most online using this tool gSTCISP burn. But after I tried, always stuck in We are trying to connect your MCU ... this place.

At first I thought the problem line download. Later I found not. You can try. Note gSTCISP need is a binary file, so need to be converted to a binary file main.ihx.

A transition example:

$ Makebin main.bin

You need to change the file name of the file with your own name. There are many other methods, self-searching.

Through a burning tool I tested stcflash. This is a python script. So you need to install python environment. Most Linux distributions install python. But you need to install an additional runtime python-serial.

$ Sudo pacman -S python-serial

Stcflash.py the downloaded file into the source directory. Then start burning.

First turn off the board. carried out

$ Sudo python ./stcflash.py ./main.ihx

Open board to burn inside. Success results are as follows:

Connect to / dev / ttyUSB0 at baudrate 2400
Detecting target ... done
FOSC: 11.996MHz
Model: STC89C52RC (ver4.3C)
Baudrate: 38400
Erasing target ... done
Size of the binary: 218
Programming: #################### done

Further binaries stcflash can also burn to enter.

sdcc Download: http: //sdcc.sourceforge.net/snap.php#Linux

gSTCISP Download: http: //osdn.jp/projects/sfnet_gstcisp/releases/ fulllist = 1?

stcflash Download: https: //github.com/RainMark/stcflash.git
- Oracle row and column switch to turn columns (Database)
- CentOS6.x and Windows XP and Windows Server 2003 Open IPv6 related matters (Linux)
- Use mysqldump MySQL database backup - Linux Shell Scripting (Database)
- 25 Git Usage Tips (Linux)
- The user of fedora is not in the sudoers file method to solve (Linux)
- Linux Command Line Art (Linux)
- The top command under Linux (Linux)
- linux firewall configuration (Linux)
- Android in the coordinate system and a method to obtain the coordinates (Programming)
- Linux iptables firewall settings (Linux)
- Linux asynchronous read documents by AIO (Programming)
- Linux system security knowledge (Linux)
- Mac OS X command line to submit the local project to Git (Server)
- Go powerful development server simple example (Server)
- Use Vagrant build cross-platform development environment for Python (Server)
- JavaScript file loader LABjs API Explanation (Programming)
- MySQL optimization of the relevant Group By (Database)
- How to upgrade the kernel to 3.13.7 on Ubuntu / Linux Mint (Linux)
- Linux NIC driver and version information (Linux)
- LVM management reduces swap partition space to the root partition (Linux)
  CopyRight 2002-2022 newfreesoft.com, All Rights Reserved.