частотомер на GD32f303c
-
linkov1959
- Держит паяльник хвостом
- Сообщения: 923
- Зарегистрирован: Пн сен 10, 2018 19:16:28
Re: частотомер на GD32f303c
Игорь2111, буду отлаживать частотомер на stm32f103, а когда приедет GD попробую разогнать. Я в генераторе FeelTech_FY3200S вместо кварца подавал 3в от TCXO и работает стабильно +-1ppm
-
veso74
- Поставщик валерьянки для Кота
- Сообщения: 1905
- Зарегистрирован: Сб май 05, 2012 20:24:52
- Откуда: KN34PC, Болгария
- Контактная информация:
Re: частотомер на GD32f303c
Как напрямую, так и через делитель, разницы не нахожу. А и выходы генераторов не имеют низкого импеданса, поэтому, если сигнал будет слишком большим, он будет ограничен внутренней структурой Si подложки чипа, диоды есть.
Re: частотомер на GD32f303c
[uquote="veso74",url="/forum/viewtopic.php?p=4477124#p4477124"]Предпочитаю, чтобы все устройства работали с вкл. кнопки ON, а работать круглосуточно без выключения лично не вариант.[/uquote]
Это только если погрешности до 1Е-8. Если нужно точнее, то только прогрев, а если точнее 1Е-9 и круглосуточная работа.
Интересно, как термостат с Пельте себя ведёт при окружающей температуре выше 25? Ведь для охлаждения кварца ему потребуется на другом конце кучу тепла рассеить.
Это только если погрешности до 1Е-8. Если нужно точнее, то только прогрев, а если точнее 1Е-9 и круглосуточная работа.
Пока не использовал, только купил, в планах прикрутить его в FC-71 вместо самодельного термостата.Игорь2111 писал(а):Если Вы использовали ОСХО за 700р. просьба написать как ведет себя частота после включения и
через сколько времени стабилизируется.
Ни какого насилия, применяемые кварцы специально изготавливаются таким образом, чтобы иметь наилучшую стабильность на определённой температуре. Например отечественные кварцы из частотомера Ч3-54 специально затачивались для работы при +55`С.AVI-crak писал(а):Новые железяки используют элементы Пельтье, что позволяет удерживать точку 25.00С без насилия над кварцем.
Интересно, как термостат с Пельте себя ведёт при окружающей температуре выше 25? Ведь для охлаждения кварца ему потребуется на другом конце кучу тепла рассеить.
Напрямую скорее всего нет. Узел частотомера там использует несколько таймеров и компаратор, включённые через внутренние связи. Позволит ли GD32F303 такие связи организовать - неизвестно. А вообще частотомер с подобным алгоритмом реализовать думаю можно.linkov1959 писал(а):Andrey_B, частотомер из RLC-71 реально перенести на GD303 ?
В STM32H750 PLL несколько штук, когда делал FC-71 проводил много экспериментов на этот счет. Ни какого влияния вплоть до 5E-9 джиттер PLL не оказывает даже на коротких интервалах измерения.GARMIN писал(а):Вот только PLL у микроконтроллеров шумный, и высокой точности с внутренней частотной опорой не добиться.
В генераторе ГА-71 пробовал такое, с внешним тактированием на некоторых частотах появлялись поражённые точки, в проблеме так и не разобрался, перешёл на отдельный кварц, проблемы исчезли. Посмотрите в этой теме.Игорь2111 писал(а):Не пробовали ли Вы тактировать si5351a от внешнего генератора
как в даташите на пин1 ХА. ( ~1 в)
- AVI-crak
- Прорезались зубы
- Сообщения: 202
- Зарегистрирован: Сб янв 09, 2016 15:51:17
- Контактная информация:
Re: частотомер на GD32f303c
[uquote="Andrey_B",url="/forum/viewtopic.php?p=4477898#p4477898"]Интересно, как термостат с Пельте себя ведёт при окружающей температуре выше 25? Ведь для охлаждения кварца ему потребуется на другом конце кучу тепла рассеить.[/uquote]
Не разбирал, но потребление заявлено 80мА. Достаточно медного полигона на ПП. Там всё крохотное, лёгкое, да ещё и в вакууме за двумя экранами. По температуре до 125С и от -80С. Не космос, хотя и на керамике. Время старта при комнатой температуре меньше секунды.
Вот только с названием изделия помочь не могу, это наши вояки себе делают, и китайцы для американских вояк. Есть вероятность что китайцы работают на два фронта.
Не разбирал, но потребление заявлено 80мА. Достаточно медного полигона на ПП. Там всё крохотное, лёгкое, да ещё и в вакууме за двумя экранами. По температуре до 125С и от -80С. Не космос, хотя и на керамике. Время старта при комнатой температуре меньше секунды.
Вот только с названием изделия помочь не могу, это наши вояки себе делают, и китайцы для американских вояк. Есть вероятность что китайцы работают на два фронта.
-
linkov1959
- Держит паяльник хвостом
- Сообщения: 923
- Зарегистрирован: Пн сен 10, 2018 19:16:28
Re: частотомер на GD32f303c
Andrey_B, Хочу сделать частотомер на захватах пока на stm32f103 в кубеиде. Тим1 захватывает фронт импульса и в каскаде с тим2 считает тики, тим 3 считает импульсы, тим4 считает секунду и разрешает захват. В колбеке захвата запрещается захват и считается частота. Я правильно мыслю? Обнулять таймеры не нужно?
Re: частотомер на GD32f303c
linkov1959, хотите реализовать метод обратного счёта? Если да, то алгоритм негодный. Маловато таймеров в 103 для полностью аппаратного решения, было хотя бы штук 5 или хоть один 32х разрядный, можно было бы что-то придумать. Или на крайняк внешнюю логику применить.
Вся сложность сводится к синхронному запуску и остановке двух 32х разрядных таймеров, один из которых считает и захватывает входные перепады, а другой считает системные, а захватывает входные. Таймеры сбросили, первым входным перепадом они все синхронно стартанули. Посчитали примерно секунду. Потом синхронно остановили. Вытаскиваем последние захваченные значения и по ним вычисляем частоту. Это алгоритм из RLC-71.
Рекомендую почитать это. Там описан алгоритм и пример реализации частотомера обратного счёта, ещё и непрерывного (конвейерного). Там же описаны все проблемы, которые нужно решить, чтоб реализовать такой алгоритм аппаратно.
Вся сложность сводится к синхронному запуску и остановке двух 32х разрядных таймеров, один из которых считает и захватывает входные перепады, а другой считает системные, а захватывает входные. Таймеры сбросили, первым входным перепадом они все синхронно стартанули. Посчитали примерно секунду. Потом синхронно остановили. Вытаскиваем последние захваченные значения и по ним вычисляем частоту. Это алгоритм из RLC-71.
Рекомендую почитать это. Там описан алгоритм и пример реализации частотомера обратного счёта, ещё и непрерывного (конвейерного). Там же описаны все проблемы, которые нужно решить, чтоб реализовать такой алгоритм аппаратно.
-
linkov1959
- Держит паяльник хвостом
- Сообщения: 923
- Зарегистрирован: Пн сен 10, 2018 19:16:28
Re: частотомер на GD32f303c
Andrey_B, почитал, конвейер нам не нужен и там слишком все сложно. Буду ждать китайского STM32f303 за 2$. Если там копия STM на меньшем кристалле, то разгон будет не слабый и прога с RLC-71 c коррекцией частоты будет кстати. Сегодня даже сделал плату RLC-71 для проверки китайского проца. Проц 1.9$, экран 1.7$ - RLC-71 актуален!
-
Игорь2111
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Вс май 15, 2022 23:04:19
- Откуда: Белгородская обл.
Re: частотомер на GD32f303c
Кому надо
Обновление трех регистров CCR таймера 1 при обновлении в циклическом режиме через ДМА без прерываний.
Добавлено after 1 minute 39 seconds:
фото результата
https://img.radiokot.ru/files/149432/38uk6i8vsv.jpg
Обновление трех регистров CCR таймера 1 при обновлении в циклическом режиме через ДМА без прерываний.
Добавлено after 1 minute 39 seconds:
фото результата
https://img.radiokot.ru/files/149432/38uk6i8vsv.jpg
- Вложения
-
- n9-GD32F303C осцил 3кан+частот + ген3фазыN-tim1f3 -DMA burst 2.rar
- (22.71 КБ) 90 скачиваний
-
Игорь2111
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Вс май 15, 2022 23:04:19
- Откуда: Белгородская обл.
Re: частотомер на GD32f303c
Попробовал сделать трехфазный генератор ШИМ синуса без прерываний
на двух таймерах 1 и 6 , и двух ДМА 1 2.
Работает , но при определенной загрузке ЦП начинают происходить непонятные глюки с выходным сигналом.
По какому принципу происходит дележ шины BUS между ЦП и двумя ДМА непонятно .
Сделаю с прерываниями ,там хоть понятно распределение времени.
Если на выход припаять три светодиода через резюки
на низкой частоте (ед. гц) можно наблюдать визуально
частотомер пин А0 работает после пропускания через фильтр НЧ
Прошивается в Кокосе под видом stm32f103VC
Добавлено after 1 minute 51 second:
структурная схема генератора
https://img.radiokot.ru/files/149432/3938sqzbes.jpg
на двух таймерах 1 и 6 , и двух ДМА 1 2.
Работает , но при определенной загрузке ЦП начинают происходить непонятные глюки с выходным сигналом.
По какому принципу происходит дележ шины BUS между ЦП и двумя ДМА непонятно .
Сделаю с прерываниями ,там хоть понятно распределение времени.
Если на выход припаять три светодиода через резюки
на низкой частоте (ед. гц) можно наблюдать визуально
частотомер пин А0 работает после пропускания через фильтр НЧ
Прошивается в Кокосе под видом stm32f103VC
Добавлено after 1 minute 51 second:
структурная схема генератора
https://img.radiokot.ru/files/149432/3938sqzbes.jpg
- Вложения
-
- n21-GD32F303C частот + ген3фазыN-tim1-46f3 -DMA12+ burst.rar
- (22.5 КБ) 78 скачиваний
-
Игорь2111
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Вс май 15, 2022 23:04:19
- Откуда: Белгородская обл.
Re: частотомер на GD32f303c
Исправлены ошибки предзагрузки CCR.
- Вложения
-
- n21-GD32F303C частот + ген3фазыN-tim1-46f3 -DMA12+ burst кор ош.rar
- (22.67 КБ) 69 скачиваний
-
Игорь2111
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Вс май 15, 2022 23:04:19
- Откуда: Белгородская обл.
Re: частотомер на GD32f303c
Код простейшего частотомера 1-200 гц на одном таймере в режиме Reset Mode
измерение методом подсчета числа системных тиков/коэфф за период сигнала
с одним знаком после запятой.
Может быть использован в простых частотниках.
Практически работает , испытано на GD32F303C.
измерение методом подсчета числа системных тиков/коэфф за период сигнала
с одним знаком после запятой.
Может быть использован в простых частотниках.
Практически работает , испытано на GD32F303C.
- Вложения
-
- main - измер частоты 1-200 гц.rar
- (1.13 КБ) 70 скачиваний
-
linkov1959
- Держит паяльник хвостом
- Сообщения: 923
- Зарегистрирован: Пн сен 10, 2018 19:16:28
Re: частотомер на GD32f303c
Игорь2111, как отключать прерывание таймеров без их остановки?
-
Игорь2111
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Вс май 15, 2022 23:04:19
- Откуда: Белгородская обл.
Re: частотомер на GD32f303c
Переведенный 0008 по регистрам таймеров.
Посмотри регистр DIER.
Посмотри регистр DIER.
- Вложения
-
- Теория таймера TIM1.rar
- (89.61 КБ) 59 скачиваний
-
linkov1959
- Держит паяльник хвостом
- Сообщения: 923
- Зарегистрирован: Пн сен 10, 2018 19:16:28
Re: частотомер на GD32f303c
Игорь2111,
NVIC_DisableIRQ(IRQn_Type IRQn) должен работать? Для захвата тим1 будет:
NVIC_DisableIRQ(27); или NVIC_DisableIRQ(TIM1_CC_IRQn);
У меня не срабатывает. Может эту функцию нужно еще где-то прописывать?
NVIC_DisableIRQ(IRQn_Type IRQn) должен работать? Для захвата тим1 будет:
NVIC_DisableIRQ(27); или NVIC_DisableIRQ(TIM1_CC_IRQn);
У меня не срабатывает. Может эту функцию нужно еще где-то прописывать?
-
linkov1959
- Держит паяльник хвостом
- Сообщения: 923
- Зарегистрирован: Пн сен 10, 2018 19:16:28
Re: частотомер на GD32f303c
Уже срабатывает, протупил.
У 103-го всего 4 таймера, перенес всё на 401-й и тут засада, NVIC не работает! Долго возился - ошибка в библиотеке! Заменяю название вектора на номер вектора и работает! На 103-м работает по любому.
У 103-го всего 4 таймера, перенес всё на 401-й и тут засада, NVIC не работает! Долго возился - ошибка в библиотеке! Заменяю название вектора на номер вектора и работает! На 103-м работает по любому.
-
Игорь2111
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Вс май 15, 2022 23:04:19
- Откуда: Белгородская обл.
Re: частотомер на GD32f303c
Я тоже хочу позже попробовать GD32F405 под разгон.
Они по карте памяти должны быть совместимы с stm32f405.
Но там уже другие цены ~700 руб.
Они по карте памяти должны быть совместимы с stm32f405.
Но там уже другие цены ~700 руб.
- КРАМ
- Друг Кота
- Сообщения: 25163
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: частотомер на GD32f303c
[uquote="linkov1959",url="/forum/viewtopic.php?p=4483480#p4483480"]ошибка в библиотеке! Заменяю название вектора на номер вектора и работает! На 103-м работает по любому.[/uquote]
А в стартап файле посмотреть не судьба?
А в стартап файле посмотреть не судьба?
-
linkov1959
- Держит паяльник хвостом
- Сообщения: 923
- Зарегистрирован: Пн сен 10, 2018 19:16:28
Re: частотомер на GD32f303c
КРАМ, конгениально! Нужно писать
NVIC_EnableIRQ(TIM1_UP_TIM10_IRQn);
Там два таймера на один вектор привязаны.
Добавлено after 1 hour 4 minutes 49 seconds:
Игорь2111, stm32f401 дешевле, имеет два 32бит таймера, на 125Мгц работает устойчиво, дальше не пробовал - под частотомер годится, если под захват считать и тики и входные импульсы. Второй таймер под захват фронта входного импульса считает тики 125Мгц, первый считает импульсы, третий выдает счетный интервал. Таймеры работают без остановки. Захват один раз за счетный интервал, в обработчике фиксируются счетчики первого и второго таймера, вычисляется частота и запрещается прерывание 2-го таймера. В колбеке 3-го таймера разрешается захват 2-го таймера.
Добавлено after 2 hours 57 minutes 45 seconds:
Тут ещё беда, под захват прерывание есть только у первого таймера, а он только 16 бит, значит второй будет считать импульсы, а первому прикрутим дополнительный таймер до 32 бит.
NVIC_EnableIRQ(TIM1_UP_TIM10_IRQn);
Там два таймера на один вектор привязаны.
Добавлено after 1 hour 4 minutes 49 seconds:
Игорь2111, stm32f401 дешевле, имеет два 32бит таймера, на 125Мгц работает устойчиво, дальше не пробовал - под частотомер годится, если под захват считать и тики и входные импульсы. Второй таймер под захват фронта входного импульса считает тики 125Мгц, первый считает импульсы, третий выдает счетный интервал. Таймеры работают без остановки. Захват один раз за счетный интервал, в обработчике фиксируются счетчики первого и второго таймера, вычисляется частота и запрещается прерывание 2-го таймера. В колбеке 3-го таймера разрешается захват 2-го таймера.
Добавлено after 2 hours 57 minutes 45 seconds:
Тут ещё беда, под захват прерывание есть только у первого таймера, а он только 16 бит, значит второй будет считать импульсы, а первому прикрутим дополнительный таймер до 32 бит.
-
Игорь2111
- Встал на лапы
- Сообщения: 108
- Зарегистрирован: Вс май 15, 2022 23:04:19
- Откуда: Белгородская обл.
Re: частотомер на GD32f303c
linkov1959
Отлично . Жаль только я в коде что Куб генерит не разбираюсь.
Нашел GD32F407 по 370 руб. попробую под свое (200 мгц входная частота) такой же сделать.
Если получится буду на 407 переходить.
Если не секрет как LQFP 100 паяете.
Нашел в интернете утюжно-вазелиновую технологию.
Паяльная паста Механик 80 (1 часть)+спирто/каниф флюс насыщ.(1,5 ч)+вазелин из тюбика(4 части)
перемешивается в инсулиновый шприц со срезанной иголкой.
наносится шириной 1,5-2 мм ,центрируется и плата (пустая только с МК) на утюг на максимум.
Попробовал перемычек нет есть непропай. наносим на не пропаянные сверху пасту и второй раз греем.
Отлично . Жаль только я в коде что Куб генерит не разбираюсь.
Нашел GD32F407 по 370 руб. попробую под свое (200 мгц входная частота) такой же сделать.
Если получится буду на 407 переходить.
Если не секрет как LQFP 100 паяете.
Нашел в интернете утюжно-вазелиновую технологию.
Паяльная паста Механик 80 (1 часть)+спирто/каниф флюс насыщ.(1,5 ч)+вазелин из тюбика(4 части)
перемешивается в инсулиновый шприц со срезанной иголкой.
наносится шириной 1,5-2 мм ,центрируется и плата (пустая только с МК) на утюг на максимум.
Попробовал перемычек нет есть непропай. наносим на не пропаянные сверху пасту и второй раз греем.
-
linkov1959
- Держит паяльник хвостом
- Сообщения: 923
- Зарегистрирован: Пн сен 10, 2018 19:16:28
Re: частотомер на GD32f303c
Игорь2111, NVIC это не куб, а библиотека CMSIS , работает на любом IDE. Приехали процы GD и STM F303cct6. STM в ST-LINK Utility опознался правильно, но Куб с ними работать не хочет. Залил прошивку RLC-71, завтра попробую поставить на плату.