Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 12.06.2005, 02:03  
pawelk
Частый гость
 
Регистрация: 17.05.2005
Сообщений: 9
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
pawelk на пути к лучшему
По умолчанию 2 вопроса по PIC16F877A - HELP!

Народ срочно нужно решить 2 проблемы, помогите кто чем может:
1. Есть у меня Timer1 в PIC16F877A- идут у меня на него по RC0 импульсы - дайте кусочек исходника как отсчитать 971 импульс...чтобы прерывание выставить

2. По RB4 приходят импульсы сл.вида:

1 импульс - пауза определенная - если больше импульса нету то 1 импульс, если после паузы пришел, то 2 импульса - снова пауза, снова пришел еще/не пришел, если пришел то 3 импульса - все 3 максимум

КАК это программно реализовать, т.е. определять сколько импульсов пришло???

Спасибо ВСЕМ заранее за помощь.
Реклама:
pawelk вне форума  
Непрочитано 13.06.2005, 13:36  
xelos
Прописка
 
Регистрация: 27.08.2004
Сообщений: 107
Сказал спасибо: 0
Сказали Спасибо 21 раз(а) в 20 сообщении(ях)
xelos на пути к лучшему
По умолчанию

не помню точно как таймер 1 работает, но по первому вопросу алгоритм следующий:
ставишь прерывание на переполнение таймера (255 циклов). В прерывании ставишь переменную, считающую количество прерываний. Как только кол-во прерываний равно 3, загружаешь в счетчик таймера 971-255*3 (посмотри, возможно, надо делать поправку на 4 цикла команды загрузки числа в счетчик) и со следующего прерывания у тебя 971 цикл.

по второму вопросу, вроде, проблем не должно быть - на RB0 есть прерывание. запоминаешь цикл, на котором пришел первый импульс, по приходу следующего, если циклов мало - значит 2 импульса вместе, если больше паузы - значит одиночный импуль после паузы...
xelos вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ответьте на 3 вопроса))) Anatol_rus Аудиотехника 1 14.03.2009 21:40
2 вопроса про UART jake87 Микроконтроллеры, АЦП, память и т.д 2 14.01.2009 00:37
RA4 в PIC16F877A maxNTF Микроконтроллеры, АЦП, память и т.д 8 06.02.2008 23:28
Подключение PIC16F877A maxNTF Микроконтроллеры, АЦП, память и т.д 10 04.10.2007 20:00
PIC16F877A pawelk Микроконтроллеры, АЦП, память и т.д 17 28.05.2005 23:54


Часовой пояс GMT +4, время: 16:33.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot