Страница 1 из 2
Калькулятор Atmega8
Добавлено: Ср дек 11, 2013 09:13:50
kotriks
Народ нашёл тут блог
http://www.microscale-embedded.com/blog/?p=98
и гадаю нужны ли защитные резисторы на порты в 300-400ом
или код позволяет их не ставить, а то боюсь что порты погорят.
Re: Калькулятор Atmega8
Добавлено: Ср дек 11, 2013 09:25:43
Dr. Alex
Резисторы нужно ставить если к порту подключаете светодиоды и прочее, а для экрана и клавиатуры не нужны. Ну разве что для клавиатуры подтягивающие поставить на 1-10 кОм...
Re: Калькулятор Atmega8
Добавлено: Ср дек 11, 2013 09:34:51
kotriks
Dr. Alex писал(а):Резисторы нужно ставить если к порту подключаете светодиоды и прочее, а для экрана и клавиатуры не нужны. Ну разве что для клавиатуры подтягивающие поставить на 1-10 кОм...
спасибо, но подтягивающие думаю лишнее, только будет место занимать на печатке.
Re: Калькулятор Atmega8
Добавлено: Ср дек 11, 2013 09:37:13
Engineer_Keen
Главное больше одной кнопки сразу не нажимать... Или DDR переключать при сканировании.

И, кстати, там по ссылке какой-то левый калькулятор, по-моему самих арифметических функций к тексте прошивки нету...
Re: Калькулятор Atmega8
Добавлено: Ср дек 11, 2013 10:12:34
Dr. Alex
Ну или на выводы Y0-Y1 поставить диоды)
Re: Калькулятор Atmega8
Добавлено: Ср дек 11, 2013 10:30:58
Engineer_Keen
По размеру получится тоже самое что и резисторы (но резисторы можно сборкой поставить

)
Re: Калькулятор Atmega8
Добавлено: Ср дек 11, 2013 10:52:04
Dr. Alex
Я не пойму вас!

Вот есть клавиатура. Конфигурируем выводы PORTB.0 и PORTB.1 на ВЫХОД, а PORTB.2 и PORTB.3 на вход. Сбрасываем всё в 0. Подаём на PORTB.0 - 1 и смотрим на PORTB.2 и PORTB.3. Если на одном из них появилась 1, выставляем соответствующее значение. Проделываем то же самое и с PORTB.1!!!!!! Я не пойму, вы что, не знакомы с опросом клавиатуры????
Re: Калькулятор Atmega8
Добавлено: Ср дек 11, 2013 10:54:40
kotriks
Engineer_Keen писал(а):Главное больше одной кнопки сразу не нажимать... Или DDR переключать при сканировании.

И, кстати, там по ссылке какой-то левый калькулятор, по-моему самих арифметических функций к тексте прошивки нету...
ну меня сам калькулятор мало интересует, мне тока код самой клавиатуры нужен.
Re: Калькулятор Atmega8
Добавлено: Ср дек 11, 2013 10:57:07
kotriks
Dr. Alex писал(а):Я не пойму вас!

Вот есть клавиатура. Конфигурируем выводы PORTB.0 и PORTB.1 на ВЫХОД, а PORTB.2 и PORTB.3 на вход. Сбрасываем всё в 0. Подаём на PORTB.0 - 1 и смотрим на PORTB.2 и PORTB.3. Если на одном из них появилась 1, выставляем соответствующее значение. Проделываем то же самое и с PORTB.1!!!!!! Я не пойму, вы что, не знакомы с опросом клавиатуры????
ну она так и работает там по коду видно в цикле в протеусе сэмулировал мигают порты опрашиваются вот тока собирать в щелезе страшно что они сгорят без диодов и резисторов )))
Re: Калькулятор Atmega8
Добавлено: Ср дек 11, 2013 11:01:02
Dr. Alex
Ну я же говорю, я бы подтянул PORTB.0 и PORTB.1 к единице резисторами по 10 кОм! Больше они нигде не нужны!!!
Re: Калькулятор Atmega8
Добавлено: Ср дек 11, 2013 11:15:58
Engineer_Keen
Dr. Alex писал(а):Я не пойму, вы что, не знакомы с опросом клавиатуры????
Э... Ну кто не знаком с работой матричных индикаторов/клавиатур еще вопрос
Dr. Alex, то что вы нарисовали работать не будет, посмотрите внимательнее. У вас левые и правые кнопки
запараллелены. Если подать 1 на PORTB.1, то нажатие левой-верхней и правой-верхней кнопок не различить. Конечно и КЗ так не сделать... Можно кстати с матрицей не заморачиваться и использовать вообще 1 вход, АЦП у меги есть.
Re: Калькулятор Atmega8
Добавлено: Ср дек 11, 2013 11:28:24
Dr. Alex
Пардон, быстро схему рисовал - запарился))))) Стыдно, каюсь)
Re: Калькулятор Atmega8
Добавлено: Чт дек 12, 2013 23:19:05
kotriks
Мне ребята ещё интересно, вот тот код что я привёл с опросом портов на нажатия тоесть процессор постоянно в нагрузке и напряжения ест больше а есть ли код без опроса чтобы когда тока нажимаешь тогда фиксируется нажатие клавиши, а потом чип опять спит?
Re: Калькулятор Atmega8
Добавлено: Пт дек 13, 2013 07:52:38
SmarTrunk
"Совместимый по выводам" МК ATmega88a имеет возможность сделать прерывания по большому количеству входов (у АТмега8 только два входа внешних прерываний). Можно это использовать. Либо переводить МК в режим сна в промежутках между сканированием кнопок, а из сна выходить по прерыванию от внешнего асинхронного таймера, работающего от часового кварца (опять, у АТмега88а больше режимов сна). Можно тупо снижать рабочую частоту и напряжение питания, это снизит потребляемый ток.
Re: Калькулятор Atmega8
Добавлено: Пт дек 13, 2013 08:16:49
kotriks
у меня таки и есть мега88.
Re: Калькулятор Atmega8
Добавлено: Пт дек 13, 2013 08:24:10
kotriks
у меня частота 8мгц с делителем на 8, сколько примерно будет потреблять ток или как расчитать не измеряя его в железе или, без сбора железки не расчитать?
Re: Калькулятор Atmega8
Добавлено: Пт дек 13, 2013 08:29:29
SmarTrunk
Тут все просто - подробные графики есть в даташите - для разных тактовых частот и напряжений питания.
Ну без учета того, что будет навешано на выводы, конечно.
А какой ток потребления нужно получить?
Re: Калькулятор Atmega8
Добавлено: Пт дек 13, 2013 12:24:23
kotriks
ну скажем не больше 1милиампера

Re: Калькулятор Atmega8
Добавлено: Пт дек 13, 2013 12:46:54
Dr. Alex
)))) Для такого тока купите себе нормальный карманный калькулятор)))))
Re: Калькулятор Atmega8
Добавлено: Пт дек 13, 2013 13:31:54
SmarTrunk
Если верить графикам в даташите, при 3,3В питания и 2МГц будет около 0,8мА (график даташита Figure 31-143. ATmega88PA: Active Supply Current vs. Frequency (1 - 20MHz))
Другой вариант - сохранить высокую тактовую частоту (если это надо) но переводить МК в сон в простое, например в промежутках между опросом кнопок и когда нет вычислений.