Например TDA7294

РадиоКот > Конкурс: Поздравь Кота по-человечески 2017!

Делитель частоты на PIC

Опубликовано 12.09.2017.
Создано при помощи КотоРед.

  

   Очень часто бывает необходим делитель частоты. Собирать его на счетчиках? А если разделить нужно например на 1000000? или на что-то не стандартное. 6 корпусов десятичных счетчиков - это уже целое устройство. Если частота не превышает 20 - 25 МГц и разделить нужно не менее чем на 12 (к сожалению кратно четырем из-за формирователя команд) - отличный выход - применение микропроцессора. У Микрочип есть недорогие малогабаритные микропроцессоры, например 6 выводные  PIC10F222T, или 8 выводные PIC12F629 и так далее. Разнообразие их очень велико. Они обладают очень низким энергопотреблением, большой нагрузочной способностью и они полностью статические. То есть их можно тактировать очень низкой частотой. Недавно мне потребовался делитель на 8000. Я долго ломал голову, уж очень не хотелось паять кучу счетчиков. И тут меня осенило ... "Эврика" воскликнул я и попробовал симулировать это в Proteus. Хочу поделиться полученным результатом. Вот программа на ассемблере для PIC12F629 деление на 2000. Кстати бесплатно получается еще на 8000 и на 16000.

    

     В чем суть программы: микропроцессор тактируется внешним сигналом, выбираем нужный порт на выход и в цикле производим инкремент порта и нужную задержка и опять в цикл. Таким образом на выводах порта у нас получается несколько частот кратных двум. Сложность только в том как найти задержку. В этом нам поможет программа: PIC_Delay.

 

    В ней уже учитывается деление на 4 формирователя тактов команды. Например рассчитаем делитель на 2000. Для удобства примем входную частоту 1МГц. Тогда нам нужна задержка на 1000мкс на половину периода. Учтем что у нас есть две команды не входящие в задержку: incf GPIO, GOTO Cikl0. Причем первая занимает один машинный такт а вторая два, с учетом делителя формирователя тактов: нужно вычесть из задержки 12мкс. Результат программы вставляем между инкрементом и циклом.

В Proteus собираем схему:

И любуемся:

   Наличие же на борту схемы генератора, позволяет сделать кварцевый генератор очень маленького размера. Например на частоту 1МГц и ниже найти приличный малогабаритный кварцевый резонатор или генератор очень трудно. Используя входы можно легко сделать управляемый делитель. А так как на борту у многих присутствуют компараторы, АЦП, таймеры, то вариантов применения становится ну очень много...

 

 

 


Файлы:
Исходник, прошивка, файл Proteus
Программа PIC_Delay


Все вопросы в Форум.


ID: 2569

Как вам эта статья?

 Нравится
 Так себе
 Не нравится

Заработало ли это устройство у вас?

 Заработало сразу
 Заработало после плясок с бубном
 Не заработало совсем

13 15 24