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

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

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

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

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

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

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

 
Опции темы

Kак сделать генер в ~1кгц на PIC16F84A?

Непрочитано 26.12.2004, 19:59  
RETAS
Гость
 
Сообщений: n/a
По умолчанию Kак сделать генер в ~1кгц на PIC16F84A?

Помогите советом.Первый раз щупаю PIC16F84A,почти програму написал,но как просто указать,чтобы
на одном из выводов постояно был-бы 1кгц ? Кварц на 32кгц,но могу поставить и раз в 10 бысокочастотнее.
Спасибо.
Реклама:
 
Непрочитано 27.12.2004, 16:19  
li$ergin
Гость
 
Сообщений: n/a
По умолчанию

А на сколько точноую необходимо иметь частоту?
 
Непрочитано 27.12.2004, 19:51  
Zebio
Прохожий
 
Регистрация: 03.12.2004
Сообщений: 5
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Zebio на пути к лучшему
По умолчанию Re: Kак сделать генер в ~1кгц на PIC16F84A?

Сообщение от RETAS
Помогите советом.Первый раз щупаю PIC16F84A,почти програму написал,но как просто указать,чтобы
на одном из выводов постояно был-бы 1кгц ? Кварц на 32кгц,но могу поставить и раз в 10 бысокочастотнее.
Спасибо.
Q=32768 kHz
Timer0
prescaller = 32
F= 1000 Hz

somereg B'00001111'
разрешаеш прерывание Timer0 и вперед
Org 0x0
goto main
;IRQ Vector
Org 0x4
bcf intcon,t0if
comf somereg
movf somereg,w
movwf portb
retfie

main
nop
goto main
Zebio вне форума  
Непрочитано 27.12.2004, 22:41  
DK
Почётный гражданин KAZUS.RUN
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,480
Сказал спасибо: 734
Сказали Спасибо 1,899 раз(а) в 777 сообщении(ях)
DK на пути к лучшему
По умолчанию

точно так не получишь 1000Гц. Надо в регистр таймера константу писать - коррекция времени на те команды - типа, сброс таймера, выдачу сигнала в порт. Одна команда - 4 тика, вот и считай коррекцию
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.
DK вне форума  
Непрочитано 28.12.2004, 00:27  
RETAS
Гость
 
Сообщений: n/a
По умолчанию Большое спасибо

Большое спасибо всем ответившым,буду вникать,а точность меня устраивает и в 10%.Главное было понять,как заставить процесор выполять как-бы паралельно две задачи: генерировать
сигнал в 1кгц и одновременно выполнять основную програму.
 
Непрочитано 09.01.2005, 17:52  
RETAS
Гость
 
Сообщений: n/a
По умолчанию

С программой генерации используя прерывания по переполнению счётчика
я вроде разобрался,но как тогда указать с какого места продолжать
основную программу,ибо после каждого сгенерированного импульса
возвращаться надо всё в другое место программы?
Существует ли какой нибудь другой способ сотворения генератора
несчитая его размещения в основном теле программы?
Спасибо.
 
Непрочитано 10.01.2005, 00:49  
DK
Почётный гражданин KAZUS.RUN
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,480
Сказал спасибо: 734
Сказали Спасибо 1,899 раз(а) в 777 сообщении(ях)
DK на пути к лучшему
По умолчанию

возврат из прерывания происходит туда, откуда и уходил. Т.е. для основной программы прозрачно - она и не заметит, что ты в прерывание ушел. Если, конечно, в обработчике не меняешь переменные основной программы.

А по поводу генерации - так всего три метода есть:
1. Внешний генератор - обработка прерывания по ноге. То бишь ловить надо изменение состояния входа. И опять обрабатывать прерывания от таймера Плюс в том, что частоту внешнего генератора можно подогнать любую... И сильно укоротить период счета. И на задержки на выполнение команд можно положить
2. На встроенном счетчике - обработка прерывания по переполнению таймера. Классический вариант. Но нужна коррекция.
3. Программная задержка на циклах. Надо очень много считать - все задержки, все ветвления програмы и прочее. Гемор жуткий. Чем сложнее програма, тем хуже. А если еще и кнопки обрабатываешь, тады ваще ой...
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.
DK вне форума  
Непрочитано 19.02.2005, 09:36  
RETAS
Гость
 
Сообщений: n/a
По умолчанию

Ребята появилась необходимость ещё в одном (1Гц) генераторе на том же PICе.
Помогите,пжл.,если можете - как сделать два генереатора в одном корпусе?

Точность частоты неимеет значения-это звукоая индикация.

Спасибо.
 
Непрочитано 19.02.2005, 17:18  
lisergin
Прописка
 
Регистрация: 29.01.2005
Адрес: Киев
Сообщений: 226
Сказал спасибо: 50
Сказали Спасибо 33 раз(а) в 24 сообщении(ях)
lisergin на пути к лучшему
По умолчанию

Сразу приходит на ум програмный делитель в той же процедуре обработки прерывания, которая я думаю у тебя уже есть и включается с частотой примерно килогерц. Вводишь переменную, в которой считаешь количество обращений к прерыванию, как только их станет 1000, это и будет твой 1 герц...
lisergin вне форума  
Непрочитано 04.03.2005, 13:49  
julbu
Прописка
 
Регистрация: 19.08.2004
Сообщений: 154
Сказал спасибо: 0
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
julbu на пути к лучшему
По умолчанию

Можешь использовать ШИМ в PIC16F627,628 - они кстати дешевле 16F84
julbu вне форума  
 
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PIC16F84A макс Микроконтроллеры, АЦП, память и т.д 1 11.12.2005 00:01
PIC16F84 и PIC16F84A Гость Микроконтроллеры, АЦП, память и т.д 6 21.11.2005 05:19
PIC16F84A??? RETAS Микроконтроллеры, АЦП, память и т.д 7 04.03.2005 04:20
pic16f84a khorght Микроконтроллеры, АЦП, память и т.д 1 09.09.2004 20:37


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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.