Цитата(nunzio @ Jul 31 2005, 12:13)
Добрый день.
Продолжаю изучать AVR

.
Вопросы:
1) Почему различные флаги сбрасываются записью в них единицы? Ведь если во флаге была единица,то почему записав в него единицу я его сброшу (во флаге будет 0).
2) Зачем нужны подтягивающие резисторы ? Почему вывод если между ним и шиной питания подключен подтягивающийся резистор - является источником тока - ведь сопротивление этого резистора довольно небольшое (120 ком) ?
3)Пусть(допустим) линия PB3 порта PORTB сконфигурирована как выход (DDRB3 = 1).Пусть PORTB3 = 1.
Почему тогда если я подам на PB3 0, PINB3 будет равен 0 ? Ведь напряжени логической 1 должно сложиться с напряжением логического 0 и результатом будет (примерно) напряжение логической 1 ?
Или я что-то напутал ?
После повторного прочтения умных книг , этого и других форумов попытаюсь ответить на свои вопросы сам.Дополнения ,исправления , а также наставление на путь истиный приветствуются

.
Ответы:
1) Это особенность самого микроконтроллера.
2) Подтягивающий резистор является источником тока ,только если с ним последовательно подключено сопротивление много меньшего сопротивления - тогда можно считать , что ток не зависит от нагрузки.
3)Подтягивающий резистор, как известно подключен между входом и шиной питания.Если я подам на вывод логическую единицу , то ток через резистор течь не будет - не будет падения напряжения - на выводе (PINB) будет логическая единица.
Если я подам ноль - через резистор будет течь ток - на нем будет падать напряжение - на выводе (PINB)будет ноль - то есть ноль "гасит" единицу.
Жду обратной связи.