Электрификация

Справочник домашнего мастера

Частотомер на pic16f628a

Содержание

Многофункциональный частотомер на PIC16F628A и LED-индикаторах

Когда-то я собрал очень популярный на то время частотомер Денисова, вернее, его клон на PIC16F628A и индикаторе АЛС318. И вот по прошествии многих лет он попался мне на глаза. Измеряет он частоту вроде исправно, но уж больно примитивен, да к тому же показания постоянно мерцают. На досуге было решено на основе той схемы (изменено подключение двух выводов микроконтроллера, входные цепи и цепи питания) создать современный, качественный, но очень недорогой прибор, лишенный недостатков своего прототипа, а также дополненный множеством функций и режимов.

Описываемый ниже прибор имеет следующие возможности: «обычное» измерение частоты путем счета количества импульсов в течении одной секунды; измерение частоты низкочастотных сигналов через измерение периода (F=1/T) с точностью 0.001 Гц; измерение периода сигнала, причем для высокочастотных сигналов через частоту (T=1/F); измерение длительности как положительных, так и отрицательных импульсов. Так же имеется возможность сохранения в энергонезависимой памяти по одному измеряемому значению для каждого режима, с последующим просмотром при необходимости. Предусмотрено оперативное изменение ряда настроек прибора и автоматическое выключение при отсутствии воздействия на прибор в течении определенного времени.

Основные характеристики прибора:

Рассмотрим работу с устройством более подробно (схему и конструкцию рассмотрим ниже).

При включении прибора, после вывода приветствия, на индикаторе высвечиваются показания согласно ранее выбранному пределу (далее исходное состояние). При нажатии кнопки S1, на индикаторе появляется название текущего режима (в большинстве случаев — сразу, но редко, при измерении низкочастотных сигналов, может потребоваться удерживать кнопку до 2 с). При последующих отпускании и нажатии кнопки, названия индицируемых режимов меняются по кругу в порядке: частотомер (на индикаторе Freq_St) – спец.частотомер (Freq_SP) – измерение периода ( Period ) – измерение длительности положительного импульса (t __|-|__) — измерение длительности отрицательного импульса (t —|_|—) – частотомер … . Нажатие кнопки S2 во время индикации на дисплее какого-либо режима приводит к переходу прибора в исходное состояние с соответствующей сменой режима. В случае же отсутствия нажатия любой кнопки в течении времени ожидания (3-10 сек — оперативно регулируется), прибор переходит в исходное состояние с прежним (до нажатия S1) режимом.

Если после появления на индикаторе названия режима удерживать не отпуская кнопку S1 в течении 3 сек., на индикаторе появится надпись «to_SLEEP». При этом нажатие кнопки S2, так же как и отсутствие нажатия кнопок в течении времени ожидания, переводит прибор в спящий режим, выход из которого производится нажатием на любую кнопку. Нажатие же в этом режиме кнопки S1 (разумеется, предварительно ее отпустив) приводит к попеременному появлению на дисплее надписей «to_SLEEP» и «SETTINGS». Нажимая кнопку S2 в пункте «SETTINGS», осуществляется переход в подменю установок. Здесь “P_IND x.xx” – период индикации, “t_butt xx” – время ожидания нажатия кнопок в сек., “t_OFF xx” – время до выключения в минутах, при этом xx – непосредственно текущее значение параметра (моргает для заметности). В этом пункте нажатие S1 так же последовательно переключает подпункты, а нажатие кнопки S2 – изменяет текущий параметр (новое значение сразу же индицируется). Выход с сохранением текущих параметров – по истечении времени ожидания без нажатия кнопок.

Нажатие кнопки S2 в исходном состоянии (тоже, как отмечалось выше, длительностью до 2 секунд в некоторых режимах) приводит к появлению на дисплее надписи “ LOAD “. Отпускание кнопки сразу после появления надписи приводит к выводу на дисплей ранее сохраненного измеренного значения в течении 8 секунд (моргает для отличия от текущего измеряемого значения). Если же при появлении надписи “LOAD”, удерживая кнопку S2 нажатой, нажать кнопку S1, то происходит запись в энергонезависимую память текущего измеряемого значения, что подтверждается появлением на индикаторе моргающей надписи “ SAVE “.

Переход в спящий режим происходит также при отсутствии воздействия на кнопки в исходном состоянии в течении 8 – 64 минут (меняется оперативно).

Описание работы прибора в разных режимах

Обычный частотомер

Работа в этом режиме стандартная – подсчет импульсов таймером TMR0, следует только отметить, что отсчет времени счета (1 секунда) происходит в прерываниях от таймера TMR2 с интервалом в 2 мс, в которых так же происходит динамическая индикация.

Во время измерения признак режима – знак “F.” в старшем разряде (не индицируется при частоте более 9999999 Гц).

Частотомер специальный

В этом режиме при измерении частоты до 1000 Гц собственно измеряется период сигнала, а частота вычисляется по формуле F=1000000000/T, где T — в микросекундах, а F – в тысячных долях герца (светится запятая в 4-м разряде справа). Если частота окажется более 1000 Гц, измерение производится аналогично обычному частотомеру (обратное переключение происходит при частоте менее 900 Гц). Данный режим позволяет для низкочастотных сигналов уменьшить дискретность измерения с 1Гц до 0.001Гц, а значит и точность (на индикаторе не менее 3-х значащих разрядов).

Признак режима – вывод “F.- ” в старших 2-х разрядах (последовательно “затираются” индицируемым значением при измерении больших частот).

Измерение периода

Режим аналогичен специальному частотомеру. В данном режиме происходит непосредственное измерение периода (таймером TMR1, тактируемым частотой 1МГц от внутреннего генератора) для сигналов с периодом более 1000 мкс, а для меньшего периода – через измерение частоты по формуле T=1000000000/F, где F — в герцах, а T – в наносекундах. На индикаторе при этом светится запятая в 3-м разряде, что позволяет считывать показания в микросекундах в обоих случаях с тремя значащими разрядами минимум.

Признак режима – вывод “P.” в старшем разряде (при вычислении периода через частоту – добавляется верхняя черта в следующем разряде).

Измерение длительности импульсов (положительных и отрицательных)

Эти два режима аналогичны и отличаются только полярностью измеряемых импульсов. Измерение производится путем прямого подсчета длительности таймером TMR1, тактируемым от внутреннего генератора (период 0.25 мкс) в течении входного импульса. При этом, обеспечивается достоверность измерения длительностей от 3 мкс, для более коротких импульсов длительность измеряется косвенными методами и достоверность результата снижается. Данное обстоятельство (косвенное измерение длительности) индицируется путем моргания буквы “t” на индикаторе.

Для сигнала, длительностью менее 32768 мкс, результат отображается с точностью 0.25 мкс, в противном случае — точность (дискретность) равна 1 мкс.

Признак режима – вывод “t” в старшем разряде плюс верхний или нижний сегмент следующего разряда, в зависимости от режима регистрации положительных или отрицательных импульсов.

Следует отметить, что из-за несимметричности входной части прибора, а так же наличия на входе CCP микроконтроллера триггера Шмитта, при измерении длительности сигналов с пологими фронтами может появиться значительная погрешность. Этот эффект уменьшается при увеличении амплитуды входного сигнала. Попытка измерения сигналов с амплитудой значительно ниже 0.1 Вольт в любом режиме, может привести к индикации показаний, не соответствующих действительности (впрочем, это относится и к другим подобным приборам). При заведомо стабильном входном сигнале, косвенным признаком недостаточной амплитуды может быть большая нестабильность показаний прибора.

В случае, если временные параметры входного сигнала не позволяют данному прибору их измерить (при измерении периода и длительности), на индикаторе отображаются следующие показания: “F.too_hi” – слишком высокая частота, “P.too_big” – слишком большой период, “NO_SIG.” – нет сигнала.

Принципиальная схема и работа устройства

Микроконтроллер PIC16F628A (DD2) выводами порта В (кроме RB2) и выводом RA3 через ограничительные резисторы (R5-R12) управляет соответственно сегментами и запятой индикатора, в качестве которого используются два 4-х разрядных LED индикатора FYQ3641A с общим катодом (выводы сегментов и децимальной точки индикаторов соединены попарно). Управление разрядами происходит с выходов дешифратора DD1 (74HC138), на входы которого управляющий сигнал подается с выводов RA0-RA2 DD2. Выводами RA0 и RA1 так же производится контроль состояния кнопок управления S1 и S2 при помощи резисторов R1-R4. Тактирование микроконтроллера происходит от кварцевого генератора частотой 16 МГц, который включает внешние элементы Z1, C1-C3. Вывод MCLR включен в качестве вывода сброса и на него подан потенциал +5В. Динамическая индикация, как говорилось выше, происходит в прерываниях от TMR2 с интервалом 2 мс так, что обновление индикатора происходит с частотой примерно 63Гц. В данном случае обеспечивается ровное без мерцаний свечение индикатора во всех режимах прибора.

Сигнал с входного усилителя поступает на объединенные выводы T0CKI и CCP1 (выводы 3 и 9 MK DD2). В режиме обычного частотомера по выводу 3 производится счет импульсов, а вывод 9 (в данном случае он установлен как вход/выход RB3) – для открытия-закрытия входа и последующего «досчета». При измерении периода и длительности эти выводы включены собственно как входы T0CKI и CCP1. При этом используется оригинальный алгоритм с «захватом» значения TMR1 по фронтам сигнала и вычислением времени между захватами, а так же контролем корректности результата путем анализа содержимого таймера TMR0. Идея здесь заключается в том, что сигнал подается на объединенные входы захвата и таймера-счетчика МК, что позволяет по числу фронтов импульсов, зарегистрированных таймером, судить, не пропущены ли системой захвата искомые перепады сигнала по причине недостатка быстродействия МК.

Входной усилитель на транзисторах VT1-VT3 собран по известной и хорошо себя зарекомендовавшей схеме. Относительно высокая емкость конденсаторов С4 и С9 объясняется необходимостью обеспечения нижней границы полосы пропускания не менее 1Гц (для этого же служит резистор R23). Элементы C7, C10, C14, L1 служат для увеличения коэффициента усиления при максимальных измеряемых частотах. VD1,VD2 и R14 защищают транзистор VT1 от пробоя входным сигналом.

Входной усилитель потребляет значительный ток (около 5 мА), поэтому, потребовалось его отключать от питания в спящем режиме посредством ключа на MOSFET транзисторе с P-каналом VT2. Из-за дефицита свободных выводов МК, этот ключ управляется с вывода 1 DD2 (RA2), используемого так же для управления дешифратором DD1. В рабочем режиме на этом выводе присутствует меандр с частотой около 125 Гц. При отрицательных уровнях, конденсатор C6 заряжается через цепочку VD3R16 и транзистор VT2 открывается отрицательным потенциалом на затворе. Диод препятствует разряду конденсатора при положительном уровне сигнала через относительно малое сопротивление резистора R16. Постоянная времени цепочки C6,R20 выбрана достаточно большой для исключения попадания на входной усилитель помехи с частотой 125 Гц. В спящем режиме на выходе 1 DD2 присутствует положительный потенциал, конденсатор C6 разряжается через резистор R20 и, примерно через 3-5 сек., транзистор VT2 закрывается и полностью отключает входной усилитель от источника питания. Потребляемый прибором в спящем режиме ток в 10 мкА, при желании, позволяет полностью отказаться от механического выключателя питания.

На включенных в этом режиме как входы выводах 17 и 18 (RA0,RA1) МК, а значит и входах 1, 2 DD1, благодаря резисторам R1, R2 тоже присутствует высокий потенциал. При этом, появляется уровень логического 0 на выходе 7 DD1 и через резистор R13 подается на включенный в данном случае в качестве входа вывод RB7 DD2. При нажатии любой кнопки, меняется код на входах дешифратора и на его выводе 7 появляется уровень логического 1, что так же передается через R13 на вывод МК RB7. Так как в этом режиме включено прерывание по изменению уровня на этом входе, микроконтроллер по нажатию любой кнопки выходит из спящего режима (SLEEP).

Схема питается от интегрального стабилизатора DA1 типа NCP551SN50 с выходным напряжением 5 Вольт. Данная микросхема характеризуется малым падением напряжения и экстремально малым собственным потребляемым током (типовое значение 4 мкА). Применение вместо использованного стабилизатора обычного 78L05 сведет смысл спящего режима на нет из-за высокого тока потребления последнего – около 3 мА.

Компоновка

Все детали прибора размещены на печатной плате из стеклотекстолита с односторонней металлизацией размерами 63х64 мм. На прилагаемых чертежах изображены соответственно конфигурация печатных дорожек, размещение деталей со стороны металлизации и размещение деталей со стороны без металлизации.

Размеры платы позволяют удобно ее разместить в корпусе от мультиметра типа D-830, предварительно срезав в нем пластмассовые стойки. При этом, в нем остается достаточно места для различных вариантов питания – от «кроны» до 5-6 элементов типа ААА. Тот факт, что все элементы (включая кнопки, входной разъем и винтовую колодку для подачи питания), компактно размещены на плате, позволяет использовать прибор даже без корпуса. Следует обратить внимание на расположение индикаторов в нижней части платы. Такая компоновка, несмотря на необычность, на мой взгляд, более выгодна с точки зрения угла обзора индикатора.

Детали

Индикаторы можно заменить на CPD-03641 с общими катодами. Дешифратор меняется на 74AC138, причем, в этом случае, при необходимости можно до двух раз увеличить ток, а значит и яркость индикаторов, уменьшив сопротивления резисторов R5-R12 вплоть до 390 Ом. Но тогда пропорционально увеличится ток потребления прибора в рабочем режиме (мое мнение – яркость индикаторов достаточна и при значениях резисторов, указанных на схеме). Кварцевый резонатор можно использовать и на 4МГц, но при этом минимально регистрируемая длительность увеличивается в 4 раза. Прошивка для этого случая тоже прилагается. Кнопки S1 и S2 – тактовые, с боковым нажатием. Транзистор VT1 можно использовать BF998R, VT2 –IRLML6401, а VT3 – любой n-p-n с граничной частотой не менее 300 МГц. Конденсатор C4 – на напряжение не менее 100В. Все диоды можно заменить отечественными КД521, КД522. В качестве входного применен разъем для блоков питания (диаметр – 5.5 мм). К ее ответной части через отрезок экранированного кабеля длиной 50 см припаяны соответственно щуп и зажим типа «крокодил».

Для уменьшения габаритов конденсаторы и резисторы применены преимущественно SMD, типоразмера 0805 (C6 можно применить танталовый). На печатные проводники, в месте прохождения под SMD-элементами, для исключения замыканий предварительно приклеены полоски, вырезанные из бумажного скотча. Выводные резисторы применены в позициях, где это выгодно с точки зрения удобства разводки платы. На плату сначала необходимо впаять SMD компоненты, потом проволочные перемычки и, в последнюю очередь, выводные компоненты.

Стабилизатор DA1, в крайнем случае, можно заменить менее дефицитным LP2950CZ-5.0. Для него на плате предусмотрено место (на фотографиях изображен именно этот вариант), однако, в этом случае ток в спящем режиме увеличится до 70-100 мкА.

Внешний вид собранной платы с обеих сторон приведен на фотографиях.

Настройка

При использовании указанных на схеме элементов и достаточно качественного кварцевого резонатора вышеуказанные характеристики прибора обеспечиваются без всякой регулировки. Если имеется высокоточный образцовый частотомер, имеет смысл, подав на вход прибора сигнал с частотой порядка 5-30 МГц и контролируя его значение по образцовому частотомеру, регулируя С3 добиться возможно близких показаний приборов. Так же желательно, при необходимости, подбором сопротивления R21 установить напряжение на коллекторе VT3 в пределах 2-3 Вольта.

Программное обеспечение

Программа для микроконтроллера написана на Ассемблере. Приведенные HEX-файлы для прошивки микроконтроллера (для случаев использования кварцевого резонатора на 16 и 4 МГц) получены путем трансляции программы в среде MPASM. Слово конфигурации заносится в программы для прошивки автоматически при загрузке файла. При использовании кварца на 4МГц, необходимо в начале программы изменить в строке «X_16 EQU 1» значение 1 на 0 и заново оттранслировать. Следует отметить, что для полноценного использования всех возможностей, предпочтительно использование кварца на 16 МГц.

Вложенные файлы

Во вложении, кроме вышеуказанных кода и прошивки, имеются Proteus-модель и плата в формате LAY.

Обратите внимание, что в модели резистор R2 исключен из моделирования, так как он вносит искажения в индикацию (особенность Proteus). Однако, он необходим для выхода из спящего режима и для наблюдения этого действия следует в свойствах R2 снять «птичку» с пункта «исключить из моделирования».

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
DD1 Микросхема 74HC138 1 Поиск в Utsource В блокнот
DD2 МК PIC 8-бит PIC16F628A 1 Поиск в Utsource В блокнот
DA1 Микросхема NCP551SN50 1 LP2950-5.0 Поиск в Utsource В блокнот
VT1 MOSFET-транзистор BF998 1 Поиск в Utsource В блокнот
VT2 MOSFET-транзистор IRLML6402 1 IRLML6401 Поиск в Utsource В блокнот
VT3 Транзистор KT368 1 Поиск в Utsource В блокнот
VD1-VD3 Выпрямительный диод 1N4148 3 КД521 Поиск в Utsource В блокнот
HL1, HL2 Индикатор FYQ3641 2 CPD-03641 Поиск в Utsource В блокнот
Z1 Кварцевый резонатор 16 МГц 1 4 МГц Поиск в Utsource В блокнот
C1 Конденсатор 22 пФ 1 Поиск в Utsource В блокнот
C2 Конденсатор 10 пФ 1 Поиск в Utsource В блокнот
C3 Конденсатор подстроечный 22 пФ 1 Поиск в Utsource В блокнот
C4 Конденсатор 1 мкФ 1 Поиск в Utsource В блокнот
C5, C7, C8, C12 Конденсатор 100 нФ 4 SMD Поиск в Utsource В блокнот
C6 Конденсатор 2.2 мкФ 1 SMD Поиск в Utsource В блокнот
C9 Конденсатор 470 мкФ 6.3В 1 Поиск в Utsource В блокнот
C10, C14 Конденсатор 10 нФ 2 SMD Поиск в Utsource В блокнот
C11 Электролитический конденсатор 47мкФ 6.3В 1 Поиск в Utsource В блокнот
C13 Электролитический конденсатор 470 мкФ 10В 1 Поиск в Utsource В блокнот
R1, R2, R13 Резистор 10 кОм 3 Поиск в Utsource В блокнот
R3, R4 Резистор 470 Ом 2 Поиск в Utsource В блокнот
R5-R12 Резистор 750 Ом 8 SMD Поиск в Utsource В блокнот
R14 Резистор 1 кОм 1 Поиск в Utsource В блокнот
R15 Резистор 1 МОм 1 SMD Поиск в Utsource В блокнот
R16 Резистор 4.7 кОм 1 SMD Поиск в Utsource В блокнот
R17 Резистор 10 кОм 1 SMD Поиск в Utsource В блокнот
R18 Резистор 1 кОм 1 SMD Поиск в Utsource В блокнот
R19 Резистор 300 Ом 1 SMD Поиск в Utsource В блокнот
R20 Резистор 300 кОм 1 SMD Поиск в Utsource В блокнот
R21 Резистор 47 кОм 1 SMD Поиск в Utsource В блокнот
R22 Резистор 1 кОм 1 SMD Поиск в Utsource В блокнот
R23 Резистор 300 Ом 1 SMD Поиск в Utsource В блокнот
R24 Резистор 470 Ом 1 SMD Поиск в Utsource В блокнот
S1, S2 Кнопка тактовая Угловая 2 Поиск в Utsource В блокнот
XS1 Разъем Питания 5.5 мм 1 Поиск в Utsource В блокнот
XS2 Винтовая колодка 2-х конт. 1 Поиск в Utsource В блокнот
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Частотомер — цифровая шкала с LCD индикатором 16×1

Этот цифровой частотомер разработан на основе моей старой конструкции Частотомер — цифровая шкала с LCD (ЖКИ). Прототип был изготовлен в далеком 2001 г., с тех пор его повторили и до сих пор используют многие радиолюбители. Несмотря на то, что за прошедшие годы появилось много новых разработок, прибор ничуть не устарел и по совокупности параметров вполне может конкурировать с любым современным частотомером своего класса.

А вернулся я к нему по одной простой причине. Дело в том, что LCD индикатор KO-4B, который я использовал, в настоящее время снят с производства и приобрести его очень сложно. А у меня возникла необходимость изготовить еще один экземпляр этого частотомера. Можно, конечно, собрать аналог индикатора на LED и AVR, но это как-то очень уж нерационально.

В общем, появилась новая разработка. В частотомере я использовал самый распространенный в настоящее время символьный индикатор WH1601A — 16 символов в 1 строке производства фирмы Winstar, но можно использовать и LCD индикатор 16 символов в 2 строки. Графические возможности этого индикатора гораздо больше, чем у KO-4B, было бы неразумно их не использовать.

Кроме того, за прошедшие годы радиотехника существенно продвинулась в сторону высоких частот. Поэтому я увеличил разрядность математики в программе, что позволило поднять верхнюю границу измеряемых частот до аппаратного предела, определяемого быстродействием PIC и внешнего СВЧ делителя. Быстродействие PIC, кстати, тоже выросло. Если внутренний счетчик PIC16F84 работал до частот, не более 40…45 МГц, то в современном PIC16F628A он уверенно считает до 90…95 МГц. Если использовать внешний СВЧ делитель на 256, верхняя измеряемая частота может быть более 20 ГГц!

Как и прототип, этот частотомер может быть использован как универсальный измерительный прибор или в качестве цифровой шкалы связной и радиоприемной аппаратуры всех типов. С прибором можно использовать до трех внешних делителей с различными коэффициентами деления в пределах 2…256. Номер подключенного в данный момент делителя определяется автоматически.

При использовании частотомера в качестве цифровой шкалы в его энергонезависимую память можно записать до 3 значений промежуточных частот в диапазоне от 0 до 1 ГГц. Их значения вводятся с точностью до 10 Гц и в любой момент могут быть изменены пользователем с помощью 3-х кнопок, расположенных на передней панели прибора.

В частотомере предусмотрена возможность программной калибровки, что позволяет использовать любые кварцевые резонаторы в диапазоне 2…20 МГц. Значения всех промежуточных частот, коэффициенты деления используемых внешних делителей, а также калибровочные константы могут изменяться пользователем без применения каких-либо дополнительных устройств. Принцип действия частотомера классический: измерение количества импульсов входного сигнала за определенный интервал времени.

Принципиальная схема прибора показана на рис.1. При использовании указанных на схеме деталей входной формирователь имеет полосу пропускания 1 Гц…100 МГц, входное сопротивление 500 ком и чувствительность около 100 МВ.

Управление частотомером — цифровой шкалой осуществляется с помощью 3-х кнопок SB1 … SB3, размещенных на передней панели. Они служат для переключения времени измерения. При нажатии на SB1 включается предел 0,1 сек, а при нажатии на SB2 или SB3 — 1 cек или 10 сек соответственно.

С помощью этих же кнопок можно ввести коэффициенты деления до 3-х используемых с прибором делителей. Это может оказаться полезным при проведении измерений в широком диапазоне частот. Например, первый делитель работает в диапазоне 500 МГц…2 ГГц, а второй — 30 МГц…500 МГц и они имеют разный коэффициент деления. При смене делителя прибор автоматически будет учитывать смену его коэффициента деления при расчете показаний.

Для калибровки прибора достаточно просто ввести истинную частоту генерации кварца. В любительских условиях наибольшей точности можно добиться, если измерить ее с помощью SDR приемника. Достаточно поднести антенну приемника к кварцу. При этом влияние на частоту генерации кварца минимально, и точность измерения может достигать +/- 1 Гц, если приемник предварительно откалибровать по сигналам радиостанций, вещающих на эталонных частотах.

Долговременная точность и стабильность показаний будут определяться стабильностью частоты кварцевого генератора. Конечно, нельзя требовать от внутреннего генератора PIC контроллера «суперпараметров». Но ведь для любительских целей они чаще всего и не нужны. Однако, если необходима высокая точность измерений и долговременная стабильность, в качестве опорного лучше использовать внешний термостатированный генератор.

Более подробно особенности наладки и работы с прибором, а также методика калибровки описаны в подробном описании.

Частотомер — 3 рабочие схемы для сборки своими руками

Сегодня рассмотрим пошагово создание частотомера своими руками. Первым делом поговорим о характеристиках и особенностях прибора на pic16f628a, рассмотрим схему и особенности монтажа. Вторая схема частотомера — цифровой шкалы. Уделим внимание подбору необходимых комплектующих и остановимся детальнее на сборке. Третья схема представляет простой частотомер на микросхемах. Но обо всём по порядку.

  • Смотрите также 3 рабочие схемы для сборки осциллографа своими руками

Частотомер на PIC16F628 своими руками

Первым делом рассмотрим простую и дешевую схему частотомера. Он может измерять сигналы от 16 до 100Гц с максимальной амплитудой 15В. Чувствительность высокая, разрешение — 0,01 Гц. Входной сигнал может быть синусоидальной, прямоугольной или треугольной волной.

Частотомер может использоваться во многих приложениях. Например, для наблюдения за точностью генератора, для измерения частоты сети или нахождения оборотов двигателя, соединенного с датчиком.

Схема частотомера и необходимые детали для монтажа

Файл печатной платы представлен в формате PDF, архив можно скачать ниже. Вы можете сделать плату используя метод ЛУТ.


CCP (Capture(Захват)/Compare(Сравнение)/PWM(ШИМ)) модуль PIC-микроконтроллера считывает входной сигнал. Используется только функция захвата.

Необходимые детали для сборки частотомера:

  • МК PIC 8-бит — PIC16F628A (PIC16F628-04/P).
  • 4 биполярных транзистора — BC547.
  • 2 керамических конденсатора — 22 пФ.
  • 12 резисторов — 1х4.7 кОм, 4х1 кОм, 7х330 Ом.
  • Кварц — 4 МГц.
  • 4 семисегментных индикатора (общий катод).

Радиоэлементы для изоляции:

  • Биполярный транзистор — BC547.
  • Выпрямительный диод — 1N4148
  • Оптопара — 4N25M.
  • 4 резистора — 2х1 кОм, 1х10 кОм, 1х470 Ом.

Необходимые комплектующие для сборки питания:

  • Линейный регулятор — LM7805.
  • 2 электролитических конденсатора — 100 мкФ, 16В.
  • 2 полиэфирных конденсатора — 220 нФ.

Дисплеи — красные, 7-сегментные светодиодные, 14,2 мм с общим катодом.

Рекомендации по подключению частотомера

Перед измерением частоты входного сигнала, он должен быть преобразован в прямоугольный. Для этой цели используется схема оптической развязки с оптроном 4N25. Таким образом, входной сигнал надежно изолирован от микроконтроллера и превращается в меандр. Амплитуда сигнала не должна превышать 15В. Если это произойдет, резистор 1кОм может сгореть. Если вы хотите измерить частоту сети, вы должны использовать 220В/9В трансформатор.

  • Схема DDS-генератора сигналов

Напряжение питания должно быть в пределах 8–12В. При большем напряжении схема может быть повреждена. Нужно быть осторожными с полярностью при подключении питания.
Принципиальная схема счетчика (частотомера) приведена в файле проекта. Есть 4 дисплея, которые работают по методу мультиплексирования (динамическая индикация). Для измерения вывод RB3 подключен к выходу оптического изолятора. 5 вывод второго дисплея подключен к питанию через резистор 1 кОм, так что точка после второго дисплея горит. Это соединение не показано на схеме.

C-код, написанный в PIC C компиляторе, доступен для скачивания. HEX также прилагается.
Мы использовали два дополнительных разъема. Первый (18 контактный, 2 ряда) для микроконтроллера PIC16F628, и второй (40 контактный, 2 ряда).
Файлы для скачивания: 1chastotomer-na-pic16f628.rar
Видео о сборке частотомера на PIC16F628A:

Частотомер — цифровая шкала. Схема и инструкция по монтажу

Рассматриваемое устройство выполняет функции:

  • частотомера с выводом измеренного значения частоты в герцах (до 8 разрядов);
  • цифровой шкалы с АПЧ генератора плавного диапазона (ГПД) для радиолюбительского трансивера;
  • электронных часов.

Основу устройства составляет программируемый контроллер PIC16F84 фирмы Microchip. Быстродействие и широкие функциональные возможности этого контроллера позволяют подавать сигнал частотой до 50 МГц прямо на его счетный вход, то есть можно обойтись без предварительного делителя, обычно применяемого в устройствах подобного типа.

Основные характеристики цифрового частотомера

  1. Диапазон измеряемых частот — 0–50 МГц.
  2. Диапазон программируемых значений ПЧ — 0–16 МГц.
  3. Минимальный уровень входного сигнала — 200 мВ.
  4. Время измерения частоты — 1 с.
  5. Погрешность измерения — ±1 Гц.
  6. Напряжение питания — 5±0,5 В.
  7. Ток потребления устройства — не более 30 мА.

Наличие электрически перепрограммируемой памяти данных внутри PIC16F84 позволило без специального оборудования перепрограммировать значение промежуточной частоты (ПЧ). Это дает возможность оперативно встраивать цифровую шкалу в трансивер с любым (0–16 МГц) значением промежуточной частоты.

  • Смотрите схему измерителя емкости конденсаторов

В качестве устройства индикации применен модуль ЖКИ от телефонных аппаратов типа Panaphone. Ввод информации в модуль осуществляется по двум линиям в последовательном коде. Полезной оказалась встроенная функция электронных часов. Малый ток потребления обуславливает малые помехи радиоприемной аппаратуре, в которую может встраиваться данное устройство.

Цифровой частотомер — схема и её описание, необходимые комплектующие


Список необходимых радиоэлементов:
На транзисторе VT1 и микросхеме DD1 выполнен формирователь входного сигнала. Микросхема DD2 выполняет функции контроллера частотомера, цифровой шкалы с АПЧ, управления модулем ЖКИ, а также позволяет оперативно изменять режим работы устройства.
Если на выводе 1 микросхемы DD2 присутствует уровень логической «1», то прибор выполняет функцию частотомера, если уровень логического «0» — цифровой шкалы. В режиме цифровой шкалы на индикатор выводится значение частоты входного сигнала равное Рвх+Р„ч при наличии уровня логической «1» на выводе 2 микросхемы DD2; или Fвх-Fпч — при уровне логического «0» на выводе 2 DD2.

  • Смотрите, как сделать щуп для осциллографа

Для записи необходимого значения Fпч надо в режиме частотомера подать на вход устройства сигнал с частотой Fпч (сигнал опорного генератора или телеграфного гетеродина, настроенных на центральную частоту полосы пропускания фильтра ПЧ), а на вывод 8 микросхемы DD2 на время 1,5–2 с подать уровень логического «0». Значение Fпч сохраняется в памяти при отключении питания и может неоднократно (не менее 106 раз) перепрограммироваться приведенным выше способом.
Система АПЧ ГПД работает следующим образом. После измерения частоты входного сигнала производится анализ числа равного сотням герц и, если оно четное, на вывод 8 микросхемы DD2 выдается уровень логического «0». Если нечетное, на вывод 8 микросхемы DD2 выдается уровень логической «1». Эти логические сигналы, предварительно проинтегрировав, можно использовать для управления емкостью варикапа в контуре ГПД. В результате осуществляется стабилизация частоты возле четных значений сотен герц с точностью ±10 Гц.
В режиме цифровой шкалы можно осуществить гашение десятков и единиц герц, если установить уровень логического «0» на выводе 9 микросхемы DD2.
Для перевода устройства в режим электронных часов необходимо нажать кнопку «НК». Для корректировки часов и минут служат кнопки «S1» и «S2».
Печатная плата частотомера:

Скачать прошивку и исходный код можно ниже:
Файлы для скачивания: 2cifrovoy-chastotomer.rar
Смотрите также видео, как собрать частотомер своими руками:

Простой частотомер на микросхеме своими руками — характеристики и схема

Параметры предлагаемого частотомера приведены в следующей таблице:

Режим работы Частотомер Частотомер Цифровая шкала
Диапазон измерений 1 Гц…20 МГц 1–200 МГц 1–200 МГц
Дискретность 1 Гц 10 Гц 100 Гц
Чувствительность 40 мВ 100 мВ 100 мВ

Данный частотомер обладает целым рядом преимуществ по сравнению с предшествующими:

  • современная дешевая и легко доступная элементная база;
  • максимальная измеряемая частота — 200 МГц;
  • совмещение в одном приборе частотомера и цифровой шкалы;
  • возможность увеличения максимальной измеряемой частоты до 1,2 ГГц при незначительной доработке входной части прибора;
  • возможность коммутации во время работы до 4 ПЧ.

Измерение частоты осуществляется классическим способом: подсчет количества импульсов за фиксированный интервал времени.
Входной сигнал через конденсатор С4 поступает на базу транзистора VT1, который усиливает входной сигнал до уровня, необходимого для нормальной работы микросхемы DD2. Микросхема DD2 193ИЕЗ представляет собой высокочастотный делитель частоты, коэффициент деления которого равен 10.
Ввиду того что в используемом микроконтроллере К1816ВЕ31 максимальная частота счетного входа Т1 f=Fкв/24, где Fкв — частота используемого кварца, а в частотомере Fкв=8,8672 МГц, сигнал с высокочастотного делителя поступает на дополнительный делитель частоты, представляющий собой десятичный счетчик DD3. Процесс измерения частоты начинается с обнуления делителя DD3, сигнал сброса которого поступает с вывода 12 микроконтроллера DD4. Сигнал разрешения прохождения измеряемого сигнала на десятичный делитель поступает с вывода 13 DD4 через инвертор DD1.1 на вывод 12 DD1.3.
По окончанию фиксированного интервала времени измерения на выводе 13 DD4 появляется высокий уровень, который через инвертор DD1.1 запрещает прохождение измеряемого сигнала на делитель DD3, и начинается процесс преобразования накопленных импульсов времени в частоту, а также подготовка данных для вывода на индикацию.

Принципиальная схема частотомера и необходимые детали


Список необходимых радиоэлементов:
Данный прибор может работать как в высокочастотном, так и в низкочастотном диапазонах. При работе в низкочастотном диапазоне переключатель S1 необходимо установить в верхнее положение и сигнал подавать на вход 2 (вывод 9) платы частотомера. Для измерения частоты от 1 Гц до 20 МГц необходимо использовать формирователь.
Программа работы микроконтроллера находится в ПЗУ DD8, микросхема DD5 используется для мультиплексирования адресов микроконтроллера. Прошивка ПЗУ для работы прибора в качестве частотомера приведена в таблице:
Для получения максимальной эффективности использования микроконтроллера в приборе применена динамическая индикация.
При использовании частотомера в качестве цифровой шкалы на вывод 22 DD8 необходимо с помощью переключателя S2.3 подать высокий уровень. Выбор значения ПЧ производится путем соединения выводов 10,11 микросхемы DD4 с землей. Вход 3 (вывод 5) платы частотомера предназначен для включения выбранной промежуточной частоты (например, при переходе с приема на передачу). Во время работы прибора в режиме цифровой шкалы младшие разряды индикатора показывают сотни герц. Работе прибора в режиме цифровой шкалы соответствует иная прошивка ПЗУ.

Печатная плата частотомера и рекомендации по монтажу своими руками

Печатная плата частотомера:
Печатная плата изготовлена из двухстороннего стеклотекстолита размерами 100х130 мм. Индикатор крепится непосредственно на печатной плате двумя хомутами из обычного монтажного провода. Для установки микросхемы DD8 предусмотрена панелька. При разводке платы предусматривалась необходимость размещения транзистора VT1 в максимальной близости к DD2.
Вокруг VT1 и DD2 оставлено возможно большее количество фольги с обеих сторон с целью экранирования высокочастотных цепей. В конструкции в качестве индикатора HL1 применен ИВ-18 как наиболее популярный в радиолюбительских конструкциях. В случае необходимости миниатюризации конструкции индикатор ИВ-18 может быть заменен на ИВ-21, который имеет значительно меньшие габаритные размеры. В этом случае необходимо уменьшить напряжение накала и отрицательное напряжение на катоде согласно паспортным данным. Микросхему DD1 желательно применять серии 1533 как более высокочастотную.
Для питания частотомера используется блок питания с напряжением от -20 В до -30 В и напряжением накала — до 4,8 В при использовании индикатора ИВ-18. В указанной схеме блока питания желательно диод КД503 заменить на стабилитрон КС133, что исключает ложную подсветку сегментов индикатора.
Наладку частотомера следует начинать с проверки на обрыв всех без исключения соединительных проводников печатной платы, затем проверить на отсутствие замыкания соседних на печатной плате соединительных проводников. Сразу же после подачи питания на частотомер проконтролируйте ток потребления по напряжению +5 В. Он не должен превышать 250 мА.
Затем измерьте напряжение на коллекторе VT1, оно должно находиться в пределах 2,0–3,0 В. Установка указанного напряжения осуществляется подбором резистора R3. При безошибочном монтаже, исправных деталях и отсутствии ошибок в программе окончательное налаживание прибора заключается в точной установке частот задающего генератора микроконтроллера с помощью конденсатора С7 в соответствии с показаниями образцового частотомера.
Благодаря программно-управляемому процессу измерения можно путем незначительного изменения программы микроконтроллера применять недесятичные высокочастотные делители. Были опробованы в данном приборе микросхемы 193ПП1 (коэффициент деления — 704), 193ИЕ6 (коэффициент деления — 256). Испытания показали, что максимальная частота измеряемого сигнала достигает значения 1 ГГц. Наиболее предпочтительной оказалась микросхема 193ПЦ1, поскольку она имеет входной усилитель. Микроконтроллер К181ВЕ51 можно заменить на К1816ВЕ31, К1830ВЕ31, К1830ВЕ51 или их зарубежные аналоги — 8031, 80С31. При отсутствии микросхемы 193ИЕЗ можно заменить ее К500ИЕ137, включив ее по типовой схеме.
Видео, как собрать частотомер на одной микросхеме:

  • 80
  • 1
  • 2
  • 3
  • 4
  • 5

Счетчик Гейгера на микроконтроллере PIC 16F84

Answer

Счетчик Гейгера своими руками

Счетчик Гейгера на микроконтроллере PIC 16F84
Мысль приобрести счетчик Гейгера появилась у меня давно, как говорится, на всякий случай.
Но посмотрев на цены готовых приборов, желание пропало 🙂
Так же несколько раз натыкался в интернете на схемы приборов, но подходящий для себя так и не нашел.
…и вот, однажды, почитав какой то форум, о том, как много всяких радиоактивных вещей может нас окружать, о которых мы даже и не догадываемся, желание иметь под рукой подобный прибор появилось вновь.
Для этого было решено разработать собственный прибор.
Ниже расположена схема счетчика Гейгера на микроконтроллере PIC 16F84, печатная плата в PCAD»е и прошивка микроконтроллера.

Прошивка Печатная плата в PCAD`е >>>> (Чем открыть)
Характеристики прибора:
Питание: 9 В
Потребляемый ток без подсветки ЖКИ: 7 мА
с подсветкой ЖКИ: 11 мА (зависит от яркости)
Диапазон измерений: 0 мкР — 144 мР (предел счетчика СБМ-20)

ЖКИ пришлось заказвыать, т.к. в магазинах подходящих по габаритам не оказалось. Для этих целей оптимально подходит 8 символьный 2 строчный ЖКИ на базе контроллера HD44780.
В принципе, должен подойти любой 2х строчный ЖКИ на базе контроллера HD44780
Я покупал на eBay: http://goo.gl/HkmM1A
Счетчик СБМ-20 можно заказать в интернет-магазине.

Ссылка на ebay: http://www.ebay.com/sch/i.html?_sacat=0&_nkw=sbm-20+tube&rt=nc&LH_BIN=1
Повышающий трансформатор намотан на ферритовом кольце 16х10х4.5
Обмотка I — 420 витков провода ПЭВ 0.1
Обмотка II — 8 витков провода ПЭВ 0.15 — 0.25
Обмотка III — 3 витка провода ПЭВ 0.15 — 0.25
В качестве корпуса использован цифровой мультиметр DT-830. Дешевле оказалось купить мультиметр ради его корпуса, чем покупать корпус отдельно 🙂
Небольшая доработка
Вынимаем потроха, удаляем наклейку, канцелярским ножом и напильником доводим до совершенства.
Так же сверлим необходимые отверстия:
При проектировании я не учел одну вещь — найти малогабаритную кнопку и выключатель для крепления на корпусе оказалось непросто.
Поэтому пришлось сделать дополнительно небольшую печатку для монтажа выключателя от неисправного мультиметра, а кнопку закрепить хомутиком на внутренней стороне передней панели.
Проверка прибора:
Для начала проверяем правильность монтажа, подключение трансформатора и ЖКИ, а также полярность подключения счетчика СБМ-20.
Подаем питание.
ВНИМАНИЕ! В схеме присутствует высокое напряжение!
На конденсаторе С1 должно быть напряжение не менее 200 вольт (при измерении цифровым мультиметром, т.к его внутреннее сопротивление не достаточно высоко, происходит падение напряжения, на самом деле на конденсаторе С1 должно быть около 350 вольт!).
На ЖКИ появляется текст:

После инициализации, на дисплее отображаются показания эквивалентной дозы радиации. В среднем, около 14-22 мкР, но может быть и более.
В дальнейшем, каждую секунду происходит обновление показаний, с уточнением средней эквивалентной дозы радиации за единицу времени.
Далее нужно проверить, что счетчик действительно работает, и может показывать что нибудь большее, чем естественный радиационный фон.
Для этого в магазине удобрений можно купить «нитрат калия» (KNO3). В KNO3 содержится его радиоактивный изотоп, на который должен реагировать прибор.
Емкость с KNO3 необходимо расположить максимально близко к чувствительной стороне прибора (там, где находится счетчик СБМ-20).
Опять же, результат может быть разный, но показания должны быть существенно выше естественного фона.
Видео работы

9zip.ru Радиотехника, электроника и схемы своими руками Миниатюрный дозиметр на микроконтроллере
Данный вариант дозиметра появился по многочисленным просьбам, как дальнейшее совершенствование предыдущего, построенного на микроконтроллере ATMEGA8 с довольно специфическим дисплеем от мобильного телефона Siemens. Первое оказалось излишним для такого простого устройства, а второе делало повторение затруднительным. Здесь описан уже третий вариант самодельного дозиметра, и он — максимально прост к повторению. Почти все детали можно свободно найти на Aliexpress и выпаять с плат от неисправной электроники. Сложности могут возникнуть, разве что, с доставанием счётчика Гейгера СБМ-20 (или СТС-5), но при желании его также можно найти.


нажми для увеличения

Кратко пробежимся по схеме дозиметра. На ШИМ-контроллере CE8301 построен преобразователь из 3,7 в 5 вольт для питания всей логики от литиевого аккумулятора. На основе этой микросхемы в маленьком «транзисторном» корпусе сделаны многие миниатюрные модули преобразователей напряжения на Aliexpress.
Высоковольтный преобразователь 5В — 400В выполнен на распространённой микросхеме MC34063 с внешним ключом. Полевой транзистор включен по упрощённой схеме, что стало возможным благодаря сверхмалой нагрузке данного преобразователя. В верхнем плече делителя напряжения обратной связи используется составной высокоомный резистор с суммарным сопротивлением 32 МОм. Номиналы резисторов этого делителя можно смело уменьшить, пересчитав, т.к. КПД данного преобразователя достаточно высок. Изначально такое большое сопротивление было выбрано для того, чтобы не делать лишней нагрузки на преобразователь. При подключении счётчика Гейгера важно соблюдать полярность: положительный вывод должен быть подключен к резистору R9.
Здесь же используется повышающий трансформатор от CCLF-инвертора, выпаянный с платы ЖК-монитора. Он и счётчик Гейгера являются самыми крупными деталями в этом устройстве. Две первичные обмотки этого трансформатора соединены последовательно (на схеме это не показано). Но более подходящим здесь был бы вот такой миниатюрный высоковольтный трансформатор.
Операции подсчёта импульсов срабатывания счётчика Гейгера выполняет микроконтроллер ATtiny85. Его ресурсов более, чем хватает для этих целей. Отображение информации ведётся на миниатюрный OLED дисплей с последовательным интерфейсом. На экране отображается только подсчитанный радиационный фон в микрорентгенах и уровень заряда аккумулятора в виде привычного значка батарейки с разной степенью заполнения. Каждое срабатывание счётчика Гейгера индицируется звуковым сигналом.

На резисторах R6 и R7 выполнен делитель для измерения напряжения аккумулятора. Диод D3 установлен на всякий случай, он защищает вход микроконтроллера от возможных импульсов амплитудой больше 5 вольт.
Вся схема собрана на односторонней печатной плате (детали — с одной стороны, дисплей — с другой) размерами 95 * 55 мм, под готовый китайский корпус размерами 100*60*25 мм. Печатная плата пока только такая, она дорабатывалась по ходу сборки. Возможно, она будет улучшена.

Разъём ICSP здесь не разведён, для программирования используется удобная прищепка.
печатная плата:dosimeter_pcb.pdf(уже отзеркалена для ЛУТ’а)
прошивка: dosimeter_tiny85_oled.hex, 8 MHz internal RC generator
04 декабря 2018Сборку дозиметра следует производить поэтапно. Сначала на плате распаивается преобразователь 3,7 — 5 вольт и проверяется его работоспособность. Питание от литиевого аккумулятора подключается через выключатель к линии, обозначенной на схеме, как +3V3. На плате контактные площадки для подключения помечены, как «+» и «-«. В любой точке VCC должно быть 5 вольт. Затем распаивается повышающий преобразователь 5 — 400 вольт для питания счётчика Гейгера. При проверке на катоде высоковольтного быстрого диода D2 должно быть 400 вольт, проверяется мультиметром. Затем можно припаивать остальные детали и программировать микроконтроллер. Область платы вместе с деталями, обведённую на фото красной линией, следует протереть спиртом и покрыть цапонлаком для устранения возможных утечек высокого напряжения при повышенной влажности. На высыхание лака требуется 24 часа.
Изменения в схеме: C5 увеличить до 100 нФ (напряжение — 400 или 630В). Параллельно резистору R8 установить конденсатор ёмкостью 100 — 220 пФ. Параллельно C6 поставить тантал на 100 мкФ.
нажми, чтобы увеличить

комментировать 18 декабря 2018Новая версия схемы и печатной платы. Учтены изменения, добавлены перечисленные ранее детали. Печатная плата — под готовый миниатюрный высоковольтный трансформатор с Aliexpress от ноутбучного ccfl инвертора.


нажми для увеличения

Список измненений (на схеме помечены красным):

  • индуктивность дросселя преобразователя — от 22 до 100 мкГн
  • добавлен тантал C8 по питанию 5 вольт
  • токовый шунт R3 для MC34063 увеличен до 1 Ом. возможно, будет работать и с сопротивлением 0,5 Ом. это сделано с учётом применения конкретного трансформатора
  • добавлен подстроечный резистор R15 на случай, если не удаётся подобрать точные резисторы для делителя
  • собственно, повышаюший трансформатор — готовый, миниатюрный
  • увеличена ёмкость времязадающего конденсатора C4
  • добавлен R14 в затвор полевика
  • добавлен C9

Печатная плата:dosimeter_pcb_v2.pdf(отзеркалена)
нажми, чтобы увеличить

28.12.18 пт, 3:17
А, если выкинуть 34063, и полевиком пусть рулит контроллер в зависимоти от кол-ва импульсов с счетчика (что-бы не мерять) — схема сильно упростится в отличии от софта 😉
https://radiokot.ru/circu it/power/converter/56/
13:07
В самой первой версии дозиметра на ATMEGA8 так и было сделано, работало нормально.
7.2.19 чт, 9:33
Повторил схему, работает. Плату развел под ИК пульт «SONY». Кому надо могу скинуть разводку платы. Счетчик использовал СБТ-9. Можно ли переделать прошивку так, чтобы счет импульсов обнулялся через 1 минуту. E-mail:kalex@59.ru
18:10
Присылайте печтаку и фотографии на contacts9zipru, добавим сюда.
Опишите, пожалуйста, подробнее по поводу обнуления счёта импульсов. Если я правильно понял, Вы хотите, чтобы подсчёт был не в реальном времени, а с интервалом в 1 минуту?
8.2.19 пт, 22:32
Просто так понизить показания во сколько-то раз будет, наверное, некорректно. Попробуйте прошивку ниже, в ней изменена чувствительнсость датчика при расчётах на ту, которая соответствует СБТ-9.
11.2.19 пн, 12:01
Перепрошил контроллер. Показания увеличились ровно в 2 раза 120-130 мкр/ч. Может что то с прошивкой?
13:32
Проверьте фьюзы, должна быть установлена тактовая частота 8МГц и не установлено её деление на 8.
13:44
Хорошо, завтра попробую
12.2.19 вт, 13:36
Спасибо. Все получилось. Как будет готов внешний вид, выложу на почту.
24.8.19 сб, 13:13
а кто-то может скинуть саму прошивку в формате .ino , а не скомпилированную ?
29.8.19 чт, 10:54
Прошивка никак не связана с arduino. Если есть пожелания — пишите сюда.
18.9.19 ср, 21:24
Добавьте,если можно, кнопку сброса показаний
22:16
Для чего это может быть нужно?
19.9.19 чт, 10:15
Для повтороного замера
12:22
А если выключить и включить прибор?
16:40
в общем-то можно..
16:40
ладно. все равно. сейчас разведу плату
(у меня другой корпус
)
19:40
Присылайте, добавим Вашу разводку.
Сейчас делается новый вариант этого дозиметра, с кнопками управления для настроек звука. Если получится, сделаем и сброс показаний.
20:55
а как скоро он будет?Может, мне подождать?
21:40
Это неизвестно. Придумывает один человек, паяет другой, программирует — третий 🙂 Надеемся, что в октябре, но это не точно.
22.9.19 вс, 17:05
ЗДравствуйте,у меня ещк есиь просьба.Можно изменить чувствительность под датчик си22г?
23.9.19 пн, 21:57
Сделаем. Будет пара небольших изменений в схеме.
24.9.19 вт, 19:41
Спасбо!
25.9.19 ср, 12:26
— схема с изменениями и прошивка для СИ22Г.
31.12.19 вт, 5:39
Автор, пожалуйста, выложи исходный код. Писать все хотелки смысла не вижу, проще модифицировать исходник.
Заранее спасибо!
комментировать 08 февраля 2019Вариант от Александра со счётчиком СБТ-9:
Фото дозиметра и его печатная плата в «lay». DC-DC использовал MT3608 3v — 5v. R7 заменил на 8.2 кОм.
Печатная плата: dosimeter_sbt9.zip
Прошивка для СБТ-9 dosimeter_tiny85_oled_sbt9.hex
В прошивке изменена чувствительсность счётчика с 78 имп/мкР для СБМ-20 до 40 имп/мкР для СБТ-9 (по данным из книги Виноградова Ю. А. «Ионизирующая радиация: обнаружение, контроль, защита.», 2002).
нажми, чтобы увеличить

комментировать 25 сентября 2019Вариант дозиметра для счётчика Гейгера СИ22Г. Изменения в схеме коснулись в основном способа снятия импульса с СИ22Г, потому что корпус у него достаточно массивный и при снятии импульса с катода начнёт ловить помехи, поэтому его лучше заземлить. Делитель в цепи обратной связи микросхемы MC34063 можно переделать на новые номиналы, чтобы избавиться от настройки, но это не обязательно.


нажми для увеличения

прошивка: dosimeter_oled_si22g.hex

Измерение частоты сигнала с помощью микроконтроллеров AVR. Простой частотомер.

Дата публикации: 01 мая 2013.

5 / 5

Существует много схемных решений и способов измерения частоты сигнала, в том числе и при помощи микроконтроллеров. В этой статье разберем пример самого простого частотомера построенного на контроллере Atmega8. Схема частотомера показана на рисунке 1. Для обеспечения хорошей точности измерения микроконтроллер тактируется от генератора с внешним кварцем частотой 8MHz. Измеренные показания выводятся на LCD 1602 с контроллером HD44780. VD1 стабилитрон ограничивает амплитуду входного сигнала, R2 токоограничительный резистор.

Рисунок 1.

Чтобы измерить частоту сигнала необходимо подсчитать количество импульсов, поступающих на вход микроконтроллера, за единицу времени. Для этого в нашей программе используем два типа перерывания: прерывание по переполнению таймера T0 и внешнее прерывание по изменению сигнала на входе INT0. Количество поступающих на вход сигналов будем подсчитывать за время — 1 секунда. Восьмибитный таймер T0 будет работать с частотой 1MHz, для этого включим предделитель на 8. Обработчик прерывания по переполнению таймера вызывается 4000 раз в секунду, при этом переменная counter увеличивает свое значение на единицу. Как только эта переменная станет равна 4000, т.е. пройдет 1 секунда, на дисплей уйдет информация о переменной edgecounter, затем обе переменные обнуляются. Все это происходит уже в главном цикле. Переменная edgecounter увеличивает свое значение на единицу каждый раз когда на входе INT0 происходит смена фронта сигнала, т.е. поступает 1 импульс.

Исходный код программы с подробными комментариями показан ниже:

// Измерение частоты сигнала с помощью микроконтроллеров AVR. Простой частотомер. #include<avr/io.h> #include<avr/interrupt.h> #include<util/delay.h> volatile unsigned int edgecounter = 0, counter = 0; // Обработчик прерывания по переполнению Т0, вызывается 4000 раз в секунду ISR(TIMER0_OVF_vect) { TCNT0 = 6; // Счетчик Т0 начинает считать с 6, т.к. 1MHz/(256-6) = 4000Hz counter++; } // Обработчик внешнего прерывания ISR(INT0_vect) { edgecounter++; } // Функции работы с LCD #define RS PD0 #define EN PD1 // Функция передачи команды void lcd_com(unsigned char p) { PORTD &= ~(1 << RS); // RS = 0 (запись команд) PORTD |= (1 << EN); // EN = 1 (начало записи команды в LCD) PORTD &= 0x0F; PORTD |= (p & 0xF0); // старший нибл _delay_us(100); PORTD &= ~(1 << EN); // EN = 0 (конец записи команды в LCD) _delay_us(100); PORTD |= (1 << EN); // EN = 1 (начало записи команды в LCD) PORTD &= 0x0F; PORTD |= (p << 4); // младший нибл _delay_us(100); PORTD &= ~(1 << EN); // EN = 0 (конец записи команды в LCD) _delay_us(100); } // Функция передачи данных void lcd_data(unsigned char p) { PORTD |= (1 << RS)|(1 << EN); // RS = 1 (запись данных), EN — 1 (начало записи команды в LCD) PORTD &= 0x0F; PORTD |= (p & 0xF0); // старший нибл _delay_us(100); PORTD &= ~(1 << EN); // EN = 0 (конец записи команды в LCD) _delay_us(100); PORTD |= (1 << EN); // EN = 1 (начало записи команды в LCD) PORTD &= 0x0F; PORTD |= (p << 4); // младший нибл _delay_us(100); PORTD &= ~(1 << EN); // EN = 0 (конец записи команды в LCD) _delay_us(100); } // Функция вывода строки на LCD void lcd_string(unsigned char command, char *string) { lcd_com(0x0C); lcd_com(command); while(*string != ‘\0′) { lcd_data(*string); string++; } } // Функция вывода переменной void lcd_num_to_str(unsigned int value, unsigned char nDigit) { switch(nDigit) { case 4: lcd_data((value/1000)+’0′); case 3: lcd_data(((value/100)%10)+’0′); case 2: lcd_data(((value/10)%10)+’0′); case 1: lcd_data((value%10)+’0’); } } // Функция инициализации LCD void lcd_init(void) { _delay_ms(50); // Ожидание готовности ЖК-модуля // Конфигурирование четырехразрядного режима PORTD |= (1 << PD5); PORTD &= ~(1 << PD4); // Активизация четырехразрядного режима PORTD |= (1 << EN); PORTD &= ~(1 << EN); _delay_ms(5); lcd_com(0x28); // шина 4 бит, LCD — 2 строки lcd_com(0x08); // полное выключение дисплея lcd_com(0x01); // очистка дисплея _delay_us(100); lcd_com(0x06); // сдвиг курсора вправо lcd_com(0x0C); // включение дисплея, курсор не видим } int main(void) { // Настройка портов ввода/вывода DDRD = 0b11110011; PORTD = 0x00; // Настройка таймера T0 TCCR0 |= (1 << CS01); // Предделитель на 8, частота таймера 1 MHz TIMSK |= (1 << TOIE0); // Разрешаем прерывание от таймера Т0 // Настройка внешнего прерывания GICR |= (1 << INT0); // Разрешаем внешнее прерывание на входе INT0 MCUCR |= (1 << ISC01)|(1 << ISC00); // Внешнее прерывание формируется по переднему фронту sei(); // Глобально разрешаем прерывания lcd_init(); // Инициализация дисплея lcd_com(0x01); lcd_string(0x80, «Frequency Meter»); lcd_string(0xC0, «F = Hz»); while(1) { // Выводим показания на дисплей if(counter == 4000) { lcd_com(0xC4); lcd_num_to_str(edgecounter, 4); counter = 0; edgecounter = 0; } } }

Архив для статьи «Измерение частоты сигнала с помощью микроконтроллеров AVR. Простой частотомер.»

Описание: Проект AVRStudio4

Размер файла: 29.72 KB Количество загрузок: 2 529

PIC16F628A

Высокопроизводительные 8-разрядные КМОП микроконтроллеры с Flash памятью, изготовленные по нановаттной интегральной технологии

Блок-схема


Увеличить

Группа компонентов

PIC

Основные параметры

Общее описание

Основные характеристики:

  • Характеристика RISC ядра:
    • Тактовая частота от DC до 20МГц
    • Поддержка прерываний
    • 8-уровневый аппаратный стек
    • Прямая, косвенная и относительная адресация
    • 35 однословных команд
      • все команды выполняются за один машинный цикл, кроме команд ветвления и условия с истинным результатом
  • Особенности микроконтроллеров:
    • Внешний и внутренний режимы тактового генератора
      • Прецизионный внутренний генератор 4МГц, нестабильность +/- 1%
      • Энергосберегающий внутренний генератор 37кГц
      • Режим внешнего генератора для подключения кварцевого или керамического резонатора
    • Режим энергосбережения SLEEP
    • Программируемые подтягивающие резисторы на входах PORTB
    • Сторожевой таймер WDT с отдельным генератором
    • Режим низковольтного программирования
    • Программирование на плате через последовательный порт (ICSP) (с использованием двух выводов)
    • Защита кода программы
    • Сброс по снижению напряжения питания BOR
    • Сброс по включению питания POR
    • Таймер включения питания PWRT и таймер запуска генератора OST
    • Широкий диапазон напряжения питания от 2.0В до 5.5В
    • Промышленный и расширенный температурный диапазон
    • Высокая выносливость ячеек FLASH/EEPROM
      • 100 000 циклов стирания /записи FLASH памяти программ
      • 1 000 000 циклов стирания /записи EEPROM памяти данных
      • Период хранения данных FLASH/EEPROM памяти > 100 лет
  • Характеристики пониженного энергопотребления:
    • Режим энергосбережения:
      • 100нА @ 2.0В (тип.)
    • Режимы работы:
      • 12мкА @ 32кГц, 2.0В (тип.)
      • 120мкА @ 1МГц, 2.0В (тип.)
    • Генератор таймера TMR1:
      • 1.2мкА, 32кГц, 2.0В (тип.)
    • Сторожевой таймер:
      • 1мкА @ 2.0В (тип.)
    • Двухскоростной внутренний генератор:
      • Выбор скорости старта 4МГц или 37кГц
      • Время выхода из SLEEP режима 3мкс @ 3.0В (тип.)
  • Периферия:
    • 16 каналов ввода/вывода с индивидуальными битами направления
    • Сильноточные схемы портов сток/исток, допускающих непосредственное подключение светодиодов
    • Модуль аналоговых компараторов:
      • Два аналоговых компаратора
      • Внутренний программируемый источник опорного напряжения
      • Внутренний или внешний источник опорного напряжения
      • Выходы компараторов могут быть подключены на выводы микроконтроллера
    • TMR0: 8-разрядный таймер/счетчик с программируемым предделителем
    • TMR1: 16-разрядный таймер/счетчик с внешним генератором
    • TMR2: 8-разрядный таймер/счетчик с программируемым предделителем и постделителем
    • CCP модуль:
      • разрешение захвата 16 бит
      • разрешение сравнения 16 бит
      • 10-разрядный ШИМ
    • Адресуемый USART модуль

admin

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Наверх