attiny2313 Передача импульсов

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
kapitaneo
Родился
Сообщения: 15
Зарегистрирован: Пн ноя 23, 2009 13:19:17

attiny2313 Передача импульсов

Сообщение kapitaneo »

Здравствуйте.
Образовалась небольшая проблема, нужно передать импульсы с входа порта на выход другого.
Пишу вот так:

PORTD.0=PINB.0

Вроде передает(в Протэусе), но когда подаю сигналы с какого нибудь устройства, конкретное число импульсов, на выходе присутствуют добавочные импульсы.
Например: Вход=50, выход=54 или 57 и подобное.

В чем может быть проблема, или надо как-то по другому это реализовать?

ЗАРАНЕЕ СПАСИБО!!!
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20091
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: attiny2313 Передача импульсов

Сообщение Gudd-Head »

Сразу напрашивается вопрос: а нафига оно надо?

Может, лучше использовать внешнее прерывание для генерации импульса на выходе?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Аватара пользователя
Pooher
Мучитель микросхем
Сообщения: 491
Зарегистрирован: Вс янв 07, 2007 01:45:48
Откуда: Российская Федерация, будь она неладна...

Re: attiny2313 Передача импульсов

Сообщение Pooher »

Похоже на "дребезг". Добавьте в код, на пример, доп. проверку через задержку.
Научить нельзя, можно научиться. Пифагор.
Вставь недостающие буквы в слово *у*ня. Если у тебя получилось слово кухня, значит ты интеллигентный человек.
kapitaneo
Родился
Сообщения: 15
Зарегистрирован: Пн ноя 23, 2009 13:19:17

Re: attiny2313 Передача импульсов

Сообщение kapitaneo »

To Gudd-Head:
Вообще там в зависимости от некоторых условий нужно будет или повторить сигнал на входе или добавить к нему n-импульсов, в зависимости от условия. Спасибо за подсказку. :idea: Попробую через прерывания.



To Pooher:
Тоже думал что дребезг, пробывал разные значения для delay, но не получилось. Дат чик может выдавать импульсы с разным промежутком от 1 до 140 Гц. Может есть какие нибудь варианты программы антидребезга без делая? Поделитесь. Буду благодарен за помощь и подсказки! :))
kalobyte
Друг Кота
Сообщения: 13796
Зарегистрирован: Чт сен 20, 2007 14:08:00

Re: attiny2313 Передача импульсов

Сообщение kalobyte »

делай просто инкремент типа i++ и потом сбрасывай
сделай захват испульса таймером по прерыванию инт0
тематические ответы только в форуме, в приват не пишите
kapitaneo
Родился
Сообщения: 15
Зарегистрирован: Пн ноя 23, 2009 13:19:17

Re: attiny2313 Передача импульсов

Сообщение kapitaneo »

To _noise:

если поделить 1 на частоту получаю время между импульсами, но так как я не знаю какая частота может быть в данный момент то подобрать значения для делая не могу, сам датчик представляет механическое устройство с вращением по кругу которое выдает импульсы по ходу вращения.

To kalobyte:

ну я пробовал принемать импульсы и счетать таймером по фронту.
А можно по-подробнее, а то что-то не "въезжаю" и если можно с примером кода :write:
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Re: attiny2313 Передача импульсов

Сообщение GP1 »

Что-то мне опять это напоминает тему про бензораздаточную колонку :roll:
Напоминаю - УК ни кто не отменял.
Чем дальше, тем больше становлюсь занудой...
Изображение
kapitaneo
Родился
Сообщения: 15
Зарегистрирован: Пн ноя 23, 2009 13:19:17

Re: attiny2313 Передача импульсов

Сообщение kapitaneo »

To GP1:
?


To _noise:

пробыал вот так:

while(PIND.1==0){}
delay_us(200);
if(PINB.0==1)
{PORT.0=0;}
else
{PORTB.0=1}
while (PIND.0==0){}
delay_us(200);
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Re: attiny2313 Передача импульсов

Сообщение GP1 »

оф-топ
тут просто уже было пару тем, типа:
"помогите вставить импульс"...
выяснилось что сей прибамбас нужен для бензоколонки
Чем дальше, тем больше становлюсь занудой...
Изображение
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»