Установка ПО для работы с STM8

Установка ПО
Самым оптимальным по коду на данный момент по прежнему остается компилятор от Cosmic Software.
Скачиваем дистрибутив с официального сайта скачать (www.cosmicsoftware.com).
Переходим к установке:


Указываем имя и название компании:

Указываем путь, куда будем ставить:




После установки нас попросят зарегистрировать продукт:

Заполняем форму и сохраняем данные в файл на диск:

После пишем письмо на адрес указанный в файле (который получили ранее), прикрепляем файл к письму и для верности вставляем содержимое файла в тело письма:

Все, ждем файла лицензии. Похоже что проверяет все это дело человек и поэтому регистрация доступна только в рабочие дни.
Далее качаем среду от STM скачать (www.st.com).
Переходим к установке:




Первый проект
Запускаем ST Visual Develop:

Создаем новый проект (для примера рассмотрим работу с платой STM8S-Discovery):





Проект создан:

Можно попробовать собрать:

Если все верно, после компиляции получим следующее:

Осталось добавить в наш проект библиотеку от STM, качаем её скачать.
В архиве содержаться примеры и исходники.
Создаем новую папку в нашем проекте:

Далее копируем исходные фалы библиотеки (из скаченного архива, папка Libraries) в директорию проекта и добавляем их в созданную папку:


так же копируем и добавляем, файлы из папки “STM8S_StdPeriph_Lib_V2.0.0ProjectTemplate”, перед этим нужно удалить созданные визардом файлы (stm8_interrupt_vector.c, main.c) или просто перезаписать:

Пробуем собрать проект, но не получается нам предлагают выбрать тип МК:

Открываем файл stm8s.h и выбираем нужное семейство:

Пробуем собрать снова, и снова не получается


adc2, can, tim5, tim6, usart1, usart3.
После все должно скомпилироваться:

Так же я добавлю свои заготовки для работы с линиями ввода-вывода, так как мне не очень понравились библиотечное решение (фалы в проекте в конце страницы).
Прошивка МК
Для прошивки мк, нужно выбрать:


После подключения платы к компьютеру, жмем кнопочку:

и после снова нажать на кнопочку:

лучшего решения я не нашел, кто знает напишите пожалуйста.
В качестве примера рассмотрим стандартное мигание светодиодом

К счастью он есть на обоих платах (STM8L-Discovery, STM8S-Discovery).
Проект для STM8L-Discovery:
2011-04-24-stm8l-stdlib-led-demo
Проект для STM8S-Discovery:
2011-04-24-stm8s-stdlib-led-demo
Для STM8L и STM8S используются разные библиотеки, будьте внимательны!
- +4
- 12 августа 2011, 21:12
- ZiB
А как IAR в плане качества кода? Похоже это пока единственный доступный на халяву (методом лечения, разумеется) полноценный неограниченный компилер (ну и бесплатная версия с ограничением размера кода тоже афайк есть).
Не знаю мне чет кряки не нравятся последнее время, а халявный вариант имеет слишком сильные ограничение по коду или сейчас что-то поменялось?
Кряки плохо, но пока это единственный (вообще единственный) вариант получить неограниченный компилер, не отстегивая кучу бабок. Для остальных-то хоть GCC есть. Хотя под PIC я тоже как-то не видел открытых компиляторов, а у бесплатных всех опитимизация оторвана.
Ограничения IAR Kickstart не помню. Подозреваю что 16к.
Бесплатный COSMIC мож и не так плохо, но опасения вызывает ограниченная одним годом лицензия (если я его с raisonance не путаю) и отсутствие креков. Можно внезапно обнаружить, что халява кончилась, а все проекты — под нее.
Ограничения IAR Kickstart не помню. Подозреваю что 16к.
Бесплатный COSMIC мож и не так плохо, но опасения вызывает ограниченная одним годом лицензия (если я его с raisonance не путаю) и отсутствие креков. Можно внезапно обнаружить, что халява кончилась, а все проекты — под нее.
Думаю что людям, собирающимся что-то спаять и запрограммить на микроконтроллере, не обязательно объяснять, как нажимать на «I agree» и «next».
Вообще, интересно бы посмотреть на сравнение разных сред. Тут больше пугают не нестандартные решения, а сам выбор. Когда нет времени самостоятельно попробовать разные варианты и выбрать свой, когда, не имея опыта, сложно разобраться и в одной среде разработки, хочется сразу сделать правильный выбор. Я вот так и не решил, на чем остановиться. Пока пробую Кейл. Но уже подумываю про IAR, что-то его чаще вспоминают последнее время. А больше статей — проще новичку, вроде меня. Предложенный вариант, как я понимаю, подходит только для STM8, но не для STM32. Уже минус, для хобби лучше выбирать более универсальные средства.
Вообще, интересно бы посмотреть на сравнение разных сред. Тут больше пугают не нестандартные решения, а сам выбор. Когда нет времени самостоятельно попробовать разные варианты и выбрать свой, когда, не имея опыта, сложно разобраться и в одной среде разработки, хочется сразу сделать правильный выбор. Я вот так и не решил, на чем остановиться. Пока пробую Кейл. Но уже подумываю про IAR, что-то его чаще вспоминают последнее время. А больше статей — проще новичку, вроде меня. Предложенный вариант, как я понимаю, подходит только для STM8, но не для STM32. Уже минус, для хобби лучше выбирать более универсальные средства.
Неа, это Visual C++ 98 среда. VS 2k3 уже на .Net была написана и ориентирована, а это еще старая добрая 98-ая :)
Это вы о STVD чтоль? Не заметил я по ней, чтобы она на чем-то базировалась. На MSVS6 не похожа, да и на более новые тоже. Да и насколько я помню, там редактором стоит Scintilla, а M$ всегда что-то свое юзали.
Я бы сказал «убийственно похожа», вплоть до диалогов настройки компилятора :)
Это VC 6.0 (VS 98)

А это уже VS .Net 2003

И это Stm8 VD

Редактор построен на Scintilla, за редактор кода ответственна библиотека STVD_TxtEditor.dll, в ней же и функции встречаются типа CScintillaView::CScintillaView(void), CScintillaView::PrintFooter(class CDC *,struct CPrintInfo *,struct RangeToFormat &) и прочие…
Собрано, вроде как с помощью VC++ 8.0.
Так что да, разработка своя, редактор на Scintilla, чем вдохновлялись тоже понятно, если глянуть на VC6 :)
Это VC 6.0 (VS 98)

А это уже VS .Net 2003

И это Stm8 VD

Редактор построен на Scintilla, за редактор кода ответственна библиотека STVD_TxtEditor.dll, в ней же и функции встречаются типа CScintillaView::CScintillaView(void), CScintillaView::PrintFooter(class CDC *,struct CPrintInfo *,struct RangeToFormat &) и прочие…
Собрано, вроде как с помощью VC++ 8.0.
Так что да, разработка своя, редактор на Scintilla, чем вдохновлялись тоже понятно, если глянуть на VC6 :)
А космик разве бесплатный? Помнится под ST7 его качал, так вроде как регистрацию требовал и денег хотел.
Познавательно однако, спасибо!
А через год нету возможности продлить лицензию? Я вообще сторонник легального софта, даже винда лицовая ;)
А через год нету возможности продлить лицензию? Я вообще сторонник легального софта, даже винда лицовая ;)
У меня тупняк какой-то… #error clnk Debug\first.lkf:1 symbol _GPIO_Init not defined (Debug\main.o )
Можете поделиться готовым «пустым» проектом под stm8l? Типа такого:
И расскажите пожалуйста: какие файлы и куда совать, чтобы получить «пустой проект» под stm8l-discovery, пользуясь архивом stm8l15x_stdperiph_lib.zip.
Можете поделиться готовым «пустым» проектом под stm8l? Типа такого:
#include "stm8l15x.h"
void main(void)
{
for(;;);
}
И расскажите пожалуйста: какие файлы и куда совать, чтобы получить «пустой проект» под stm8l-discovery, пользуясь архивом stm8l15x_stdperiph_lib.zip.
Всем привет. Такой вопрос, если мне придется переустанавливать винду, то можно ли будет использовать уже имеющийся файл лицензии или придется запрашивать его заново?
Письмо на stm8_32@cosmic.fr не доходило — приходило писмо о том, что не удалось доставить. Отправил им на другой email (support@cosmic.fr) информацию для регистрации и на следующий день получил файлик с лицензией.
Все сделал по статье написал прогу под девайс все работает Никто не подскажет как залочить прошивку от считывания через swim именно команды для cosmic и ST develop
Привет. А под Cosmic есть какой-нибудь хидер с описанием битов в регистрах, а то не совсем удобно шевелить отдельными ножками через весь регистр.
День добрый, не совсем понял, что нужно. Если линиями ввода-вывода «дергать», то может макросы помогут:
ziblog.ru/2010/11/17/makrosyi-dlya-stm8.html
вот тут есть пример использования
github.com/ZiB/STM8S-USB
ziblog.ru/2010/11/17/makrosyi-dlya-stm8.html
вот тут есть пример использования
github.com/ZiB/STM8S-USB
Да речь как раз об этом, о возможности битовых операций под Cosmic наподобие:
PD_ODR_bit.ODR0 = 1;
В IAR это работает, т.к. там хидер содержит описание битов регистров, для космика такого найти не удалось и приходится извращаться через лог. ИЛИ и т.п.
Такое ощущение что не существует, хотя есть отзывы что работает:
we.easyelectronics.ru/STM8/mikrokontrollery-stm8-porty-vvoda-vyvoda.html
Пользователь ChipKiller пишет, что у него всё ОК…
PD_ODR_bit.ODR0 = 1;
В IAR это работает, т.к. там хидер содержит описание битов регистров, для космика такого найти не удалось и приходится извращаться через лог. ИЛИ и т.п.
Такое ощущение что не существует, хотя есть отзывы что работает:
we.easyelectronics.ru/STM8/mikrokontrollery-stm8-porty-vvoda-vyvoda.html
Пользователь ChipKiller пишет, что у него всё ОК…
Нет. Я бы поправил, да сайт постоянно лежит Ди похоже забил на него.
Читайте в «оригинале» Your text to link...
«Notice: Memcache::get(): Server localhost (tcp 11211) failed with: Connection refused (111) in /home/a146/www/we.easyelectronics.ru/engine/lib/external/DklabCache/Zend/Cache/Backend/Memcached.php on line 134»
Читайте в «оригинале» Your text to link...
«Notice: Memcache::get(): Server localhost (tcp 11211) failed with: Connection refused (111) in /home/a146/www/we.easyelectronics.ru/engine/lib/external/DklabCache/Zend/Cache/Backend/Memcached.php on line 134»
Оно не «не работало», оно просто рандомно глючит. Нужно повторать до тех пор, пока не сработает >_<
И ты по прежнему со своего блога подтягиваешь картинки. Опять отвалятся же. Лучше загрузи их сюда.
И ты по прежнему со своего блога подтягиваешь картинки. Опять отвалятся же. Лучше загрузи их сюда.
Есть файлик *.map там информация в текстовом виде с указанием адресов памяти. Хотелось что-то более очеловеченное в процентах, вроде в cvavr было :)
Я делал свой костыль для этого ziblog.ru/2011/10/03/formatirovanie-informatsii-o-razmerah-sektsiy-cosmic-chat-2.html (https://github.com/ZiB/comic_format)
На выходе получал вот такую информацию:
FLASH: [14,2%] 4634 bytes
RAM: [ 9,7%] 198 bytes
EEPROM: [ 0,4%] 4 bytes
На выходе получал вот такую информацию:
FLASH: [14,2%] 4634 bytes
RAM: [ 9,7%] 198 bytes
EEPROM: [ 0,4%] 4 bytes
Комментарии (72)
RSS свернуть / развернуть