STC15 - крутая серия...
Спецификация MCU серии STC15 STC15F2K60S2-en.pdf писал(а):- Супер сильная защита от помех, супер продвинутое шифрование
- Используется технология шифрования STC восьмого поколения
- Можно без внешнего кварца и схемы сброса
- внешняя EEPROM может быть сохранена с помощью технологии IAP
- ISP / IAP, онлайн-программирование, нет необходимости в программаторе и эмуляторе
—— Большая емкость 2K байт ОЗУ
—— Два UART, Два независимых последовательных порта
—— Высокоскоростной 8-канальный и 10-битный аналого-цифровой преобразователь
- 8051 микроконтроллер с 1 тактом на машинный цикл
- Высокая скорость и надежность
- Сверхнизкое энергопотребление, очень дешево
—— Супер Сильное Антистатическое электричество, Супер сильная Защита От помех
Добавлено after 23 minutes 38 seconds:Андрей Осипов, STC15F204EA перестал грузить. Как можно выйти из этого положения? Как я понимаю, нужен программатор и код загрузчика?
Я достаточно мало знаю про 15е..
Только вчера 2й UART на STC15F2K60S2_ завел..
Если ты пользовался шифрованием, вкладкой Еncryption download в STC-ISP, нажал что-то там, то тебе нужно читать:
Еncryption download в STC-ISP писал(а):This function only for the following series:
STC8xx series
STC15xx series (exclude STC15F204EA)
IAP15xx series
How to download encryption code
1. Press"Open Code File" to open a encryption code
2. Select"The code ready to download is encrypted code"
3. Press"Download/Program" button
How to encrypt code
1. Press"Create KEY" or "Load KEY"
2. Press"Encode File"
3. Choose unencrypted file in open dialog box
4. enter the encrypted file name in the save dialog box
How to update IC internal key
1. Press"Create KEY" or "Load KEY"
2. Select"Update the user KEY before download user code"
3. Press"Download/Program" button
Может что нажализ галочек в H\W Option..
Проверь галочки.
Может случайно что то в начале мог галочкой поменять..
Я себе скриншоты этих галочек делаю, чтобы потом было чем проверить.
Если не помнишь галочек. которые нажал, попробуй переустановить STC-ISP...
Как я понимаю, нужен программатор и код загрузчика?
Я точно не знаю, но думаю, что можно обойтись простым программатором..
С UARТомЮ резисторов на 300 ом, диодом КД522/1N4148 и выключателем..
OKF, когда разберешься, напиши, что и как было..
Может вообще вход UARTподжарился случайно ...
Или узнаешь, какую кнопочку не нажимать.
Там вроде фьюзов нет как в Атмеле 328Р..
А!! перевел про шифрование..
Эта функция только для следующих серий:
Серия STC8xx
Серия STC15xx (
исключая STC15F204EА)
Серия IAP15xx
У STC15F204EA - нет шифрования и ключей....
.
Добавлено after 4 hours 28 minutes 8 seconds:Рассказываю про возможности программы STC-ISP.exe -v6.90DЭто реально учебник по STC контроллерам.
"UART Helper" - это закладка для монитора виртуального COM порта..
"Baudrate Tool"Кроме массы примеров программ для любой серии STC контроллеров в закладке "Demo Сode", нашел еще отдельные закладку "Baudrate Tool" для примеров, вариантов программирования на С и ASM UARTов во всех сериях STC.
void UartInit(void) //9600bps@11.0592MHz
{
SCON = 0x50; //8 bits and variable baudrate
AUXR |= 0x40; //imer clock is 1T mode
AUXR &= 0xFE; //UART 1 use Timer1 as baudrate generator
TMOD &= 0x0F; //Set timer work mode
TL1 = 0xE0; //Initial timer value
TH1 = 0xFE; //Initial timer value
ET1 = 0; //Disable Timer%d interrupt
TR1 = 1; //Timer1 start run
}
"Timer Tool"Нашел также закладку с примерами программирования таймеров в разных режимах и разных сериях на С и ASM - "Timer Tool".
void Timer0Init(void) //100us@11.0592MHz
{
AUXR |= 0x80; //imer clock is 1T mode
TMOD &= 0xF0; //Set timer work mode
TL0 = 0xAE; //Initial timer value
TH0 = 0xFB; //Initial timer value
TF0 = 0; //Clear TF0 flag
TR0 = 1; //Timer0 start run
}"Delay Tool" - закладка с примерами программ задержки для разных серий и частот на С и ASM .
void Delay100us() //@11.0592MHz
{
unsigned char i, j;
_nop_();
_nop_();
i = 2;
j = 15;
do
{
while (--j);
} while (--i);
}"Header File" - это закладка с примерами заголовочных текстов STCxxx.h - файлов для разных серий.
пример - STC89C5xRD.h
Спойлер
#ifndef __STC89C5xRC_RDP_H__
#define __STC89C5xRC_RDP_H__
/////////////////////////////////////////////////
/* The following is STC additional SFR */
/* sfr AUXR = 0x8e; */
/* sfr AUXR1 = 0xa2; */
/* sfr IPH = 0xb7; */
sfr P4 = 0xe8;
sbit P46 = P4^6;
sbit P45 = P4^5; //ISPПВФШР蹴ѡ"ALEЅЕУГЧчP4.5їЪ"
sbit P44 = P4^4;
sbit P43 = P4^3;
sbit P42 = P4^2;
sbit P41 = P4^1;
sbit P40 = P4^0;
sfr XICON = 0xc0;
sfr WDT_CONTR = 0xe1;
sfr ISP_DATA = 0xe2;
sfr ISP_ADDRH = 0xe3;
sfr ISP_ADDRL = 0xe4;
sfr ISP_CMD = 0xe5;
sfr ISP_TRIG = 0xe6;
sfr ISP_CONTR = 0xe7;
/* Above is STC additional SFR */
/*----------
REG51F.H
Header file for 8xC31/51, 80C51Fx, 80C51Rx+
Copyright (c) 1988-1999 Keil Elektronik GmbH and Keil Software, Inc.
All rights reserved.
Modification according to DataSheet from April 1999
- SFR's AUXR and AUXR1 added for 80C51Rx+ derivatives
----------*/
/* BYTE Registers */
sfr P0 = 0x80;
sbit P00 = P0^0;
sbit P01 = P0^1;
sbit P02 = P0^2;
sbit P03 = P0^3;
sbit P04 = P0^4;
sbit P05 = P0^5;
sbit P06 = P0^6;
sbit P07 = P0^7;
sfr P1 = 0x90;
sbit P10 = P1^0;
sbit P11 = P1^1;
sbit P12 = P1^2;
sbit P13 = P1^3;
sbit P14 = P1^4;
sbit P15 = P1^5;
sbit P16 = P1^6;
sbit P17 = P1^7;
sfr P2 = 0xA0;
sbit P20 = P2^0;
sbit P21 = P2^1;
sbit P22 = P2^2;
sbit P23 = P2^3;
sbit P24 = P2^4;
sbit P25 = P2^5;
sbit P26 = P2^6;
sbit P27 = P2^7;
sfr P3 = 0xB0;
sbit P30 = P3^0;
sbit P31 = P3^1;
sbit P32 = P3^2;
sbit P33 = P3^3;
sbit P34 = P3^4;
sbit P35 = P3^5;
sbit P36 = P3^6;
sbit P37 = P3^7;
sfr PSW = 0xD0;
sfr ACC = 0xE0;
sfr B = 0xF0;
sfr SP = 0x81;
sfr DPL = 0x82;
sfr DPH = 0x83;
sfr PCON = 0x87;
sfr TCON = 0x88;
sfr TMOD = 0x89;
sfr TL0 = 0x8A;
sfr TL1 = 0x8B;
sfr TH0 = 0x8C;
sfr TH1 = 0x8D;
sfr IE = 0xA8;
sfr IP = 0xB8;
sfr SCON = 0x98;
sfr SBUF = 0x99;
/* 80C51Fx/Rx Extensions */
sfr AUXR = 0x8E;
sfr AUXR1 = 0xA2;
sfr SADDR = 0xA9;
sfr IPH = 0xB7;
sfr SADEN = 0xB9;
sfr T2CON = 0xC8;
sfr T2MOD = 0xC9;
sfr RCAP2L = 0xCA;
sfr RCAP2H = 0xCB;
sfr TL2 = 0xCC;
sfr TH2 = 0xCD;
/* PCA SFR
sfr CCON = 0xD8;
sfr CMOD = 0xD9;
sfr CCAPM0 = 0xDA;
sfr CCAPM1 = 0xDB;
sfr CCAPM2 = 0xDC;
sfr CCAPM3 = 0xDD;
sfr CCAPM4 = 0xDE;
sfr CL = 0xE9;
sfr CCAP0L = 0xEA;
sfr CCAP1L = 0xEB;
sfr CCAP2L = 0xEC;
sfr CCAP3L = 0xED;
sfr CCAP4L = 0xEE;
sfr CH = 0xF9;
sfr CCAP0H = 0xFA;
sfr CCAP1H = 0xFB;
sfr CCAP2H = 0xFC;
sfr CCAP3H = 0xFD;
sfr CCAP4H = 0xFE;
*/
/* BIT Registers */
/* PSW */
sbit CY = PSW^7;
sbit AC = PSW^6;
sbit F0 = PSW^5;
sbit RS1 = PSW^4;
sbit RS0 = PSW^3;
sbit OV = PSW^2;
sbit F1 = PSW^1;
sbit P = PSW^0;
/* TCON */
sbit TF1 = TCON^7;
sbit TR1 = TCON^6;
sbit TF0 = TCON^5;
sbit TR0 = TCON^4;
sbit IE1 = TCON^3;
sbit IT1 = TCON^2;
sbit IE0 = TCON^1;
sbit IT0 = TCON^0;
/* IE */
sbit EA = IE^7;
sbit EC = IE^6;
sbit ET2 = IE^5;
sbit ES = IE^4;
sbit ET1 = IE^3;
sbit EX1 = IE^2;
sbit ET0 = IE^1;
sbit EX0 = IE^0;
/* IP */
/* sbit PPC = IP^6;*/
sbit PT2 = IP^5;
sbit PS = IP^4;
sbit PT1 = IP^3;
sbit PX1 = IP^2;
sbit PT0 = IP^1;
sbit PX0 = IP^0;
/* P3 */
sbit RD = P3^7;
sbit WR = P3^6;
sbit T1 = P3^5;
sbit T0 = P3^4;
sbit INT1 = P3^3;
sbit INT0 = P3^2;
sbit TXD = P3^1;
sbit RXD = P3^0;
/* SCON */
sbit SM0 = SCON^7; // alternatively "FE"
sbit FE = SCON^7;
sbit SM1 = SCON^6;
sbit SM2 = SCON^5;
sbit REN = SCON^4;
sbit TB8 = SCON^3;
sbit RB8 = SCON^2;
sbit TI = SCON^1;
sbit RI = SCON^0;
/* P1 */
/* PCA
sbit CEX4 = P1^7;
sbit CEX3 = P1^6;
sbit CEX2 = P1^5;
sbit CEX1 = P1^4;
sbit CEX0 = P1^3;
sbit ECI = P1^2;
*/
sbit T2EX = P1^1;
sbit T2 = P1^0;
/* T2CON */
sbit TF2 = T2CON^7;
sbit EXF2 = T2CON^6;
sbit RCLK = T2CON^5;
sbit TCLK = T2CON^4;
sbit EXEN2 = T2CON^3;
sbit TR2 = T2CON^2;
sbit C_T2 = T2CON^1;
sbit CP_RL2= T2CON^0;
/* CCON */
/* PCA
sbit CF = CCON^7;
sbit CR = CCON^6;
sbit CCF4 = CCON^4;
sbit CCF3 = CCON^3;
sbit CCF2 = CCON^2;
sbit CCF1 = CCON^1;
sbit CCF0 = CCON^0;
*/
/////////////////////////////////////////////////
#endif
Добавлено after 5 hours 20 minutes 31 second:Есть еще один момент...
При использовании программатора U8W Mini было много наводок от него по питанию
https://ae04.alicdn.com/kf/He7f03195b9b ... W-Mini.jpg- мне пришлось оптически развязывать СОМ порт с помощью оптоизолятора USB-USB 1500в.
типа
https://gd4.alicdn.com/imgextra/i4/7028 ... 814829.jpgмой оптоизолятор такой же, но в корпусе
https://ae01.alicdn.com/kf/H00b510ec730 ... 47779A.jpgтипа
https://aliexpress.ru/item/100500130949 ... 5652877143Без оптической развязки USB-COM порт отказывался работать..
Похоже что в программаторе U8W Mini стоят какие-то преобразователи..
Пара катушек там внутри есть.