АвторСообщение
постоянный участник


Пост N: 24
Зарегистрирован: 13.12.07
Откуда: г.Макеевка
Рейтинг: 0
ссылка на сообщение  Отправлено: 27.02.08 13:36. Заголовок: Proteus и TMR1


Всем привет.
Возникла у меня такая проблема.
В будущей программе у меня будет встроен таймер TMR1.
И для ознакомления с его работой собрал простенькую схемку в PROTEUSe
Сама программа написана для PIC16f628a. За основу взял "Односекундный
таймер А. Милевского". Оформил ее в программу, Зашил ПИК в PROTEUSe.
Запустил. Не работает генератор, а следовательно нет и прерываний от TMR1.
А теперь поподробнее:
Причин 2-е:
1.В коде.
2.Схема в PROTEUSe.
Схема простая, поэтому расскажу и все будет понятно.
К PIC16f628a подключен часовой кварц(32768Гц), выводы RB6-RB7, к этим же
выводам подключены конденсаторы 33пф(схема включения стандартная).
К выводу RA0 подключен светодиод, далее резистор 300 Ом и на "землю".
Когда возникает прерывание светодиод на RA0 однократно загорается и тухнет.
К выводам RB0-RB1 подключены светодиоды, далее резисторы 300 Ом и на "землю".
Вот и вся схема. Кварц 4-20МГц.
Схема работает так:
Основная программа попеременно включает-выключает светодиоды на выводы RB6-RB7
с небольшими задержками.
Этот процес зациклен.
При возникновении прерывания загорается и тухнет однократно светодиод на выводе RA0,
Далее снова выполняется основная программа и так по кольцу. Это вся работа.
http://upload.com.ua/get/900126798
Текст программы по ссылке.
В тексте программы строки №155,156 закрыты (;). В таком виде программа должна работать.
Если (;) убрать, то будет принудительный подъем флага прерывания от TMR1 и естественно
программа будет уходить в прерывание в конце основной программы.
Программу гонял в симуляторе, проверял биты, банки...Вроде так, но почему не работает не
пойму




Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 14 [только новые]


постоянный участник




Пост N: 746
Зарегистрирован: 26.12.06
Откуда: Санкт-Ленинград
Рейтинг: 1
ссылка на сообщение  Отправлено: 27.02.08 16:05. Заголовок: Viktor_VK пишет: К ..


Viktor_VK пишет:

 цитата:
К PIC16f628a подключен часовой кварц(32768Гц), выводы RB6-RB7

В этом ошибка.
Надо подавать сигнал внешнего генератора. Никаких кварцев рисовать не надо. Точнее скажу позже (напомните, если забуду )

Obligatus Servus Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 25
Зарегистрирован: 13.12.07
Откуда: г.Макеевка
Рейтинг: 0
ссылка на сообщение  Отправлено: 27.02.08 17:58. Заголовок: Получается, нужно по..


Получается, нужно подать сигнал от генератора самого PROTEUSa?(есть такой)
Сегодня вечером попробую.
Отпишусь через сутки. Спасибо.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 749
Зарегистрирован: 26.12.06
Откуда: Санкт-Ленинград
Рейтинг: 1
ссылка на сообщение  Отправлено: 28.02.08 01:40. Заголовок: Viktor_VK пишет: от..


Viktor_VK пишет:

 цитата:
от генератора самого PROTEUSa

Совершенно правильно. Надо выбрать генератор "Clock", а подавать сигнал на RB6. Частоту, у генератора, лично я задал в два раза выше номинальной (что б быстрее симулировал ).


Obligatus Servus Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 26
Зарегистрирован: 13.12.07
Откуда: г.Макеевка
Рейтинг: 0
ссылка на сообщение  Отправлено: 28.02.08 18:58. Заголовок: Вчера попробовал под..


Вчера попробовал подключить генератор PROTEUSa, и получилось.
Сигнал "Clock" подавал на RB6 или RB7, работает и так и так.
Прерывание работает четко. Значит в программе ошибок нет. Программа оформлена,
можно компилировать. Она может послужить заготовкой для большой программы.
Комментарии почти в каждой строке, так что разобраться очень легко.
Программа будет находиться на ссылке до 27.04.08, пользуйтесь, кому интересно.
Спасибо Дмитрий.
С ув. Виктор.

По теме вопросов нет.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 752
Зарегистрирован: 26.12.06
Откуда: Санкт-Ленинград
Рейтинг: 1
ссылка на сообщение  Отправлено: 28.02.08 20:38. Заголовок: Viktor_VK пишет: по..


Viktor_VK пишет:

 цитата:
подавал на RB6 или RB7

Да, забыл сказать.
Просто мне когда об этом говорили, то упоминали RB6 (хотя правильнее, вроде, как-раз на RB7).

Obligatus Servus Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 28
Зарегистрирован: 13.12.07
Откуда: г.Макеевка
Рейтинг: 0
ссылка на сообщение  Отправлено: 29.02.08 17:22. Заголовок: Между RB7 и RB6 разн..


Между RB7 и RB6 разницы не заметил, работает по моему одинаково.
Прикидывал схему с кварцем(32768), а два то вывода заняты.
Обычно ПОРТВ используется на вывод 7-ми сегментов+запятая.
А так нужно добавлять с ПОРТаА, а это лишние команды. Можно использовать
внутренний генератор или перейти на TMR2(сейчас читаю). Пока не определился.
Сегодня приценивался на радиорынке к PIC16F873a(6a)выводов побольше будет.
У нас в Донецке стоят 5$.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 41
Зарегистрирован: 10.02.08
Откуда: РОСИЯ , Ярославль
Рейтинг: 0
ссылка на сообщение  Отправлено: 29.02.08 19:27. Заголовок: Я использовал TMR2 ..


Я использовал TMR2 в качестве генератора прерываний RTC , пока одни положительные эмоции
кварц внешний 4 мГц . Проще сказать часы идут стабильно , прект коммерческий , рекламаций нет...

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 756
Зарегистрирован: 26.12.06
Откуда: Санкт-Ленинград
Рейтинг: 1
ссылка на сообщение  Отправлено: 29.02.08 21:00. Заголовок: Viktor_VK пишет: а ..


Viktor_VK пишет:

 цитата:
а это лишние команды

Так почему бы не переключиться на порт A? А запятую можно и на B оставить.

Obligatus Servus Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 30
Зарегистрирован: 13.12.07
Откуда: г.Макеевка
Рейтинг: 0
ссылка на сообщение  Отправлено: 01.03.08 12:16. Заголовок: dosikus пишет: Я ис..


dosikus пишет:

 цитата:
Я использовал TMR2 в качестве генератора прерываний RTC , пока одни положительные эмоции


Вот и я склоняюсь к TMR2 в качестве генератора прерываний .
Разговор вел про PIC16f628a, а в нем выводов на порт А маловато будет, да и АЦП нет
Как говори Г.Хазанов :"...хорошая машина "Запорожец", да жаль пулемета в ней нету..."
Я, так сказать нахожусь в процессе выбора. В недалеком(я надеюсь) будущем будут разборки с ССР.
Поэтому пока осваиваю эти модули. Да и ПИК может быть другой. А отработку сделаю на
простых программках по модулям "Для усвоения глубинного смысла, происходящих в них(модулях) процессах!". Во сказанул И PROTEUS здесь очень кстати (пользуюсь вер 6.9sp5 и 7.2sp2)


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 757
Зарегистрирован: 26.12.06
Откуда: Санкт-Ленинград
Рейтинг: 1
ссылка на сообщение  Отправлено: 01.03.08 14:44. Заголовок: Viktor_VK пишет: а ..


Viktor_VK пишет:

 цитата:
а в нем выводов на порт А маловато будет

Как-раз 7 штук.
Лично у меня именно так и сделано. А 8-й, который только на вход, использую, для опроса клавиатуры (4 кнопки) и наличия основного питания. TMR2 у меня занят, для эмуляции UART, а TMR0, для динамической индикации и опроса клавиатуры. Можно, конечно, на него и отсчёт времени навесить, но я сделал на TMR1. Это позволяет, при работе от резервного источника питания, переводить МК в слееп, в промежутках между секундными отсчётами.
А АЦП у 628 действительно нет.

Obligatus Servus Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 42
Зарегистрирован: 10.02.08
Откуда: РОСИЯ , Ярославль
Рейтинг: 0
ссылка на сообщение  Отправлено: 01.03.08 15:09. Заголовок: Если используем весь..


Если используем весь порт А , лишаемся внешнего кварца . В принципе если RTC не используем в устройстве , это не страшно. Я использовал tmr2 потому что нужна была точность для часов . tmr0 использую для дин. индикации и опроса клавы.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 31
Зарегистрирован: 13.12.07
Откуда: г.Макеевка
Рейтинг: 0
ссылка на сообщение  Отправлено: 02.03.08 12:24. Заголовок: Ребята, прошу прощен..


Ребята, прошу прощения.
Это все происки PIC16f84a. Действительно в PIC16f628a выводов портА-восемь.
Мне нужны будут часы, задействую TMR2-очень точность подкупает.
Сделаю тоже самое и на TMR1, но без внешнего кварца. А так же хочу
использовать косвенную адресацию, она позволяет делать дела в цикле(перебирая
адреса...)как на ЯВУ. Сейчас ее прорабатываю. Чего раньше не использовал?
Да дошел до 12 раздела самоучителя и начал самостоятельно писать программы(понятно, что не сложные)
ну уж руки очень зудели, т.к. больно хорошо информация из самоучителя ложилась
на мозги . Динамическую индикацию(не косвенную) выкопал из других программ,
разобрался и приспособил для своих задач.С записью в память EEPROM большого количества
подряд идущих данных был "стопор", но ничего разобрался.
А сейчас наверстываю пропущенное(все упирается во время )


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 758
Зарегистрирован: 26.12.06
Откуда: Санкт-Ленинград
Рейтинг: 1
ссылка на сообщение  Отправлено: 02.03.08 13:52. Заголовок: dosikus пишет: Если..


dosikus пишет:

 цитата:
Если используем весь порт А , лишаемся внешнего кварца

Я использовал внутренний генератор. А внешний кварц ("часовой") подключал к генератору TMR1. Как говорил, это позволило, при работе от резервного источника питания, оставлять включённым только TMR1, а весь МК "усыплять". По прерываниям от TMR1 (каждые полсекунды) МК просыпается, корректирует значение счётчика времени, и опять "на боковую". Таким образом, на батарейке 3,6 вольта, ёмкостью 80mAh ("бочонок", как на старых материнских платах) он у меня проработал более двух недель (но менее трёх ).

Viktor_VK пишет:

 цитата:
в PIC16f628a выводов портА-восемь

Ещё раз повторяю.
Выводов - семь.
Вводов - восемь.

Obligatus Servus Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 32
Зарегистрирован: 13.12.07
Откуда: г.Макеевка
Рейтинг: 0
ссылка на сообщение  Отправлено: 02.03.08 14:14. Заголовок: Dmitry Dubrovenko пи..


Dmitry Dubrovenko пишет:

 цитата:
Выводов - семь.
Вводов - восемь.


Совершенно согласен.

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 5
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет



Создай свой форум на сервисе Borda.ru
Текстовая версия