|
|
 |
Ответов
|
Sep 9 2005, 00:19
|
Местный
  
Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551

|
Цитата(ubobrov @ Sep 8 2005, 12:51) Где не спрошу, никто с ней не работал, а я один проект на ней сделал, правда не доконца сам в ней разобрался, целая куча вопросов есть. Я оказался не таким храбрым, дальше тестов не пошел. На предыдущей работе делали огромный проект на подобной тулзе - все хорошо, только тяжело управлять проектом. Единственный вариант управления - del, copy, past. Я так и не понял, как вообще возможно оформлять автономные части (аналоги модулей или классов) для последующего использования. А как вы в VS делали? Опять таки нет аналогов препроцессора, а в любом проекте всегда есть условная компиляция/сборка. Кроме того, для меня не очень ясен вопрос с приоритетами конкурентных состояний - кто первый вышел из очереди евентов, тот и меняет состояние системы. Как вариант ИАРовцы предлагают использовать движок VS поверх РТОС. Но тогда похоже теряется возможность отладки стейт машины средствами VS. А в какой конфигурации вы сделали свой проект и как отлаживали?
|
|
|
|
|
Sep 9 2005, 05:36
|
Участник

Группа: Свой
Сообщений: 64
Регистрация: 15-08-05
Пользователь №: 7 636

|
Цитата(ig_z @ Sep 9 2005, 03:19) Цитата(ubobrov @ Sep 8 2005, 12:51) Где не спрошу, никто с ней не работал, а я один проект на ней сделал, правда не доконца сам в ней разобрался, целая куча вопросов есть. Я оказался не таким храбрым, дальше тестов не пошел. На предыдущей работе делали огромный проект на подобной тулзе - все хорошо, только тяжело управлять проектом. Единственный вариант управления - del, copy, past. Я так и не понял, как вообще возможно оформлять автономные части (аналоги модулей или классов) для последующего использования. А как вы в VS делали? Опять таки нет аналогов препроцессора, а в любом проекте всегда есть условная компиляция/сборка. Кроме того, для меня не очень ясен вопрос с приоритетами конкурентных состояний - кто первый вышел из очереди евентов, тот и меняет состояние системы. Как вариант ИАРовцы предлагают использовать движок VS поверх РТОС. Но тогда похоже теряется возможность отладки стейт машины средствами VS. А в какой конфигурации вы сделали свой проект и как отлаживали? По ходу проекта, созданный/изменённый в VS проект я отлаживал в валидаторе (этого оказалось достаточно!), затем генерил код. Что касается копирования, то я делал по другому: Я работаю в Keil с МК Cygnal. В кейле я создал проект в той директории, где создал проект VS. Все файлы, которые генерит VS, я включил в прект, и при генерации кода, файлы VS просто обновлялись. Непосредственная отладка идёт через JTAG и сигналовский плагин к кейлу. Код, созданный в VS я не отлаживаю, он работает нормально, отлаживаю только драйвера, и кое-какую логику. Проблем с приоритетами у меня не возникает, все события обрабатываются довольно быстро, параллеоьные задачи работают независимо: если ода из них станет в ожидании события, то другие выполняются нормально. Я вот только с таймерами и guard expression's не разобрался вобще, в документации ничего толком не написано.
|
|
|
|
|
Sep 10 2005, 01:13
|
Местный
  
Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551

|
Цитата(ubobrov @ Sep 9 2005, 08:36) По ходу проекта, созданный/изменённый в VS проект я отлаживал в валидаторе (этого оказалось достаточно!), затем генерил код. Что касается копирования, то я делал по другому: Я работаю в Keil с МК Cygnal. В кейле я создал проект в той директории, где создал проект VS. Все файлы, которые генерит VS, я включил в прект, и при генерации кода, файлы VS просто обновлялись. Непосредственная отладка идёт через JTAG и сигналовский плагин к кейлу. Код, созданный в VS я не отлаживаю, он работает нормально, отлаживаю только драйвера, и кое-какую логику. Проблем с приоритетами у меня не возникает, все события обрабатываются довольно быстро, параллеоьные задачи работают независимо: если ода из них станет в ожидании события, то другие выполняются нормально. Я вот только с таймерами и guard expression's не разобрался вобще, в документации ничего толком не написано. Именно это я и хочу сказать - валидатор и прототайпер великолепно работают на чистом проекте, но более правильно имхо запускать автоматы состояний на верхнем уровне как задачи со своими приоритетами. О копировании. Скажем у меня есть кнопка. Совершенно автономная вещь. Она должна посылать в систему события - одинарный клик, двойной ... длинный клик и т.д. Ес-сно всеэто реализуется автоматом состояний - таймеры уровни на портах проца и логика. Всю эту байду я написал и отладил хз сколько лет назад в виде сишного модуля. Под конкретную ос настраивается за 5 мин. А вот как это сделать в VS, кроме как вырезать кусок диаграммы состояний из старого проекта и вставить в новый - я не представляю. Ну и с приоритетами тоже рано или поздно придется столкнуться. Какой нибудь кудрявый принтф или корень из чего нибудь легко сможет загрузить проц на десятки мСек, даже светодиоды криво моргать начинают. В этом смысле я рассматриваю преемптивные ос как попытку приблизить реалии существующих аппаратных средств к идеальным мат моделям теории конечных автоматов.
|
|
|
|
Сообщений в этой теме
ubobrov Кто пользовал IAR visualSTATE? Sep 8 2005, 09:51 Olxx Мнение о visual state неоднозначное. Если Ваша зад... Sep 22 2005, 02:37 ubobrov Цитата(Olxx @ Sep 22 2005, 05:37)Мнение о vis... Sep 23 2005, 13:30 Olxx Если вы о полноценном стеке протоколов GSM/GPRS от... Sep 29 2005, 04:19 Tran Подскажите, пожалуйста, как отключить очередь собы... Oct 14 2005, 08:52 ubobrov Цитата(Tran @ Oct 14 2005, 11:52)Подскажите, ... Oct 14 2005, 09:28 Tran Событие можно отработать в теле case для данного с... Oct 14 2005, 11:45 ubobrov Цитата(Tran @ Oct 14 2005, 14:45)Событие можн... Oct 14 2005, 11:55 Tran В общем-то да, Вы правы, ерунда будет полная, прос... Oct 14 2005, 12:07 ubobrov Цитата(Tran @ Oct 14 2005, 15:07)В общем-то д... Oct 14 2005, 12:35
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|