Откуда на входе берётся постороннее напряжение.

Обсуждаем контроллеры компании Atmel.
Ответить
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Ср окт 15, 2014 16:56:53

Сообщение server021 »

DDRC = 0xff;
PORTC= 0x00;


Если "1" не подаю, и просто измеряю мультимитром то он показывает некоторое напряжение, причём 3-4 вольта, равное питанию. Подскажите в чём проблема.
Реклама
Опытный кот
Аватара пользователя
Сообщения: 759
Зарегистрирован: Пн май 12, 2014 06:13:33

Сообщение novarobotix »

только что проверил

DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (0<<DDB3) | (0<<DDB2) | (1<<DDB1) | (1<<DDB0);

PORTB.1=0; мультиметр показывает 0 вольт
PORTB.1=1;мультиметр показывает 5 вольт

atmega 16
Глупый не задает вопросы. Глупый и так все знает.
Реклама
Прорезались зубы
Аватара пользователя
Сообщения: 201
Зарегистрирован: Пт июл 25, 2008 14:09:04
Откуда: Зауралье

Сообщение Vicont »

server021 писал(а):Если "1" не подаю, и просто измеряю мультимитром то он показывает некоторое напряжение...
Если DDRC = 0x00 и PORTC= 0x00, то на выводах порта С возникнет высокоимпедасное состояние.
server021 писал(а):Подскажите в чём проблема.
Всё зависит от того, как во Вашей задумке должен работать работать этот порт: как выход или как вход?
Контактная информация:
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Ср окт 15, 2014 16:56:53

Сообщение server021 »

Задача такая, от внешнего переключателя поступает +3 или +0 в зависимости от этого atmega16 должен выполнить какие либо действия. Читаю состояние через PINC
Реклама
Эиком - электронные компоненты и радиодетали
Опытный кот
Аватара пользователя
Сообщения: 759
Зарегистрирован: Пн май 12, 2014 06:13:33

Сообщение novarobotix »

server021 писал(а):Задача такая, от внешнего переключателя поступает +3 или +0 в зависимости от этого atmega16 должен выполнить какие либо действия. Читаю состояние через PINC
а при чём это к "Если "1" не подаю, и просто измеряю мультимитром то он показывает некоторое напряжение, причём 3-4 вольта, равное питанию. Подскажите в чём проблема." какая связь?
Глупый не задает вопросы. Глупый и так все знает.
Реклама
Открыл глаза
Сообщения: 76
Зарегистрирован: Чт ноя 13, 2014 19:37:34

Сообщение Stanislavich »

server021 писал(а):Задача такая, от внешнего переключателя поступает +3 или +0 в зависимости от этого atmega16 должен выполнить какие либо действия. Читаю состояние через PINC
Но у вас порт настроен на вывод.
server021 писал(а):DDRC = 0xff;
Реклама
Опытный кот
Аватара пользователя
Сообщения: 781
Зарегистрирован: Сб июн 01, 2013 22:24:21
Откуда: ПФО

Сообщение alex_ »

Всё элементарно просто, при настройке порта на вход(DDRx=0) а регистр порта (PORTx=0xFF) имеет число отличное от нуля, в моём случае то вы господа включаете подтягивающие резисторы, это нужно бывает чтобы порт не ловил глюки при неподключеной клаве например или можно подключать кнопки без добавления резисторов. Регистр DDRx держим равным нулю и проблема будет решена, в данном случае.
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Ср окт 15, 2014 16:56:53

Сообщение server021 »

Подскажите как правильно сконфигурировать, У меня C0-C5 и C7 входы с проверкой через PINC состояния, а C6 - вывод на диод
Открыл глаза
Сообщения: 76
Зарегистрирован: Чт ноя 13, 2014 19:37:34

Сообщение Stanislavich »

server021 писал(а):Подскажите как правильно сконфигурировать, У меня C0-C5 и C7 входы с проверкой через PINC состояния, а C6 - вывод на диод
Можно так:

Код: Выделить всё

DDRC=0b10100000;
Последний раз редактировалось Stanislavich Вс ноя 23, 2014 21:32:15, всего редактировалось 1 раз.
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Ср окт 15, 2014 16:56:53

Сообщение server021 »

Нет, они всегда входы. но в одном положении идут +3в, а в другом ножка висит в воздухе, может стоит в другом её заземлить?
Открыл глаза
Сообщения: 76
Зарегистрирован: Чт ноя 13, 2014 19:37:34

Сообщение Stanislavich »

server021 писал(а):ножка висит в воздухе
Такие ножки желательно заземлять.
Открыл глаза
Сообщения: 76
Зарегистрирован: Чт ноя 13, 2014 19:37:34

Сообщение Stanislavich »

server021 писал(а):Нет, они всегда входы. но в одном положении идут +3в, а в другом ножка висит в воздухе, может стоит в другом её заземлить?
Кстати что за магия такая? Или вы вручную проводок прикладываете и убираете? Лучше вместо воздуха подавать логический ноль/единицу.
Опытный кот
Аватара пользователя
Сообщения: 781
Зарегистрирован: Сб июн 01, 2013 22:24:21
Откуда: ПФО

Сообщение alex_ »

server021 писал(а):Подскажите как правильно сконфигурировать, У меня C0-C5 и C7 входы с проверкой через PINC состояния, а C6 - вывод на диод
DDRC=0b01000000; PORTС=0; а меняй только этот бит PORTС.6=0; и будет вам счастье :)
Такие ножки желательно заземлять.
Ну я считаю эту меру избыточной, висят в воздухе, ну вроде и фиг с ними, если они всё равно не опрашиваются. Ну если планируете использовать схему в условиях сильных эл помех то может и стоит, хотя в целом может и не поможет, раз помехи сильные.
Последний раз редактировалось alex_ Вс ноя 23, 2014 21:50:39, всего редактировалось 1 раз.
Опытный кот
Аватара пользователя
Сообщения: 759
Зарегистрирован: Пн май 12, 2014 06:13:33

Сообщение novarobotix »

server021 писал(а):Если "1" не подаю, и просто измеряю мультимитром то он показывает некоторое напряжение, причём 3-4 вольта
если вводная нога МК обслуживающая кнопку при ненажатой кнопке висит в воздухе, то на этой ноге наводится наводка обычно 50 герц, в результате на выходе PORTC получаем импульсы равные по частоте частоте наводки размахом 5 вольт, мультиметр показывает среднеквадратичное значение около 3 вольт. задача решается подтягиванием ножки к земле или к питанию через 1 ком смотря какая схема.
Последний раз редактировалось novarobotix Вс ноя 23, 2014 21:54:02, всего редактировалось 3 раза.
Глупый не задает вопросы. Глупый и так все знает.
Открыл глаза
Сообщения: 76
Зарегистрирован: Чт ноя 13, 2014 19:37:34

Сообщение Stanislavich »

alex_ писал(а):Ну я считаю эту меру избыточной, висят в воздухе, ну вроде и фиг с ними
Ну они когда в воздухе висят, то могут и единичку выдать, я когда кнопку подключал, если она не нажата (т.е. 1 не подается), то почему-то контроллер видит этот пин как единичку довольно часто. Ну да, когда не опрашиваются, то и фиг с ними)
Опытный кот
Аватара пользователя
Сообщения: 781
Зарегистрирован: Сб июн 01, 2013 22:24:21
Откуда: ПФО

Сообщение alex_ »

Логично, наводку ловят, нарисуй ка схему как у тебя кнопки к контроллеру подключены
Открыл глаза
Сообщения: 76
Зарегистрирован: Чт ноя 13, 2014 19:37:34

Сообщение Stanislavich »

alex_ писал(а):Логично, наводку ловят, нарисуй ка схему как у тебя кнопки к контроллеру подключены
Кнопка. Замыкает 2 контакта, один из которых идет на какой-нибудь пин, а второй к плюсу напряжения, чего тут рисовать) Обычно заземляют такие вещи, особенно для кнопки, через резистор.
Опытный кот
Аватара пользователя
Сообщения: 781
Зарегистрирован: Сб июн 01, 2013 22:24:21
Откуда: ПФО

Сообщение alex_ »

Я и спрашиваю потому что новички про резистор забывают.
Обычно заземляют такие вещи, особенно для кнопки, через резистор.
Тогда скажи каким ёбразом у тебя читается единица, или кнопка постоянно замкнута?
Открыл глаза
Сообщения: 76
Зарегистрирован: Чт ноя 13, 2014 19:37:34

Сообщение Stanislavich »

alex_ писал(а):Тогда скажи каким ёбразом у тебя читается единица, или кнопка постоянно замкнута?
Ну единица читается с плюса напряжения, не понял к чему этот вопрос.
Опытный кот
Аватара пользователя
Сообщения: 781
Зарегистрирован: Сб июн 01, 2013 22:24:21
Откуда: ПФО

Сообщение alex_ »

Вопрос снимается, извиняй, я спросоня тебя перепутал с server021, спать пора :sleep:
Ответить

Вернуться в «AVR»