Заметил такую ситуацию. На старте пишу в P2.0 значение 0, затем во время работы его программно не трогаю. Какое-то время после старта там нах-ся 0. Этот пин, кстати, выведен на разъём программирования (двухпроводный). И периодически тыкаясь на этот пин тестером наблюдаю, что он перескакивает (от помехи/прикосновения тестера возможно) в 1 и так и держится до конца. Вся остальная прога при этом отлично работает. Этот пин ни в схеме ни в проге не заюзан.
Собственно вопросы: 1 Как объяснить такое поведение пина/порта. 2 Отличается ли этот пин/порт от остальных (P0 и P1) внутренней схемотехникой и помехонеустойчивостью? Из этого следует насколько вероятны искажения других пинов/портов. 3 Юзал ли кто-то P2.0 для вывода/ввода обычных цифровых сигналов в схемах и не сталкивался ли с какими-то особенностями/странностями?
По поводу защиты от таких глюков идея только периодически читать порт и переписывать при несовпадении. А учитывая особенность х51 процов (чтение не внутренней защёлки, а внешнего уровня), то чтение вообще лучше не делать.
--------------------
Заблуждаться - Ваше законное право :-)
|