Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: SDL
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры
Fujitser
Имею вопрос. Здесь пролетало сообщение об использовании SDL для программирования контроллеров. Можно поподробнее? Где взять хотя бы описание SDL?
Вообще, кто-либо видел инструментальные средства для программирования МК с помощью языков типа UML и т. п.?
Вообще, интересует все, что связано с формальным описанием конечных автоматов и получением на базе данного описания исполняемого кода.
Кому интересно - давайте пообщаемся.
bialix
рекомендую взглянуть на IAR VisualState
мне очень понравилось
TMX
Цитата(Fujitser @ Feb 28 2005, 11:38)
Имею вопрос. Здесь пролетало сообщение об использовании SDL для программирования контроллеров. Можно поподробнее? Где взять хотя бы описание SDL?
Вообще, кто-либо видел инструментальные средства для программирования МК с помощью языков типа UML и т. п.?
Вообще, интересует все, что связано с формальным описанием конечных автоматов и получением на базе данного описания исполняемого кода.
Кому интересно - давайте пообщаемся.
*


Я использую ДРАКОН, мне нравится больше чем SDL или UML.
Особенно удобно для конечных автоматов (протоколов например), в сущности, это совмещение диаграммы состояний и диаграммы действий.
Однако средств генерации кода для него не видел.
Да, собственно, и не особенно искал - прорисовка и обдумывание алгоритма занимают основное время, написание кода гораздо меньше (выйгрыш от экономии времени при тестировании)
bialix
Цитата(TMX @ Feb 28 2005, 20:35)
Я использую ДРАКОН, мне нравится больше чем SDL или UML.


Можно ссылку?
TMX
Цитата(bialix @ Mar 1 2005, 04:55)
Цитата(TMX @ Feb 28 2005, 20:35)
Я использую ДРАКОН, мне нравится больше чем SDL или UML.


Можно ссылку?
*



К сожалению, ссылки не существует.
Есть книга с дурацким названием "Как улучшить работу ума" Паронджанов. Ее мне порекомендовал один товарищ, когда я ему пожаловался, что диаграммы UML не удобны для приложений РВ.
В книге много воды, однако есть формальное описание языка, кроме того, показывается, что если следовать правилам построения диаграмм, то прямое переложение в код будет непротиворечивым. Сформулированы даже правила преобразования из диаграммы в код, однако инструментальных средств нет sad.gif
Я от всех новых сотрудников требую обязательного прочтения этой книжки и построения диаграмм в соответствии с ней. Как ни странно, все сразу прониклись идеей, споры только о степени абстракции представления.
Если все же найдете ссылку, киньте пожалуйста.
Fujitser
Абсолютно согласен с тем, что прорисовка и обдумывание алгоритма занимают основное время, но и на ручное кодирование время тоже уходит немало.
После того, как я пять раз перешивал свое устройство (один раз для этого пришлось ехать за тыщу км, так как оно было уже установлено на объекте заказчика моего заказчика), я придумал изощренное издевательство над заказчиком - рисую UML-диаграммы полностью, заказчик их проверяет (благо, они просты для понимания), потом кодирую формальным образом - что на диаграмме, то и в коде. Заказчик сначала пытался возмущаться, потом понял, что экономится и его, и мое время. Преимущество огромное.
Но хотелось бы автокодер. Причина - даже если кодирование занимает 2-3 дня (вместо 2-3-х недель, как раньше), даже этих двух дней просто нет (я веду одновременно 3-4 проекта).
IAR VisualState скачивал, но во-первых, демку (кстати, никто не знает, где взять лечилку для полной версии), во вторых, мне она показалась очень сырой, в третьих, я использую 16-битные Fujitsu (MB90FXXX), а данный продукт их не поддерживает (поправьте меня, если я ошибаюсь). Отсюда идея - создание транслятора UML - C, с возможностью подключения различных модулей трансляции для разных МК. Время займет много, но IMHO, оно того стоит. Недостаток один - "раздутый" код, но, опять же, по моему мнению, не так уж это и страшно, если программа вместо 1-2 Кб будет весить 10-15Кб, так как в "моих" контроллерах флэш-памяти меньше 32Кб не бывает в принципе, а обычное значение - от 64 до 256Кб (бывает и больше). Конечно, если у вас миллионное производство и нужно экономить каждую копейку, то поневоле придется писать все на асме и тщательно оптимизировать, чтобы вошло в самый дешевый ПИК или Атмел, но как показывают наблюдения, 99 процентов разрабатываемых у нас МК устройств - одиночные экземпляры или мелкосерийка (услышал на одном семинаре замечательную фразу - в России пять штук - уже серия), а в этих условиях основные затраты приходятся на проектирование. А основные затраты на проектирование МК-устройств приходятся на разработку ПО.
Кто что скажет по данному поводу?
bialix
Цитата(Fujitser @ Mar 11 2005, 10:46)
IAR VisualState скачивал, но во-первых, демку (кстати, никто не знает, где взять лечилку для полной версии),

Я знаю ;-)
Цитата
во вторых, мне она показалась очень сырой,

Я бы не стал называть сырым продукт, версия которого дошла до 5.1 ;-)
Цитата
в третьих, я использую 16-битные Fujitsu (MB90FXXX), а данный продукт их не поддерживает (поправьте меня, если я ошибаюсь).

Не путайте мягкое с теплым.
ИАР не имеет Си-компилятора под фуджики, такое впечатление что кроме софтюны ничего под фуджи не существует.
Сам же VisualState генерит переносимый Си-код, который уж затем нужно компилировать вашим любимым компилятором. И не обязательно, чтобы это был ТОЛЬКО иаровский компилер. Такого в доке нигде не написано. Никакой жесткой привязки к конкретной архитектуре при генерации кода не наблюдается. Вполне приличный переносимый код. Не лишенный определенных недостатков, с которыми тем не менее можно мириться.
Цитата
Отсюда идея - создание транслятора UML - C, с возможностью подключения различных модулей трансляции для разных МК. Время займет много, но IMHO, оно того стоит.

Мне кажется Вы недооценили потенциал VisualState. В нем используются диаграмы состояний именно в нотациях UML (того его подмножества, которое отвечает за диаграммы состояний конечных автоматов).

Редактор очень удобный. Есть функция проверки и симуляции работы логики конечного автомата. Есть генератор кода. Что еще нужно для счастья? Почитать доку и разобраться как использовать сгенерированный код в своем проекте. Вот в сущности и все.

Так что начинать проект подобного масштаба в то время, когда есть готовый продукт -- ИМХО глупо, это нелогичная трата времени.

Попробуйте все-таки поразбираться с докой на VisualState (для начала хорошо бы почитать вводный документ Quick Start Tutorial). Если Вы уже знакомы с конечными автоматами и диаграммами UML -- у Вас уйдет на это полдня максимум. Демка позволяет строить диаграммы на 20 состояний и генерить полноценный код.

Если и после этого Вам все равно будет хотеться сделать все самому и с нуля, то имеет смысл пойти на sourceforge.net и покопаться в залежах проектов на тему Code Generation. Я там видел несколько проектов, ориентированных на finite state machine.

За лекарством -- обращайтесь.
Кстати, как положить лекарство на местный ftp?
Может кто из админов сделает это? Я вышлю мылом - там небольшой архив
TMX
есть хороший ресурс на тему SDL диаграмм, конечных автоматов и автоматической генерации кода, там есть ссылки на свободые генераторы разного рода
softcraft.ru
посмотрите, может что-нибудь понравится
просто я свой выбор сделал - меня устраивает, хотя, конечно, интересны и другие подходы.
Nixon
Цитата
За лекарством -- обращайтесь.
Кстати, как положить лекарство на местный ftp?
Может кто из админов сделает это? Я вышлю мылом - там небольшой архив


Если архив небольшой то можно его прикрепить прямо в сообщении. Кроме того у вас же должен быть доступ к ftp. Если эти пути вас не могут устроить, то отправьте на почту мне (адрес в профиле)
fant
Есть хороший пакет Telelogic TAU SDL Suite 4.6. Там отладка по диаграммам SDL, генерация кода на С и много другого. Привязка к процессору выполнена всего двумя подпрограммами. Если надо именно SDL, то лучше найти трудно. Жаль только что пакет очень дорогой. Только генератор С кода стоит 35000$. Демо версии и лечилки я не встречал. Может у кого есть?
John
Telelogic TAU SDL действительно хорош, если нужен SDL то альтернативы никакой, отсюда и цена. с демо версией и лечилками действительно все плохо, целенаправленно искал, потратил массу времени, без результатно.
по SDL есть вот документ: Нажмите для просмотра прикрепленного файла
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.