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

Кроме того в верхней части вы видите конденсаторы фильтров на 4-х дорожках, повешенные на землю. Эти дорожки идут к кнопкам: +, -, вперед, нагрев. Под этими 4-мя конденсаторами 10к резисторы (стягивающие). При 1,5 мкФ помехи уже вроде как резались, но фактически там впаяны на 5мкФ взятые с дохлой материнки.
К чему все это появилось на плате хоят при разводке всего этого не было? Поясню. Я вот долго не мог понять почему автор говорит что прошивать МК надо ОБЯЗАТЕЛЬНО ДО подключения двигателя (не специалист я в электронике, никогда им не был и только сейчас еще учусь:) ). Так вот могу сказать: можно, делал я это неоднократно, но только не включайте двигатель в режим проката, потому что вот тут вот эти самые помехи и попрут. Вплоть до того что отвалится программатор, потеряется при прошивке сам МК: т.е. двигатель не должен вносить помех, при уже работающем двигателе их нет, так что можно прошиваться спокойно, главное не заставляйте его менять направление - при коммутации его обмоток и прет эта самая помеха. Возможно старшие, знающие товарищи предложат другую схему защиты, разводку платы или какое-то иное конструктивное решение позволяющее избежать этих проблем.... Я только за!!! и с интересом послушаю и узнаю об этом. Но пока я решал их вот так. Кстати эти фильтры не помогли мне полностью подавить помехи двигателя: я еще поставил пару конденсаторов на выходе платы, там где припаяны входы двигателя (по типу Y-конденсаторов в блоке питания). После этого вроде бы больше помех не наблюдал.
В чем же выражалась эта помеха? Это был эффект самопроизвольного нажатия кнопок (в момент переключения двигателя). Я сначала думал что это ошибка в программе, т.к. проявление было случайно: т.е. 20 раз переключит двигатель нормально, а на 21-ый самопроизвольно нажмется какая-нибудь кнопка. Но это лже-нажатие происходило четко в момент перекоммутации обмоток двигателя. Я даже хотел уже было использовать программный фильтр, но т.к. решил вроде как эту проблемму железячно, то отказался от него. Да и фильтр было бы реализовать непросто, т.к. у автора в программе коммутация сидит в определенном месте программы и паузу туда просто так не вставишь, ибо "слетит" обновление цифр на дисплее. Позже я, кажется, додумался как это реализовать, но вроде как необходимость в этом отпала и я забил на это. Но произошло это лишь, напомню, после впаивания в цепи двигателя 2-х дополнительных конденсаторов.