Найэл Мерфи 

   Понимание ошибок программного и аппаратного обеспечения на примере других встраиваемых систем может помочь Вам идентифицировать, диагностировать и исправить ошибки в своей собственной системе. 

   Знаменитые ошибки – это своего рода военные истории разработчика ПО. В то время как остальные люди предпочли бы толочь воду в ступе, чем слушать историю, которая заканчивается словами "... и затем я понял, что эта переменная  должна была быть 16-разрядным счетчиком, ха, ха, ха!", другим инженерам нравится слушать рассказы о злых шутках, которые сыграл с ними код. В этой статье мы исследуем наиболее коварные ошибки, с которыми я столкнулся за эти годы - иногда как автор, иногда как мастер по отладке, а иногда как заинтересованный наблюдатель. 
 
   Стандартный путь построения программ для микроконтроллеров основывается на применении так называемого суперлупа (superloop). Он представляет собой бесконечный цикл, в теле которого запускаются различные функции. Функции могут запускаться постоянно или в случае выполнения каких-то условий, например установки флагов. 
   Программы, построенные на таком принципе, обычно используются для простых приложений  с небольшим количеством задач, и в которых нет требований к таймингам. 
  Другой способ организации микроконтроллерных программ основан на применении планировщиков. Такие программы лучше структурированы, их проще модифицировать и они позволяют задавать время запуска задач. 
   В этой статье мы рассмотрим один из вариантов реализации простого планировщика. 
 
Написал программный модуль для опроса матричной клавиатуры.

Особенности модуля:

- простая интеграция с готовым проектом
- поддержка всех микроконтроллеров семейства mega
- возможность использования с любым из трех компиляторов IAR, GCC, CodeVision,
- поддержка клавиатур 4х4 и 3х4
- поддержка работы на общей шине
- возможность подключения к одному или двумя портами мк
- программная антидребезговая защита
- возможность установки произвольных кодов кнопок
 
Barr Michael "Closed-Loop Control"

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

 
   Решил сделать самодельного робота для своего племянника и начал с самого простого – с изготовления ИК бампера. Конечно, его схему можно найти на просторах интернета, но, учитывая мою нелюбовь  к повторению чужого, я решил скреативить свою. Да, устройство простое, но творческий человек всегда найдет, где приложить фантазию.