Программирование STM8
-
BlackKilkennyCat
- Собутыльник Кота
- Сообщения: 2905
- Зарегистрирован: Ср ноя 29, 2017 06:58:50
Re: Программирование STM8
Asmodey, да, меня тоже i2c там сначала как-то напрягло, особенно после st7. Но сейчас ок )
Re: Программирование STM8
Доброго дня коллеги. Нет ли у кого установочного файла для ST Visual Programmer ? Или ссылку от куда можно скачать без регистрации.
А то, там говорят пару дней бывает ожидание кода на мыло, для окончания регистрации.
А то, там говорят пару дней бывает ожидание кода на мыло, для окончания регистрации.
- VladislavS
- Собутыльник Кота
- Сообщения: 2562
- Зарегистрирован: Вт май 01, 2018 19:44:47
Re: Программирование STM8
[uquote="sergey.UA",url="/forum/viewtopic.php?p=3947004#p3947004"]По поводу вопросов, которые не взрослые, просто не могу запустить IAR правильно, все ошибки какие то, вот поэтому и начал спрашивать.[/uquote]В IAR для STM8 вообще всё примитивно. Визардом создаёте проект. В настройках проекта выбираете тип микроконтрллера и отладчика. Для начала это всё.
Добавлено after 4 minutes 4 seconds:
[uquote="sergey.UA",url="/forum/viewtopic.php?p=3947183#p3947183"]А то, там говорят пару дней бывает ожидание кода на мыло, для окончания регистрации.[/uquote]За пару секунд ссылка на скачивание приходит.
Добавлено after 4 minutes 4 seconds:
[uquote="sergey.UA",url="/forum/viewtopic.php?p=3947183#p3947183"]А то, там говорят пару дней бывает ожидание кода на мыло, для окончания регистрации.[/uquote]За пару секунд ссылка на скачивание приходит.
Re: Программирование STM8
Не ссылка на скачивание должна придти, а ключ подтверждения на мою почту, для регистрации на сайте ST.
При скачивании среды IAR, с ихнего сайта, ссылка да, пришла через пару сек.
А в данный момент регистрацию потребовали.
Добавлено after 50 minutes 1 second:
Лучше подскажите, Для загрузки прошивки в STM8, необходимо:
1. Цепь сброса - RESET
2. Цепь данных - SWIM
3. Общий - GND
Трех пинового подключения хватает ?
Все верно?
При скачивании среды IAR, с ихнего сайта, ссылка да, пришла через пару сек.
А в данный момент регистрацию потребовали.
Добавлено after 50 minutes 1 second:
Лучше подскажите, Для загрузки прошивки в STM8, необходимо:
1. Цепь сброса - RESET
2. Цепь данных - SWIM
3. Общий - GND
Трех пинового подключения хватает ?
Все верно?
-
BlackKilkennyCat
- Собутыльник Кота
- Сообщения: 2905
- Зарегистрирован: Ср ноя 29, 2017 06:58:50
Re: Программирование STM8
нет.
нужно + питания, GND, SWIM.
Ресет по желанию, требуется для того случая, когда нога SWIM используется для чего-то ещё. Но можно ввести 5 секундну задержку в начале кода до конфигурации портов, тогда опять ресет не нужен.
нужно + питания, GND, SWIM.
Ресет по желанию, требуется для того случая, когда нога SWIM используется для чего-то ещё. Но можно ввести 5 секундну задержку в начале кода до конфигурации портов, тогда опять ресет не нужен.
Re: Программирование STM8
BlackKilkennyCat вы правы, там на сайте ST все быстро скачивается, я просто вначале чуток не туда зашел.
Скачал уже то что вы мне советовали.
-------
Говорите нужно четыре пина, т.е. + питания.
Странно, разобрал свой программатор STLink-V2.
Мало того, что изначально наоборот его к своей макетке подключал, так еще именно этот пин VDD, никуда не звонился ВООБЩЕ. Стало интересно отпаял разъем, что бы так сказать воочию убедится, куда же он подключен.
И оказалось, что НИКУДА. Дорожки к нему вообще не идут.
И вот еще, инфу на Радио коте нашел:

Пишут что трех пинов хватает.
Скачал уже то что вы мне советовали.
-------
Говорите нужно четыре пина, т.е. + питания.
Странно, разобрал свой программатор STLink-V2.
Мало того, что изначально наоборот его к своей макетке подключал, так еще именно этот пин VDD, никуда не звонился ВООБЩЕ. Стало интересно отпаял разъем, что бы так сказать воочию убедится, куда же он подключен.
И оказалось, что НИКУДА. Дорожки к нему вообще не идут.
И вот еще, инфу на Радио коте нашел:
Пишут что трех пинов хватает.
-
BlackKilkennyCat
- Собутыльник Кота
- Сообщения: 2905
- Зарегистрирован: Ср ноя 29, 2017 06:58:50
Re: Программирование STM8
тогда питание завести отдельно. без питания прошиваться не будет. на указанном скриншоте написано неверно.
Ещё раз: нужно обеспечить питание, и SWIM - GND от программатора. RESET только если SWIM в дальнейшем будет сконфигурирован иначе.
Добавлено after 5 minutes 15 seconds:
Если поменьше читать всякие дурацкие форумы, а побольше документацию, то рано или поздно наткнулись бы на https://www.st.com/resource/en/user_man ... ronics.pdf
где сказано всё и вся. а также написано: Single wire interface module (SWIM).
Ещё раз: нужно обеспечить питание, и SWIM - GND от программатора. RESET только если SWIM в дальнейшем будет сконфигурирован иначе.
Добавлено after 5 minutes 15 seconds:
Если поменьше читать всякие дурацкие форумы, а побольше документацию, то рано или поздно наткнулись бы на https://www.st.com/resource/en/user_man ... ronics.pdf
где сказано всё и вся. а также написано: Single wire interface module (SWIM).
- просто КОТ
- Друг Кота
- Сообщения: 12364
- Зарегистрирован: Пт дек 17, 2010 15:07:50
- Откуда: Крымский Федеральный Округ
- Контактная информация:
Re: Программирование STM8
Свой ST-Link покупал в китае, поэтому за образец его приводить не рискну. Но меня ставил в тупик тот факт что без подключения VDD он не прошивал МК. Даже не пытался. Хотя МК был запитан, просто я сэкономил четвёртый пин в разъёме.
Договориться с ним удалось зацепив пин VDD на питание внутри самого программатора, таким образом чтоб ему питание виделось постоянно. Костыль конечно, но на тот момент так было удобнее.
Договориться с ним удалось зацепив пин VDD на питание внутри самого программатора, таким образом чтоб ему питание виделось постоянно. Костыль конечно, но на тот момент так было удобнее.
-
BlackKilkennyCat
- Собутыльник Кота
- Сообщения: 2905
- Зарегистрирован: Ср ноя 29, 2017 06:58:50
Re: Программирование STM8
просто КОТ, ну, это какой-то сильно левый программтор, не повезло...
так-то удобно: землю подцепить легко, а swim в виде иголки подоткнуть руками на момент прошивки - не надо выводить отдельный разъём.
Когда 8-ногие корпуса, вообще красота в минимизации.
так-то удобно: землю подцепить легко, а swim в виде иголки подоткнуть руками на момент прошивки - не надо выводить отдельный разъём.
Когда 8-ногие корпуса, вообще красота в минимизации.
Re: Программирование STM8
[uquote="просто КОТ",url="/forum/viewtopic.php?p=3947432#p3947432"]Свой ST-Link покупал в китае, поэтому за образец его приводить не рискну. Но меня ставил в тупик тот факт что без подключения VDD он не прошивал МК. Даже не пытался. Хотя МК был запитан, просто я сэкономил четвёртый пин в разъёме.
Договориться с ним удалось зацепив пин VDD на питание внутри самого программатора, таким образом чтоб ему питание виделось постоянно. Костыль конечно, но на тот момент так было удобнее.[/uquote]
Надо думать, что программатор измеряет напряжение на выводах питания МК, даже если питание внешнее. И при отсутствии внешнего напряжение на своей линии Vdd отказывается вообще что либо делать с микроконтроллером.
[uquote="sergey.UA",url="/forum/viewtopic.php?p=3947408#p3947408"]Мало того, что изначально наоборот его к своей макетке подключал, так еще именно этот пин VDD, никуда не звонился ВООБЩЕ[/uquote]
Ну так здорово же. Будь Vdd подключен, спалили бы микроконтроллер, а возможно, и сам отладчик.
Сколько вы за него (за отладчик) отдали?
Договориться с ним удалось зацепив пин VDD на питание внутри самого программатора, таким образом чтоб ему питание виделось постоянно. Костыль конечно, но на тот момент так было удобнее.[/uquote]
Надо думать, что программатор измеряет напряжение на выводах питания МК, даже если питание внешнее. И при отсутствии внешнего напряжение на своей линии Vdd отказывается вообще что либо делать с микроконтроллером.
[uquote="sergey.UA",url="/forum/viewtopic.php?p=3947408#p3947408"]Мало того, что изначально наоборот его к своей макетке подключал, так еще именно этот пин VDD, никуда не звонился ВООБЩЕ[/uquote]
Ну так здорово же. Будь Vdd подключен, спалили бы микроконтроллер, а возможно, и сам отладчик.
Сколько вы за него (за отладчик) отдали?
Астролябия-сама меряет, было бы что мерять!!!
Re: Программирование STM8
Честно говоря намаялся уже, потому что не получается программатор и макетку состыковать. (((
Да и с IAR тоже все не так как надо. Нажимаешь компилировать, а прога выдает противный предупреждающий сигнал об ошибке, и судя по тому что не появляется ни бинарник, ни hex, нифига не компилирует.
Только нажав "download and debug", удалось получить файл hex.
-----
По поводу программатора, вот:

Самый нижний контакт Е1 ( который ближе к С7 ) четырех пинового разъема, на последней фотке, НИ С ЧЕМ не звонился, ни с ногами микроконтроллера, ни с каким либо выводом какого либо резистора.
Не выдержал и выпаял его, визуально так сказать чтобы проследить дорожку.

С обратной стороны так же, к нему не идет никакая дорожка.
Т.е. НИКУДА не подключен !!
И еще один непонятный момент. Вот распиновка SWIM разъема, с инструкции к ST-LINK/V2:

НО! На землю звонится вывод 2, и в соответствии из найденных в инете схем на этот программатор, DATA это вывод 3, а RESET это вывод 1. Т.е. все наоборот !! А пин 4, это получается VDD, висит в вакууме.
------
Решил проверить программатор отдельно от IAR. Скачал и установил прогу ST Visual Programmer.
Взял hex созданный IAR -ом, и ... получил ошибку, что нет подключения с моим микроконтроллером на макетке .Грустно как то.(((
------
Этот программатор покупал пару лет назад, у нас в местном магазине, прошивал им пару раз STM32, брал в пересчете на доллар, примерно за 3,8$
------
Вот нашел, где брал, как говорится почувствуйте разницу.

-------
Появилась мысль, может перед началом программирования МК, запитать макетку, и тогда на VDD появится 5 В.
Да и с IAR тоже все не так как надо. Нажимаешь компилировать, а прога выдает противный предупреждающий сигнал об ошибке, и судя по тому что не появляется ни бинарник, ни hex, нифига не компилирует.
Только нажав "download and debug", удалось получить файл hex.
-----
По поводу программатора, вот:
Самый нижний контакт Е1 ( который ближе к С7 ) четырех пинового разъема, на последней фотке, НИ С ЧЕМ не звонился, ни с ногами микроконтроллера, ни с каким либо выводом какого либо резистора.
Не выдержал и выпаял его, визуально так сказать чтобы проследить дорожку.
С обратной стороны так же, к нему не идет никакая дорожка.
Т.е. НИКУДА не подключен !!
И еще один непонятный момент. Вот распиновка SWIM разъема, с инструкции к ST-LINK/V2:
НО! На землю звонится вывод 2, и в соответствии из найденных в инете схем на этот программатор, DATA это вывод 3, а RESET это вывод 1. Т.е. все наоборот !! А пин 4, это получается VDD, висит в вакууме.
------
Решил проверить программатор отдельно от IAR. Скачал и установил прогу ST Visual Programmer.
Взял hex созданный IAR -ом, и ... получил ошибку, что нет подключения с моим микроконтроллером на макетке .Грустно как то.(((
------
Этот программатор покупал пару лет назад, у нас в местном магазине, прошивал им пару раз STM32, брал в пересчете на доллар, примерно за 3,8$
------
Вот нашел, где брал, как говорится почувствуйте разницу.
-------
Появилась мысль, может перед началом программирования МК, запитать макетку, и тогда на VDD появится 5 В.
-
BlackKilkennyCat
- Собутыльник Кота
- Сообщения: 2905
- Зарегистрирован: Ср ноя 29, 2017 06:58:50
Re: Программирование STM8
мож многослойная плата.
если мк на программаторе честный 103, починить нет проблем.
Добавлено after 2 minutes 36 seconds:
[uquote="sergey.UA",url="/forum/viewtopic.php?p=3947758#p3947758"]Появилась мысль, может перед началом программирования МК, запитать макетку, и тогда на VDD появится 5 В.[/uquote]
То есть, пытались прошивать без питания?
если мк на программаторе честный 103, починить нет проблем.
Добавлено after 2 minutes 36 seconds:
[uquote="sergey.UA",url="/forum/viewtopic.php?p=3947758#p3947758"]Появилась мысль, может перед началом программирования МК, запитать макетку, и тогда на VDD появится 5 В.[/uquote]
То есть, пытались прошивать без питания?
Re: Программирование STM8
Ну да, без подачи питания на макетку. Программатор ведь сам во время программирования или отладки запитывает камень на макетке, так ведь ? Я же не в курсе как правильно, поэтому и задаю здесь вопросы.
В свое время для PIC -ов, сделал ТРИ самодельных программатора, два через COM порт, один через USB, там вообще никаких проблем не было, все работало как часики, а тут ....(((
-------
Еще заметил такую особенность, если подключить на оборот, ( т.е. Pin 2 с рисунка инструкции на землю макетки, а Pin 3, на вывод DATA макетки ), всего два этих проводка, то на макетке постоянно горит в пол яркости светодиод.
Светик подключен к земле, и ВХОДУ линейного стабилизатора.
Измеренное напряжение между землей и входом стабилизатора составило 2,09 В.
Т.е. получается, что с макетки, с вывода Pin 3 ( а я предположил что это вывод SWIM ) идет какое то напряжени, или "ШИМ"? И оно через защитный диод на входе вывода SWIM идет на питание МК, а далее через обратный диод между входом и выходом стабилизатора - на ВХОД стабилизатора ? Подключу осцил посмотрю.
--------
BlackKilkennyCat есть мысли как починить? Порекомендуйте что сделать необходимо.
--------
В общем еще раз разберу отладчик, найду в нете схемы и все проверю.
А вы коллеги, что подскажите по этому всему ?
Спасибо.
В свое время для PIC -ов, сделал ТРИ самодельных программатора, два через COM порт, один через USB, там вообще никаких проблем не было, все работало как часики, а тут ....(((
-------
Еще заметил такую особенность, если подключить на оборот, ( т.е. Pin 2 с рисунка инструкции на землю макетки, а Pin 3, на вывод DATA макетки ), всего два этих проводка, то на макетке постоянно горит в пол яркости светодиод.
Светик подключен к земле, и ВХОДУ линейного стабилизатора.
Измеренное напряжение между землей и входом стабилизатора составило 2,09 В.
Т.е. получается, что с макетки, с вывода Pin 3 ( а я предположил что это вывод SWIM ) идет какое то напряжени, или "ШИМ"? И оно через защитный диод на входе вывода SWIM идет на питание МК, а далее через обратный диод между входом и выходом стабилизатора - на ВХОД стабилизатора ? Подключу осцил посмотрю.
--------
BlackKilkennyCat есть мысли как починить? Порекомендуйте что сделать необходимо.
--------
В общем еще раз разберу отладчик, найду в нете схемы и все проверю.
А вы коллеги, что подскажите по этому всему ?
Спасибо.
- GARMIN
- Держит паяльник хвостом
- Сообщения: 952
- Зарегистрирован: Вс дек 02, 2012 16:58:33
- Откуда: от туда
- Контактная информация:
Re: Программирование STM8
Программатор не питает макетку. Только смотрит, какое у неё питание. Это нужно для преобразователя уровней. Запитайте свою плату отдельно.
Re: Программирование STM8
В общем так, коллеги, что бы разобраться со своим отладчиком, пришлось нарисовать его схему. Так сказать, реинжиниринг схемной части. Вот что оказалось на самом деле:

Теперь понятно почему у меня при подключении только двух проводов, GND и DATA ( SWIM ), в пол яркости горел светодиод, подключенный на вход стабилизатора питания макетной платы.
------
GARMIN, вы совершенно правы, не запитанным оказался камень на макетке.
Я могу подать отдельное питание на макетную плату, а можно только 19 контакт разъема J4 STM32, подключить
к выводу VDD ( + питание микроконтроллера ) на моей макетке.
Как правильнее ?
Теперь понятно почему у меня при подключении только двух проводов, GND и DATA ( SWIM ), в пол яркости горел светодиод, подключенный на вход стабилизатора питания макетной платы.
------
GARMIN, вы совершенно правы, не запитанным оказался камень на макетке.
Я могу подать отдельное питание на макетную плату, а можно только 19 контакт разъема J4 STM32, подключить
к выводу VDD ( + питание микроконтроллера ) на моей макетке.
Как правильнее ?
Re: Программирование STM8
С тех пор как стали применять внутрисхемное программирование, запитывать программируемое устройство от программатора не имеет смысла. Может ваше программируемое устройство по Vdd жрёт 5 ампер и вы захотите, чтобы программатор вам их выдал? Просто подумайте логически.
А люди посмотрят и скажут: "Собаки летят. Вот и осень."
Re: Программирование STM8
Согласен, логика железная. Но,... в режиме внутрисхемного программирования ICSP, к примеру для PIC микроконтроллеров, никакого внешнего питания подавать на макетную плату НЕ НУЖНО.
Все прекрасно программируется от +5 В разъема USB.
-----
Для меня STM8, это неизученный камень, поэтому и задаю вопросы такие.
Спасибо.
Все прекрасно программируется от +5 В разъема USB.
-----
Для меня STM8, это неизученный камень, поэтому и задаю вопросы такие.
Спасибо.
- Eddy_Em
- Собутыльник Кота
- Сообщения: 2516
- Зарегистрирован: Пт июл 12, 2019 22:52:01
- Контактная информация:
Re: Программирование STM8
Даже у китайских st-link'ов есть выходы +3.3В и +5В для питания программируемой схемы!
При отладке макеток STM8 я в подавляющем большинстве случаев питаю их от прошивальщика, а иногда - от "свистка" на PL2303. Но если напряжение питания МК должно быть 3.3В, а не 5В, то остается только запитывать от прошивальщика: таки встроенный стабилизатор PL2303 и спалить можно… И лишь если требуется навесить что-то на девборду, я запитываю ее отдельным БП.
При отладке макеток STM8 я в подавляющем большинстве случаев питаю их от прошивальщика, а иногда - от "свистка" на PL2303. Но если напряжение питания МК должно быть 3.3В, а не 5В, то остается только запитывать от прошивальщика: таки встроенный стабилизатор PL2303 и спалить можно… И лишь если требуется навесить что-то на девборду, я запитываю ее отдельным БП.
Re: Программирование STM8
sergey.UA, вы, конечно, можете продолжать упорствовать, но подумайте о такой вещи, что микроконтроллер не единственный компонент в схеме. А что вам скажет стабилизатор источника питания, когда ему "взад" подадут питание? Старые 7805 и 317 этого очень не любили и всегда рекомендовали ставить защитный диод (через который вы опять своим свиском будете запитывать что-нибудь еще не нужное.
Так что обычное правило для ICSP - схема "питает" программатор (имеется в виду, что питает преобразователи уровня или просто сообщает, что питание есть), а не наоборот. Есть, конечно, и исключения. Вот кипарисовский кристалл cy8c4014 надо питать от программатора, так как у него нет входа сброса и ввести его в режим программирования можно только методом power cycling, но все остальные cy8c4xxx - вводятся в программирование через NRST и им питание от программатора не требуется.
Это хорошо, когда у программаторов есть возможность запитывать программируемую схему, как у PicKit, Miniprog итд. Но хватает и таких, которые не могут. Но даже те, которые могут, способны дать от силы 30ма для запитки таргета.
Так что обычное правило для ICSP - схема "питает" программатор (имеется в виду, что питает преобразователи уровня или просто сообщает, что питание есть), а не наоборот. Есть, конечно, и исключения. Вот кипарисовский кристалл cy8c4014 надо питать от программатора, так как у него нет входа сброса и ввести его в режим программирования можно только методом power cycling, но все остальные cy8c4xxx - вводятся в программирование через NRST и им питание от программатора не требуется.
Это хорошо, когда у программаторов есть возможность запитывать программируемую схему, как у PicKit, Miniprog итд. Но хватает и таких, которые не могут. Но даже те, которые могут, способны дать от силы 30ма для запитки таргета.
А люди посмотрят и скажут: "Собаки летят. Вот и осень."
Re: Программирование STM8
Куда уж мне тут упорствовать, невезуха сплошная. ))
Вот сейчас, подключил к макетке внешнее питание, подключил программатор с макеткой к компу, запустил прогу STVP, загрузил в нее hex файл, нажимаю программировать, и снова ...

Что означает :
Ошибка: не удается связаться с устройством!
Проверьте подключение кабеля SWIM и проверьте все необходимые контакты на разъеме SWIM.
Если код приложения использует вывод отключения плавания и сброса в качестве выхода или отключил делитель тактовой частоты SWIM:
Попробуйте сейчас ВЫКЛЮЧИТЬ и ВКЛЮЧИТЬ источник питания приложения, когда на выводе сброса NRST принудительно установлен низкий уровень.
Ошибка: <Ошибка программирования ПАМЯТИ ПРОГРАММЫ.
Ошибка: <Операция прервана.
------
Питание макетки, как рекомендуют, сбрасывал.
И что насторожило, камень то, еще ни разу то толком и не прошивал (на макетке ), а при подключении внешнего питания, сразу же светится светодиод, подключенный к PORT D0, анодом через резистор на Vdd питания макетки.
Может как то нужно для проги STVP выбрать USB порт, к которому у меня подключен отладчик? Уже и не знаю что думать.
-----
Эх, ... видно остается пойти напиться, а потом забыться.
Вот сейчас, подключил к макетке внешнее питание, подключил программатор с макеткой к компу, запустил прогу STVP, загрузил в нее hex файл, нажимаю программировать, и снова ...
Что означает :
Ошибка: не удается связаться с устройством!
Проверьте подключение кабеля SWIM и проверьте все необходимые контакты на разъеме SWIM.
Если код приложения использует вывод отключения плавания и сброса в качестве выхода или отключил делитель тактовой частоты SWIM:
Попробуйте сейчас ВЫКЛЮЧИТЬ и ВКЛЮЧИТЬ источник питания приложения, когда на выводе сброса NRST принудительно установлен низкий уровень.
Ошибка: <Ошибка программирования ПАМЯТИ ПРОГРАММЫ.
Ошибка: <Операция прервана.
------
Питание макетки, как рекомендуют, сбрасывал.
И что насторожило, камень то, еще ни разу то толком и не прошивал (на макетке ), а при подключении внешнего питания, сразу же светится светодиод, подключенный к PORT D0, анодом через резистор на Vdd питания макетки.
Может как то нужно для проги STVP выбрать USB порт, к которому у меня подключен отладчик? Уже и не знаю что думать.
-----
Эх, ... видно остается пойти напиться, а потом забыться.

