|
sdcc для stm8 - кто пробовал?, Работает? |
|
|
|
Oct 2 2013, 09:17
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
С этим компилятором надо быть готовым к сюрпризам в самых неожиданных местах. Причем никак не связанным с конкретной целевой платформой. Помню, когда в 2007 использовал его для PIC18 он не умел правильно генерить константные массивы, путался в их размерах (если обьявлен один массив через [] с инициализацией 10 элементами, то и все объявленные в этом файле через [] будут иметь 10 элементов). Баг-репорт об этом провисел почти год. Баг-репорт о второй ошибке висит до сих пор - этим летом пришло уведомление, что его переместили в категорию PIC16. Месяц назад помогал коллеге с программой для x51 (казалось бы, он для них от рождения, многие программы столько вообще не живут) - там тоже поймал чудеса буквально в первый час: передача в функцию массива как массива и через указатель на первый элемент давали колоссальную разницу в коде и использовании ОЗУ. Размер переменных, объявленных с размещением по конкретному адресу, при линковке не учитывается. То есть использовать можно, но только в крайнем случае и быть готовым обходить баги.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Jan 26 2014, 19:49
|

фанат дивана
     
Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684

|
Цитата(dotnot @ Jan 27 2014, 00:38)  Спасибо, это радует. Цитата(umup @ Jan 27 2014, 01:36)  а смысл ходить по граблям если есть 32F030 с бутлоадером и кошерным ARM-GCC ? Ну вот, как пример: У 32F030 - только -40 .. +85 °; у STM8 - есть automotive исполнение.
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
Apr 23 2015, 09:53
|
Знающий
   
Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250

|
После последних багфиксов sdcc вполне довели до более-менее нормального уровня. К сожалению, до gcc ему еще ой как далеко (производимый sdcc ассемблерный код тяжело назвать хоть немного оптимизированным), но больше никаких компиляторов под STM8 нет, увы. Вот еще, правда, есть косяк с stm8flash: он не умеет писать EEPROM и стирать залоченные МК, приходится для этого заводить виртуалобкс с хрюнделем и стирать... Если кому интересно, все мои велосипеды для STM8 на сосфорже компиляются sdcc и прошиваются при помощи stm8flash.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|