Заголовок сообщения: как подключить переменное сопротивление к порту микроконтрол
Добавлено: Чт май 29, 2008 10:45:09
Родился
Зарегистрирован: Чт май 29, 2008 10:24:20 Сообщений: 17
Рейтинг сообщения:0
будьте так добры подскажите пожалуйста как подключить переменное сопротивление к порту микроконтроллера at90s2313 чтоб производить регулировку. хочу собрать автомат включения света в вечерние время, сопротивлением регулировать порог срабатывания, или киньте ссылку где можно посмотреть подобное чудо.
У этого МК нет АЦП, поэтому вот так вот запросто подключить к нему переменный резистор не получится. Однако, если Вас устроит пороговое устройство (т.е. свет включается просто при определеном уровне освещенности, яркость не регулируется), то можно регулировать переменником уровень напряжения на одном из входов аналогового компаратора, который есть в этом МК. Далее, если организовать на втором входе компаратора напряжение, зависящее от уровня освещенности и соответсвующим образом написать прошивку - все будет работать.
Что такое компараторы, делители напряжения, как они работают и рассчитываются - это в обучалку, там все есть.
_________________ Оптимизм х (Опыт + Знания) = const
Угу, только это должна быть определенная ножка МК, тогда все получится (ну, если только не рассматривать схемы измерения времени заряда конденсатора через этот самый переменник).
А вообще, товарищи, хватит флеймить, по теме, пожалуйста!
_________________ Оптимизм х (Опыт + Знания) = const
Зарегистрирован: Чт мар 20, 2008 20:33:43 Сообщений: 173
Рейтинг сообщения:0
Делал устройство для инкубатора. С наступлением темноты на определенное время плавно включалось освещение, после чего плавно погасало. Резистором R3 можно в небольших пределах регулировать порог срабатывания. R4 исключил.
Зарегистрирован: Чт мар 20, 2008 20:33:43 Сообщений: 173
Рейтинг сообщения:0
Это зависит от конкретной задачи. Вам нужно включить свет на всю ночь или на определенный промежуток времени. Мою программу вам повторять смысла нет, т.к. там много для вас лишнего будет.
Транзистор подключен к входу внешнего прерывания tiny2313. Когда светло - фотодиод открыт, следовательно транзистор закрыт. На входе МК INT0 (PD2) - 1.
Когда стемнеет - все изменится на потивоположное. INT0 сбросится на 0. Произойдет прерывание. В цикл внешнего прерывания нужно поместить команду на включение освещения. Сделать это можно так.
interrupt [EXT_INT0] void ext_int0_isr(void)
{
//Стемнело, открылся транзистор Т1, INT0 сбросился
//Произошло внешнее прерывание - включить лампу
PORTB.3 = 1; //установить 3-й пин порта B, (к примеру можно другой) в 1
}
предварительно его нужно сконфигурировать как выход). Пишу для CodeVision. Можно и другой выход использовать.
Дальше зависит от условий задачи.
Нужно определсться с условиями. Где будет находиться светодатчик. Будет ли он освещаться светом лампы? Если нет, то выключить можно когда рвссветет и внешнее прерывание использовать по любому изменению. Тогда в цикле прерывания нужно не устанавливать выход PORTB.3, а инвертировать. Т.е. стемнело - включить , рассвело - выключить.
Если же лампа будет светить на датчик, то светить нужно на определенное время т.к. фотодатчик не сможет понять когда рассвело из-за света лампы. Нужен счет времени и прерывание только по низкому уровню. Т.к включаться будет по прерыванию, а выключаться от таймера.
Советую пока не использоватьникакой переферии, отладить саму программу. У вас потом еще возникнут вопросы, как из МК управлять лампой. Можно симулировать программу в AVR Simulator IDE. Но учтите, что в нем не работает внешнее прерывание по низкому уровню. Можно симулировать с MEGA8 в Протеусе (только не стоит на таком МК собирать такое простое устройство). Только учтите, что в Протеусе не работает внешнее прерывание по любому уровню.
Зарегистрирован: Чт мар 20, 2008 20:33:43 Сообщений: 173
Рейтинг сообщения:0
А вообще, думаю вам нужно конеретно определиться с задачей и решить, нужен ли вам МК. Моежт лучше собрать простое фотореле, схемы которых можно найти в достаточном количестве. Или вы хотите научиться создавать устройства на МК, а сама задача для вас не важна?
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения