реклама на сайте
подробности

 
 
> Автоматный подход (SWITCH), Поделитесь опытом использования
Lem
сообщение Jul 2 2006, 17:17
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 20-03-05
Пользователь №: 3 533



Решил в последнее время освоить более строгие-формальные методы проектирования программ для МК (да и для ПК). Делаю уже третий проект с помощью КА. правда, я использую некую смесь из того, что где-то прочитал и того, что сам придумываю по ходу. При этом всё выполняется на бумаге (проектирование КА), а далее ложится на код, по моим личным предпочтениям.

Результаты положительные, но тут хотелось бы спросить совета профессионалов, каким путём дальше идти, стоит ли использовать кодогенераторы и прочее ПО и т. д.

Интересно было бы узнать, насколько часто микроконтроллерщики используют автоматный подход к проектированию программ. Какое ПО при этом используется (Visual State etc.), каковы результаты (увеличение скорости разработки, надёжности, улучшение взаимопонимания в коллективе разарботчиков).
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
pitt
сообщение Jul 3 2006, 15:00
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 328
Регистрация: 1-06-06
Из: USA
Пользователь №: 17 672



RTOS большая и многогранная тема. Нет и не может быть универсальной на все случаи жизни, а отсюда и все многообразие таких систем. Я преподавал RTOS в Советском Союзе, сейчас делаю это в Америке. Мой опыт позволяет мне судить и делать выводы. Ваше дело, коллеги, соглашаться и разделять мою точку зрения или отвергать ее. Я, ни в коем случае, не претендую на истины в последней инстанции.
Итак. Длая начала надо опредилиться с приоритетами. Что мы имеем и чего стараемся достичь. Для мира AVR характерно ограничение по RAM. а это, в свою очередь серьезно ограничивает, нo не исключает использование preemtive RTOS. Еще интереснее дело обстоит со скоростью. Кооперативная переключает контекст гораздо быстрее - ей не надо сохранять все регистры, а только необходимые (определяется компилятором), кроме того, по системному таймеру нет необходимости переключать контекст активной задачи - переключения не произойдет! Заодно, кстати, и эконом ится стек для каждой задачи и, соответственно, RAM! Еще один аргумент в пользу коопреативности. При весьма ограниченных ресурсах AVR (да и подавляющего большинства других 8 -16 битных микроконтроллеров) разбиение на ос и апликации весьма условно. Проще сказать, что мы имеем scheduler (планировщик) и функции системы. Отсюда следует вывод: каждый проект есть не что иное как новая RTOS с одним и тем же планировщиком и разнообразным набором функций. Когда пишется функция ОС, прекарасно известно о том, что можно делать, а чего нет и какие ограничения необходимо соблюдать - аналогичные требования пред'являются дле задач в кооперативной RTOS. Какое совпадение!
Другой момент, требующий особого внимания - приоритеты задач в кооперативном мире. Если приоритеты постоянны, то низкоприоритетная задача может не получить управления никогда. Если же их менять, то как? Мой совет такой: используйте 2 приоритета: высший для планировщика и round robin для всего остального. В общем случае, работает надежно.
Из всего вышесказанного, в общем случае, кооперативная RTOS это то, что лучше подходит для систем с малым об'емом RAM.
Желаю успехов!

Сообщение отредактировал pitt - Jul 3 2006, 15:02


--------------------
Прокричал немой глухому:"...Спасибо за внимание!"
http://www.youtube.com/watch?v=3Nnj4ky4Z_g
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Lem   Автоматный подход (SWITCH)   Jul 2 2006, 17:17
- - Laptop   Я использую следующий подход. main выполняется в в...   Jul 2 2006, 19:09
- - vet   Да, собственно, выбор-то невелик - или КА, или зад...   Jul 2 2006, 19:22
|- - pitt   Цитата(vet @ Jul 2 2006, 15:22) ..задачи ...   Jul 2 2006, 21:28
||- - krdmitry   Цитата(pitt @ Jul 3 2006, 01:28) Цитата(v...   Jul 3 2006, 08:22
|- - tag   Цитата(vet @ Jul 2 2006, 23:22) Да, собст...   Sep 17 2007, 06:17
- - krdmitry   А есть ли еще программы-кодогенераторы, кроме Visu...   Jul 2 2006, 20:34
|- - Lem   Цитата(krdmitry @ Jul 3 2006, 00:34) А ес...   Jul 2 2006, 20:53
|- - tag   Цитата(krdmitry @ Jul 3 2006, 00:34) Врод...   Jul 10 2006, 15:17
- - Lem   Выбор - понятно. но интересно узнать именно соотн...   Jul 2 2006, 20:41
|- - osnwt   Цитата(Lem @ Jul 2 2006, 23:41) возможнос...   Jul 3 2006, 09:14
|- - µµC   Цитата(Lem @ Jul 3 2006, 00:41) Причём, р...   Jul 14 2006, 12:34
|- - osnwt   Цитата(µµC @ Jul 14 2006, 15:34) Для mega...   Jul 14 2006, 12:43
|- - µµC   Цитата(osnwt @ Jul 14 2006, 16:43) Особен...   Jul 14 2006, 13:30
- - _artem_   имхо автомат конечных состояний и ртос это две раз...   Jul 3 2006, 09:33
|- - osnwt   Цитата(_artem_ @ Jul 3 2006, 12:33) имхо ...   Jul 3 2006, 09:44
|- - _artem_   Цитата(osnwt @ Jul 3 2006, 12:44) Цитата(...   Jul 3 2006, 09:53
|- - osnwt   Цитата(_artem_ @ Jul 3 2006, 12:53) Цитат...   Jul 3 2006, 10:51
- - sensor_ua   Посмотрите NesOS - Finite State Machine Operating ...   Jul 3 2006, 11:03
|- - osnwt   Цитата(sensor_ua @ Jul 3 2006, 14:03) Пос...   Jul 3 2006, 11:16
|- - =GM=   Еще один пример ОСРВ для МК и ДСП можно посмотреть...   Jul 3 2006, 12:37
- - _artem_   2 osnwt, в слючае роунд робин можно сделать так чт...   Jul 3 2006, 11:26
|- - osnwt   Цитата(_artem_ @ Jul 3 2006, 14:26) 2 osn...   Jul 3 2006, 11:36
|- - _artem_   ЦитатаЕсли разговор конкретно про jacos, то там пр...   Jul 3 2006, 13:10
|- - osnwt   Цитата(_artem_ @ Jul 3 2006, 16:10) Цитат...   Jul 3 2006, 14:09
- - bialix   вот еще один какбы генератор WhatOS: http://www.st...   Jul 3 2006, 12:20
- - vesago   Вперве применил КА когда надо было сделать контрол...   Jul 4 2006, 08:13
|- - _artem_   Цитата(vesago @ Jul 4 2006, 11:13) Вперве...   Jul 4 2006, 08:43
|- - ig_z   Цитата(_artem_ @ Jul 4 2006, 11:43) Вызов...   Jul 4 2006, 10:30
||- - _artem_   Цитата(ig_z @ Jul 4 2006, 13:30) Цитата(_...   Jul 4 2006, 11:22
||- - bialix   Цитата(_artem_ @ Jul 4 2006, 14:22) Visua...   Jul 4 2006, 14:34
||- - _artem_   Цитата(bialix @ Jul 4 2006, 17:34) Цитата...   Jul 4 2006, 15:16
||- - bialix   Цитата(_artem_ @ Jul 4 2006, 18:16) Цитат...   Jul 4 2006, 17:10
|- - _Bill   Цитата(_artem_ @ Jul 4 2006, 11:43) Вызов...   Jul 4 2006, 11:21
|- - Kirill Frolov   Цитата(_artem_ @ Jul 4 2006, 12:43) Вызов...   Sep 16 2007, 14:22
|- - Dog Pawlowa   Цитата(Kirill Frolov @ Sep 16 2007, 17:22...   Sep 16 2007, 19:32
|- - singlskv   Цитата(Kirill Frolov @ Sep 16 2007, 18:22...   Sep 16 2007, 20:16
- - white.wind   Возможно полезным будет ресурс на тему http://soft...   Jul 4 2006, 08:24
- - bialix   Хотел бы пару слов сказать в ответ исходному посту...   Jul 4 2006, 14:54
|- - Crystaly   Цитата(krdmitry @ Jul 3 2006, 00:34) ...Е...   Jul 7 2006, 06:45
|- - bialix   Цитата(Crystaly @ Jul 7 2006, 09:45) Цита...   Jul 7 2006, 13:04
|- - krdmitry   Цитата(bialix @ Jul 7 2006, 17:04) Неправ...   Jul 7 2006, 19:34
||- - Lem   Цитата(krdmitry @ Jul 7 2006, 23:34) Цита...   Jul 7 2006, 19:56
||- - bialix   Цитата(krdmitry @ Jul 7 2006, 22:34) Цита...   Jul 10 2006, 09:45
|- - Crystaly   Цитата(bialix @ Jul 7 2006, 17:04) У вас ...   Jul 10 2006, 06:13
|- - bialix   [quote name='Crystaly' date='Jul 10 20...   Jul 10 2006, 09:58
- - _artem_   Ну думаю, что скорее всего осязание подвело Вас иб...   Jul 4 2006, 17:26
- - CD_Eater   Цитата(bialix @ Jul 4 2006, 18:54) Сам по...   Jul 6 2006, 21:54
|- - osnwt   Цитата(CD_Eater @ Jul 7 2006, 00:54) Имхо...   Jul 6 2006, 22:14
|- - bialix   Цитата(osnwt @ Jul 7 2006, 01:14) Цитата(...   Jul 7 2006, 05:57
- - Evgeny_CD   Может кому пригодится ****************************...   Jul 10 2006, 07:25
- - bialix   Перепишем алгоритм светофора в терминах классическ...   Jul 10 2006, 10:16
- - Tran   Раньше уже была тема о КА - http://electronix.ru/f...   Jul 10 2006, 11:27
- - bialix   По поводу диаграмм конечных автоматов в нотации UM...   Jul 11 2006, 05:36
- - sensor_ua   Cегодня такая вот прелесть попалась - 4 макроса дл...   Jul 11 2006, 18:22
- - sensor_ua   ЦитатаВо-первых оптимизирующий компилятор заменяет...   Sep 16 2007, 17:20
- - sansnotfor   Вот перевод упомянутой здесь статьи о конечных авт...   Mar 24 2011, 00:24
- - kovz   могу посоветовать вот это http://www.state-machine...   Mar 28 2011, 13:15


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th August 2025 - 09:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.01432 секунд с 7
ELECTRONIX ©2004-2016