CooLSeS 0 18 декабря, 2007 Опубликовано 18 декабря, 2007 · Жалоба Использую STK500 и AtMega8515 Когда пишу на Си и на Паскале получаю следующее: устанавливаю порт в режим вывода, порт выведен на светодиоды, и когда я устонавливаю одному из пинов лог 1, то светодиод тухнет, а при лог 0 загорается, я думал что логика наоборот должна быть, помогите пожалуйста разобраться с этим. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kalinka16 0 18 декабря, 2007 Опубликовано 18 декабря, 2007 · Жалоба Использую STK500 и AtMega8515 Когда пишу на Си и на Паскале получаю следующее: устанавливаю порт в режим вывода, порт выведен на светодиоды, и когда я устонавливаю одному из пинов лог 1, то светодиод тухнет, а при лог 0 загорается, я думал что логика наоборот должна быть, помогите пожалуйста разобраться с этим. Все правильно, если аноды светодиодов подключены к "+" Устанавливая 0 на выходе вы создаете разность потенциалов на светодиоде, достаточную для протекания тока, при котором светодиод светится. При 1 на выходе разность потенциалов на светодиоде близка к нулю, тока нет - светодиод не светит. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TSS 0 18 декабря, 2007 Опубликовано 18 декабря, 2007 · Жалоба Даже мосфеты надо открывать нулём (через драйвер естественно), и кнопочки опрашивать тоже :) Всё это от того, что ток лог. нуля на выходе контроллеров выше тока лог. единицы. Так как единицу обычно создаёт подтягивающий резистор к Еп, а ноль - мосфет к земле. Как говорится: ноль - активное состояние. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 18 декабря, 2007 Опубликовано 18 декабря, 2007 · Жалоба Даже мосфеты надо открывать нулём (через драйвер естественно), и кнопочки опрашивать тоже :) Всё это от того, что ток лог. нуля на выходе контроллеров выше тока лог. единицы. Так как единицу обычно создаёт подтягивающий резистор к Еп, а ноль - мосфет к земле. Как говорится: ноль - активное состояние. Обсуждали много раз - у современных контролеров разница тока КЗ 1 и 0 отличаются на несколько процентов , не более. Так что пофиг, чем открывать. Понекоторым соображениям 1-ей предпочтительней. Времена 51-го classic ушли Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
CooLSeS 0 18 декабря, 2007 Опубликовано 18 декабря, 2007 (изменено) · Жалоба "Грубо" говоря, при 0 он посылает в порт "-", а при 1 "+"? Так лучше? Изменено 18 декабря, 2007 пользователем Begin_CS Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 18 декабря, 2007 Опубликовано 18 декабря, 2007 · Жалоба минус и плюс суть понятия относительные. при 0 он "посылает в порт" ноль, то есть потенциал земли, а еще точнее - открывает нижний полевой транзистор. Вобщем - еще короче - соединяет выход с землей небольшим резистором. При "1" - соединяет выход с питанием тоже небольшим резистором. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TSS 0 18 декабря, 2007 Опубликовано 18 декабря, 2007 · Жалоба Обсуждали много раз - у современных контролеров разница тока КЗ 1 и 0 отличаются на несколько процентов , не более. Так что пофиг, чем открывать. Понекоторым соображениям 1-ей предпочтительней. Времена 51-го classic ушли Ну то что у современных так, я не спорю, но я назвал более общий и привычный случай. Тем более при ресете, у многих контроллеров все выходы переходят в "1". Или, я снова отстал от жизни? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 18 декабря, 2007 Опубликовано 18 декабря, 2007 · Жалоба У каких ? AT91SAM знаю, да пуллап при reset. Новые 51-ые - не знаю, не ко мне вопрос, LPC9107 51-ой серии от филипка не переходят. Моторола не переходит. PIC - не знаю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TSS 0 18 декабря, 2007 Опубликовано 18 декабря, 2007 · Жалоба У атмелок (Mega, Tiny) как оказалось, при ресете все порты в третем состоянии. А у SIlabs-а в единицах. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Gogan 0 19 декабря, 2007 Опубликовано 19 декабря, 2007 · Жалоба В тему. Было как то у меня считывание кнопок по нулю, так вот во время выключения питания - напряжение на порте успевало упасть ниже уровня 0, в то время как контроллер еще работал. в итоге происходило считывание кнопки и отработка. Я это заметил, т.к. по кнопке происходила запись в EEPROM. Теперь все кнопки у меня срабатывают по верхнему уровню (т.е. порт подтянут к земле 10к (или больше), а кнопка подключает к нему +5В через 100 Ом) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
InvisibleFed 0 19 декабря, 2007 Опубликовано 19 декабря, 2007 · Жалоба Товарищи, при всем уважении, Вы о чем? Смотрим внимательно на пост Begin_CS и видим: Использую STK500 Смотрим User Guide на рисунок 3-2. И все становится ясно. В STK500 диоды питаются через транзисторы, причем там npn-транзистор, порт контроллера подключается к эмиттеру, а диод - в цепи коллектора -> инверс. Читаем доки вместе... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться