stcgal/README.md

73 lines
2.0 KiB
Markdown
Raw Normal View History

2014-01-15 01:09:49 +01:00
stcgal - STC MCU flash tool
===========================
stcgal is a command line flash programming tool for STC MCU Ltd. [1]
8051 compatible microcontrollers. The name was inspired by avrdude [2].
2014-01-24 00:30:21 +01:00
STC microcontrollers have a UART based boot strap loader (BSL). It
2014-01-15 01:09:49 +01:00
utilizes a packet-based protocol to flash the code memory and IAP
memory. The BSL is also used to configure various (fuse-like) device
options. Unfortunately, this protocol is not publicly documented and
STC only provide a (crude) Windows GUI application for programming.
stcgal is a full-featured replacement for STC's Windows software;
it is very portable and suitable for automation.
[1] http://stcmcu.com/
[2] http://www.nongnu.org/avrdude/
Supported MCU models
--------------------
stcgal should fully support STC 89/90/10/11/12/15 series MCUs.
2014-01-15 01:09:49 +01:00
So far, stcgal was tested with the following MCU models:
2014-01-23 23:55:41 +01:00
* STC89C52RC (BSL version: 4.3C)
* STC12C2052AD (BSL version: 5.8D)
2014-01-24 00:30:21 +01:00
* STC12C5A60S2 (BSL version: 6.2I)
2014-01-15 01:09:49 +01:00
* STC11F08XE (BSL version: 6.5M)
* STC15F104E (BSL version: 6.7Q)
2015-11-19 00:37:31 +01:00
* STC15F204EA (BSL version: 6.7R)
* STC15L104W (BSL version: 7.1Q)
* IAP15F2K61S2 (BSL version: 7.1S)
2014-01-15 01:09:49 +01:00
More compatibility testing is going to happen soon.
Features
--------
* Display part info
* Program flash memory
* Program IAP/EEPROM
* Set device options
2014-01-23 23:55:41 +01:00
* Read unique device ID (STC 10/11/12/15)
* Trim RC oscillator frequency (STC 15)
2014-01-15 01:09:49 +01:00
Installation
------------
2014-01-24 00:30:21 +01:00
stcgal requires Python 3.2 (or later) and pySerial. Apart from that,
no particular installation is required.
2014-01-15 01:09:49 +01:00
Usage
-----
See ```stcgal.py -h``` for usage information.
2015-11-19 00:38:05 +01:00
Please note that stcgal only handles raw binary encoded files at this
point. You can easily convert common Intel HEX files with
```objcopy -I ihex -O binary input.hex output.bin```.
2014-01-15 01:09:49 +01:00
BSL Protocol
------------
The text files in the doc/ subdirectory provide an overview over
the reverse engineered protocols used by the BSLs. For more details,
please read the source code.
License
-------
stcgal is published under the MIT license.