STC15W408AS - китайский микроконтроллер с архитектурой 8051

( 15 Голосов )

Недавно на Aliexpress меня привлекла своей дешевизной и внушительными характеристиками отладочная плата на китайском микроконтроллере STC15W408AS. Данный микроконтроллер входит в серию однокристальных МК STC15W401AS, основанных на ядре 1Т, с архитектурой 8051. В данной статье я расскажу про сам микроконтроллер, про отладочную плату, а так же как её подключить ПК и запрограммировать.

STC15W408AS – 8-битный микроконтроллер, выпускаемый китайской компанией STCmicro Limited.

В отличии от оригинального 8051, этот  более совершенный:
1.    Ядро работает в 8 -12 раз быстрее;
2.    Диапазон рабочих частот: 0-35 МГц, что эквивалентно традиционному 8051: 0 - 420 МГц.
3.    Широкий диапазон питающего напряжения: 2.5-5.5В;
4.    Флэш-память объёмом 8Kбайт с возможность перезапись более 100000 раз;
5.    Оперативная SRAM-память объёмом 512 байт;
6.    EEPROM 5Кбайт, с количеством стирания более 100000 раз;
7.    8-канальный 10-битный высокоскоростной АЦП со скоростью 300000 раз в секунду;
8.    3-канальный ШИМ, также может использоваться как 3-х канальный цифро-аналоговый преобразователь (ЦАП);
9.    3 канала (CCP / PWM / PCA) могут использоваться для реализации 3-х таймеров или 3 внешних прерываний (могут генерироваться по нарастающему или спадающему фронту) или 3-х каналов ЦАП;
10.    Один 15-битный Watch Dog Timer с 8-битным предварительным масштабированием (однократное включение);
11.    5 стандартных внешних прерываний;
12.    Внутренний высокоточный RC-генератор с температурным дрейфом ± 1% в диапазоне  от -40°C до + 85°C. RC-генератор может быть опционально настроен на частоту от 5 МГц до 35 МГц (5,5296, 11,0592, 22,1184, 33,1776 МГц).
13.    два 16-битных перезагружаемых таймера / счетчика (T0 / T2). T0 совместим с Timer0 / Timer1 традиционного 8051.
14.    Высокоскоростной асинхронный последовательный порт UART (можно рассматривать как 3 последовательных порта с переключением между 3 группами контактов): UART (RxD / P3.0, TxD / P3.1) можно переключить на (RxD_2 / P3.6, TxD_2 / P3.7) также можно переключить на (RxD_3 / P1.6, TxD_3 / P1.7).
15.    Высокоскоростной синхронный последовательный периферийный интерфейс – SPI;
16.    Поддержка функции Encryption Download (для защиты кода от перехвата);
17.    RS485 управление;
18.    3 режима управления питанием: режим замедления (Slow-Down mod), режим ожидания (Idle mode), режим остановки / отключения питания (Stop/Power- Down mode). Все прерывания могут выводить из режима ожидания.

STC15W408AS mcu

Данная серия представлена 6 микроконтроллерами: STC15W401AS, STC15W402AS, STC15W404AS, STC15W408AS, IAP15W413AS, IRC15W415AS. В таблице видны отличия.

IRC15W415AS может работать от внутреннего или внешнего кристалла 24 МГц.

Расшифровка маркировки STC15W408AS:

STC - в области пользовательской программы, флеш-память не может использоваться как EEPROM. Имеется отдельная область EEPROM.
15 –микроконтроллер STC с с ядром 1T 8051, со скоростью в 8 ~ 12 раз выше, чем у традиционного 8051 при той же рабочей частоте.
W - Рабочее напряжение: 2.5-5.5 В
4 – объём SRAM-памяти: 128×4 = 512 байт
08 – объём флеш-памяти для программ: 8Kбайт
AS - 1 UART, SPI, внутренний EEPROM, АЦП (ШИМ также может использоваться как ЦАП), CCP / PWM / PCA

STC15W408AS

Плата для разработок с доставкой обошлась в $1.13

STC15W408AS

Плата с 2-х сторон, её размеры 40 х 15 мм. Микроконтроллер в корпусе SOP-20, так же выпускается в корпусе SOP16, SOP28, SKDIP28, DIP16, DIP20, TSSOP20, QFN28.

На плате присутствует: кнопка включения/выключения питания, она необходима для прошивки микроконтроллера. Так же имеется кнопка Reset и светодиод, который можно использовать в своих программах. Светодиод по-умолчанию подключен к пину P10.

STC15W408AS board

Принципиальная схема отладочной платы.

STC15W408AS

Для использования светодиода как индикатор питания, нужно резистор припаять к GND.

Обозначение выводов на плате STC15W408AS

STC15W408AS pins

CCP - это аббревиатура от Capture, Compare, PWM
T0CLKO - программируемый тактовый выход таймера / счетчика 0.
T2CLKO -  программируемый тактовый выход таймера / счетчика 2.
SysClkO - это выход главных часов, частота которых может быть разделена SysClk/1, SysClk/2, SysClk/4

Подключение платы STC15W408AS к компьютеру

Для подключения используется любой USB-TTL переходник, в своём примере я подключил через CP2102:

STC15W408AS - TTL

STC15W408AS USB to TTL CP2102
GND GND
VCC
Можно подключать и к пину 3,3 и 5 В
RX TXD
TX RXD

 

Прошивка платы STC15W408AS

Прошивки для данного микроконтроллера в основном предоставляют в виде исходных кодов. Эти коды вначале необходимо собрать в hex - файл, с помощью любого компилятора, поддерживающего 8051. Как собрать прошивку с помощью Keil uVision, можно прочитать в этой статье.

Затем hex-файл загружается в микроконтроллер с помощью фирменной утилиты "STC-ISP".

 

STC-ISP

Подключаем плату к компьютеру через USB-TTL переходник. Кнопка питания должна быть выключена.

В выпадающем списке "MCU Type" выбираем  "STC15W408AS Series", а затем из списка "STC15W408AS"
В "COM Port" выбирает номер ком-порта, на котором подключена плата.

STC-ISP

Перед прошивкой проверим, установлена ли связь компьютера с микроконтроллером. Для этого нажмём кнопку "Check MCU",  с помощью кнопки питания подаём питание на плату и справа в консоле утилиты должен отобразится следующий текст:

Current H/W Option:
. Current system clock source is internal IRC oscillator
. IRC is unadjusted
. Oscillator gain is HIGH
. Wakeup Timer frequency: 36.735KHz
. Do not detect the level of P3.2 and P3.3 next download
. Power-on reset, use the extra power-on delay
. RESET pin behaves as I/O pin
. Interrupt while detect a Low-Voltage
. Thresh voltage level of the built-in LVD : 2.66 V
. Permit EEPROM operation under Low-Voltag
. CPU-Core supply level : 3.39 V
. Hardware do not enable Watch-Dog-Timer
. Watch-Dog-Timer pre-scalar : 64
. Watch-Dog-Timer stop count in idle mode
. Program can modify the Watch-Dog-Timer scalar
. Erase user EEPROM area at next download
. Do not control 485 at next download
. Do not check user password next download
. TXD is independent IO
. TXD pin as quasi-bidirectional mode after reset
. P2.0 output HIGH level after reset
. Reference voltage: 1246 mV (Range: 1150~1320mV)
. Testing time: 2017-6-21

. MCU type: STC15W408AS
F/W version: 7.2.5T

Complete !(2020-10-31 17:15:13)

Это значит, что МК готов к прошивке.

STC-ISP

Для прошивки программы в МК, подключаем плату к ПК через USB-TTL переходник. Кнопка питания должна быть выключена. Нажимаем "Open Code File" и выбираем заранее собранный с помощью компилятора hex - файл. Справа в программе отобразится код hex - файл в 16-ричном виде.

Нажимаем на "Download/Program", а затем подаём питание на плату, замыкая выключатель.

В более сложных проектах, помимо самой прошивки, требуется загрузить данные в EEPROM, для этого имеется кнопка "Open EEPROM File".

Скачать даташит на STC15W401AS серию.

Как собрать прошивку с исходных кодов в Keil uVision, можно прочитать в этой статье.

Купить отладочную плату на STC15W408AS можно здесь.

Добавить комментарий