Обсуждаем контроллеры компании Atmel.
Ответить

Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника.

Ср авг 15, 2012 22:11:12

Уважаемые коты! подскажите, ситуация исправима?

При проектировании второго проекта после "HelloWorld"
решил сделать 2 платы. основная и блок управления(с семисегментниками).
Решил, что в качестве управляющего сигнала с кнопки должно поступать +5 на ногу МК. (см вложение)

Затравил 2 платы, напаял комплектуху...
А вот при программировании вылезло, что "Так делать не получится"

Как можно исправить ситуацию?

По возможности - приведите код на С. пишу в 6й студии...

ЗЫ:
переразводить и "Перетравливать" блок управления - жалко. 3 недели убил на его разводку (почти все SMD) и в 2х слойке...красота в общем....

Плата с МК: Ноги МК продублированы контактными площадками, к ним можно подпаяться... тоже травленая плата, но в одном слое, и почти вся пропаяная и залеченная после КЗ...
Вложения
Koczk.jpg
то что затравил.. чисто принципиальная схема кнопок.
(47.68 KiB) Скачиваний: 800

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Ср авг 15, 2012 22:19:51

А вот при программировании вылезло, что "Так делать не получится"

Это как не получится? Управлять логической единицей? Очень даже получится, если линии подтянете к нулю.

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Ср авг 15, 2012 22:28:07

Если доработать схему (см. вложение)

Тогда как посчитать резисторы?
Вложения
Koczk_I.jpg
(49.1 KiB) Скачиваний: 554

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Ср авг 15, 2012 23:05:43

c2n писал(а):Если доработать схему (см. вложение)

Тогда как посчитать резисторы?


методом высоконаучного тыка, 10К оказалось достаточно....

Но остался вопрос: Как посчитать номинал этих подтягивающих????

Для расширения кругозора, так сказать :)

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Ср авг 15, 2012 23:16:11

Номинал - чем меньше, тем лучше (с точки зрения помехозащищённости). Но тогда при нажатии кнопки будет идти большой ток через них.

Выбираются они просто: если линии длинные, надо брать 500 - 1к, если короткие - около 4,7к, если на одной плате, то можно 10к.

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Ср авг 15, 2012 23:20:16

ploop писал(а):Номинал - чем меньше, тем лучше (с точки зрения помехозащищённости). Но тогда при нажатии кнопки будет идти большой ток через них.

Выбираются они просто: если линии длинные, надо брать 500 - 1к, если короткие - около 4,7к, если на одной плате, то можно 10к.




Зная закон Ома
R=U/I, и то что на ногу надо дать не более 40мА

получается, что сопротивление 125 ом... но! при таком малом сопротивлении кнопка не заводится.

при 1К и 2К Логический тестер показал "кота шредингера" (тоесть переходное состояние), ну и код естественно не заработал(((

Платка размером не более 100Х100 мм

Объясните пожалуйста этот феномен :)

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Ср авг 15, 2012 23:26:16

Ничего не понял... Ноги - это входы, они вообще ни на что влиять не должны. Если они настроены на ВЫХОД, то к ним нельзя кнопки подключать ни в коем случае, иначе спалите МК.

При разомкнутых кнопках на линиях должны быть чёткие нули (за счёт подтяжек), при замкнутых - питание.

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Пт авг 17, 2012 09:29:23

Зная закон Ома R=U/I, и то что на ногу надо дать не более 40мА

получается, что сопротивление 125 ом... но! при таком малом сопротивлении кнопка не заводится.


я имею ввиду, что ток управляющего импульса (нажатие кнопки) не должен превышать 40мА

И имея U = 5V, I=40mA, , получаем R = 125 ом
должна быть величина токоограничивающего/подтягивающего резистора.
но при таком маленьком сопротивлении, МК не признает единичку на ножке (по нажатию кнопки)

Вот и интересуюсь, чего я упустил из виду при расчетах.

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Пт авг 17, 2012 09:39:04

40 ма - это беспредел для потенциального сигнала...
Полагаю, проблема в дребезге?
Если программе требуется не уровень, а фронт, то необходима защита от дребезга.
Делают ее путем циклического опроса кнопок с анализом двухкратного повторения одного и того же состояния кнопки.
Это состояние и будет истинным. При разных значениях состояние остается ПРЕЖНИМ.

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Пт авг 17, 2012 10:16:35

КРАМ писал(а):Полагаю, проблема в дребезге?


Нет. до "Дребезга" мне еще рано :) второй проект :))))

Суть в том, что с блока управления, при нажатой кнопке приходит VCC (+5v)
была ошибка в схемотехнике, небыло подтягивающего резистора на землю у ноги(порта) МК.

По расчету (смотрел гуглю) подтягивающий резистор должен быть 125 ом, а по факту заработало от резистора не менее 10К.
Вот и интересно, как правильно считать подтягивающий на землю.

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Пт авг 17, 2012 10:26:16

а зачем такой "наворот"?
включи выводы как входы с активированными "подтягивающими" резисторами и лови нулики кнопками :tea:

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Пт авг 17, 2012 10:35:53

c2n писал(а):я имею ввиду, что ток управляющего импульса (нажатие кнопки) не должен превышать 40мА
чего-чего? какой еще управляющий импульс?
при подключении кнопок выводы МК настроены на вход, что означает - что у них высокое входное сопротивление, для простоты которое принимают равным бесконечности, т.е. обрыву.
и если и течет какой то ток через контроллер, то очень маленький (при выключенной внутренней подтяжке).
А те 40мА которые Вы там насчитали пойдут по цепи :
[+ источника питания] -> [замкнутая кнопка] -> [резистор 125 Ом] -> [- источника питания]
и никак не коснется контроллера.
Ножка контроллера в данном случае реагирует на ПОТЕНЦИАЛ точки соединения кнопки и подтягивающего резистора. При отпущенной кнопке потенциал низкий, при нажатой кнопке - высокий.

А сопротивление нужно выбирать с учетом длины линии соединяющей кнопку с контроллером и уровень внешних помех. В Вашем случае достаточно 10 КОм.

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Пт авг 17, 2012 21:13:45

Очень правильно, при таком включении, в цепь кнопок +5В поставить 50-100 ом.

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Сб авг 18, 2012 00:04:24

Ему к земле подтяжка нужна.

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Сб авг 18, 2012 01:43:19

ploop писал(а):Ему к земле подтяжка нужна.
И к "+" немного нужно. Так сказать, на всякий пожарный...

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Сб авг 18, 2012 08:00:29

eufs писал(а):Очень правильно, при таком включении, в цепь кнопок +5В поставить 50-100 ом.

:shock: Почему 50...100? Вы предполагаете работать на коаксиальный кабель?

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Сб авг 18, 2012 10:11:49

Аlex писал(а):И к "+" немного нужно. Так сказать, на всякий пожарный...

Предлагаешь не подтяжки, а "растяжки" сделать? :)

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Сб авг 18, 2012 22:45:11

-тук тук
-Кто тама?
-Это я твоя внучка, Красная шапочка.
-Деточка дерни за веревочку!
-Бабка!!! снимай растяжки! внучка пришла!

Понятно, что нихрена не понятно. изучаем все методомвысоко ВЫСОКОНАУЧНОГО тыка :)))

Спасибо за размышления на тему :) а про токоограничивающие резисторы с кнопок, я как-то не особо заморачивался.

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Вт авг 21, 2012 10:35:15

Схема подключения кнопок к МК должна соответствовать рисунку.
Tiny2313.jpg
Подключение кнопок
(58.32 KiB) Скачиваний: 593

Программа, промоделированная в Proteus’e во вложении. Там же найдете и файл “C”.
Вложения
2313.rar
Программа управления
(33.92 KiB) Скачиваний: 217

Re: Ошибка схемотехники???, кнопки и МК 2313, ошибка чайника

Вт авг 21, 2012 11:56:39

Опять вы не поняли. У автора всё наоборот - подтяжки надо к земле, а коммутируется питание. Переделать сложно (читайте первый пост), да и смысла нет, просто в программе инвертировать опрос.
Ответить