Реклама Google — средство выживания форумов :)
mishok>Непонятно как завести сигнал с переменника на АЦП(нужны говорят усилители и ограничительные диоды).
coolnik>У меги169 в порте F (четыре старших бита) на выводах постоянно высокий уровень, не зависимо от того, что записано в PORTF. Чего я только не делал - тщетно.
termostat>Напряжение нужно подавать на ножку МК - допустимый диапазон этого напряжения указан в ДатаШите и в задаче 5 курса.
Изменить этот диапазон можно с помощью делителя на резисторах или внешнего усилителя на ОУ (Операционный Усилитель).
mishok >
Вот только непонятно, как это будет выглядеть на принципиальной схеме.
mishok > если мы хотим чтоб сопротивление на входе АЦП изменялось от 0 до 5 В, то потенциометр какого номинала нужно ставить?
...я еще совсем новичок.
termostat> С выхода ОУ на вход "-" пусти резистор в 49 раз больший чем с входа "-" на "землю". и выход ОУ подключи на ножку АЦП МК.
coolnik> Эмулирую в VMlab, получается нездоровщина какая-то.
coolnik> невозможно рассчитать частоту возникновения прерывания, т.к. частота прерываний одного таймера влияет на частоту другого.
termostat> Я думаю получаешь то что в програму наваял, ищи ошибки, думай...
Если по порядку то нужно это делать аппаратно ж-) Дело в том что все таймера (ну или почти все) на атмелах позволяют формировать фронты на соотвествующих ногах портов независимо от работы программы. Т.е. аппаратура контроллера настраивается на простейшее деление по каждому таймеру. Если при этом нехватает аппаратуры, то эммулируется программно. Это один.
Всю выдачу импульсов нужно осуществлять в одном таймере если уж так хочется программно управлять событиями на порту А,В,С от таймеров, тогда исчезнет проблема перекрытия таймеров.
Я думаю получаешь то что в програму наваял, ищи ошибки, думай...
он не может понять что прерывание от таймера Б придет на n тактов позже если попадет во время обработки прерывания от таймера А, в случае если прерывания запрещены в обработчике А. А если обработчик А настолько долог по исполнению что придет еще и повтор от А до того как обработчик закончит свою работу, как думаеш что произойдет? Ведь А приоритетней чем Б по обработке.
он не может понять что прерывание от таймера Б придет на n тактов позже если попадет во время обработки прерывания от таймера А, в случае если прерывания запрещены в обработчике А. А если обработчик А настолько долог по исполнению что придет еще и повтор от А до того как обработчик закончит свою работу, как думаеш что произойдет? Ведь А приоритетней чем Б по обработке.
Маленько ты человека в заблуждение вводишь, он не может понять что прерывание от таймера Б придет на n тактов позже если попадет во время обработки прерывания от таймера А, в случае если прерывания запрещены в обработчике А.