|
Что почитать по шаблонам программирования для микроконтроллеров? |
|
|
|
Jan 16 2010, 23:51
|
Участник

Группа: Участник
Сообщений: 21
Регистрация: 29-08-05
Пользователь №: 8 041

|
В объектно-ориентированном подходе к программированию выделены шабоны проектирования и программирования - это типовые схемы решения часто встречающиющихся задач. почитать можно в книге Э.Гамма, Р.Хелм, Р.Джонсон, Дж.Влиссидес "Пирмемы объектно-ориентированного поектирования. паттерны проектирования" изд-во Питер. отзывы можно прочесть тут http://www.ozon.ru/context/detail/id/24573...type=4#commentsА теперь вопрос: есть ли подобная книга в отношении программирования для микроконтроллеров? Например , сборник шаблонов об измниерении промежутков времени на мк, ввод-вывод. ,многозадачность. Про управление задачами и памятью можно читать Э.Таненбаума "Современные операционные системы" но хотелось бы с учетом ОСРВ и под мк. Хотелось бы услышать ваше мнение по этому вопросу.
|
|
|
|
|
Jan 17 2010, 09:08
|
Участник

Группа: Участник
Сообщений: 21
Регистрация: 29-08-05
Пользователь №: 8 041

|
при программировании мк есть часто встречающиеся задачи, например нужно измерить время между двумя событиями, или нужно обрабатывать нажатия кнопок клавиатуры и вывод на жк дисплей, или генерировать сигналы различной формы. И интересует информация по решению таких задач. Та же самая схема сброса может быть выполнена на RC цепочкой, а можно использовать микросхему сбороса. первый вариант прост и дешевле, а второй надежнее. И в критческих приложениях лучше использовать второй вариант. Такие тонкости постигаются на практике. И есть ли книга, в которой это более-менее обстоятельно расписано? Конечно можно и самому их решить, но хочется знать как другие их решали и не изобретать велосипед. т.е. есть ли обобщенный опыт.? Есть в программировани для больших ПК признаные авторы, а есть ли такие для микроконтролллеров? хотя, zltiqo, прав, программирвоание оно и в африке программирование
|
|
|
|
|
Jan 17 2010, 09:22
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(zredo @ Jan 17 2010, 12:08)  ....книга... Банальные вещи в программировании, равно, как произношение слова 'мама' и ковыряние в носу, надо осваивать не по книгам. Ну а если Ваша мечта стать кодером, то Вам в помощь всякие мутные визарды и фраза "где найти "библиотеку"".... - в них кто-то, как-то, что-то сделает за Вас. Выбирайте - либо Вы будете думать сами, либо нет.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jan 17 2010, 09:38
|
Местный
  
Группа: Свой
Сообщений: 279
Регистрация: 2-07-08
Из: Новосибирск
Пользователь №: 38 699

|
Цитата(zredo @ Jan 17 2010, 12:08)  И есть ли книга, в которой это более-менее обстоятельно расписано? Конечно можно и самому их решить, но хочется знать как другие их решали и не изобретать велосипед. т.е. есть ли обобщенный опыт.? Читайте Application Notes для данного семейства МК, читайте общую документацию по программированию / схемотехнике. Читайте специализированные форумы - очень много тонких мест и интересных решений обсуждаются. В общем, единого пути нет - каждый выбирает его сам, исходя из возможностей, требований и желаемого результата
Сообщение отредактировал rezident - Jan 17 2010, 20:20
Причина редактирования: Нарушение п.3.4 Правил форума.
|
|
|
|
|
Jan 17 2010, 11:39
|
Участник

Группа: Участник
Сообщений: 21
Регистрация: 29-08-05
Пользователь №: 8 041

|
спасибо за ответы, так и делаю
|
|
|
|
|
Jan 17 2010, 12:50
|
Местный
  
Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551

|
Неделю назад была попытка обсудить подобную тему. http://electronix.ru/forum/index.php?showtopic=71401Все же паттерны - это средство высокоуровневого проектирования. Т.е. для начала в проекте такая необходимость должна присутствовать изначально, как минимум. Определенная часть паттернов из упомянутой книги вполне может быть применена и при проектировании встроенных систем. К примеру, если ваш проект должен поддерживать различные аппаратные платформы ( или к примеру симуляцию на вин/лин ), для разделения зависимых частей может быть использован паттерн мост. Ваши коллеги, понимающие паттерны, смогут легко распознать и повторно использовать независимую часть кода и добавлять новые платформенно (целе и вообще любые *зависимые) части кода как в текущий проект, так и в другие. И разумеется, для применения паттернов необходима определенная мотивация. Отсутствие оной(к примеру зп платят за кол-во строк в проекте или 30-летний опыт проектирования подсказывает, что это ерунда :o) не значит, что "шеф, все пропало", девелопер сделает то же самое по другому. ======================================================= Страдающим повышенной возбудимостью, аллюзиями и т.п.ч. сообщаю, что вышеизложенное есть мое личное мнение, базирующееся на личном опыте. Ни в коем случае не претендую на истину в последней инстанции.
|
|
|
|
|
Jan 17 2010, 12:52
|
Участник

Группа: Участник
Сообщений: 21
Регистрация: 29-08-05
Пользователь №: 8 041

|
нашел близкое к моему вопросу: http://www.eventhelix.com/RealtimeMantra/Patterns/to zltiqo: соглсен, нужно самому думать, но часто разработчики( да и не только они) занимаются изобретением велосипедов. Я пришел к такой идее: думать самому, но обязательно смотреть по сторонам, смотреть как другие решают похожие задачи.
|
|
|
|
|
Jan 18 2010, 05:05
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(sigmaN @ Jan 18 2010, 06:25)  ИМХО, для оглашенных задач шаблоны не только не нужны, но и избыточны практически во всех отношениях. Оверхед(как по времени CPU, так и по загрузке мозга программиста) от их использования для таких задач может быть сравним с самой задачей. Вопрс: зачем ноутбуком забивать гвозди, когда есть молоток?  В теме, имхо, присутствует путаница. Автор, видимо, имеет в виду паттерны проектирования, если иметь в виду его ссылку на книгу по этим вещам. А термин шаблоны программирования используется тут некорректно. Шаблоны программирования есть в некоторых ЯП - например, в С++, но речь, видимо, не о них. Что касается оверхеда, то все зависит от задачи. При правильном использовании всего этого хозяйства оверхеда либо нет, либо он приемлемо мал. Это касается и шаблонов того же С++, и паттернов проектирования. Например, если нужен по смыслу паттерн Singletion, то никуда от этого не уйти. И получается достаточно красиво. И оверхеда там нет по сравнению с реализацией этого иными способами (все они так или иначе похожи). Паттерны проектирования - это не какие-то языковые средства, а приемы реализации тех или иных типовых задач. Т.е. это по уровню абстракции стоит выше средств ЯП.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Jan 19 2010, 20:17
|
Участник

Группа: Участник
Сообщений: 21
Регистрация: 29-08-05
Пользователь №: 8 041

|
dxp уловил суть вопроса...
Сообщение отредактировал rezident - Mar 29 2010, 00:32
Причина редактирования: Нарушение п.3.4 Правил форума.
|
|
|
|
|
Jan 19 2010, 21:40
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(zredo @ Jan 17 2010, 01:51)  В объектно-ориентированном подходе к программированию выделены шабоны проектирования и программирования - это типовые схемы решения часто встречающиющихся задач. почитать можно в книге Э.Гамма, Р.Хелм, Р.Джонсон, Дж.Влиссидес "Пирмемы объектно-ориентированного поектирования. паттерны проектирования" изд-во Питер. Сами то книжку читали? Издана в 2001 году. За такое время целые поколенния микроконтроллеров ставят и снимают с производства. Чем автор книжки занят поняли? Он узко заточенный профессионал. Это как если б эмбеддер делающий только частотомеры написал о патернах разработки для всех встраиваемых систем. Применяя маленько ООП могу сказать, что патерны предлагаемые в той книге мне частично выглядят очевидными, частично содранными из асинхронных систем с RTOS и частично надуманными либо отражающими исключительно психику восприятия мира самим автором. А второе, что методы программирования очень консервативны и про них можно написать книгу которая не устареет пока ее издадут. В архитектуре современных встраиваемых системах все меняется гораздо быстрее. Так что работать приходиться без патернов, так быстрее получается
Сообщение отредактировал rezident - Mar 29 2010, 00:33
Причина редактирования: Нарушение цитирования.
|
|
|
|
|
Jan 24 2010, 15:46
|
Участник

Группа: Участник
Сообщений: 21
Регистрация: 29-08-05
Пользователь №: 8 041

|
вот нашел.. может кому пригодится book of Michael J Pont "Patterns for Time-Triggered Embedded Systems" скачать можно тут: http://www.tte-systems.com/books/pttes
|
|
|
|
|
Jan 24 2010, 17:06
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Офигеть, 1000 страниц только про одни I51-е. А вы книжки те что предлагаете сами то читаете? Цитата(zredo @ Jan 24 2010, 17:46)  вот нашел.. может кому пригодится book of Michael J Pont "Patterns for Time-Triggered Embedded Systems" Она была издана в 2001 как раз на закате 51-х. И кооперативные операционки того типа доживали последние дни. Теперь ее смело можно фтопку. Большая часть книги не актуальна даже для студентов.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|