Перейти к содержанию
    

Что почитать по шаблонам программирования для микроконтроллеров?

В объектно-ориентированном подходе к программированию выделены шабоны проектирования и программирования - это типовые схемы решения часто встречающиющихся задач.

почитать можно в книге Э.Гамма, Р.Хелм, Р.Джонсон, Дж.Влиссидес "Пирмемы объектно-ориентированного поектирования. паттерны проектирования" изд-во Питер. отзывы можно прочесть тут http://www.ozon.ru/context/detail/id/24573...type=4#comments

 

А теперь вопрос: есть ли подобная книга в отношении программирования для микроконтроллеров? Например , сборник шаблонов об измниерении промежутков времени на мк, ввод-вывод. ,многозадачность.

Про управление задачами и памятью можно читать Э.Таненбаума "Современные операционные системы" но хотелось бы с учетом ОСРВ и под мк.

Хотелось бы услышать ваше мнение по этому вопросу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А теперь вопрос: есть ли подобная книга в отношении программирования для микроконтроллеров?

А теперь информация: Мой первый персональный компьютер IBM PC был с восьмибитовой памятью и работал на тактовой частоте 4,7MHz. Как это соотносится с нынешними микроконтроллераими? Специальные "чернила для 6 класса" не нужны. Просто учитесь программировать, а с шаблонным мышлением еще и бороться придется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подобной книги (ориентированной именно на МК) я не встречал, но почему бы просто не перенести эти знания (паттерны, STL) на встраиваемые приложения?

Естественно, ресурсы МК пока отстают от ресурсов ПК, поэтому требуется достаточно глубокое знание шаблонных библиотек, чтоб потом не сесть в лужу (например, налететь на перемассштабирования вектора в процессе работы программы)

 

А в целом - перспективные подходы к программированию перспективны и на МК

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

при программировании мк есть часто встречающиеся задачи, например нужно измерить время между двумя событиями, или нужно обрабатывать нажатия кнопок клавиатуры и вывод на жк дисплей, или генерировать сигналы различной формы. И интересует информация по решению таких задач. Та же самая схема сброса может быть выполнена на RC цепочкой, а можно использовать микросхему сбороса. первый вариант прост и дешевле, а второй надежнее. И в критческих приложениях лучше использовать второй вариант. Такие тонкости постигаются на практике.

 

И есть ли книга, в которой это более-менее обстоятельно расписано?

Конечно можно и самому их решить, но хочется знать как другие их решали и не изобретать велосипед. т.е. есть ли обобщенный опыт.?

Есть в программировани для больших ПК признаные авторы, а есть ли такие для микроконтролллеров?

хотя, zltiqo, прав, программирвоание оно и в африке программирование :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

....книга...

Банальные вещи в программировании, равно, как произношение слова 'мама' и ковыряние в носу, надо осваивать не по книгам.

Ну а если Ваша мечта стать кодером, то Вам в помощь всякие мутные визарды и фраза "где найти "библиотеку"".... - в них кто-то, как-то, что-то сделает за Вас. Выбирайте - либо Вы будете думать сами, либо нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И есть ли книга, в которой это более-менее обстоятельно расписано?

Конечно можно и самому их решить, но хочется знать как другие их решали и не изобретать велосипед. т.е. есть ли обобщенный опыт.?

 

Читайте Application Notes для данного семейства МК, читайте общую документацию по программированию / схемотехнике. Читайте специализированные форумы - очень много тонких мест и интересных решений обсуждаются.

В общем, единого пути нет - каждый выбирает его сам, исходя из возможностей, требований и желаемого результата

Изменено пользователем rezident
Нарушение п.3.4 Правил форума.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Неделю назад была попытка обсудить подобную тему.

http://electronix.ru/forum/index.php?showtopic=71401

Все же паттерны - это средство высокоуровневого проектирования. Т.е. для начала в проекте такая необходимость должна присутствовать изначально, как минимум. Определенная часть паттернов из упомянутой книги вполне может быть применена и при проектировании встроенных систем. К примеру, если ваш проект должен поддерживать различные аппаратные платформы ( или к примеру симуляцию на вин/лин ), для разделения зависимых частей может быть использован паттерн мост. Ваши коллеги, понимающие паттерны, смогут легко распознать и повторно использовать независимую часть кода и добавлять новые платформенно (целе и вообще любые *зависимые) части кода как в текущий проект, так и в другие.

И разумеется, для применения паттернов необходима определенная мотивация. Отсутствие оной(к примеру зп платят за кол-во строк в проекте или 30-летний опыт проектирования подсказывает, что это ерунда :o) не значит, что "шеф, все пропало", девелопер сделает то же самое по другому.

 

=======================================================

Страдающим повышенной возбудимостью, аллюзиями и т.п.ч. сообщаю, что вышеизложенное есть мое личное мнение, базирующееся на личном опыте. Ни в коем случае не претендую на истину в последней инстанции.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

нашел близкое к моему вопросу:

http://www.eventhelix.com/RealtimeMantra/Patterns/

 

 

to zltiqo: соглсен, нужно самому думать, но часто разработчики( да и не только они) занимаются изобретением велосипедов.

Я пришел к такой идее: думать самому, но обязательно смотреть по сторонам, смотреть как другие решают похожие задачи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ИМХО, для оглашенных задач шаблоны не только не нужны, но и избыточны практически во всех отношениях.

Оверхед(как по времени CPU, так и по загрузке мозга программиста) от их использования для таких задач может быть сравним с самой задачей.

Вопрс: зачем ноутбуком забивать гвозди, когда есть молоток? ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ИМХО, для оглашенных задач шаблоны не только не нужны, но и избыточны практически во всех отношениях.

Оверхед(как по времени CPU, так и по загрузке мозга программиста) от их использования для таких задач может быть сравним с самой задачей.

Вопрс: зачем ноутбуком забивать гвозди, когда есть молоток? ;)

В теме, имхо, присутствует путаница. Автор, видимо, имеет в виду паттерны проектирования, если иметь в виду его ссылку на книгу по этим вещам. А термин шаблоны программирования используется тут некорректно. Шаблоны программирования есть в некоторых ЯП - например, в С++, но речь, видимо, не о них.

 

Что касается оверхеда, то все зависит от задачи. При правильном использовании всего этого хозяйства оверхеда либо нет, либо он приемлемо мал. Это касается и шаблонов того же С++, и паттернов проектирования. Например, если нужен по смыслу паттерн Singletion, то никуда от этого не уйти. И получается достаточно красиво. И оверхеда там нет по сравнению с реализацией этого иными способами (все они так или иначе похожи). Паттерны проектирования - это не какие-то языковые средства, а приемы реализации тех или иных типовых задач. Т.е. это по уровню абстракции стоит выше средств ЯП.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

dxp уловил суть вопроса...

Изменено пользователем rezident
Нарушение п.3.4 Правил форума.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В объектно-ориентированном подходе к программированию выделены шабоны проектирования и программирования - это типовые схемы решения часто встречающиющихся задач.

почитать можно в книге Э.Гамма, Р.Хелм, Р.Джонсон, Дж.Влиссидес "Пирмемы объектно-ориентированного поектирования. паттерны проектирования" изд-во Питер.

Сами то книжку читали? Издана в 2001 году. За такое время целые поколенния микроконтроллеров ставят и снимают с производства.

Чем автор книжки занят поняли?

Он узко заточенный профессионал.

Это как если б эмбеддер делающий только частотомеры написал о патернах разработки для всех встраиваемых систем.

 

Применяя маленько ООП могу сказать, что патерны предлагаемые в той книге мне частично выглядят очевидными, частично содранными из асинхронных систем с RTOS и частично надуманными либо отражающими исключительно психику восприятия мира самим автором.

 

А второе, что методы программирования очень консервативны и про них можно написать книгу которая не устареет пока ее издадут.

В архитектуре современных встраиваемых системах все меняется гораздо быстрее.

Так что работать приходиться без патернов, так быстрее получается :biggrin:

Изменено пользователем rezident
Нарушение цитирования.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вот нашел.. может кому пригодится

book of Michael J Pont "Patterns for Time-Triggered Embedded Systems"

скачать можно тут:

http://www.tte-systems.com/books/pttes

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Офигеть, 1000 страниц только про одни I51-е.

А вы книжки те что предлагаете сами то читаете?

 

вот нашел.. может кому пригодится

book of Michael J Pont "Patterns for Time-Triggered Embedded Systems"

 

Она была издана в 2001 как раз на закате 51-х.

И кооперативные операционки того типа доживали последние дни.

Теперь ее смело можно фтопку.

Большая часть книги не актуальна даже для студентов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...