Формирование точных импульсов - Форум Picbasic.ru
Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: ivan_fd 
Форум Picbasic.ru » Программирование МК » PicBasicPro » Формирование точных импульсов (как создать точные импульсы с помощью прерывания)
Формирование точных импульсов
ODNOROG Дата: Вс, 06.11.2011, 12:44  |                                                                                                                Сообщение # 1
Группа: Пользователи
Ранг:  Начал соображать
Сообщений: 25
Репутация: 0   ±
Замечания:   ±
На сайте с 06.11.2011

Статус: Offline

Добрый день .

Нужна помощь .

как с помощью прерывания создать точные импульсы ( с прерыванием ни разу не работал).

Т.З.

есть 4 значный 7 сегментный индикатор , 2 кнопки ( + -) ,pic 16f876 , вывод на мощный транзистор.

так сказать кнопками настроил необходимое количество импульсов (и их было видно на индикаторе), и устройство работает...
ЯНДЕКС Дата: 06.11.2011
ADMIN Дата: Вс, 06.11.2011, 13:27  |                                                                                                                Сообщение # 2
Администратор
Группа: Администраторы
Ранг:  Специалист
Сообщений: 1097
Репутация: 24   ±
Замечания:   ±
На сайте с 20.08.2007

Статус: Offline

В общем, принцип такой - здесь на сайте есть такой инструмент - для расчета значений регистров для работы с таймерами.
Выбираешь частоту кварца, и настраиваешь предделителем и значением самого таймера с помощью стрелочек вверх-вниз, чтобы в поле Частота прерывания оказалось нужное тебе значение в герцах. Это будет та частота, с которой программа будет попадать в прерывание. Например, тебе нужно, чтобы каждые 0,5 сек вызывалось прерывание - частота 4 МГц - > выбираем таймер TMR1 -> указываем предделитель 1:8 - > устанавливаем значение таймера - 3036 и получаем в окне Частота прерывания - значение 2.0000000 Гц, а в окне период прерывания - 500 мС (кнопками можно установить Гц, кГц, МГц, С, мС, нС, мкС). Также получаем значение регистра T1CON для работы в таком режиме и само значение таймера, которое нужно не забывать записывать в подпрограмме прерывания, чтобы начался формироваться следующий полусекундный интервал. Посмотри пример на эту тему. В прерывании делай что тебе надо, сбрасывай флаг, вызвавший прерывание, загружай таймер новым значением и выходи. Только не забудь, что на выполнение операций в прерывании также тратится время. Это нужно учитывать при загрузке таймера и скорректировать загружаемое значение на какое-то число. В этом помогает отладка в MPLAB. Об этом я тоже писал здесь. Там правда на протоне, но вышла новая версия PicbasicPro, которая тоже поддерживает отладку в MPLAB. Качать здесь.
ODNOROG Дата: Чт, 10.11.2011, 18:52  |                                                                                                                Сообщение # 3
Группа: Пользователи
Ранг:  Начал соображать
Сообщений: 25
Репутация: 0   ±
Замечания:   ±
На сайте с 06.11.2011

Статус: Offline

ого спасибо ...

ушел думать

и читать

Добавлено (10.11.2011, 11.41.58)
---------------------------------------------
блин не могу разобраться с прерыванием , дайте пожалуйста какой нибудь простой пример с прерыванием

Добавлено (10.11.2011, 18.05.34)
---------------------------------------------
только не очень сложный

Добавлено (10.11.2011, 18.52.16)
---------------------------------------------
Help Help Help shock

brown Дата: Чт, 10.11.2011, 21:08  |                                                                                                                Сообщение # 4
Группа: Модераторы
Ранг:  Помогаю всем
Сообщений: 335
Репутация: 10   ±
Замечания:   ±
На сайте с 18.09.2007

Статус: Offline

Пример из папки Samples из установки MCSp 3.0, файл Timer.bas
Считаются секунды с помощью прерываний по таймеру TMR0.
Прикрепления: Timer.bas(2Kb)


Век живи - век учись! К концу жизни поймешь, что ничего не знаешь...
ODNOROG Дата: Пн, 14.11.2011, 12:58  |                                                                                                                Сообщение # 5
Группа: Пользователи
Ранг:  Начал соображать
Сообщений: 25
Репутация: 0   ±
Замечания:   ±
На сайте с 06.11.2011

Статус: Offline

Блин все равно как то тяжело , а есче проще нет .

я наверно такой не один хто не может разобраться с П Р Е Р Ы В А Н И Е М .

ченебудь по элементарнее
ADMIN Дата: Пн, 14.11.2011, 13:07  |                                                                                                                Сообщение # 6
Администратор
Группа: Администраторы
Ранг:  Специалист
Сообщений: 1097
Репутация: 24   ±
Замечания:   ±
На сайте с 20.08.2007

Статус: Offline

Хорошо, я напишу статью про это. Это займет некоторое время
ODNOROG Дата: Пн, 14.11.2011, 16:46  |                                                                                                                Сообщение # 7
Группа: Пользователи
Ранг:  Начал соображать
Сообщений: 25
Репутация: 0   ±
Замечания:   ±
На сайте с 06.11.2011

Статус: Offline

пасиб буду ждать
Форум Picbasic.ru » Программирование МК » PicBasicPro » Формирование точных импульсов (как создать точные импульсы с помощью прерывания)
Страница 1 из 11
Поиск: