Программирование STM8

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 198
Зарегистрирован: Вт ноя 07, 2006 00:09:58
Откуда: Москва

Сообщение Gurvinok »

Первый не знаю, а вот последние два подойдут.
Я не волшебник, я только лечусь
Контактная информация:
Реклама
Друг Кота
Сообщения: 6457
Зарегистрирован: Пт сен 13, 2013 13:11:31

Сообщение a5021 »

Не факт, что там нет защиты от считывания.
Реклама
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 198
Зарегистрирован: Вт ноя 07, 2006 00:09:58
Откуда: Москва

Сообщение Gurvinok »

А вопрос стоял о возможности технически считать прошивку. Если данный МК залочен, то уже никакими силами ее оттуда не вытащить. Конечно есть один способ, но его цена будет выше чем оплата программера который напишет новую прошивку с нуля.
Я не волшебник, я только лечусь
Контактная информация:
Родился
Сообщения: 4
Зарегистрирован: Ср фев 24, 2016 08:24:34

Сообщение alexey.m »

Предполагается опытным путем проверить возможность считывания)
Реклама
Эиком - электронные компоненты и радиодетали
Родился
Сообщения: 4
Зарегистрирован: Ср фев 24, 2016 08:24:34

Сообщение alexey.m »

Добрый день! Еще вопрос в догонку, а можно ли использовать STM8SVL discovery http://www.chipdip.ru/product/stm8svldiscovery/ для STM8L с моими целями (прошивка-чтение) ?
Реклама
Держит паяльник хвостом
Аватара пользователя
Сообщения: 960
Зарегистрирован: Вс дек 02, 2012 16:58:33
Откуда: от туда

Сообщение GARMIN »

Да, там уже разъём есть. Только отломай программатор.
Контактная информация:
Реклама
Первый раз сказал Мяу!
Сообщения: 25
Зарегистрирован: Ср мар 02, 2016 09:07:19

Сообщение esisl »

Коллеги.
Не озарите отблеском мудрости?

Хочу программный эмулятор STM8
А то прикупил на мизер... ээ на алиэкспрессе 003их, а оно мало того, что теперь программатора жду, так ещё и число прошивок сильно ограничено :(
Нашёл модель для протеуса, но там эмулятора нет.
Держит паяльник хвостом
Аватара пользователя
Сообщения: 960
Зарегистрирован: Вс дек 02, 2012 16:58:33
Откуда: от туда

Сообщение GARMIN »

IAR прекрасно эмулирует STM8.
Контактная информация:
Первый раз сказал Мяу!
Сообщения: 25
Зарегистрирован: Ср мар 02, 2016 09:07:19

Сообщение esisl »

GARMIN писал(а):IAR прекрасно эмулирует STM8.
Ага! Спасибо.
Родился
Сообщения: 4
Зарегистрирован: Ср фев 24, 2016 08:24:34

Сообщение alexey.m »

GARMIN писал(а):Да, там уже разъём есть. Только отломай программатор.
Я читал, по-моему, на этом форуме что хоть он для STM8S, но должен подойти и для STM8L . Но смутило, что в документации написано типа "use only with STM8S series" . У STM8L же напряжение питания ниже, нужно, видимо, и этот момент учесть?
Не подскажете каким софтом проще всего воспользоваться для проверки возможности считать прошивку? А то я новичек в этом деле, уже голова пухнет от чтения. Простого FAQа/мануала не нашел..
Друг Кота
Сообщения: 6457
Зарегистрирован: Пт сен 13, 2013 13:11:31

Сообщение a5021 »

esisl писал(а):А то прикупил на мизер... ээ на алиэкспрессе 003их, а оно мало того, что теперь программатора жду, так ещё и число прошивок сильно ограничено :(
Не забивайте голову ерундой. Реальное число прошивок, много больше указанных цифр в даташите.
Нашёл модель для протеуса, но там эмулятора нет.
Сам Labcenter эмуляторов для stm8 не делал, а кто-то другой вряд ли за это возьмется.
Первый раз сказал Мяу!
Сообщения: 36
Зарегистрирован: Пн май 02, 2011 20:17:19
Откуда: Средняя Волга

Сообщение polyester »

Чего-то посмотрел на STM8, вот, думал, замена мегам :)) А посмотрел поближе - какой же это геморрой. Да хоть бесплатно они пусть будут. При таких заумностях и кривых средах под них - легче на мегах делать. Вот чего только стоит это - запись в EEPROM к примеру в IAR:
мега
__EEPUT(0x40,status.byte);


stm8
char *adress = (char *) 0x4000;
if (FLASH_IAPSR_DUL == 0)
{
FLASH_DUKR = 0xae;
FLASH_DUKR = 0x56;
while (FLASH_IAPSR_DUL == 0)
{
}
}
*address = status.byte;
FLASH_IAPSR_DUL = 0;

А сколько при этом сгенериться кода :shock: И улетит туда вся флеш........ А сколько мороки с инитом другой периферии...... А новичку в STM вообще лучше не лазить - только голову сломать и расхотеть вообще контроллерами заниматься. Не знаю как в крупных кирпичах, а в мелких и средних STM Атмелу и Пику не конкурент ни разу (даже на горизонте не пробегал). Не даром за столько лет так толком и не появился в конструкциях. Протухнут чувствую у меня эти STM8S.... :(
Друг Кота
Аватара пользователя
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Сообщение oleg110592 »

eeprom в stm8 можно организовать просто (код для IARа - имхо самая правильная среда для stm8 и avr) :

Код: Выделить всё

typedef struct Par_t
{
    uint16_t temperature;
    uint16_t time;
    uint8_t gain;    
}Par_t;

#pragma location=0x4000
__no_init Par_t Par;
#pragma required=Par
чтение очень просто, занимает намного меньше чем в АВР - просто пересылка из области eeprom в память, все находится в едином адресном пространстве:

Код: Выделить всё

uint16_t temperature, time;

temperature = Par.temperature;
time = Par.time;
в листинге всего то две команды:

Код: Выделить всё

LDW X, L:0x4000
LDW L:temperature, X
...
LDW X, L:0x4002
LDW L:time, X

запись тоже несложно:

Код: Выделить всё

mcu_eeprom_unlock();
Par.temperature = 560;
Par.time = time;
FLASH->IAPSR &= ~FLASH_IAPSR_DUL; //EEPROM lock

void mcu_eeprom_unlock(void) //Разблокировать EEPROM
{
    FLASH->DUKR = ((unsigned char)0xAE);
    FLASH->DUKR = ((unsigned char)0x56);
    while (!(FLASH->IAPSR & FLASH_IAPSR_DUL));
}
случайным процессом испортить eeprom stm8 практически невозможно, вот в АВР, бывало раньше, по адресу 0 eeprom портилась регулярно

А что за "морока с инитом другой периферии" - имхо периферия stm8 весьма проста, после прочтения документации, чуть поднавороченней чем в АВР, зато и возможностей намного больше. А программатор - отладчик копеечный? А цена в минимум в в 2 раза дешевле чем аналогичный АВР. После stm8 на avr и смотреть не хочется.
Электрический кот
Сообщения: 1040
Зарегистрирован: Вс сен 25, 2011 19:09:33

Сообщение axillent »

Вопрос
Будет ли нормально работать stm8s003f3 при питании от 5в с i2c датчиком bmp085 с подтяжкой линий SCL/SDA к 3.3в?

На уарте висит max485, поэтому питание МК должно быть 5в
Поставщик валерьянки для Кота
Сообщения: 2222
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Откуда: Tashkent

Сообщение uk8amk »

Документация говорит, что нужно минимум 3.5В на входе чтобы принять высокий уровень на 5В питании.
Можно применить простой согласователь уровней на 2-х полевичках.
Вложения
io_characteristics.PNG
(42.8 КБ) 681 скачивание
Друг Кота
Сообщения: 6457
Зарегистрирован: Пт сен 13, 2013 13:11:31

Сообщение a5021 »

Схема одного из китайских сенсоров на BMP085 выглядит следующим образом:

Изображение

При этом датчик без всяких проблем работает с пятивольтовым ардуиной.
Первый раз сказал Мяу!
Сообщения: 36
Зарегистрирован: Пн май 02, 2011 20:17:19
Откуда: Средняя Волга

Сообщение polyester »

oleg110592 писал(а):eeprom в stm8 можно организовать просто (код для IARа - имхо самая правильная среда для stm8 и avr) :

случайным процессом испортить eeprom stm8 практически невозможно, вот в АВР, бывало раньше, по адресу 0 eeprom портилась регулярно

А что за "морока с инитом другой периферии" - имхо периферия stm8 весьма проста, после прочтения документации, чуть поднавороченней чем в АВР, зато и возможностей намного больше. А программатор - отладчик копеечный? А цена в минимум в в 2 раза дешевле чем аналогичный АВР. После stm8 на avr и смотреть не хочется.
По IAR согласен - сам с AVR на нем сижу.

Как это может портиться ячейка с нулевым адресом если туда явно ничего не пишешь. Просвятите в какой ситуации такое возможно. Ничего подобного не наблюдал но наступить на такие грабли желания нет.

Возможностей может и больше, но от их названий регистров в глазах рябит.

А цена в определенных ситуевинах не играет особой роли если учесть к какому обьему граблей придется прислониться при переходе на STM. Вот в одной конторе на переход с AVR на STM затратили больше года. Да и только потому что понадобились всякие TFT там и прочее. Но это оправдано если сразу идет заточка под толстые кристаллы.

Пытаюсь перевести потихоньку один из проектов на STM8 и чет приуныл от конторы ST :? Пока положительных эмоций нет.

Может это сила привычки? Хотя от Pic к AVR перешел легко, да еще в добавок с асма на Си впридачу (но и PIC не забыл - на Си притулил).

Но все равно для новичка или устаканившегося на каком-то другом проце STM - это пипец. Еще помнится как народ ни в какую не мог слезть с 51 ядра. Да и сейчас наверное в ходу. Каждая архитектура под свои задачи. :beer:
Электрический кот
Сообщения: 1040
Зарегистрирован: Вс сен 25, 2011 19:09:33

Сообщение axillent »

polyester если бы вы привыкли читать даташиты для AVR, то и с STM бы не испытали проблем)
хотя могу ошибаться
по крайней мере мне переход с avr на stm8 не доставил проблем, нужно лишь перестроиться к другой логике документации
Друг Кота
Аватара пользователя
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Сообщение oleg110592 »

polyester писал(а):Как это может портиться ячейка с нулевым адресом если туда явно ничего не пишешь
In older generation AVRs the EEPROM Address Register (EEAR) is initialized to zero on reset, be it from Brown Out Detect, Watchdog or the Reset Pin. If an EEPROM write has just started at the time of the reset, the write will be completed, but now at address zero instead of the requested address. If the reset occurs later in the write process both the requested address and address zero may be corrupted.
http://www.nongnu.org/avr-libc/user-man ... corruption
Это в старых аврах. Была у меня мега8, на ней был сделан аналог программатора STK500 (AVRISP) в нулевой ячейке еепром прошивался номер вернее часть номера) ревизии программатора, периодически этот портился номер и оболочка программатора из аврстудии сильно сердилась, восстанавливался номер обычным терминалом - задалбывало сильно. В новых поправили вроде - но с тех пор 3-4 младших ячейки еепром в проектах не использовал.
polyester писал(а):Возможностей может и больше, но от их названий регистров в глазах рябит
это поначалу - потом любовь приходит :)
polyester писал(а):А цена в определенных ситуевинах не играет особой роли...

в моей ситуации заказчики требуют - плотная конкуренция, STM8S003F3P6 покупают по 0.23$ - даже на 1000 штук реальная экономия, никакой авр и пик не заменит, раньше мега48 в поделках работала - но в лучшем случае это 0.74$, еще раньше PIC16F676 - тоже не имеет смысла если есть STM8...
polyester писал(а):Но все равно для новичка или устаканившегося на каком-то другом проце STM - это пипец
если для комерции - жизнь научит и заставит, если для домашних поделок - разве не интересно узнать что-то новое, потом работу хорошую с такими суперзнаниями можно найти...
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич

Сообщение Alexeyslav »

Это врятли, насколько я знаю у AVR даташит на микроконтроллер это один документ - скачиваешь и изучаешь, там имеется исчерпывающая информация. У STM совсем иной подход к документации - отдельно даташит на ядро, отдельно на периферию и отдельно ещё на что-то. И вот берёшь любой ихний контроллер и... что делать? какую документацию качать? какое у него ядро? Пока у тебя нет опыта в этом деле - это просто нереальный квест, информация размазана ровным слоем по всему интернету, ладно не по всему а по примерно 1/3 части. Пока кто-то не укажет что это брать оттуда, это оттуда и смотреть туда фиг до этого сам дойдёшь. А производителю хорошо - не надо тратится на редакторов и место под хранение даташитов на очень обширные семейства контроллеров.
Вот только нет такого сайта или документа который бы объяснял принципы нумерации ихних контроллеров, каким образом скомпонована документация и как ПОДОБРАТЬ контроллер под свои задачи по заданным характеристикам. В отличие от АВР там не существует отдельных контроллеров а целые семейства, очень разные внутри. Целые огромные линейки... и пока их не изучишь не покопаешься в этом разнообразии очень трудно сказать что есть что и осознанно выбрать конкретную конфигурацию контроллера.
Контактная информация:
Ответить

Вернуться в «Разные вопросы по МК»