реклама на сайте
подробности

 
 
> Замедленная реакция PINA.0 на появление напряжения на пине.
Ailer
сообщение Jul 28 2010, 02:29
Сообщение #1





Группа: Участник
Сообщений: 5
Регистрация: 10-09-07
Пользователь №: 30 432



Здравствуйте!
Делаю ШИМ-контроллер, на котором можно будет задавать заполнение с помощью двух кнопок ("+" и "-"). Сами кнопки хочу примотать к пинам 0 и 1 порта А. Для проверки наличия напряжения на пинах пользуюсь конструкцией типа: if(PINA.0==1). Получается странная вещь - после подачи короткого импульса где-то полсекунды ничего не происходит, потом контроллер ведёт себя так, как будто бы я держу напряжение на ножке на высоком уровне, но импульс-то был короткий, я тут же убрал напряжение! Откуда берётся такое запаздывание? Что можно сделать? Спасибо заранее.
Вот собственно управляющий код:
Код
if((PINA.0==1)&&(pwm<100))
       {
        pwm++;
       }          
       if((PINA.1==1)&&(pwm>0))
       {
        pwm--;
       }
       f=pwm;
       pwm_val=floor(255*(f/100));
       lcd_putsf("PWM: ");
       itoa(pwm,c);
       lcd_puts©;
       OCR2=pwm_val;
       delay_ms(100);
       lcd_clear();


Сообщение отредактировал rezident - Jul 28 2010, 03:16
Причина редактирования: Оформление цитаты исходника.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Ailer
сообщение Jul 28 2010, 07:16
Сообщение #2





Группа: Участник
Сообщений: 5
Регистрация: 10-09-07
Пользователь №: 30 432



Кажется, разобрался, спасибо всем за участие.
Подавал единичку на пины, а потом просто передавал её подавать. Видимо, у пинов есть существенная для данной задачи ёмкость и крайне малый ток утечки - ещё 1,5-2 секунды пин был как бы в высоком состоянии из-за своей ёмкости. Припаял резисторы на 100 кОм между пинами и землёй - вроде помогло. Сейчас ожесточённо тестирую smile.gif
(да, обрабоку событий сделал по прерыванию таймера, спасибо за подсказку.)
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Jul 28 2010, 09:45
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Цитата(Ailer @ Jul 28 2010, 11:16) *
ёмкость и крайне малый ток утечки - ещё 1,5-2 секунды пин был как бы в высоком состоянии из-за своей ёмкости.


Да там от силы 30 pf - ищите ещё. Как вы кнопки включили?


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 26th July 2025 - 07:50
Рейтинг@Mail.ru


Страница сгенерированна за 0.02349 секунд с 7
ELECTRONIX ©2004-2016